Second frontend, written in Next.JS + Typescript.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

0 lines
17 KiB

4 years ago
  1. {"ast":null,"code":"\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports[\"default\"] = initializeBuildWatcher;\n\nvar _router = _interopRequireDefault(require(\"../router\"));\n\nfunction initializeBuildWatcher() {\n var shadowHost = document.createElement('div');\n shadowHost.id = '__next-prerender-indicator'; // Make sure container is fixed and on a high zIndex so it shows\n\n shadowHost.style.position = 'fixed';\n shadowHost.style.bottom = '20px';\n shadowHost.style.right = '10px';\n shadowHost.style.width = 0;\n shadowHost.style.height = 0;\n shadowHost.style.zIndex = 99998;\n shadowHost.style.transition = 'all 100ms ease';\n document.body.appendChild(shadowHost);\n var shadowRoot;\n var prefix = '';\n\n if (shadowHost.attachShadow) {\n shadowRoot = shadowHost.attachShadow({\n mode: 'open'\n });\n } else {\n // If attachShadow is undefined then the browser does not support\n // the Shadow DOM, we need to prefix all the names so there\n // will be no conflicts\n shadowRoot = shadowHost;\n prefix = '__next-prerender-indicator-';\n } // Container\n\n\n var container = createContainer(prefix);\n shadowRoot.appendChild(container); // CSS\n\n var css = createCss(prefix);\n shadowRoot.appendChild(css);\n var expandEl = container.querySelector('a');\n var closeEl = container.querySelector(\"#\" + prefix + \"close\"); // State\n\n var dismissKey = '__NEXT_DISMISS_PRERENDER_INDICATOR';\n var dismissUntil = parseInt(window.localStorage.getItem(dismissKey), 10);\n var dismissed = dismissUntil > new Date().getTime();\n var isVisible = !dismissed && window.__NEXT_DATA__.nextExport;\n\n function updateContainer() {\n if (isVisible) {\n container.classList.add(prefix + \"visible\");\n } else {\n container.classList.remove(prefix + \"visible\");\n }\n }\n\n var expandedClass = prefix + \"expanded\";\n var toggleTimeout;\n\n var toggleExpand = function toggleExpand(expand) {\n if (expand === void 0) {\n expand = true;\n }\n\n clearTimeout(toggleTimeout);\n toggleTimeout = setTimeout(function () {\n if (expand) {\n expandEl.classList.add(expandedClass);\n closeEl.style.display = 'flex';\n } else {\n expandEl.classList.remove(expandedClass);\n closeEl.style.display = 'none';\n }\n }, 50);\n };\n\n closeEl.addEventListener('click', function () {\n var oneHourAway = new Date().getTime() + 1 * 60 * 60 * 1000;\n window.localStorage.setItem(dismissKey, oneHourAway + '');\n isVisible = false;\n updateContainer();\n });\n closeEl.addEventListener('mouseenter', function () {\n return toggleExpand();\n });\n closeEl.addEventListener('mouseleave', function () {\n return toggleExpand(false);\n });\n expandEl.addEventListener('mouseenter', function () {\n return toggleExpand();\n });\n expandEl.addEventListener('mouseleave', function () {\n return toggleExpand(false);\n });\n\n _router[\"default\"].events.on('routeChangeComplete', function () {\n isVisible = window.next.isPrerendered;\n updateContainer();\n });\n\n updateContainer();\n}\n\nfunction createContainer(prefix) {\n var container = document.createElement('div');\n container.id = prefix + \"container\";\n container.innerHTML = \"\\n <button id=\\\"\" + prefix + \"close\\\" title=\\\"Hide indicator for session\\\">\\n <span>\\xD7</span>\\n </button>\\n <a href=\\\"https://nextjs.org/docs#automatic-static-optimization-indicator\\\" target=\\\"_blank\\\" rel=\\\"noreferrer\\\">\\n <div id=\\\"\" + prefix + \"icon-wrapper\\\">\\n <svg width=\\\"15\\\" height=\\\"20\\\" viewBox=\\\"0 0 60 80\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n <path d=\\\"M36 3L30.74 41H8L36 3Z\\\" fill=\\\"black\\\"/>\\n <path d=\\\"M25 77L30.26 39H53L25 77Z\\\" fill=\\\"black\\\"/>\\n <path d=\\\"M13.5 33.5L53 39L47.5 46.5L7 41.25L13.5 33.5Z\\\" fill=\\\"black\\\"/>\