Publii: update content
@@ -0,0 +1,12 @@
|
||||
<!DOCTYPE html><html lang="de-ch"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Error 404 - Tymets Bau</title><meta name="robots" content="noindex, follow"><meta name="generator" content="Publii Open-Source CMS for Static Site"><link rel="alternate" type="application/atom+xml" href="https://tymetsbau.ch/feed.xml" title="Tymets Bau - RSS"><link rel="alternate" type="application/json" href="https://tymetsbau.ch/feed.json" title="Tymets Bau - JSON"><meta property="og:title" content="Tymets Bau"><meta property="og:site_name" content="Tymets Bau"><meta property="og:description" content=""><meta property="og:url" content="https://tymetsbau.ch/"><meta property="og:type" content="website"><link rel="stylesheet" href="https://tymetsbau.ch/assets/css/style.css?v=b51244884238ffcff6304f7b423b071c"><script type="application/ld+json">{"@context":"http://schema.org","@type":"Organization","name":"Tymets Bau","url":"https://tymetsbau.ch/"}</script><noscript><style>img[loading] {
|
||||
opacity: 1;
|
||||
}</style></noscript></head><body class="error-template"><header class="top js-header"><a class="logo" href="https://tymetsbau.ch/">Tymets Bau</a><nav class="navbar js-navbar"><button class="navbar__toggle js-toggle" aria-label="Menu" aria-haspopup="true" aria-expanded="false"><span class="navbar__toggle-box"><span class="navbar__toggle-inner">Menu</span></span></button><ul class="navbar__menu"><li><a href="https://tymetsbau.ch/" target="_self">Startseite</a></li><li><a href="#leistungen" target="_self">Leistungen</a></li><li><a href="#ueberuns" target="_self">Über uns</a></li><li><a href="#referenzen" target="_self">Referenzen</a></li><li><a href="#kontakt" target="_self">Kontakt</a></li></ul></nav></header><main class="page page--error"><div class="content"><div class="hero"><header class="hero__content"><div class="wrapper"><h1>404</h1><div class="page__desc"><p>The page you were looking for appears to have been moved, deleted or does not exist. You could go back to where you were or head straight to our home page.</p></div><a href="https://tymetsbau.ch/" class="btn hero__cta btn--icon"><svg width="18" height="18" aria-hidden="true"><use xlink:href="https://tymetsbau.ch/assets/svg/svg-map.svg#arrow-prev"/></svg> <span>Go home</span></a></div></header></div></div></main><footer class="footer"><div class="wrapper"><div class="footer__copyright"><p>Powered by Publii</p></div><button id="backToTop" class="footer__bttop" aria-label="Back to top" title="Back to top"><svg width="20" height="20"><use xlink:href="https://tymetsbau.ch/assets/svg/svg-map.svg#toparrow"/></svg></button></div></footer><script defer="defer" src="https://tymetsbau.ch/assets/js/scripts.min.js?v=ffcbea6c02c8178d10092962b235a5b0"></script><script>window.publiiThemeMenuConfig={mobileMenuMode:'sidebar',animationSpeed:300,submenuWidth: 'auto',doubleClickTime:500,mobileMenuExpandableSubmenus:true,relatedContainerForOverlayMenuSelector:'.top'};</script><script>var images = document.querySelectorAll('img[loading]');
|
||||
for (var i = 0; i < images.length; i++) {
|
||||
if (images[i].complete) {
|
||||
images[i].classList.add('is-loaded');
|
||||
} else {
|
||||
images[i].addEventListener('load', function () {
|
||||
this.classList.add('is-loaded');
|
||||
}, false);
|
||||
}
|
||||
}</script></body></html>
|
||||
@@ -0,0 +1,3 @@
|
||||
/*
|
||||
* Add your own CSS code for the WYSIWYG editor
|
||||
*/
|
||||
@@ -0,0 +1,619 @@
|
||||
// Sticky header position on page scrolling up
|
||||
const header = document.querySelector('.js-header');
|
||||
const stickyClass = 'sticky';
|
||||
let lastScrollTop = 0;
|
||||
let isWaiting = false;
|
||||
|
||||
window.addEventListener('scroll', () => {
|
||||
if (!isWaiting) {
|
||||
window.requestAnimationFrame(() => {
|
||||
let currentScroll = window.scrollY || window.pageYOffset || document.documentElement.scrollTop;
|
||||
|
||||
if (currentScroll > lastScrollTop) {
|
||||
header.classList.remove(stickyClass);
|
||||
} else if (currentScroll < lastScrollTop && currentScroll > 0) {
|
||||
header.classList.add(stickyClass);
|
||||
} else if (currentScroll <= 0) {
|
||||
header.classList.remove(stickyClass);
|
||||
}
|
||||
|
||||
lastScrollTop = currentScroll;
|
||||
isWaiting = false;
|
||||
});
|
||||
isWaiting = true;
|
||||
}
|
||||
}, false);
|
||||
|
||||
// Dropdown menu
|
||||
(function (menuConfig) {
|
||||
/**
|
||||
* Merge default config with the theme overrided ones
|
||||
*/
|
||||
var defaultConfig = {
|
||||
// behaviour
|
||||
mobileMenuMode: 'overlay',
|
||||
animationSpeed: 300,
|
||||
submenuWidth: 300,
|
||||
doubleClickTime: 500,
|
||||
mobileMenuExpandableSubmenus: false,
|
||||
isHoverMenu: true,
|
||||
// selectors
|
||||
wrapperSelector: '.navbar',
|
||||
buttonSelector: '.navbar__toggle',
|
||||
menuSelector: '.navbar__menu',
|
||||
submenuSelector: '.navbar__submenu',
|
||||
mobileMenuSidebarLogoSelector: null,
|
||||
mobileMenuSidebarLogoUrl: null,
|
||||
relatedContainerForOverlayMenuSelector: null,
|
||||
// attributes
|
||||
ariaButtonAttribute: 'aria-haspopup',
|
||||
// CSS classes
|
||||
separatorItemClass: 'is-separator',
|
||||
parentItemClass: 'has-submenu',
|
||||
submenuLeftPositionClass: 'is-left-submenu',
|
||||
submenuRightPositionClass: 'is-right-submenu',
|
||||
mobileMenuOverlayClass: 'navbar_mobile_overlay',
|
||||
mobileMenuSubmenuWrapperClass: 'navbar__submenu_wrapper',
|
||||
mobileMenuSidebarClass: 'navbar_mobile_sidebar',
|
||||
mobileMenuSidebarOverlayClass: 'navbar_mobile_sidebar__overlay',
|
||||
hiddenElementClass: 'is-hidden',
|
||||
openedMenuClass: 'is-active',
|
||||
noScrollClass: 'no-scroll',
|
||||
relatedContainerForOverlayMenuClass: 'is-visible'
|
||||
};
|
||||
|
||||
var config = {};
|
||||
|
||||
Object.keys(defaultConfig).forEach(function (key) {
|
||||
config[key] = defaultConfig[key];
|
||||
});
|
||||
|
||||
if (typeof menuConfig === 'object') {
|
||||
Object.keys(menuConfig).forEach(function (key) {
|
||||
config[key] = menuConfig[key];
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Menu initializer
|
||||
*/
|
||||
function init() {
|
||||
if (!document.querySelectorAll(config.wrapperSelector).length) {
|
||||
return;
|
||||
}
|
||||
|
||||
initSubmenuPositions();
|
||||
|
||||
if (config.mobileMenuMode === 'overlay') {
|
||||
initMobileMenuOverlay();
|
||||
} else if (config.mobileMenuMode === 'sidebar') {
|
||||
initMobileMenuSidebar();
|
||||
}
|
||||
|
||||
initClosingMenuOnClickLink();
|
||||
|
||||
if (!config.isHoverMenu) {
|
||||
initAriaAttributes();
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Function responsible for the submenu positions
|
||||
*/
|
||||
function initSubmenuPositions() {
|
||||
var submenuParents = document.querySelectorAll(config.wrapperSelector + ' .' + config.parentItemClass);
|
||||
|
||||
for (var i = 0; i < submenuParents.length; i++) {
|
||||
var eventTrigger = config.isHoverMenu ? 'mouseenter' : 'click';
|
||||
|
||||
submenuParents[i].addEventListener(eventTrigger, function () {
|
||||
var submenu = this.querySelector(config.submenuSelector);
|
||||
var itemPosition = this.getBoundingClientRect().left;
|
||||
var widthMultiplier = 2;
|
||||
|
||||
if (this.parentNode === document.querySelector(config.menuSelector)) {
|
||||
widthMultiplier = 1;
|
||||
}
|
||||
|
||||
if (config.submenuWidth !== 'auto') {
|
||||
var submenuPotentialPosition = itemPosition + (config.submenuWidth * widthMultiplier);
|
||||
|
||||
if (window.innerWidth < submenuPotentialPosition) {
|
||||
submenu.classList.remove(config.submenuLeftPositionClass);
|
||||
submenu.classList.add(config.submenuRightPositionClass);
|
||||
} else {
|
||||
submenu.classList.remove(config.submenuRightPositionClass);
|
||||
submenu.classList.add(config.submenuLeftPositionClass);
|
||||
}
|
||||
} else {
|
||||
var submenuPotentialPosition = 0;
|
||||
var submenuPosition = 0;
|
||||
|
||||
if (widthMultiplier === 1) {
|
||||
submenuPotentialPosition = itemPosition + submenu.clientWidth;
|
||||
} else {
|
||||
submenuPotentialPosition = itemPosition + this.clientWidth + submenu.clientWidth;
|
||||
}
|
||||
|
||||
if (window.innerWidth < submenuPotentialPosition) {
|
||||
submenu.classList.remove(config.submenuLeftPositionClass);
|
||||
submenu.classList.add(config.submenuRightPositionClass);
|
||||
submenuPosition = -1 * submenu.clientWidth;
|
||||
submenu.removeAttribute('style');
|
||||
|
||||
if (widthMultiplier === 1) {
|
||||
submenuPosition = 0;
|
||||
submenu.style.right = submenuPosition + 'px';
|
||||
} else {
|
||||
submenu.style.right = this.clientWidth + 'px';
|
||||
}
|
||||
} else {
|
||||
submenu.classList.remove(config.submenuRightPositionClass);
|
||||
submenu.classList.add(config.submenuLeftPositionClass);
|
||||
submenuPosition = this.clientWidth;
|
||||
|
||||
if (widthMultiplier === 1) {
|
||||
submenuPosition = 0;
|
||||
}
|
||||
|
||||
submenu.removeAttribute('style');
|
||||
submenu.style.left = submenuPosition + 'px';
|
||||
}
|
||||
}
|
||||
|
||||
submenu.setAttribute('aria-hidden', false);
|
||||
});
|
||||
|
||||
if (config.isHoverMenu) {
|
||||
submenuParents[i].addEventListener('mouseleave', function () {
|
||||
var submenu = this.querySelector(config.submenuSelector);
|
||||
submenu.removeAttribute('style');
|
||||
submenu.setAttribute('aria-hidden', true);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to init mobile menu - overlay mode
|
||||
*/
|
||||
function initMobileMenuOverlay() {
|
||||
var menuWrapper = document.createElement('div');
|
||||
menuWrapper.classList.add(config.mobileMenuOverlayClass);
|
||||
menuWrapper.classList.add(config.hiddenElementClass);
|
||||
var menuContentHTML = document.querySelector(config.menuSelector).outerHTML;
|
||||
menuWrapper.innerHTML = menuContentHTML;
|
||||
document.body.appendChild(menuWrapper);
|
||||
|
||||
// Init toggle submenus
|
||||
if (config.mobileMenuExpandableSubmenus) {
|
||||
wrapSubmenusIntoContainer(menuWrapper);
|
||||
initToggleSubmenu(menuWrapper);
|
||||
} else {
|
||||
setAriaForSubmenus(menuWrapper);
|
||||
}
|
||||
|
||||
// Init button events
|
||||
var button = document.querySelector(config.buttonSelector);
|
||||
|
||||
button.addEventListener('click', function () {
|
||||
var relatedContainer = document.querySelector(config.relatedContainerForOverlayMenuSelector);
|
||||
menuWrapper.classList.toggle(config.hiddenElementClass);
|
||||
button.classList.toggle(config.openedMenuClass);
|
||||
button.setAttribute(config.ariaButtonAttribute, button.classList.contains(config.openedMenuClass));
|
||||
|
||||
if (button.classList.contains(config.openedMenuClass)) {
|
||||
document.documentElement.classList.add(config.noScrollClass);
|
||||
|
||||
if (relatedContainer) {
|
||||
relatedContainer.classList.add(config.relatedContainerForOverlayMenuClass);
|
||||
}
|
||||
} else {
|
||||
document.documentElement.classList.remove(config.noScrollClass);
|
||||
|
||||
if (relatedContainer) {
|
||||
relatedContainer.classList.remove(config.relatedContainerForOverlayMenuClass);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to init mobile menu - sidebar mode
|
||||
*/
|
||||
function initMobileMenuSidebar() {
|
||||
// Create menu structure
|
||||
var menuWrapper = document.createElement('div');
|
||||
menuWrapper.classList.add(config.mobileMenuSidebarClass);
|
||||
menuWrapper.classList.add(config.hiddenElementClass);
|
||||
var menuContentHTML = '';
|
||||
|
||||
if (config.mobileMenuSidebarLogoSelector !== null) {
|
||||
menuContentHTML = document.querySelector(config.mobileMenuSidebarLogoSelector).outerHTML;
|
||||
} else if (config.mobileMenuSidebarLogoUrl !== null) {
|
||||
menuContentHTML = '<img src="' + config.mobileMenuSidebarLogoUrl + '" alt="" />';
|
||||
}
|
||||
|
||||
menuContentHTML += document.querySelector(config.menuSelector).outerHTML;
|
||||
menuWrapper.innerHTML = menuContentHTML;
|
||||
|
||||
var menuOverlay = document.createElement('div');
|
||||
menuOverlay.classList.add(config.mobileMenuSidebarOverlayClass);
|
||||
menuOverlay.classList.add(config.hiddenElementClass);
|
||||
|
||||
document.body.appendChild(menuOverlay);
|
||||
document.body.appendChild(menuWrapper);
|
||||
|
||||
// Init toggle submenus
|
||||
if (config.mobileMenuExpandableSubmenus) {
|
||||
wrapSubmenusIntoContainer(menuWrapper);
|
||||
initToggleSubmenu(menuWrapper);
|
||||
} else {
|
||||
setAriaForSubmenus(menuWrapper);
|
||||
}
|
||||
|
||||
// Menu events
|
||||
menuWrapper.addEventListener('click', function (e) {
|
||||
e.stopPropagation();
|
||||
});
|
||||
|
||||
menuOverlay.addEventListener('click', function () {
|
||||
menuWrapper.classList.add(config.hiddenElementClass);
|
||||
menuOverlay.classList.add(config.hiddenElementClass);
|
||||
button.classList.remove(config.openedMenuClass);
|
||||
button.setAttribute(config.ariaButtonAttribute, false);
|
||||
document.documentElement.classList.remove(config.noScrollClass);
|
||||
});
|
||||
|
||||
// Init button events
|
||||
var button = document.querySelector(config.buttonSelector);
|
||||
|
||||
button.addEventListener('click', function () {
|
||||
menuWrapper.classList.toggle(config.hiddenElementClass);
|
||||
menuOverlay.classList.toggle(config.hiddenElementClass);
|
||||
button.classList.toggle(config.openedMenuClass);
|
||||
button.setAttribute(config.ariaButtonAttribute, button.classList.contains(config.openedMenuClass));
|
||||
document.documentElement.classList.toggle(config.noScrollClass);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Set aria-hidden="false" for submenus
|
||||
*/
|
||||
function setAriaForSubmenus(menuWrapper) {
|
||||
var submenus = menuWrapper.querySelectorAll(config.submenuSelector);
|
||||
|
||||
for (var i = 0; i < submenus.length; i++) {
|
||||
submenus[i].setAttribute('aria-hidden', false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Wrap all submenus into div wrappers
|
||||
*/
|
||||
function wrapSubmenusIntoContainer(menuWrapper) {
|
||||
var submenus = menuWrapper.querySelectorAll(config.submenuSelector);
|
||||
|
||||
for (var i = 0; i < submenus.length; i++) {
|
||||
var submenuWrapper = document.createElement('div');
|
||||
submenuWrapper.classList.add(config.mobileMenuSubmenuWrapperClass);
|
||||
submenus[i].parentNode.insertBefore(submenuWrapper, submenus[i]);
|
||||
submenuWrapper.appendChild(submenus[i]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialize submenu toggle events
|
||||
*/
|
||||
function initToggleSubmenu(menuWrapper) {
|
||||
// Init parent menu item events
|
||||
var parents = menuWrapper.querySelectorAll('.' + config.parentItemClass);
|
||||
|
||||
for (var i = 0; i < parents.length; i++) {
|
||||
// Add toggle events
|
||||
parents[i].addEventListener('click', function (e) {
|
||||
e.stopPropagation();
|
||||
var submenu = this.querySelector('.' + config.mobileMenuSubmenuWrapperClass);
|
||||
var content = submenu.firstElementChild;
|
||||
|
||||
if (submenu.classList.contains(config.openedMenuClass)) {
|
||||
var height = content.clientHeight;
|
||||
submenu.style.height = height + 'px';
|
||||
|
||||
setTimeout(function () {
|
||||
submenu.style.height = '0px';
|
||||
}, 0);
|
||||
|
||||
setTimeout(function () {
|
||||
submenu.removeAttribute('style');
|
||||
submenu.classList.remove(config.openedMenuClass);
|
||||
}, config.animationSpeed);
|
||||
|
||||
content.setAttribute('aria-hidden', true);
|
||||
content.parentNode.firstElementChild.setAttribute('aria-expanded', false);
|
||||
} else {
|
||||
var height = content.clientHeight;
|
||||
submenu.classList.add(config.openedMenuClass);
|
||||
submenu.style.height = '0px';
|
||||
|
||||
setTimeout(function () {
|
||||
submenu.style.height = height + 'px';
|
||||
}, 0);
|
||||
|
||||
setTimeout(function () {
|
||||
submenu.removeAttribute('style');
|
||||
}, config.animationSpeed);
|
||||
|
||||
content.setAttribute('aria-hidden', false);
|
||||
content.parentNode.firstElementChild.setAttribute('aria-expanded', true);
|
||||
}
|
||||
});
|
||||
|
||||
// Block links
|
||||
var childNodes = parents[i].children;
|
||||
|
||||
for (var j = 0; j < childNodes.length; j++) {
|
||||
if (childNodes[j].tagName === 'A') {
|
||||
childNodes[j].addEventListener('click', function (e) {
|
||||
var lastClick = parseInt(this.getAttribute('data-last-click'), 10);
|
||||
var currentTime = +new Date();
|
||||
|
||||
if (isNaN(lastClick)) {
|
||||
e.preventDefault();
|
||||
this.setAttribute('data-last-click', currentTime);
|
||||
} else if (lastClick + config.doubleClickTime <= currentTime) {
|
||||
e.preventDefault();
|
||||
this.setAttribute('data-last-click', currentTime);
|
||||
} else if (lastClick + config.doubleClickTime > currentTime) {
|
||||
e.stopPropagation();
|
||||
closeMenu(this, true);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Set aria-* attributes according to the current activity state
|
||||
*/
|
||||
function initAriaAttributes() {
|
||||
var allAriaElements = document.querySelectorAll(config.wrapperSelector + ' ' + '*[aria-hidden]');
|
||||
|
||||
for (var i = 0; i < allAriaElements.length; i++) {
|
||||
var ariaElement = allAriaElements[i];
|
||||
|
||||
if (
|
||||
ariaElement.parentNode.classList.contains('active') ||
|
||||
ariaElement.parentNode.classList.contains('active-parent')
|
||||
) {
|
||||
ariaElement.setAttribute('aria-hidden', 'false');
|
||||
ariaElement.parentNode.firstElementChild.setAttribute('aria-expanded', true);
|
||||
} else {
|
||||
ariaElement.setAttribute('aria-hidden', 'true');
|
||||
ariaElement.parentNode.firstElementChild.setAttribute('aria-expanded', false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Close menu on click link
|
||||
*/
|
||||
function initClosingMenuOnClickLink() {
|
||||
var links = document.querySelectorAll(config.menuSelector + ' a');
|
||||
|
||||
for (var i = 0; i < links.length; i++) {
|
||||
if (links[i].parentNode.classList.contains(config.parentItemClass)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
links[i].addEventListener('click', function (e) {
|
||||
closeMenu(this, false);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Close menu
|
||||
*/
|
||||
function closeMenu(clickedLink, forceClose) {
|
||||
if (forceClose === false) {
|
||||
if (clickedLink.parentNode.classList.contains(config.parentItemClass)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
var relatedContainer = document.querySelector(config.relatedContainerForOverlayMenuSelector);
|
||||
var button = document.querySelector(config.buttonSelector);
|
||||
var menuWrapper = document.querySelector('.' + config.mobileMenuOverlayClass);
|
||||
|
||||
if (!menuWrapper) {
|
||||
menuWrapper = document.querySelector('.' + config.mobileMenuSidebarClass);
|
||||
}
|
||||
|
||||
menuWrapper.classList.add(config.hiddenElementClass);
|
||||
button.classList.remove(config.openedMenuClass);
|
||||
button.setAttribute(config.ariaButtonAttribute, false);
|
||||
document.documentElement.classList.remove(config.noScrollClass);
|
||||
|
||||
if (relatedContainer) {
|
||||
relatedContainer.classList.remove(config.relatedContainerForOverlayMenuClass);
|
||||
}
|
||||
|
||||
var menuOverlay = document.querySelector('.' + config.mobileMenuSidebarOverlayClass);
|
||||
|
||||
if (menuOverlay) {
|
||||
menuOverlay.classList.add(config.hiddenElementClass);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Run menu scripts
|
||||
*/
|
||||
init();
|
||||
})(window.publiiThemeMenuConfig);
|
||||
|
||||
// Load search input area
|
||||
const searchButton = document.querySelector('.js-search-btn');
|
||||
const searchOverlay = document.querySelector('.js-search-overlay');
|
||||
const searchInput = document.querySelector('input[type="search"]');
|
||||
|
||||
if (searchButton && searchOverlay && searchInput) {
|
||||
searchButton.addEventListener('click', (event) => {
|
||||
event.stopPropagation();
|
||||
searchOverlay.classList.toggle('expanded');
|
||||
|
||||
if (searchOverlay.classList.contains('expanded')) {
|
||||
setTimeout(() => {
|
||||
searchInput.focus();
|
||||
}, 60);
|
||||
}
|
||||
});
|
||||
|
||||
searchOverlay.addEventListener('click', (event) => {
|
||||
event.stopPropagation();
|
||||
});
|
||||
|
||||
document.body.addEventListener('click', () => {
|
||||
searchOverlay.classList.remove('expanded');
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// Share buttons pop-up
|
||||
(function () {
|
||||
// share popup
|
||||
const shareButton = document.querySelector('.js-content__share-button');
|
||||
const sharePopup = document.querySelector('.js-content__share-popup');
|
||||
|
||||
if (shareButton && sharePopup) {
|
||||
sharePopup.addEventListener('click', function (e) {
|
||||
e.stopPropagation();
|
||||
});
|
||||
|
||||
shareButton.addEventListener('click', function (e) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
sharePopup.classList.toggle('is-visible');
|
||||
});
|
||||
|
||||
document.body.addEventListener('click', function () {
|
||||
sharePopup.classList.remove('is-visible');
|
||||
});
|
||||
}
|
||||
|
||||
// link selector and pop-up window size
|
||||
const Config = {
|
||||
Link: ".js-share",
|
||||
Width: 500,
|
||||
Height: 500
|
||||
};
|
||||
|
||||
// add handler to links
|
||||
const shareLinks = document.querySelectorAll(Config.Link);
|
||||
shareLinks.forEach(link => {
|
||||
link.addEventListener('click', PopupHandler);
|
||||
});
|
||||
|
||||
// create popup
|
||||
function PopupHandler(e) {
|
||||
e.preventDefault();
|
||||
|
||||
const target = e.target.closest(Config.Link);
|
||||
if (!target) return;
|
||||
|
||||
// hide share popup
|
||||
if (sharePopup) {
|
||||
sharePopup.classList.remove('is-visible');
|
||||
}
|
||||
|
||||
// popup position
|
||||
const px = Math.floor((window.innerWidth - Config.Width) / 2);
|
||||
const py = Math.floor((window.innerHeight - Config.Height) / 2);
|
||||
|
||||
// open popup
|
||||
const linkHref = target.href;
|
||||
const popup = window.open(linkHref, "social", `
|
||||
width=${Config.Width},
|
||||
height=${Config.Height},
|
||||
left=${px},
|
||||
top=${py},
|
||||
location=0,
|
||||
menubar=0,
|
||||
toolbar=0,
|
||||
status=0,
|
||||
scrollbars=1,
|
||||
resizable=1
|
||||
`);
|
||||
|
||||
if (popup) {
|
||||
popup.focus();
|
||||
}
|
||||
}
|
||||
})();
|
||||
|
||||
// Back to top
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
const backToTopButton = document.getElementById('backToTop');
|
||||
|
||||
if (backToTopButton) {
|
||||
const backToTopScrollFunction = () => {
|
||||
if (document.body.scrollTop > 400 || document.documentElement.scrollTop > 400) {
|
||||
backToTopButton.classList.add('is-visible');
|
||||
} else {
|
||||
backToTopButton.classList.remove('is-visible');
|
||||
}
|
||||
};
|
||||
|
||||
const backToTopFunction = () => {
|
||||
window.scrollTo({
|
||||
top: 0,
|
||||
behavior: 'smooth'
|
||||
});
|
||||
};
|
||||
|
||||
window.addEventListener('scroll', backToTopScrollFunction);
|
||||
backToTopButton.addEventListener('click', backToTopFunction);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// Responsive embeds script
|
||||
(function () {
|
||||
let wrappers = document.querySelectorAll('.post__video, .post__iframe');
|
||||
|
||||
for (let i = 0; i < wrappers.length; i++) {
|
||||
let embed = wrappers[i].querySelector('iframe, embed, video, object');
|
||||
|
||||
if (!embed) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (embed.getAttribute('data-responsive') === 'false') {
|
||||
continue;
|
||||
}
|
||||
|
||||
let w = embed.getAttribute('width');
|
||||
let h = embed.getAttribute('height');
|
||||
let ratio = false;
|
||||
|
||||
if (!w || !h) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (w.indexOf('%') > -1 && h.indexOf('%') > -1) { // percentage mode
|
||||
w = parseFloat(w.replace('%', ''));
|
||||
h = parseFloat(h.replace('%', ''));
|
||||
ratio = h / w;
|
||||
} else if (w.indexOf('%') === -1 && h.indexOf('%') === -1) { // pixels mode
|
||||
w = parseInt(w, 10);
|
||||
h = parseInt(h, 10);
|
||||
ratio = h / w;
|
||||
}
|
||||
|
||||
if (ratio !== false) {
|
||||
let ratioValue = (ratio * 100) + '%';
|
||||
wrappers[i].setAttribute('style', '--embed-aspect-ratio:' + ratioValue);
|
||||
}
|
||||
}
|
||||
})();
|
||||
@@ -0,0 +1,32 @@
|
||||
const header=document.querySelector('.js-header');const stickyClass='sticky';let lastScrollTop=0;let isWaiting=false;window.addEventListener('scroll',()=>{if(!isWaiting){window.requestAnimationFrame(()=>{let currentScroll=window.scrollY||window.pageYOffset||document.documentElement.scrollTop;if(currentScroll>lastScrollTop){header.classList.remove(stickyClass);}else if(currentScroll<lastScrollTop&¤tScroll>0){header.classList.add(stickyClass);}else if(currentScroll<=0){header.classList.remove(stickyClass);}
|
||||
lastScrollTop=currentScroll;isWaiting=false;});isWaiting=true;}},false);(function(menuConfig){var defaultConfig={mobileMenuMode:'overlay',animationSpeed:300,submenuWidth:300,doubleClickTime:500,mobileMenuExpandableSubmenus:false,isHoverMenu:true,wrapperSelector:'.navbar',buttonSelector:'.navbar__toggle',menuSelector:'.navbar__menu',submenuSelector:'.navbar__submenu',mobileMenuSidebarLogoSelector:null,mobileMenuSidebarLogoUrl:null,relatedContainerForOverlayMenuSelector:null,ariaButtonAttribute:'aria-haspopup',separatorItemClass:'is-separator',parentItemClass:'has-submenu',submenuLeftPositionClass:'is-left-submenu',submenuRightPositionClass:'is-right-submenu',mobileMenuOverlayClass:'navbar_mobile_overlay',mobileMenuSubmenuWrapperClass:'navbar__submenu_wrapper',mobileMenuSidebarClass:'navbar_mobile_sidebar',mobileMenuSidebarOverlayClass:'navbar_mobile_sidebar__overlay',hiddenElementClass:'is-hidden',openedMenuClass:'is-active',noScrollClass:'no-scroll',relatedContainerForOverlayMenuClass:'is-visible'};var config={};Object.keys(defaultConfig).forEach(function(key){config[key]=defaultConfig[key];});if(typeof menuConfig==='object'){Object.keys(menuConfig).forEach(function(key){config[key]=menuConfig[key];});}
|
||||
function init(){if(!document.querySelectorAll(config.wrapperSelector).length){return;}
|
||||
initSubmenuPositions();if(config.mobileMenuMode==='overlay'){initMobileMenuOverlay();}else if(config.mobileMenuMode==='sidebar'){initMobileMenuSidebar();}
|
||||
initClosingMenuOnClickLink();if(!config.isHoverMenu){initAriaAttributes();}};function initSubmenuPositions(){var submenuParents=document.querySelectorAll(config.wrapperSelector+' .'+config.parentItemClass);for(var i=0;i<submenuParents.length;i++){var eventTrigger=config.isHoverMenu?'mouseenter':'click';submenuParents[i].addEventListener(eventTrigger,function(){var submenu=this.querySelector(config.submenuSelector);var itemPosition=this.getBoundingClientRect().left;var widthMultiplier=2;if(this.parentNode===document.querySelector(config.menuSelector)){widthMultiplier=1;}
|
||||
if(config.submenuWidth!=='auto'){var submenuPotentialPosition=itemPosition+(config.submenuWidth*widthMultiplier);if(window.innerWidth<submenuPotentialPosition){submenu.classList.remove(config.submenuLeftPositionClass);submenu.classList.add(config.submenuRightPositionClass);}else{submenu.classList.remove(config.submenuRightPositionClass);submenu.classList.add(config.submenuLeftPositionClass);}}else{var submenuPotentialPosition=0;var submenuPosition=0;if(widthMultiplier===1){submenuPotentialPosition=itemPosition+submenu.clientWidth;}else{submenuPotentialPosition=itemPosition+this.clientWidth+submenu.clientWidth;}
|
||||
if(window.innerWidth<submenuPotentialPosition){submenu.classList.remove(config.submenuLeftPositionClass);submenu.classList.add(config.submenuRightPositionClass);submenuPosition=-1*submenu.clientWidth;submenu.removeAttribute('style');if(widthMultiplier===1){submenuPosition=0;submenu.style.right=submenuPosition+'px';}else{submenu.style.right=this.clientWidth+'px';}}else{submenu.classList.remove(config.submenuRightPositionClass);submenu.classList.add(config.submenuLeftPositionClass);submenuPosition=this.clientWidth;if(widthMultiplier===1){submenuPosition=0;}
|
||||
submenu.removeAttribute('style');submenu.style.left=submenuPosition+'px';}}
|
||||
submenu.setAttribute('aria-hidden',false);});if(config.isHoverMenu){submenuParents[i].addEventListener('mouseleave',function(){var submenu=this.querySelector(config.submenuSelector);submenu.removeAttribute('style');submenu.setAttribute('aria-hidden',true);});}}}
|
||||
function initMobileMenuOverlay(){var menuWrapper=document.createElement('div');menuWrapper.classList.add(config.mobileMenuOverlayClass);menuWrapper.classList.add(config.hiddenElementClass);var menuContentHTML=document.querySelector(config.menuSelector).outerHTML;menuWrapper.innerHTML=menuContentHTML;document.body.appendChild(menuWrapper);if(config.mobileMenuExpandableSubmenus){wrapSubmenusIntoContainer(menuWrapper);initToggleSubmenu(menuWrapper);}else{setAriaForSubmenus(menuWrapper);}
|
||||
var button=document.querySelector(config.buttonSelector);button.addEventListener('click',function(){var relatedContainer=document.querySelector(config.relatedContainerForOverlayMenuSelector);menuWrapper.classList.toggle(config.hiddenElementClass);button.classList.toggle(config.openedMenuClass);button.setAttribute(config.ariaButtonAttribute,button.classList.contains(config.openedMenuClass));if(button.classList.contains(config.openedMenuClass)){document.documentElement.classList.add(config.noScrollClass);if(relatedContainer){relatedContainer.classList.add(config.relatedContainerForOverlayMenuClass);}}else{document.documentElement.classList.remove(config.noScrollClass);if(relatedContainer){relatedContainer.classList.remove(config.relatedContainerForOverlayMenuClass);}}});}
|
||||
function initMobileMenuSidebar(){var menuWrapper=document.createElement('div');menuWrapper.classList.add(config.mobileMenuSidebarClass);menuWrapper.classList.add(config.hiddenElementClass);var menuContentHTML='';if(config.mobileMenuSidebarLogoSelector!==null){menuContentHTML=document.querySelector(config.mobileMenuSidebarLogoSelector).outerHTML;}else if(config.mobileMenuSidebarLogoUrl!==null){menuContentHTML='<img src="'+config.mobileMenuSidebarLogoUrl+'" alt="" />';}
|
||||
menuContentHTML+=document.querySelector(config.menuSelector).outerHTML;menuWrapper.innerHTML=menuContentHTML;var menuOverlay=document.createElement('div');menuOverlay.classList.add(config.mobileMenuSidebarOverlayClass);menuOverlay.classList.add(config.hiddenElementClass);document.body.appendChild(menuOverlay);document.body.appendChild(menuWrapper);if(config.mobileMenuExpandableSubmenus){wrapSubmenusIntoContainer(menuWrapper);initToggleSubmenu(menuWrapper);}else{setAriaForSubmenus(menuWrapper);}
|
||||
menuWrapper.addEventListener('click',function(e){e.stopPropagation();});menuOverlay.addEventListener('click',function(){menuWrapper.classList.add(config.hiddenElementClass);menuOverlay.classList.add(config.hiddenElementClass);button.classList.remove(config.openedMenuClass);button.setAttribute(config.ariaButtonAttribute,false);document.documentElement.classList.remove(config.noScrollClass);});var button=document.querySelector(config.buttonSelector);button.addEventListener('click',function(){menuWrapper.classList.toggle(config.hiddenElementClass);menuOverlay.classList.toggle(config.hiddenElementClass);button.classList.toggle(config.openedMenuClass);button.setAttribute(config.ariaButtonAttribute,button.classList.contains(config.openedMenuClass));document.documentElement.classList.toggle(config.noScrollClass);});}
|
||||
function setAriaForSubmenus(menuWrapper){var submenus=menuWrapper.querySelectorAll(config.submenuSelector);for(var i=0;i<submenus.length;i++){submenus[i].setAttribute('aria-hidden',false);}}
|
||||
function wrapSubmenusIntoContainer(menuWrapper){var submenus=menuWrapper.querySelectorAll(config.submenuSelector);for(var i=0;i<submenus.length;i++){var submenuWrapper=document.createElement('div');submenuWrapper.classList.add(config.mobileMenuSubmenuWrapperClass);submenus[i].parentNode.insertBefore(submenuWrapper,submenus[i]);submenuWrapper.appendChild(submenus[i]);}}
|
||||
function initToggleSubmenu(menuWrapper){var parents=menuWrapper.querySelectorAll('.'+config.parentItemClass);for(var i=0;i<parents.length;i++){parents[i].addEventListener('click',function(e){e.stopPropagation();var submenu=this.querySelector('.'+config.mobileMenuSubmenuWrapperClass);var content=submenu.firstElementChild;if(submenu.classList.contains(config.openedMenuClass)){var height=content.clientHeight;submenu.style.height=height+'px';setTimeout(function(){submenu.style.height='0px';},0);setTimeout(function(){submenu.removeAttribute('style');submenu.classList.remove(config.openedMenuClass);},config.animationSpeed);content.setAttribute('aria-hidden',true);content.parentNode.firstElementChild.setAttribute('aria-expanded',false);}else{var height=content.clientHeight;submenu.classList.add(config.openedMenuClass);submenu.style.height='0px';setTimeout(function(){submenu.style.height=height+'px';},0);setTimeout(function(){submenu.removeAttribute('style');},config.animationSpeed);content.setAttribute('aria-hidden',false);content.parentNode.firstElementChild.setAttribute('aria-expanded',true);}});var childNodes=parents[i].children;for(var j=0;j<childNodes.length;j++){if(childNodes[j].tagName==='A'){childNodes[j].addEventListener('click',function(e){var lastClick=parseInt(this.getAttribute('data-last-click'),10);var currentTime=+new Date();if(isNaN(lastClick)){e.preventDefault();this.setAttribute('data-last-click',currentTime);}else if(lastClick+config.doubleClickTime<=currentTime){e.preventDefault();this.setAttribute('data-last-click',currentTime);}else if(lastClick+config.doubleClickTime>currentTime){e.stopPropagation();closeMenu(this,true);}});}}}}
|
||||
function initAriaAttributes(){var allAriaElements=document.querySelectorAll(config.wrapperSelector+' '+'*[aria-hidden]');for(var i=0;i<allAriaElements.length;i++){var ariaElement=allAriaElements[i];if(ariaElement.parentNode.classList.contains('active')||ariaElement.parentNode.classList.contains('active-parent')){ariaElement.setAttribute('aria-hidden','false');ariaElement.parentNode.firstElementChild.setAttribute('aria-expanded',true);}else{ariaElement.setAttribute('aria-hidden','true');ariaElement.parentNode.firstElementChild.setAttribute('aria-expanded',false);}}}
|
||||
function initClosingMenuOnClickLink(){var links=document.querySelectorAll(config.menuSelector+' a');for(var i=0;i<links.length;i++){if(links[i].parentNode.classList.contains(config.parentItemClass)){continue;}
|
||||
links[i].addEventListener('click',function(e){closeMenu(this,false);});}}
|
||||
function closeMenu(clickedLink,forceClose){if(forceClose===false){if(clickedLink.parentNode.classList.contains(config.parentItemClass)){return;}}
|
||||
var relatedContainer=document.querySelector(config.relatedContainerForOverlayMenuSelector);var button=document.querySelector(config.buttonSelector);var menuWrapper=document.querySelector('.'+config.mobileMenuOverlayClass);if(!menuWrapper){menuWrapper=document.querySelector('.'+config.mobileMenuSidebarClass);}
|
||||
menuWrapper.classList.add(config.hiddenElementClass);button.classList.remove(config.openedMenuClass);button.setAttribute(config.ariaButtonAttribute,false);document.documentElement.classList.remove(config.noScrollClass);if(relatedContainer){relatedContainer.classList.remove(config.relatedContainerForOverlayMenuClass);}
|
||||
var menuOverlay=document.querySelector('.'+config.mobileMenuSidebarOverlayClass);if(menuOverlay){menuOverlay.classList.add(config.hiddenElementClass);}}
|
||||
init();})(window.publiiThemeMenuConfig);const searchButton=document.querySelector('.js-search-btn');const searchOverlay=document.querySelector('.js-search-overlay');const searchInput=document.querySelector('input[type="search"]');if(searchButton&&searchOverlay&&searchInput){searchButton.addEventListener('click',(event)=>{event.stopPropagation();searchOverlay.classList.toggle('expanded');if(searchOverlay.classList.contains('expanded')){setTimeout(()=>{searchInput.focus();},60);}});searchOverlay.addEventListener('click',(event)=>{event.stopPropagation();});document.body.addEventListener('click',()=>{searchOverlay.classList.remove('expanded');});}
|
||||
(function(){const shareButton=document.querySelector('.js-content__share-button');const sharePopup=document.querySelector('.js-content__share-popup');if(shareButton&&sharePopup){sharePopup.addEventListener('click',function(e){e.stopPropagation();});shareButton.addEventListener('click',function(e){e.preventDefault();e.stopPropagation();sharePopup.classList.toggle('is-visible');});document.body.addEventListener('click',function(){sharePopup.classList.remove('is-visible');});}
|
||||
const Config={Link:".js-share",Width:500,Height:500};const shareLinks=document.querySelectorAll(Config.Link);shareLinks.forEach(link=>{link.addEventListener('click',PopupHandler);});function PopupHandler(e){e.preventDefault();const target=e.target.closest(Config.Link);if(!target)return;if(sharePopup){sharePopup.classList.remove('is-visible');}
|
||||
const px=Math.floor((window.innerWidth-Config.Width)/2);const py=Math.floor((window.innerHeight-Config.Height)/2);const linkHref=target.href;const popup=window.open(linkHref,"social",`width=${Config.Width},height=${Config.Height},left=${px},top=${py},location=0,menubar=0,toolbar=0,status=0,scrollbars=1,resizable=1`);if(popup){popup.focus();}}})();document.addEventListener('DOMContentLoaded',()=>{const backToTopButton=document.getElementById('backToTop');if(backToTopButton){const backToTopScrollFunction=()=>{if(document.body.scrollTop>400||document.documentElement.scrollTop>400){backToTopButton.classList.add('is-visible');}else{backToTopButton.classList.remove('is-visible');}};const backToTopFunction=()=>{window.scrollTo({top:0,behavior:'smooth'});};window.addEventListener('scroll',backToTopScrollFunction);backToTopButton.addEventListener('click',backToTopFunction);}});(function(){let wrappers=document.querySelectorAll('.post__video, .post__iframe');for(let i=0;i<wrappers.length;i++){let embed=wrappers[i].querySelector('iframe, embed, video, object');if(!embed){continue;}
|
||||
if(embed.getAttribute('data-responsive')==='false'){continue;}
|
||||
let w=embed.getAttribute('width');let h=embed.getAttribute('height');let ratio=false;if(!w||!h){continue;}
|
||||
if(w.indexOf('%')>-1&&h.indexOf('%')>-1){w=parseFloat(w.replace('%',''));h=parseFloat(h.replace('%',''));ratio=h/w;}else if(w.indexOf('%')===-1&&h.indexOf('%')===-1){w=parseInt(w,10);h=parseInt(h,10);ratio=h/w;}
|
||||
if(ratio!==false){let ratioValue=(ratio*100)+'%';wrappers[i].setAttribute('style','--embed-aspect-ratio:'+ratioValue);}}})();
|
||||
@@ -0,0 +1,19 @@
|
||||
// SVG map fix
|
||||
(function() {
|
||||
var allItems = document.querySelectorAll('use');
|
||||
|
||||
for (var i = 0; i < allItems.length; i++) {
|
||||
var item = allItems[i];
|
||||
var anchor = '#' + item.getAttribute('xlink:href').split('#')[1];
|
||||
var itemData = window.publiiSvgFix[anchor];
|
||||
|
||||
if(!itemData) {
|
||||
console.log('ANCHOR', anchor, i);
|
||||
continue;
|
||||
}
|
||||
|
||||
var svgItem = item.parentNode;
|
||||
svgItem.innerHTML = itemData.content;
|
||||
svgItem.setAttribute('viewBox', itemData.viewbox);
|
||||
}
|
||||
})();
|
||||
@@ -0,0 +1,67 @@
|
||||
window.publiiSvgFix = {
|
||||
|
||||
"#search": {
|
||||
"viewbox": "0 0 24 24",
|
||||
"content": "<circle cx=\"11\" cy=\"11\" r=\"8\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><path d=\"M21 21l-4.3-4.3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />"
|
||||
},
|
||||
"#share": {
|
||||
"viewbox": "0 0 24 24",
|
||||
"content": "<path d=\"M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><polyline points=\"16 6 12 2 8 6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><line x1=\"12\" y1=\"2\" x2=\"12\" y2=\"15\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />"
|
||||
},
|
||||
"#arrow-prev": {
|
||||
"viewbox": "0 0 24 24",
|
||||
"content": "<path d=\"M6 8L2 12L6 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><path d=\"M2 12H22\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />"
|
||||
},
|
||||
"#arrow-next": {
|
||||
"viewbox": "0 0 24 24",
|
||||
"content": "<path d=\"M18 8L22 12L18 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><path d=\"M2 12H22\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />"
|
||||
},
|
||||
"#toparrow": {
|
||||
"viewbox": "0 0 24 24",
|
||||
"content": "<path d=\"M8 6L12 2L16 6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><path d=\"M12 2V22\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />"
|
||||
},
|
||||
"#website": {
|
||||
"viewbox": "0 0 24 24",
|
||||
"content": "<path d=\"M21 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><path d=\"M21 3l-9 9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" /><path d=\"M15 3h6v6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />"
|
||||
},
|
||||
"#facebook": {
|
||||
"viewbox": "0 0 32 32",
|
||||
"content": "<path d=\"M32,16.1A16,16,0,1,0,13.5,32V20.75H9.44V16.1H13.5V12.55c0-4,2.39-6.26,6-6.26a24.77,24.77,0,0,1,3.58.31v4h-2a2.33,2.33,0,0,0-2.61,2.52v3h4.44l-.71,4.65H18.5V32A16.07,16.07,0,0,0,32,16.1Z\" />"
|
||||
},
|
||||
"#twitter": {
|
||||
"viewbox": "0 0 24 24",
|
||||
"content": "<path d=\"m14.093,10.315L22.283,1h-1.941l-7.111,8.089L7.551,1H1l8.589,12.231L1,23h1.941l7.51-8.542,5.998,8.542h6.551l-8.907-12.685h0Zm-2.658,3.024l-.87-1.218L3.64,2.43h2.981l5.588,7.821.87,1.218,7.264,10.166h-2.981l-5.927-8.296h0Z\" />"
|
||||
},
|
||||
"#instagram": {
|
||||
"viewbox": "0 0 32 32",
|
||||
"content": "<path d=\"M16,2.883c4.272,0,4.778.016,6.465.093a8.853,8.853,0,0,1,2.971.551,4.957,4.957,0,0,1,1.84,1.2,4.957,4.957,0,0,1,1.2,1.84,8.853,8.853,0,0,1,.551,2.971c.077,1.687.093,2.193.093,6.465s-.016,4.778-.093,6.465a8.853,8.853,0,0,1-.551,2.971,5.3,5.3,0,0,1-3.037,3.037,8.853,8.853,0,0,1-2.971.551c-1.687.077-2.193.093-6.465.093s-4.778-.016-6.465-.093a8.853,8.853,0,0,1-2.971-.551,4.957,4.957,0,0,1-1.84-1.2,4.957,4.957,0,0,1-1.2-1.84,8.853,8.853,0,0,1-.551-2.971C2.9,20.778,2.883,20.272,2.883,16s.016-4.778.093-6.465a8.853,8.853,0,0,1,.551-2.971,4.957,4.957,0,0,1,1.2-1.84,4.957,4.957,0,0,1,1.84-1.2,8.853,8.853,0,0,1,2.971-.551C11.222,2.9,11.728,2.883,16,2.883M16,0c-4.345,0-4.89.018-6.6.1A11.744,11.744,0,0,0,5.519.84,7.843,7.843,0,0,0,2.685,2.685,7.843,7.843,0,0,0,.84,5.519,11.744,11.744,0,0,0,.1,9.4C.018,11.11,0,11.655,0,16s.018,4.89.1,6.6A11.744,11.744,0,0,0,.84,26.481a7.843,7.843,0,0,0,1.845,2.834A7.843,7.843,0,0,0,5.519,31.16,11.744,11.744,0,0,0,9.4,31.9c1.707.078,2.251.1,6.6.1s4.89-.018,6.6-.1a11.744,11.744,0,0,0,3.884-.744,8.181,8.181,0,0,0,4.679-4.679A11.744,11.744,0,0,0,31.9,22.6c.078-1.707.1-2.251.1-6.6s-.018-4.89-.1-6.6a11.744,11.744,0,0,0-.744-3.884,7.843,7.843,0,0,0-1.845-2.834A7.843,7.843,0,0,0,26.481.84,11.744,11.744,0,0,0,22.6.1C20.89.018,20.345,0,16,0Zm0,7.784A8.216,8.216,0,1,0,24.216,16,8.216,8.216,0,0,0,16,7.784Zm0,13.55A5.333,5.333,0,1,1,21.333,16,5.333,5.333,0,0,1,16,21.333ZM24.541,5.539a1.92,1.92,0,1,0,1.92,1.92A1.92,1.92,0,0,0,24.541,5.539Z\"/>"
|
||||
},
|
||||
"#linkedin": {
|
||||
"viewbox": "0 0 34.48 32",
|
||||
"content": "<path d=\"M29.632,0H2.362A2.336,2.336,0,0,0,0,2.306V29.691A2.337,2.337,0,0,0,2.362,32h27.27A2.342,2.342,0,0,0,32,29.691V2.306A2.34,2.34,0,0,0,29.632,0ZM9.491,27.268H4.744V12H9.491ZM7.119,9.909a2.752,2.752,0,1,1,2.75-2.753A2.753,2.753,0,0,1,7.119,9.909ZM27.268,27.268H22.525V19.842c0-1.772-.033-4.05-2.466-4.05-2.47,0-2.848,1.929-2.848,3.921v7.555H12.468V12h4.553v2.086h.063a4.986,4.986,0,0,1,4.491-2.467c4.806,0,5.694,3.163,5.694,7.275Z\"/>"
|
||||
},
|
||||
"#vimeo": {
|
||||
"viewbox": "0 0 24.999 20.159",
|
||||
"content": "<path d=\"M26.105,5.927q3.628,0.1,3.641,4.123c0,0.176-.006.36-0.016,0.548q-0.16,3.416-5.09,9.306-5.089,6.17-8.634,6.183-2.205,0-3.671-3.779l-1.029-3.454L10.29,15.4q-1.124-3.749-2.406-3.746a7.819,7.819,0,0,0-1.95,1.091l-1.187-1.4,1.842-1.53L8.4,8.3a8.908,8.908,0,0,1,3.7-2.107,3.207,3.207,0,0,1,.341-0.016q2.606,0,3.249,3.746,0.356,2.137.594,3.473t0.387,1.867q0.862,3.544,1.859,3.559,0.766,0,2.36-2.31A9.305,9.305,0,0,0,22.562,13a2.969,2.969,0,0,0,.031-0.434,1.439,1.439,0,0,0-1.7-1.547,5.46,5.46,0,0,0-1.843.359q1.763-5.434,6.775-5.449h0.281Z\" transform=\"translate(-4.747 -5.927)\" />"
|
||||
},
|
||||
"#youtube": {
|
||||
"viewbox": "0 0 32 22.507",
|
||||
"content": "<path d=\"M31.68,9.6a6.924,6.924,0,0,0-1.272-3.176A4.577,4.577,0,0,0,27.2,5.07c-4.478-.324-11.2-0.324-11.2-0.324H15.993s-6.717,0-11.2.324A4.577,4.577,0,0,0,1.592,6.426,6.921,6.921,0,0,0,.32,9.6,48.4,48.4,0,0,0,0,14.781v2.428a48.4,48.4,0,0,0,.32,5.179,6.921,6.921,0,0,0,1.272,3.176A5.426,5.426,0,0,0,5.12,26.932C7.68,27.177,16,27.253,16,27.253s6.724-.01,11.2-0.334a4.577,4.577,0,0,0,3.206-1.355,6.923,6.923,0,0,0,1.272-3.176A48.46,48.46,0,0,0,32,17.209V14.781A48.46,48.46,0,0,0,31.68,9.6ZM12.7,20.151l0-8.991,8.647,4.511Z\" transform=\"translate(0 -4.747)\" />"
|
||||
},
|
||||
"#pinterest": {
|
||||
"viewbox": "0 0 32 32",
|
||||
"content": "<path d=\"M16 0a16 16 0 0 0-5.83 30.9 15.34 15.34 0 0 1 .055-4.59c.29-1.25 1.876-7.953 1.876-7.953a5.776 5.776 0 0 1-.478-2.375c0-2.225 1.29-3.886 2.9-3.886a2.01 2.01 0 0 1 2.024 2.254c0 1.373-.874 3.425-1.325 5.327a2.323 2.323 0 0 0 2.37 2.89c2.844 0 5.03-3 5.03-7.326a6.316 6.316 0 0 0-6.683-6.508 6.926 6.926 0 0 0-7.225 6.944 6.224 6.224 0 0 0 1.188 3.65.478.478 0 0 1 .11.46c-.12.504-.39 1.59-.443 1.814-.07.293-.232.355-.535.214-2-.93-3.248-3.852-3.248-6.2 0-5.047 3.667-9.682 10.572-9.682 5.55 0 9.864 3.955 9.864 9.24 0 5.515-3.477 9.953-8.3 9.953a4.282 4.282 0 0 1-3.667-1.837s-.8 3.055-1 3.8a17.885 17.885 0 0 1-1.99 4.195A16 16 0 1 0 16 0z\" />"
|
||||
},
|
||||
"#mix": {
|
||||
"viewbox": "0 0 32 32",
|
||||
"content": "<path d=\"M6.4,11.44v17.45C6.4,30.58,4.97,32,3.2,32S0,30.58,0,28.88V17.42C3.42,17.45,6.22,14.79,6.4,11.44z\"/><path d=\"M31.75,0C24.8,0,19.17,5.6,19.2,12.46v8.48c-0.03,1.69-1.46,3.12-3.2,3.12c-1.79,0-3.22-1.42-3.2-3.12V8.48c-0.02-1.78-1.45-3.2-3.2-3.24C7.9,5.27,6.52,6.57,6.4,8.23c-0.01,0.06-0.01,0.14,0,0.25v2.99c-0.19,3.31-2.98,5.97-6.4,5.98V0H31.75z\"/><path d=\"M32,0v17.95c0,1.69-1.43,3.12-3.2,3.12c-1.77,0-3.2-1.42-3.2-3.12v-1.62c0-1.81-1.43-3.23-3.2-3.24c-1.77,0.01-3.2,1.43-3.2,3.24v-3.99C19.2,6.07,23.9,0.86,29.98,0H32z\"/>"
|
||||
},
|
||||
"#buffer": {
|
||||
"viewbox": "0 0 32 32",
|
||||
"content": "<path d=\"M.556,15.342,3.338,14a.954.954,0,0,1,1.091.025c.458.225,10.229,4.942,10.229,4.942a3.506,3.506,0,0,0,2.682,0s10.038-4.85,10.4-5.017a.689.689,0,0,1,.791-.008c.342.167,2.916,1.408,2.916,1.408.741.358.741.942-.017,1.292L17.333,23.45a3.506,3.506,0,0,1-2.682,0L.556,16.642C-.185,16.283-.185,15.7.556,15.342ZM.573,8.375l14.094,6.808a3.506,3.506,0,0,0,2.682,0L31.444,8.375c.741-.358.741-.942,0-1.3L17.349.267a3.506,3.506,0,0,0-2.682,0L.573,7.075C-.169,7.433-.169,8.017.573,8.375Zm30.871,15.25s-2.574-1.242-2.916-1.408a.689.689,0,0,0-.791.008c-.358.167-10.388,5.025-10.388,5.025a3.506,3.506,0,0,1-2.682,0S4.9,22.533,4.438,22.308a.954.954,0,0,0-1.091-.025L.564,23.625c-.741.358-.741.942,0,1.3l14.094,6.808A3.109,3.109,0,0,0,16,32a3.237,3.237,0,0,0,1.341-.267l14.094-6.808C32.185,24.567,32.185,23.983,31.444,23.625Z\" />"
|
||||
},
|
||||
"#whatsapp": {
|
||||
"viewbox": "0 0 32 32",
|
||||
"content": "<path d=\"M24.09,19.64c0.1,0.17,0.1,0.96-0.23,1.88c-0.33,0.93-1.92,1.77-2.69,1.88c-0.69,0.1-1.55,0.14-2.51-0.16c-0.58-0.18-1.32-0.43-2.27-0.83c-3.99-1.72-6.6-5.72-6.8-5.98c-0.2-0.26-1.63-2.15-1.63-4.1c0-1.95,1.03-2.91,1.39-3.31c0.36-0.4,0.8-0.5,1.06-0.5s0.53,0,0.76,0.01c0.24,0.01,0.57-0.09,0.9,0.68c0.33,0.79,1.13,2.74,1.23,2.94c0.1,0.2,0.17,0.43,0.03,0.69c-0.13,0.26-0.2,0.43-0.4,0.66s-0.42,0.52-0.6,0.69c-0.2,0.2-0.41,0.41-0.17,0.81c0.23,0.4,1.03,1.69,2.21,2.74c1.52,1.35,2.8,1.77,3.2,1.97c0.4,0.2,0.63,0.17,0.86-0.1c0.23-0.26,1-1.16,1.26-1.55c0.27-0.4,0.53-0.33,0.9-0.2c0.36,0.13,2.32,1.09,2.72,1.29C23.73,19.37,23.99,19.47,24.09,19.64z M32,15.87c0,8.74-7.15,15.86-15.93,15.86c0,0,0,0,0,0h-0.01c-2.67,0-5.29-0.67-7.61-1.93L0,32l2.26-8.22c-1.39-2.4-2.13-5.13-2.13-7.93C0.14,7.11,7.28,0,16.07,0c4.26,0,8.26,1.65,11.27,4.65C30.35,7.65,32,11.63,32,15.87z M29.31,15.87c0-3.52-1.37-6.83-3.88-9.32c-2.5-2.49-5.83-3.86-9.36-3.87c-7.3,0-13.25,5.91-13.25,13.18c0,2.49,0.7,4.92,2.02,7.01l0.31,0.5l-1.34,4.86l5.01-1.31l0.48,0.29c2.03,1.2,4.36,1.84,6.74,1.84h0.01C23.37,29.05,29.31,23.13,29.31,15.87z\" />"
|
||||
}
|
||||
};
|
||||
@@ -0,0 +1,80 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
|
||||
|
||||
<!-- Generic Icons -->
|
||||
|
||||
<symbol id="search" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="share" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"/><polyline points="16 6 12 2 8 6"/><line x1="12" x2="12" y1="2" y2="15"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="arrow-prev" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-move-left"><path d="M6 8L2 12L6 16"/><path d="M2 12H22"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="arrow-next" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-move-right"><path d="M18 8L22 12L18 16"/><path d="M2 12H22 "/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="toparrow" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-move-up"><path d="M8 6L12 2L16 6"/><path d="M12 2V22"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="website" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h6"/><path d="m21 3-9 9"/><path d="M15 3h6v6"/>
|
||||
</symbol>
|
||||
|
||||
<!-- Social media icons -->
|
||||
|
||||
<symbol id="facebook" viewBox="0 0 32 32">
|
||||
<path d="M32,16.1A16,16,0,1,0,13.5,32V20.75H9.44V16.1H13.5V12.55c0-4,2.39-6.26,6-6.26a24.77,24.77,0,0,1,3.58.31v4h-2a2.33,2.33,0,0,0-2.61,2.52v3h4.44l-.71,4.65H18.5V32A16.07,16.07,0,0,0,32,16.1Z"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="twitter" viewBox="0 0 24 24">
|
||||
<path d="m14.093,10.315L22.283,1h-1.941l-7.111,8.089L7.551,1H1l8.589,12.231L1,23h1.941l7.51-8.542,5.998,8.542h6.551l-8.907-12.685h0Zm-2.658,3.024l-.87-1.218L3.64,2.43h2.981l5.588,7.821.87,1.218,7.264,10.166h-2.981l-5.927-8.296h0Z" />
|
||||
</symbol>
|
||||
|
||||
<symbol id="instagram" viewBox="0 0 32 32">
|
||||
<path d="M16,2.883c4.272,0,4.778.016,6.465.093a8.853,8.853,0,0,1,2.971.551,4.957,4.957,0,0,1,1.84,1.2,4.957,4.957,0,0,1,1.2,1.84,8.853,8.853,0,0,1,.551,2.971c.077,1.687.093,2.193.093,6.465s-.016,4.778-.093,6.465a8.853,8.853,0,0,1-.551,2.971,5.3,5.3,0,0,1-3.037,3.037,8.853,8.853,0,0,1-2.971.551c-1.687.077-2.193.093-6.465.093s-4.778-.016-6.465-.093a8.853,8.853,0,0,1-2.971-.551,4.957,4.957,0,0,1-1.84-1.2,4.957,4.957,0,0,1-1.2-1.84,8.853,8.853,0,0,1-.551-2.971C2.9,20.778,2.883,20.272,2.883,16s.016-4.778.093-6.465a8.853,8.853,0,0,1,.551-2.971,4.957,4.957,0,0,1,1.2-1.84,4.957,4.957,0,0,1,1.84-1.2,8.853,8.853,0,0,1,2.971-.551C11.222,2.9,11.728,2.883,16,2.883M16,0c-4.345,0-4.89.018-6.6.1A11.744,11.744,0,0,0,5.519.84,7.843,7.843,0,0,0,2.685,2.685,7.843,7.843,0,0,0,.84,5.519,11.744,11.744,0,0,0,.1,9.4C.018,11.11,0,11.655,0,16s.018,4.89.1,6.6A11.744,11.744,0,0,0,.84,26.481a7.843,7.843,0,0,0,1.845,2.834A7.843,7.843,0,0,0,5.519,31.16,11.744,11.744,0,0,0,9.4,31.9c1.707.078,2.251.1,6.6.1s4.89-.018,6.6-.1a11.744,11.744,0,0,0,3.884-.744,8.181,8.181,0,0,0,4.679-4.679A11.744,11.744,0,0,0,31.9,22.6c.078-1.707.1-2.251.1-6.6s-.018-4.89-.1-6.6a11.744,11.744,0,0,0-.744-3.884,7.843,7.843,0,0,0-1.845-2.834A7.843,7.843,0,0,0,26.481.84,11.744,11.744,0,0,0,22.6.1C20.89.018,20.345,0,16,0Zm0,7.784A8.216,8.216,0,1,0,24.216,16,8.216,8.216,0,0,0,16,7.784Zm0,13.55A5.333,5.333,0,1,1,21.333,16,5.333,5.333,0,0,1,16,21.333ZM24.541,5.539a1.92,1.92,0,1,0,1.92,1.92A1.92,1.92,0,0,0,24.541,5.539Z"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="linkedin" viewBox="0 0 34.48 32">
|
||||
<path d="M29.632,0H2.362A2.336,2.336,0,0,0,0,2.306V29.691A2.337,2.337,0,0,0,2.362,32h27.27A2.342,2.342,0,0,0,32,29.691V2.306A2.34,2.34,0,0,0,29.632,0ZM9.491,27.268H4.744V12H9.491ZM7.119,9.909a2.752,2.752,0,1,1,2.75-2.753A2.753,2.753,0,0,1,7.119,9.909ZM27.268,27.268H22.525V19.842c0-1.772-.033-4.05-2.466-4.05-2.47,0-2.848,1.929-2.848,3.921v7.555H12.468V12h4.553v2.086h.063a4.986,4.986,0,0,1,4.491-2.467c4.806,0,5.694,3.163,5.694,7.275Z"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="vimeo" viewBox="0 0 24.999 20.159">
|
||||
<path d="M26.105,5.927q3.628,0.1,3.641,4.123c0,0.176-.006.36-0.016,0.548q-0.16,3.416-5.09,9.306-5.089,6.17-8.634,6.183-2.205,0-3.671-3.779l-1.029-3.454L10.29,15.4q-1.124-3.749-2.406-3.746a7.819,7.819,0,0,0-1.95,1.091l-1.187-1.4,1.842-1.53L8.4,8.3a8.908,8.908,0,0,1,3.7-2.107,3.207,3.207,0,0,1,.341-0.016q2.606,0,3.249,3.746,0.356,2.137.594,3.473t0.387,1.867q0.862,3.544,1.859,3.559,0.766,0,2.36-2.31A9.305,9.305,0,0,0,22.562,13a2.969,2.969,0,0,0,.031-0.434,1.439,1.439,0,0,0-1.7-1.547,5.46,5.46,0,0,0-1.843.359q1.763-5.434,6.775-5.449h0.281Z" transform="translate(-4.747 -5.927)" />
|
||||
</symbol>
|
||||
|
||||
<symbol id="youtube" viewBox="0 0 32 22.507">
|
||||
<path d="M31.68,9.6a6.924,6.924,0,0,0-1.272-3.176A4.577,4.577,0,0,0,27.2,5.07c-4.478-.324-11.2-0.324-11.2-0.324H15.993s-6.717,0-11.2.324A4.577,4.577,0,0,0,1.592,6.426,6.921,6.921,0,0,0,.32,9.6,48.4,48.4,0,0,0,0,14.781v2.428a48.4,48.4,0,0,0,.32,5.179,6.921,6.921,0,0,0,1.272,3.176A5.426,5.426,0,0,0,5.12,26.932C7.68,27.177,16,27.253,16,27.253s6.724-.01,11.2-0.334a4.577,4.577,0,0,0,3.206-1.355,6.923,6.923,0,0,0,1.272-3.176A48.46,48.46,0,0,0,32,17.209V14.781A48.46,48.46,0,0,0,31.68,9.6ZM12.7,20.151l0-8.991,8.647,4.511Z" transform="translate(0 -4.747)" />
|
||||
</symbol>
|
||||
|
||||
<symbol id="pinterest" viewBox="0 0 32 32">
|
||||
<path d="M16 0a16 16 0 0 0-5.83 30.9 15.34 15.34 0 0 1 .055-4.59c.29-1.25 1.876-7.953 1.876-7.953a5.776 5.776 0 0 1-.478-2.375c0-2.225 1.29-3.886 2.9-3.886a2.01 2.01 0 0 1 2.024 2.254c0 1.373-.874 3.425-1.325 5.327a2.323 2.323 0 0 0 2.37 2.89c2.844 0 5.03-3 5.03-7.326a6.316 6.316 0 0 0-6.683-6.508 6.926 6.926 0 0 0-7.225 6.944 6.224 6.224 0 0 0 1.188 3.65.478.478 0 0 1 .11.46c-.12.504-.39 1.59-.443 1.814-.07.293-.232.355-.535.214-2-.93-3.248-3.852-3.248-6.2 0-5.047 3.667-9.682 10.572-9.682 5.55 0 9.864 3.955 9.864 9.24 0 5.515-3.477 9.953-8.3 9.953a4.282 4.282 0 0 1-3.667-1.837s-.8 3.055-1 3.8a17.885 17.885 0 0 1-1.99 4.195A16 16 0 1 0 16 0z" />
|
||||
</symbol>
|
||||
|
||||
<symbol id="mix" viewBox="0 0 32 32">
|
||||
<path d="M6.4,11.44v17.45C6.4,30.58,4.97,32,3.2,32S0,30.58,0,28.88V17.42C3.42,17.45,6.22,14.79,6.4,11.44z"/>
|
||||
<path d="M31.75,0C24.8,0,19.17,5.6,19.2,12.46v8.48c-0.03,1.69-1.46,3.12-3.2,3.12c-1.79,0-3.22-1.42-3.2-3.12
|
||||
V8.48c-0.02-1.78-1.45-3.2-3.2-3.24C7.9,5.27,6.52,6.57,6.4,8.23c-0.01,0.06-0.01,0.14,0,0.25v2.99c-0.19,3.31-2.98,5.97-6.4,5.98
|
||||
V0H31.75z"/>
|
||||
<path d="M32,0v17.95c0,1.69-1.43,3.12-3.2,3.12c-1.77,0-3.2-1.42-3.2-3.12v-1.62c0-1.81-1.43-3.23-3.2-3.24
|
||||
c-1.77,0.01-3.2,1.43-3.2,3.24v-3.99C19.2,6.07,23.9,0.86,29.98,0H32z"/>
|
||||
</symbol>
|
||||
|
||||
<symbol id="buffer" viewBox="0 0 32 32">
|
||||
<path d="M.556,15.342,3.338,14a.954.954,0,0,1,1.091.025c.458.225,10.229,4.942,10.229,4.942a3.506,3.506,0,0,0,2.682,0s10.038-4.85,10.4-5.017a.689.689,0,0,1,.791-.008c.342.167,2.916,1.408,2.916,1.408.741.358.741.942-.017,1.292L17.333,23.45a3.506,3.506,0,0,1-2.682,0L.556,16.642C-.185,16.283-.185,15.7.556,15.342ZM.573,8.375l14.094,6.808a3.506,3.506,0,0,0,2.682,0L31.444,8.375c.741-.358.741-.942,0-1.3L17.349.267a3.506,3.506,0,0,0-2.682,0L.573,7.075C-.169,7.433-.169,8.017.573,8.375Zm30.871,15.25s-2.574-1.242-2.916-1.408a.689.689,0,0,0-.791.008c-.358.167-10.388,5.025-10.388,5.025a3.506,3.506,0,0,1-2.682,0S4.9,22.533,4.438,22.308a.954.954,0,0,0-1.091-.025L.564,23.625c-.741.358-.741.942,0,1.3l14.094,6.808A3.109,3.109,0,0,0,16,32a3.237,3.237,0,0,0,1.341-.267l14.094-6.808C32.185,24.567,32.185,23.983,31.444,23.625Z" />
|
||||
</symbol>
|
||||
|
||||
<symbol id="whatsapp" viewBox="0 0 32 32">
|
||||
<path d="M24.09,19.64c0.1,0.17,0.1,0.96-0.23,1.88c-0.33,0.93-1.92,1.77-2.69,1.88c-0.69,0.1-1.55,0.14-2.51-0.16
|
||||
c-0.58-0.18-1.32-0.43-2.27-0.83c-3.99-1.72-6.6-5.72-6.8-5.98c-0.2-0.26-1.63-2.15-1.63-4.1c0-1.95,1.03-2.91,1.39-3.31
|
||||
c0.36-0.4,0.8-0.5,1.06-0.5s0.53,0,0.76,0.01c0.24,0.01,0.57-0.09,0.9,0.68c0.33,0.79,1.13,2.74,1.23,2.94
|
||||
c0.1,0.2,0.17,0.43,0.03,0.69c-0.13,0.26-0.2,0.43-0.4,0.66s-0.42,0.52-0.6,0.69c-0.2,0.2-0.41,0.41-0.17,0.81
|
||||
c0.23,0.4,1.03,1.69,2.21,2.74c1.52,1.35,2.8,1.77,3.2,1.97c0.4,0.2,0.63,0.17,0.86-0.1c0.23-0.26,1-1.16,1.26-1.55
|
||||
c0.27-0.4,0.53-0.33,0.9-0.2c0.36,0.13,2.32,1.09,2.72,1.29C23.73,19.37,23.99,19.47,24.09,19.64z M32,15.87
|
||||
c0,8.74-7.15,15.86-15.93,15.86c0,0,0,0,0,0h-0.01c-2.67,0-5.29-0.67-7.61-1.93L0,32l2.26-8.22c-1.39-2.4-2.13-5.13-2.13-7.93
|
||||
C0.14,7.11,7.28,0,16.07,0c4.26,0,8.26,1.65,11.27,4.65C30.35,7.65,32,11.63,32,15.87z M29.31,15.87c0-3.52-1.37-6.83-3.88-9.32
|
||||
c-2.5-2.49-5.83-3.86-9.36-3.87c-7.3,0-13.25,5.91-13.25,13.18c0,2.49,0.7,4.92,2.02,7.01l0.31,0.5l-1.34,4.86l5.01-1.31l0.48,0.29
|
||||
c2.03,1.2,4.36,1.84,6.74,1.84h0.01C23.37,29.05,29.31,23.13,29.31,15.87z" />
|
||||
</symbol>
|
||||
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.7 KiB |
@@ -0,0 +1,12 @@
|
||||
<!DOCTYPE html><html lang="de-ch"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Author: Roman Tymets - Tymets Bau</title><meta name="robots" content="noindex, follow"><meta name="generator" content="Publii Open-Source CMS for Static Site"><link rel="alternate" type="application/atom+xml" href="https://tymetsbau.ch/feed.xml" title="Tymets Bau - RSS"><link rel="alternate" type="application/json" href="https://tymetsbau.ch/feed.json" title="Tymets Bau - JSON"><meta property="og:title" content="Roman Tymets"><meta property="og:site_name" content="Tymets Bau"><meta property="og:description" content=""><meta property="og:url" content="https://tymetsbau.ch/authors/roman-tymets/"><meta property="og:type" content="website"><link rel="stylesheet" href="https://tymetsbau.ch/assets/css/style.css?v=b51244884238ffcff6304f7b423b071c"><script type="application/ld+json">{"@context":"http://schema.org","@type":"Organization","name":"Tymets Bau","url":"https://tymetsbau.ch/"}</script><noscript><style>img[loading] {
|
||||
opacity: 1;
|
||||
}</style></noscript></head><body class="author-template"><header class="top js-header"><a class="logo" href="https://tymetsbau.ch/">Tymets Bau</a><nav class="navbar js-navbar"><button class="navbar__toggle js-toggle" aria-label="Menu" aria-haspopup="true" aria-expanded="false"><span class="navbar__toggle-box"><span class="navbar__toggle-inner">Menu</span></span></button><ul class="navbar__menu"><li><a href="https://tymetsbau.ch/" target="_self">Startseite</a></li><li><a href="#leistungen" target="_self">Leistungen</a></li><li><a href="#ueberuns" target="_self">Über uns</a></li><li><a href="#referenzen" target="_self">Referenzen</a></li><li><a href="#kontakt" target="_self">Kontakt</a></li></ul></nav></header><main class="page page--author"><div class="hero hero--noimage"><header class="hero__content"><div class="wrapper page--author__wrapper"><div><h1>Roman Tymets <sup>(0)</sup></h1></div></div></header></div><div class="wrapper feed"></div></main><footer class="footer"><div class="wrapper"><div class="footer__copyright"><p>Powered by Publii</p></div><button id="backToTop" class="footer__bttop" aria-label="Back to top" title="Back to top"><svg width="20" height="20"><use xlink:href="https://tymetsbau.ch/assets/svg/svg-map.svg#toparrow"/></svg></button></div></footer><script defer="defer" src="https://tymetsbau.ch/assets/js/scripts.min.js?v=ffcbea6c02c8178d10092962b235a5b0"></script><script>window.publiiThemeMenuConfig={mobileMenuMode:'sidebar',animationSpeed:300,submenuWidth: 'auto',doubleClickTime:500,mobileMenuExpandableSubmenus:true,relatedContainerForOverlayMenuSelector:'.top'};</script><script>var images = document.querySelectorAll('img[loading]');
|
||||
for (var i = 0; i < images.length; i++) {
|
||||
if (images[i].complete) {
|
||||
images[i].classList.add('is-loaded');
|
||||
} else {
|
||||
images[i].addEventListener('load', function () {
|
||||
this.classList.add('is-loaded');
|
||||
}, false);
|
||||
}
|
||||
}</script></body></html>
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"version": "https://jsonfeed.org/version/1",
|
||||
"title": "Tymets Bau",
|
||||
"description": "",
|
||||
"home_page_url": "https://tymetsbau.ch",
|
||||
"feed_url": "https://tymetsbau.ch/feed.json",
|
||||
"user_comment": "",
|
||||
"author": {
|
||||
"name": "Roman Tymets"
|
||||
},
|
||||
"items": [
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/">
|
||||
<title>Tymets Bau</title>
|
||||
<link href="https://tymetsbau.ch/feed.xml" rel="self" />
|
||||
<link href="https://tymetsbau.ch" />
|
||||
<updated>1970-01-01T01:00:00+01:00</updated>
|
||||
<author>
|
||||
<name>Roman Tymets</name>
|
||||
</author>
|
||||
<id>https://tymetsbau.ch</id>
|
||||
|
||||
</feed>
|
||||
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 9.9 KiB |
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 9.9 KiB |
@@ -0,0 +1,3 @@
|
||||
User-agent: *
|
||||
Disallow:
|
||||
Sitemap: https://tymetsbau.ch/sitemap.xml
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="https://tymetsbau.ch/sitemap.xsl"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
|
||||
<url>
|
||||
<loc>https://tymetsbau.ch/</loc>
|
||||
</url>
|
||||
</urlset>
|
||||
@@ -0,0 +1,103 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xsl:stylesheet version="2.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:sitemap="http://www.sitemaps.org/schemas/sitemap/0.9"
|
||||
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"
|
||||
xmlns:html="http://www.w3.org/TR/REC-html40">
|
||||
<xsl:output version="1.0" method="html" encoding="UTF-8" />
|
||||
<xsl:template match="/">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>Sitemap XML</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<style type="text/css">
|
||||
html,
|
||||
body {
|
||||
color: #333;
|
||||
font-family: Arial, sans-serif;
|
||||
font-size: 14px;
|
||||
line-height: 1.4;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #000;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.wrapper {
|
||||
margin: 20px auto;
|
||||
width: 1240px;
|
||||
}
|
||||
|
||||
.header {
|
||||
font-size: 32px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.info {
|
||||
margin: 25px 0;
|
||||
}
|
||||
|
||||
.list {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.list,
|
||||
.list td,
|
||||
.list th {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.list td,
|
||||
.list th {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.list thead th {
|
||||
background: #eee;
|
||||
}
|
||||
|
||||
.list tr:nth-child(even) td {
|
||||
background-color: #f0f0f0;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="wrapper">
|
||||
<h1 class="header">Sitemap XML</h1>
|
||||
|
||||
<div class="info">This sitemap contains <xsl:value-of select="count(sitemap:urlset/sitemap:url)"/> URLs.</div>
|
||||
<table class="list" border="none" cellspacing="0" cellpadding="3">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="70%">URL</th>
|
||||
<th width="10%">Images</th>
|
||||
<th width="20%">Last Modified</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<xsl:for-each select="sitemap:urlset/sitemap:url">
|
||||
<tr>
|
||||
<td>
|
||||
<xsl:variable name="url"><xsl:value-of select="sitemap:loc"/></xsl:variable>
|
||||
<a href="{$url}"><xsl:value-of select="sitemap:loc"/></a>
|
||||
</td>
|
||||
<td style="text-align: center;">
|
||||
<xsl:value-of select="count(image:image)"/>
|
||||
</td>
|
||||
<td style="text-align: center; font-family: monospace;">
|
||||
<xsl:value-of select="concat( substring( sitemap:lastmod, 0, 11), concat(' ', substring( sitemap:lastmod, 12, 14 ) ) )"/>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -0,0 +1,12 @@
|
||||
<!DOCTYPE html><html lang="de-ch"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><title>All tags - Tymets Bau</title><meta name="robots" content="noindex, follow"><meta name="generator" content="Publii Open-Source CMS for Static Site"><link rel="alternate" type="application/atom+xml" href="https://tymetsbau.ch/feed.xml" title="Tymets Bau - RSS"><link rel="alternate" type="application/json" href="https://tymetsbau.ch/feed.json" title="Tymets Bau - JSON"><meta property="og:title" content="Tymets Bau"><meta property="og:site_name" content="Tymets Bau"><meta property="og:description" content=""><meta property="og:url" content="https://tymetsbau.ch/tags/"><meta property="og:type" content="website"><link rel="stylesheet" href="https://tymetsbau.ch/assets/css/style.css?v=b51244884238ffcff6304f7b423b071c"><script type="application/ld+json">{"@context":"http://schema.org","@type":"Organization","name":"Tymets Bau","url":"https://tymetsbau.ch/"}</script><noscript><style>img[loading] {
|
||||
opacity: 1;
|
||||
}</style></noscript></head><body class="tags-template"><header class="top js-header"><a class="logo" href="https://tymetsbau.ch/">Tymets Bau</a><nav class="navbar js-navbar"><button class="navbar__toggle js-toggle" aria-label="Menu" aria-haspopup="true" aria-expanded="false"><span class="navbar__toggle-box"><span class="navbar__toggle-inner">Menu</span></span></button><ul class="navbar__menu"><li><a href="https://tymetsbau.ch/" target="_self">Startseite</a></li><li><a href="#leistungen" target="_self">Leistungen</a></li><li><a href="#ueberuns" target="_self">Über uns</a></li><li><a href="#referenzen" target="_self">Referenzen</a></li><li><a href="#kontakt" target="_self">Kontakt</a></li></ul></nav></header><main class="page page--tags"><div class="hero hero--noimage"><header class="hero__content"><div class="wrapper"><h1>Tags</h1><p class="page__desc">Collection of all 0 tags</p></div></header></div><div class="wrapper"><ul class="feed feed--grid"></ul></div></main><footer class="footer"><div class="wrapper"><div class="footer__copyright"><p>Powered by Publii</p></div><button id="backToTop" class="footer__bttop" aria-label="Back to top" title="Back to top"><svg width="20" height="20"><use xlink:href="https://tymetsbau.ch/assets/svg/svg-map.svg#toparrow"/></svg></button></div></footer><script defer="defer" src="https://tymetsbau.ch/assets/js/scripts.min.js?v=ffcbea6c02c8178d10092962b235a5b0"></script><script>window.publiiThemeMenuConfig={mobileMenuMode:'sidebar',animationSpeed:300,submenuWidth: 'auto',doubleClickTime:500,mobileMenuExpandableSubmenus:true,relatedContainerForOverlayMenuSelector:'.top'};</script><script>var images = document.querySelectorAll('img[loading]');
|
||||
for (var i = 0; i < images.length; i++) {
|
||||
if (images[i].complete) {
|
||||
images[i].classList.add('is-loaded');
|
||||
} else {
|
||||
images[i].addEventListener('load', function () {
|
||||
this.classList.add('is-loaded');
|
||||
}, false);
|
||||
}
|
||||
}</script></body></html>
|
||||