{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,E,Q,C,Q,S,C,C,C,E,E,E,O,C,W,I,E,A,G,E,G,E,E,O,C,U,I,E,A,G,E,GCEA,IAcA,EACA,EAfI,EAAU,CAAC,EAcf,EAbA,SAAkB,CAAK,EAErB,IAAK,IADD,EAAO,OAAO,IAAA,CAAK,GACd,EAAI,EAAG,EAAI,EAAK,MAAA,CAAQ,IAC/B,CAAO,CAAC,CAAI,CAAC,EAAE,CAAC,CAAG,CAAK,CAAC,CAAI,CAAC,EAAE,CAAC,AAErC,EASA,EARA,SAAiB,CAAE,EACjB,IAAI,EAAW,CAAO,CAAC,EAAG,CAC1B,GAAI,AAAY,MAAZ,EACF,MAAM,AAAI,MAAM,oCAAsC,GAExD,OAAO,CACT,C,G,E,Q,C,Q,S,C,C,C,E,E,E,O,C,I,I,G,E,E,O,C,I,I,G,E,E,O,C,I,I,G,E,E,O,C,I,I,G,E,E,O,C,I,I,ECfA;;;;CAIC,EACD,IAAM,EAAI,CAAC,EAAM,EAAO,CAAC,CAAC,CAAE,EAAW,EAAE,IACvC,IAAM,EACJ,AAAe,YAAf,OAAO,EAAqB,EAAK,GAAQ,OAAO,MAAA,CAAO,SAAS,aAAA,CAAc,GAAO,GAKvF,OAJK,MAAM,OAAA,CAAQ,IACjB,CAAA,EAAW,CAAC,EAAS,AAAA,EAEvB,EAAO,MAAA,IAAU,GACV,CACT,EAgBM,EAAI,AAAC,IACT,KAAO,EAAK,SAAA,EACV,EAAK,WAAA,CAAY,EAAK,SADxB,CAGF,EASM,EAAI,AAAC,GAAS,SAAS,cAAA,CAAe,GAqBtC,EAAI,AAAC,GAAa,MAAM,IAAA,CAAK,SAAS,gBAAA,CAAiB,IAuBvD,EAAI,AAAC,GAAa,OAAO,gBAAA,CAAiB,mBAAoB,E,G,E,Q,C,Q,S,C,C,C,E,E,E,O,C,c,I,GCtF7D,IAAM,EAAc,c,G,E,Q,C,Q,S,C,C,C,ECA3B,EAAA,OAAA,CAAkB,MAAA,CAAmB,KAAO,AAAA,EAAA,SAAA,OAAA,CAA6C,UAAW,IAAA,CAAK,IAAM,EAAc,S,G,E,Q,C,Q,S,C,C,C,ECA7H,EAAA,OAAA,CAAkB,MAAA,CAAmB,KAAO,AAAA,EAAA,SAAA,OAAA,CAA6C,UAAW,IAAA,CAAK,IAAM,EAAc,S,GCA7H,AAAA,EAAA,SAAA,QAAA,CAA8C,KAAK,KAAA,CAAM,kJCAzD,cAAa;A,I,E,E,S,E,E,SASb,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAE,UAEA,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAE,kBAAkB,OAAA,CAAQ,AAAC,GAAyB,EAAE,IAAA,CAAO,CAAA,CAAA,EAAI,EAAE,YAAA,CAAa,eAAc,CAAE,EAElG,IAAM,EAAc,MAApB,EAAA,SAEM,EAAS,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAE,iBAEX,EAAW,cAEX,EADJ,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAE,GAIE,EADG,eADC,OAAO,QAAA,CAAS,IAAxB,CAEW,MAAP,EAAA,SAGO,EAIX,IAAI,EAAU,MAAM,EAAK,IAAzB,GACA,EAAO,WAAA,CAAY,GACnB,SAAS,KAAA,CAAQ,MAAO,EAAK,KAAA,GAAW,EAAA,WAAA,AAC1C,EAEA,OAAO,gBAAA,CAAiB,aAAc,GACtC,MAAM,GACR,E,4D","sources":["","../../nix/store/f1ykwdsx441c2k9vdy3bbn0rg72971d5-nzbr.link-1.0.0-node-modules/.pnpm/@parcel+runtime-js@2.9.3_@parcel+core@2.9.3/node_modules/@parcel/runtime-js/lib/helpers/bundle-manifest.js","../../nix/store/f1ykwdsx441c2k9vdy3bbn0rg72971d5-nzbr.link-1.0.0-node-modules/.pnpm/@xeserv+xeact@0.71.1/node_modules/@xeserv/xeact/xeact.js","src/js/consts.ts","../../nix/store/f1ykwdsx441c2k9vdy3bbn0rg72971d5-nzbr.link-1.0.0-node-modules/.pnpm/@parcel+runtime-js@2.9.3_@parcel+core@2.9.3/node_modules/@parcel/runtime-js/lib/runtime-fdf11cb3b9ee4e68.js","../../nix/store/f1ykwdsx441c2k9vdy3bbn0rg72971d5-nzbr.link-1.0.0-node-modules/.pnpm/@parcel+runtime-js@2.9.3_@parcel+core@2.9.3/node_modules/@parcel/runtime-js/lib/runtime-426e87aba23cbaf8.js","../../nix/store/f1ykwdsx441c2k9vdy3bbn0rg72971d5-nzbr.link-1.0.0-node-modules/.pnpm/@parcel+runtime-js@2.9.3_@parcel+core@2.9.3/node_modules/@parcel/runtime-js/lib/runtime-a1c746ed22284b89.js","src/js/router.tsx"],"sourcesContent":["function $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $parcel$global =\ntypeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire62b7\"];\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire62b7\"] = parcelRequire;\n}\nparcelRequire.register(\"ktltl\", function(module, exports) {\n\n$parcel$export(module.exports, \"register\", () => $ee772c0386d5dfa4$export$6503ec6e8aabbaf, (v) => $ee772c0386d5dfa4$export$6503ec6e8aabbaf = v);\n$parcel$export(module.exports, \"resolve\", () => $ee772c0386d5dfa4$export$f7ad0328861e2f03, (v) => $ee772c0386d5dfa4$export$f7ad0328861e2f03 = v);\nvar $ee772c0386d5dfa4$export$6503ec6e8aabbaf;\nvar $ee772c0386d5dfa4$export$f7ad0328861e2f03;\n\"use strict\";\nvar $ee772c0386d5dfa4$var$mapping = {};\nfunction $ee772c0386d5dfa4$var$register(pairs) {\n var keys = Object.keys(pairs);\n for(var i = 0; i < keys.length; i++)$ee772c0386d5dfa4$var$mapping[keys[i]] = pairs[keys[i]];\n}\nfunction $ee772c0386d5dfa4$var$resolve(id) {\n var resolved = $ee772c0386d5dfa4$var$mapping[id];\n if (resolved == null) throw new Error(\"Could not resolve bundle with id \" + id);\n return resolved;\n}\n$ee772c0386d5dfa4$export$6503ec6e8aabbaf = $ee772c0386d5dfa4$var$register;\n$ee772c0386d5dfa4$export$f7ad0328861e2f03 = $ee772c0386d5dfa4$var$resolve;\n\n});\n\nparcelRequire.register(\"fM06D\", function(module, exports) {\n\n$parcel$export(module.exports, \"h\", () => $b7bb6bc0410b3580$export$dda1d9f60106f0e9);\n$parcel$export(module.exports, \"x\", () => $b7bb6bc0410b3580$export$d141bba7fdc215a3);\n$parcel$export(module.exports, \"g\", () => $b7bb6bc0410b3580$export$39b482c5e57630a8);\n$parcel$export(module.exports, \"s\", () => $b7bb6bc0410b3580$export$2408f22a0fab9ae5);\n$parcel$export(module.exports, \"r\", () => $b7bb6bc0410b3580$export$43caf9889c228507);\n/**\n * Creates a DOM element, assigns the properties of `data` to it, and appends all `children`.\n *\n * @type{function(string|Function, Object=, Node|Array.=)}\n */ const $b7bb6bc0410b3580$export$dda1d9f60106f0e9 = (name, data = {}, children = [])=>{\n const result = typeof name == \"function\" ? name(data) : Object.assign(document.createElement(name), data);\n if (!Array.isArray(children)) children = [\n children\n ];\n result.append(...children);\n return result;\n};\n/**\n * Create a text node.\n *\n * Equivalent to `document.createTextNode(text)`\n *\n * @type{function(string): Text}\n */ const $b7bb6bc0410b3580$export$625550452a3fa3ec = (text)=>document.createTextNode(text);\n/**\n * Remove all child nodes from a DOM element.\n *\n * @type{function(Node)}\n */ const $b7bb6bc0410b3580$export$d141bba7fdc215a3 = (elem)=>{\n while(elem.lastChild)elem.removeChild(elem.lastChild);\n};\n/**\n * Get all elements with the given ID.\n *\n * Equivalent to `document.getElementById(name)`\n *\n * @type{function(string): HTMLElement}\n */ const $b7bb6bc0410b3580$export$39b482c5e57630a8 = (name)=>document.getElementById(name);\n/**\n * Get all elements with the given class name.\n *\n * Equivalent to `document.getElementsByClassName(name)`\n *\n * @type{function(string): HTMLCollectionOf.}\n */ const $b7bb6bc0410b3580$export$db3b6bfb95261072 = (name)=>document.getElementsByClassName(name);\n/** @type{function(string): HTMLCollectionOf.} */ const $b7bb6bc0410b3580$export$7ccc53e8f1e7dfc5 = (name)=>document.getElementsByName(name);\n/**\n * Get all elements matching the given HTML selector.\n *\n * Matches selectors with `document.querySelectorAll(selector)`\n *\n * @type{function(string): Array.}\n */ const $b7bb6bc0410b3580$export$2408f22a0fab9ae5 = (selector)=>Array.from(document.querySelectorAll(selector));\n/**\n * Generate a relative URL from `url`, appending all key-value pairs from `params` as URL-encoded parameters.\n *\n * @type{function(string=, Object=): string}\n */ const $b7bb6bc0410b3580$export$3b14a55fb2447963 = (url = \"\", params = {})=>{\n let result = new URL(url, window.location.href);\n Object.entries(params).forEach((kv)=>{\n let [k, v] = kv;\n result.searchParams.set(k, v);\n });\n return result.toString();\n};\n/**\n * Takes a callback to run when all DOM content is loaded.\n *\n * Equivalent to `window.addEventListener('DOMContentLoaded', callback)`\n *\n * @type{function(function())}\n */ const $b7bb6bc0410b3580$export$43caf9889c228507 = (callback)=>window.addEventListener(\"DOMContentLoaded\", callback);\n/**\n * Allows a stateful value to be tracked by consumers.\n *\n * This is the Xeact version of the React useState hook.\n *\n * @type{function(any): [function(): any, function(any): void]}\n */ const $b7bb6bc0410b3580$export$60241385465d0a34 = (value)=>{\n return [\n ()=>value,\n (x)=>{\n value = x;\n }\n ];\n};\n/**\n * Debounce an action for up to ms milliseconds.\n *\n * @type{function(number): function(function(any): void)}\n */ const $b7bb6bc0410b3580$export$4368d992c4eafac0 = (ms)=>{\n let debounceTimer = null;\n return (f)=>{\n clearTimeout(debounceTimer);\n debounceTimer = setTimeout(f, ms);\n };\n};\n\n});\n\nparcelRequire.register(\"23Gzg\", function(module, exports) {\n\n$parcel$export(module.exports, \"titleSuffix\", () => $17fce1a848241867$export$4477d857f92b6d1c);\nconst $17fce1a848241867$export$4477d857f92b6d1c = \" - nzbr.link\";\n\n});\n\nparcelRequire.register(\"dR6jv\", function(module, exports) {\n\nmodule.exports = import(\"./\" + (parcelRequire(\"ktltl\")).resolve(\"iww4G\")).then(()=>parcelRequire(\"z0Dgf\"));\n\n});\n\nparcelRequire.register(\"5zZe0\", function(module, exports) {\n\nmodule.exports = import(\"./\" + (parcelRequire(\"ktltl\")).resolve(\"4tsJS\")).then(()=>parcelRequire(\"cILUD\"));\n\n});\n\nvar $0ce756d3dc3e2658$exports = {};\n\n(parcelRequire(\"ktltl\")).register(JSON.parse('{\"g9a8O\":\"index.5a2bac5f.js\",\"iww4G\":\"default.d2cf35b0.js\",\"4tsJS\":\"impressum.4736071d.js\"}'));\n\n// @ts-ignore\n\nvar $fM06D = parcelRequire(\"fM06D\");\n\nvar $23Gzg = parcelRequire(\"23Gzg\");\n\n\n(0, $fM06D.r)(async ()=>{\n (0, $fM06D.s)(\"a[router-link]\").forEach((a)=>a.href = `#${a.getAttribute(\"router-link\")}`);\n const defaultPage = await (parcelRequire(\"dR6jv\"));\n const outlet = (0, $fM06D.g)(\"router-outlet\");\n const navigate = async ()=>{\n (0, $fM06D.x)(outlet);\n let page;\n switch(window.location.hash){\n case \"#impressum\":\n page = await (parcelRequire(\"5zZe0\"));\n break;\n default:\n page = defaultPage;\n break;\n }\n let content = await page.Page();\n outlet.appendChild(content);\n document.title = await page.Title() + (0, $23Gzg.titleSuffix);\n };\n window.addEventListener(\"hashchange\", navigate);\n await navigate();\n});\n\n\n//# sourceMappingURL=index.5a2bac5f.js.map\n","\"use strict\";\n\nvar mapping = {};\nfunction register(pairs) {\n var keys = Object.keys(pairs);\n for (var i = 0; i < keys.length; i++) {\n mapping[keys[i]] = pairs[keys[i]];\n }\n}\nfunction resolve(id) {\n var resolved = mapping[id];\n if (resolved == null) {\n throw new Error('Could not resolve bundle with id ' + id);\n }\n return resolved;\n}\nmodule.exports.register = register;\nmodule.exports.resolve = resolve;","/**\n * Creates a DOM element, assigns the properties of `data` to it, and appends all `children`.\n *\n * @type{function(string|Function, Object=, Node|Array.=)}\n */\nconst h = (name, data = {}, children = []) => {\n const result =\n typeof name == \"function\" ? name(data) : Object.assign(document.createElement(name), data);\n if (!Array.isArray(children)) {\n children = [children];\n }\n result.append(...children);\n return result;\n};\n\n/**\n * Create a text node.\n *\n * Equivalent to `document.createTextNode(text)`\n *\n * @type{function(string): Text}\n */\nconst t = (text) => document.createTextNode(text);\n\n/**\n * Remove all child nodes from a DOM element.\n *\n * @type{function(Node)}\n */\nconst x = (elem) => {\n while (elem.lastChild) {\n elem.removeChild(elem.lastChild);\n }\n};\n\n/**\n * Get all elements with the given ID.\n *\n * Equivalent to `document.getElementById(name)`\n *\n * @type{function(string): HTMLElement}\n */\nconst g = (name) => document.getElementById(name);\n\n/**\n * Get all elements with the given class name.\n *\n * Equivalent to `document.getElementsByClassName(name)`\n *\n * @type{function(string): HTMLCollectionOf.}\n */\nconst c = (name) => document.getElementsByClassName(name);\n\n/** @type{function(string): HTMLCollectionOf.} */\nconst n = (name) => document.getElementsByName(name);\n\n/**\n * Get all elements matching the given HTML selector.\n *\n * Matches selectors with `document.querySelectorAll(selector)`\n *\n * @type{function(string): Array.}\n */\nconst s = (selector) => Array.from(document.querySelectorAll(selector));\n\n/**\n * Generate a relative URL from `url`, appending all key-value pairs from `params` as URL-encoded parameters.\n *\n * @type{function(string=, Object=): string}\n */\nconst u = (url = \"\", params = {}) => {\n let result = new URL(url, window.location.href);\n Object.entries(params).forEach((kv) => {\n let [k, v] = kv;\n result.searchParams.set(k, v);\n });\n return result.toString();\n};\n\n/**\n * Takes a callback to run when all DOM content is loaded.\n *\n * Equivalent to `window.addEventListener('DOMContentLoaded', callback)`\n *\n * @type{function(function())}\n */\nconst r = (callback) => window.addEventListener(\"DOMContentLoaded\", callback);\n\n/**\n * Allows a stateful value to be tracked by consumers.\n *\n * This is the Xeact version of the React useState hook.\n *\n * @type{function(any): [function(): any, function(any): void]}\n */\nconst useState = (value = undefined) => {\n return [\n () => value,\n (x) => {\n value = x;\n },\n ];\n};\n\n/**\n * Debounce an action for up to ms milliseconds.\n *\n * @type{function(number): function(function(any): void)}\n */\nconst d = (ms) => {\n let debounceTimer = null;\n return (f) => {\n clearTimeout(debounceTimer);\n debounceTimer = setTimeout(f, ms);\n };\n};\n\nexport { h, t, x, g, c, n, u, s, r, useState, d };\n","export const titleSuffix = ' - nzbr.link';\n","module.exports = (__parcel__import__(\"./\" + require('./helpers/bundle-manifest').resolve(\"iww4G\"))).then(() => parcelRequire('z0Dgf'));","module.exports = (__parcel__import__(\"./\" + require('./helpers/bundle-manifest').resolve(\"4tsJS\"))).then(() => parcelRequire('cILUD'));","require('./helpers/bundle-manifest').register(JSON.parse(\"{\\\"g9a8O\\\":\\\"index.5a2bac5f.js\\\",\\\"iww4G\\\":\\\"default.d2cf35b0.js\\\",\\\"4tsJS\\\":\\\"impressum.4736071d.js\\\"}\"));","// @ts-ignore\nimport { g, r, s, x } from '@xeserv/xeact';\nimport { titleSuffix } from './consts';\n\nexport interface PageModule {\n Title: () => Promise;\n Page: () => Promise;\n}\n\nr(async () => {\n\n s('a[router-link]').forEach((a: HTMLAnchorElement) => a.href = `#${a.getAttribute('router-link')}`);\n\n const defaultPage = await import('./pages/default');\n\n const outlet = g('router-outlet');\n\n const navigate = async () => {\n x(outlet);\n let page: PageModule;\n switch (window.location.hash) {\n case '#impressum':\n page = await import('./pages/impressum');\n break;\n default:\n page = defaultPage;\n break;\n }\n\n let content = await page.Page();\n outlet.appendChild(content);\n document.title = (await page.Title()) + titleSuffix;\n };\n\n window.addEventListener('hashchange', navigate);\n await navigate();\n});\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","$ee772c0386d5dfa4$export$6503ec6e8aabbaf","$ee772c0386d5dfa4$export$f7ad0328861e2f03","$ee772c0386d5dfa4$var$mapping","pairs","keys","i","length","resolved","$b7bb6bc0410b3580$export$dda1d9f60106f0e9","$b7bb6bc0410b3580$export$d141bba7fdc215a3","$b7bb6bc0410b3580$export$39b482c5e57630a8","$b7bb6bc0410b3580$export$2408f22a0fab9ae5","$b7bb6bc0410b3580$export$43caf9889c228507","name","data","children","result","assign","document","createElement","Array","isArray","append","elem","lastChild","removeChild","getElementById","selector","from","querySelectorAll","callback","addEventListener","$17fce1a848241867$export$4477d857f92b6d1c","resolve","then","JSON","parse","$fM06D","$23Gzg","r","forEach","a","href","getAttribute","defaultPage","outlet","g","navigate","page","x","location","hash","content","Page","appendChild","title","Title","titleSuffix"],"version":3,"file":"index.5a2bac5f.js.map"}