{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///../src/util.js","webpack:///../src/index.js","webpack:///../src/create-element.js","webpack:///../src/component.js","webpack:///../src/diff/children.js","webpack:///../src/diff/props.js","webpack:///../src/diff/index.js","webpack:///../src/render.js","webpack:///../src/clone-element.js","webpack:///../src/create-context.js","webpack:///../src/constants.js","webpack:///../src/options.js","webpack:///../src/diff/catch-error.js","webpack:///../node_modules/preact-cli/lib/lib/entry.js","webpack:///../node_modules/preact-router/match.js","webpack:///../node_modules/@preact/async-loader/async.js","webpack:///./routes/home/index.tsx?ade6","webpack:///./routes/profile/index.tsx?3f39","webpack:///./routes/notfound/index.tsx?1a3c","webpack:///./components/header/style.css","webpack:///./components/header/index.tsx","webpack:///./index.ts","webpack:///./components/app.tsx"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","__webpack_require__","installedModules","exports","module","l","installedCssChunks","0","e","promises","Promise","resolve","reject","href","fullhref","p","existingLinkTags","document","getElementsByTagName","dataHref","tag","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onerror","onload","event","errorType","realHref","target","err","Error","code","request","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","src","jsonpScriptSrc","error","clearTimeout","chunk","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","s","let","EMPTY","getCurrentUrl","url","customHistory","location","getCurrentLocation","pathname","search","route","replace","ROUTERS","canRoute","history","setUrl","routeTo","didRoute","subscribers","routeFromLink","node","match","handleLinkClick","ctrlKey","metaKey","altKey","shiftKey","button","currentTarget","this","prevent","stopImmediatePropagation","stopPropagation","preventDefault","delegateLinkHandler","String","nodeName","toUpperCase","hasAttribute","eventListenersInitialized","Router","props","super","state","addEventListener","shouldComponentUpdate","static","onChange","const","children","getMatchingChildren","setState","updating","forceUpdate","componentWillMount","componentDidMount","unlisten","listen","componentWillUnmount","splice","indexOf","componentWillUpdate","componentDidUpdate","invoke","filter","prepareVNodeForRanking","sort","pathRankSort","map","vnode","matches","exec","path","newProps","assign","ref","Boolean","render","active","current","previous","previousUrl","router","Link","onClick","Route","component","obj","removeNode","normalizedProps","arguments","defaultProps","createVNode","original","constructor","options","createRef","Fragment","Component","context","getDomSibling","childIndex","sibling","updateParentDomPointers","child","base","enqueueRender","rerenderQueue","process","prevDebounce","debounceRendering","defer","queue","a","b","some","commitQueue","oldVNode","oldDom","parentDom","diff","ownerSVGElement","commitRoot","diffChildren","renderResult","newParentVNode","oldParentVNode","globalContext","isSvg","excessDomChildren","isHydrating","j","childVNode","newDom","firstChildDom","refs","oldChildren","EMPTY_ARR","oldChildrenLength","Array","isArray","EMPTY_OBJ","reorderChildren","placeChild","unmount","applyRef","tmp","toChildArray","out","nextDom","sibDom","outer","nextSibling","insertBefore","setStyle","style","setProperty","IS_NON_DIMENSIONAL","test","dom","oldValue","useCapture","cssText","toLowerCase","_listeners","eventProxyCapture","eventProxy","removeEventListener","removeAttribute","newVNode","isNew","oldProps","oldState","snapshot","clearProcessingException","provider","componentContext","newType","contextType","doRender","sub","getDerivedStateFromProps","componentWillReceiveProps","forEach","getChildContext","getSnapshotBeforeUpdate","diffElementNodes","diffed","root","cb","oldHtml","newHtml","nodeType","localName","createTextNode","createElementNS","is","childNodes","dangerouslySetInnerHTML","attributes","innerHTML","hydrate","diffProps","firstChild","checked","parentVNode","skipRemove","replaceNode","cloneElement","createContext","defaultValue","contextId","Consumer","contextValue","Provider","subs","ctx","_props","old","isValidElement","ctor","handled","getDerivedStateFromError","componentDidCatch","update","callback","h","Preact","interopDefault","default","normalizeURL","navigator","serviceWorker","register","__webpack_public_path__","require","getElementById","body","firstElementChild","app","preRenderData","inlineDataElement","querySelector","JSON","parse","decodeURI","CLI_DATA","currentURL","canHydrate","init","_possibleConstructorReturn","self","ReferenceError","Match","_extends","source","_preact","_preactRouter","_Component","_temp","_this","_len","args","_key","apply","concat","nextUrl","subClass","superClass","TypeError","writable","configurable","setPrototypeOf","__proto__","_inherits","_ref","activeClassName","keys","_objectWithoutProperties","_ref2","class","className","join","getPreviousSibling","inner","parent","__","__k","end","__e","async","load","AsyncComponent","mod","prev","__v","me","__P","_parentDom","PENDING","preload","result","Header","App","id","Home","Profile","success"],"mappings":"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","file":"bundle.4b046.esm.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t};\n\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t0: 0\n \t};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t0: 0\n \t};\n\n\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + ({\"2\":\"route-home\",\"3\":\"route-notfound\",\"4\":\"route-profile\"}[chunkId]||chunkId) + \".chunk.\" + {\"2\":\"d3cd6\",\"3\":\"ac17f\",\"4\":\"03496\"}[chunkId] + \".esm.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"2\":1,\"3\":1,\"4\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"\" + ({\"2\":\"route-home\",\"3\":\"route-notfound\",\"4\":\"route-profile\"}[chunkId]||chunkId) + \".chunk.\" + {\"2\":\"bcb8a\",\"3\":\"e0009\",\"4\":\"984aa\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tvar onLinkComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks.\n \t\t\t\t\tlinkTag.onerror = linkTag.onload = null;\n \t\t\t\t\tif (event.type === 'load') {\n \t\t\t\t\t\tresolve();\n \t\t\t\t\t} else {\n \t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n \t\t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n \t\t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\t\terr.type = errorType;\n \t\t\t\t\t\terr.request = realHref;\n \t\t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\t\treject(err);\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tdocument.head.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"mdyV\");\n","/**\n * Assign properties from `props` to `obj`\n * @template O, P The obj and props types\n * @param {O} obj The object to copy properties to\n * @param {P} props The object to copy properties from\n * @returns {O & P}\n */\nexport function assign(obj, props) {\n\t// @ts-ignore We change the type of `obj` to be `O & P`\n\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Remove a child node from its parent if attached. This is a workaround for\n * IE11 which doesn't support `Element.prototype.remove()`. Using this function\n * is smaller than including a dedicated polyfill.\n * @param {Node} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n","import { cloneElement, createElement, Component, toChildArray } from 'preact';\nimport { exec, prepareVNodeForRanking, assign, pathRankSort } from './util';\n\nlet customHistory = null;\n\nconst ROUTERS = [];\n\nconst subscribers = [];\n\nconst EMPTY = {};\n\nfunction setUrl(url, type='push') {\n\tif (customHistory && customHistory[type]) {\n\t\tcustomHistory[type](url);\n\t}\n\telse if (typeof history!=='undefined' && history[type+'State']) {\n\t\thistory[type+'State'](null, null, url);\n\t}\n}\n\n\nfunction getCurrentUrl() {\n\tlet url;\n\tif (customHistory && customHistory.location) {\n\t\turl = customHistory.location;\n\t}\n\telse if (customHistory && customHistory.getCurrentLocation) {\n\t\turl = customHistory.getCurrentLocation();\n\t}\n\telse {\n\t\turl = typeof location!=='undefined' ? location : EMPTY;\n\t}\n\treturn `${url.pathname || ''}${url.search || ''}`;\n}\n\n\n\nfunction route(url, replace=false) {\n\tif (typeof url!=='string' && url.url) {\n\t\treplace = url.replace;\n\t\turl = url.url;\n\t}\n\n\t// only push URL into history if we can handle it\n\tif (canRoute(url)) {\n\t\tsetUrl(url, replace ? 'replace' : 'push');\n\t}\n\n\treturn routeTo(url);\n}\n\n\n/** Check if the given URL can be handled by any router instances. */\nfunction canRoute(url) {\n\tfor (let i=ROUTERS.length; i--; ) {\n\t\tif (ROUTERS[i].canRoute(url)) return true;\n\t}\n\treturn false;\n}\n\n\n/** Tell all router instances to handle the given URL. */\nfunction routeTo(url) {\n\tlet didRoute = false;\n\tfor (let i=0; i {\n\t\t\t\trouteTo(getCurrentUrl());\n\t\t\t});\n\t\t}\n\t\taddEventListener('click', delegateLinkHandler);\n\t}\n\teventListenersInitialized = true;\n}\n\n\nclass Router extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tif (props.history) {\n\t\t\tcustomHistory = props.history;\n\t\t}\n\n\t\tthis.state = {\n\t\t\turl: props.url || getCurrentUrl()\n\t\t};\n\n\t\tinitEventListeners();\n\t}\n\n\tshouldComponentUpdate(props) {\n\t\tif (props.static!==true) return true;\n\t\treturn props.url!==this.props.url || props.onChange!==this.props.onChange;\n\t}\n\n\t/** Check if the given URL can be matched against any children */\n\tcanRoute(url) {\n\t\tconst children = toChildArray(this.props.children);\n\t\treturn this.getMatchingChildren(children, url, false).length > 0;\n\t}\n\n\t/** Re-render children with a new URL to match against. */\n\trouteTo(url) {\n\t\tthis.setState({ url });\n\n\t\tconst didRoute = this.canRoute(url);\n\n\t\t// trigger a manual re-route if we're not in the middle of an update:\n\t\tif (!this.updating) this.forceUpdate();\n\n\t\treturn didRoute;\n\t}\n\n\tcomponentWillMount() {\n\t\tROUTERS.push(this);\n\t\tthis.updating = true;\n\t}\n\n\tcomponentDidMount() {\n\t\tif (customHistory) {\n\t\t\tthis.unlisten = customHistory.listen((location) => {\n\t\t\t\tthis.routeTo(`${location.pathname || ''}${location.search || ''}`);\n\t\t\t});\n\t\t}\n\t\tthis.updating = false;\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif (typeof this.unlisten==='function') this.unlisten();\n\t\tROUTERS.splice(ROUTERS.indexOf(this), 1);\n\t}\n\n\tcomponentWillUpdate() {\n\t\tthis.updating = true;\n\t}\n\n\tcomponentDidUpdate() {\n\t\tthis.updating = false;\n\t}\n\n\tgetMatchingChildren(children, url, invoke) {\n\t\treturn children\n\t\t\t.filter(prepareVNodeForRanking)\n\t\t\t.sort(pathRankSort)\n\t\t\t.map( vnode => {\n\t\t\t\tlet matches = exec(url, vnode.props.path, vnode.props);\n\t\t\t\tif (matches) {\n\t\t\t\t\tif (invoke !== false) {\n\t\t\t\t\t\tlet newProps = { url, matches };\n\t\t\t\t\t\tassign(newProps, matches);\n\t\t\t\t\t\tdelete newProps.ref;\n\t\t\t\t\t\tdelete newProps.key;\n\t\t\t\t\t\treturn cloneElement(vnode, newProps);\n\t\t\t\t\t}\n\t\t\t\t\treturn vnode;\n\t\t\t\t}\n\t\t\t}).filter(Boolean);\n\t}\n\n\trender({ children, onChange }, { url }) {\n\t\tlet active = this.getMatchingChildren(toChildArray(children), url, true);\n\n\t\tlet current = active[0] || null;\n\n\t\tlet previous = this.previousUrl;\n\t\tif (url!==previous) {\n\t\t\tthis.previousUrl = url;\n\t\t\tif (typeof onChange==='function') {\n\t\t\t\tonChange({\n\t\t\t\t\trouter: this,\n\t\t\t\t\turl,\n\t\t\t\t\tprevious,\n\t\t\t\t\tactive,\n\t\t\t\t\tcurrent\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\treturn current;\n\t}\n}\n\nconst Link = (props) => (\n\tcreateElement('a', assign({ onClick: handleLinkClick }, props))\n);\n\nconst Route = props => createElement(props.component, props);\n\nRouter.subscribers = subscribers;\nRouter.getCurrentUrl = getCurrentUrl;\nRouter.route = route;\nRouter.Router = Router;\nRouter.Route = Route;\nRouter.Link = Link;\nRouter.exec = exec;\n\nexport { subscribers, getCurrentUrl, route, Router, Route, Link, exec };\nexport default Router;\n","import options from './options';\n\n/**\n * Create an virtual node (used for JSX)\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component\n * constructor for this virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the virtual node\n * @returns {import('./internal').VNode}\n */\nexport function createElement(type, props, children) {\n\tlet normalizedProps = {},\n\t\tkey,\n\t\tref,\n\t\ti;\n\tfor (i in props) {\n\t\tif (i == 'key') key = props[i];\n\t\telse if (i == 'ref') ref = props[i];\n\t\telse normalizedProps[i] = props[i];\n\t}\n\n\tif (arguments.length > 3) {\n\t\tchildren = [children];\n\t\t// https://github.com/preactjs/preact/issues/1916\n\t\tfor (i = 3; i < arguments.length; i++) {\n\t\t\tchildren.push(arguments[i]);\n\t\t}\n\t}\n\tif (children != null) {\n\t\tnormalizedProps.children = children;\n\t}\n\n\t// If a Component VNode, check for and apply defaultProps\n\t// Note: type may be undefined in development, must never error here.\n\tif (typeof type == 'function' && type.defaultProps != null) {\n\t\tfor (i in type.defaultProps) {\n\t\t\tif (normalizedProps[i] === undefined) {\n\t\t\t\tnormalizedProps[i] = type.defaultProps[i];\n\t\t\t}\n\t\t}\n\t}\n\n\treturn createVNode(type, normalizedProps, key, ref, null);\n}\n\n/**\n * Create a VNode (used internally by Preact)\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component\n * Constructor for this virtual node\n * @param {object | string | number | null} props The properties of this virtual node.\n * If this virtual node represents a text node, this is the text of the node (string or number).\n * @param {string | number | null} key The key for this virtual node, used when\n * diffing it against its children\n * @param {import('./internal').VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {import('./internal').VNode}\n */\nexport function createVNode(type, props, key, ref, original) {\n\t// V8 seems to be better at detecting type shapes if the object is allocated from the same call site\n\t// Do not inline into createElement and coerceToVNode!\n\tconst vnode = {\n\t\ttype,\n\t\tprops,\n\t\tkey,\n\t\tref,\n\t\t_children: null,\n\t\t_parent: null,\n\t\t_depth: 0,\n\t\t_dom: null,\n\t\t// _nextDom must be initialized to undefined b/c it will eventually\n\t\t// be set to dom.nextSibling which can return `null` and it is important\n\t\t// to be able to distinguish between an uninitialized _nextDom and\n\t\t// a _nextDom that has been set to `null`\n\t\t_nextDom: undefined,\n\t\t_component: null,\n\t\t_hydrating: null,\n\t\tconstructor: undefined,\n\t\t_original: original == null ? ++options._vnodeId : original\n\t};\n\n\tif (options.vnode != null) options.vnode(vnode);\n\n\treturn vnode;\n}\n\nexport function createRef() {\n\treturn { current: null };\n}\n\nexport function Fragment(props) {\n\treturn props.children;\n}\n\n/**\n * Check if a the argument is a valid Preact VNode.\n * @param {*} vnode\n * @returns {vnode is import('./internal').VNode}\n */\nexport const isValidElement = vnode =>\n\tvnode != null && vnode.constructor === undefined;\n","import { assign } from './util';\nimport { diff, commitRoot } from './diff/index';\nimport options from './options';\nimport { Fragment } from './create-element';\n\n/**\n * Base Component class. Provides `setState()` and `forceUpdate()`, which\n * trigger rendering\n * @param {object} props The initial component props\n * @param {object} context The initial context from parent components'\n * getChildContext\n */\nexport function Component(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {import('./internal').Component}\n * @param {object | ((s: object, p: object) => object)} update A hash of state\n * properties to update with new values or a function that given the current\n * state and props returns a new partial state\n * @param {() => void} [callback] A function to be called once component state is\n * updated\n */\nComponent.prototype.setState = function(update, callback) {\n\t// only clone state when copying to nextState the first time.\n\tlet s;\n\tif (this._nextState != null && this._nextState !== this.state) {\n\t\ts = this._nextState;\n\t} else {\n\t\ts = this._nextState = assign({}, this.state);\n\t}\n\n\tif (typeof update == 'function') {\n\t\t// Some libraries like `immer` mark the current state as readonly,\n\t\t// preventing us from mutating it, so we need to clone it. See #2716\n\t\tupdate = update(assign({}, s), this.props);\n\t}\n\n\tif (update) {\n\t\tassign(s, update);\n\t}\n\n\t// Skip update if updater function returned null\n\tif (update == null) return;\n\n\tif (this._vnode) {\n\t\tif (callback) this._renderCallbacks.push(callback);\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {import('./internal').Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nComponent.prototype.forceUpdate = function(callback) {\n\tif (this._vnode) {\n\t\t// Set render mode so that we can differentiate where the render request\n\t\t// is coming from. We need this because forceUpdate should never call\n\t\t// shouldComponentUpdate\n\t\tthis._force = true;\n\t\tif (callback) this._renderCallbacks.push(callback);\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Accepts `props` and `state`, and returns a new Virtual DOM tree to build.\n * Virtual DOM is generally constructed via [JSX](http://jasonformat.com/wtf-is-jsx).\n * @param {object} props Props (eg: JSX attributes) received from parent\n * element/component\n * @param {object} state The component's current state\n * @param {object} context Context object, as returned by the nearest\n * ancestor's `getChildContext()`\n * @returns {import('./index').ComponentChildren | void}\n */\nComponent.prototype.render = Fragment;\n\n/**\n * @param {import('./internal').VNode} vnode\n * @param {number | null} [childIndex]\n */\nexport function getDomSibling(vnode, childIndex) {\n\tif (childIndex == null) {\n\t\t// Use childIndex==null as a signal to resume the search from the vnode's sibling\n\t\treturn vnode._parent\n\t\t\t? getDomSibling(vnode._parent, vnode._parent._children.indexOf(vnode) + 1)\n\t\t\t: null;\n\t}\n\n\tlet sibling;\n\tfor (; childIndex < vnode._children.length; childIndex++) {\n\t\tsibling = vnode._children[childIndex];\n\n\t\tif (sibling != null && sibling._dom != null) {\n\t\t\t// Since updateParentDomPointers keeps _dom pointer correct,\n\t\t\t// we can rely on _dom to tell us if this subtree contains a\n\t\t\t// rendered DOM node, and what the first rendered DOM node is\n\t\t\treturn sibling._dom;\n\t\t}\n\t}\n\n\t// If we get here, we have not found a DOM node in this vnode's children.\n\t// We must resume from this vnode's sibling (in it's parent _children array)\n\t// Only climb up and search the parent if we aren't searching through a DOM\n\t// VNode (meaning we reached the DOM parent of the original vnode that began\n\t// the search)\n\treturn typeof vnode.type == 'function' ? getDomSibling(vnode) : null;\n}\n\n/**\n * Trigger in-place re-rendering of a component.\n * @param {import('./internal').Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet vnode = component._vnode,\n\t\toldDom = vnode._dom,\n\t\tparentDom = component._parentDom;\n\n\tif (parentDom) {\n\t\tlet commitQueue = [];\n\t\tconst oldVNode = assign({}, vnode);\n\t\toldVNode._original = vnode._original + 1;\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tvnode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\tvnode._hydrating != null ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(vnode) : oldDom,\n\t\t\tvnode._hydrating\n\t\t);\n\t\tcommitRoot(commitQueue, vnode);\n\n\t\tif (vnode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(vnode);\n\t\t}\n\t}\n}\n\n/**\n * @param {import('./internal').VNode} vnode\n */\nfunction updateParentDomPointers(vnode) {\n\tif ((vnode = vnode._parent) != null && vnode._component != null) {\n\t\tvnode._dom = vnode._component.base = null;\n\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\tlet child = vnode._children[i];\n\t\t\tif (child != null && child._dom != null) {\n\t\t\t\tvnode._dom = vnode._component.base = child._dom;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn updateParentDomPointers(vnode);\n\t}\n}\n\n/**\n * The render queue\n * @type {Array}\n */\nlet rerenderQueue = [];\n\n/**\n * Asynchronously schedule a callback\n * @type {(cb: () => void) => void}\n */\n/* istanbul ignore next */\n// Note the following line isn't tree-shaken by rollup cuz of rollup/rollup#2566\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/*\n * The value of `Component.debounce` must asynchronously invoke the passed in callback. It is\n * important that contributors to Preact can consistently reason about what calls to `setState`, etc.\n * do, and when their effects will be applied. See the links below for some further reading on designing\n * asynchronous APIs.\n * * [Designing APIs for Asynchrony](https://blog.izs.me/2013/08/designing-apis-for-asynchrony)\n * * [Callbacks synchronous and asynchronous](https://blog.ometer.com/2011/07/24/callbacks-synchronous-and-asynchronous/)\n */\n\nlet prevDebounce;\n\n/**\n * Enqueue a rerender of a component\n * @param {import('./internal').Component} c The component to rerender\n */\nexport function enqueueRender(c) {\n\tif (\n\t\t(!c._dirty &&\n\t\t\t(c._dirty = true) &&\n\t\t\trerenderQueue.push(c) &&\n\t\t\t!process._rerenderCount++) ||\n\t\tprevDebounce !== options.debounceRendering\n\t) {\n\t\tprevDebounce = options.debounceRendering;\n\t\t(prevDebounce || defer)(process);\n\t}\n}\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet queue;\n\twhile ((process._rerenderCount = rerenderQueue.length)) {\n\t\tqueue = rerenderQueue.sort((a, b) => a._vnode._depth - b._vnode._depth);\n\t\trerenderQueue = [];\n\t\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t\t// process() calls from getting scheduled while `queue` is still being consumed.\n\t\tqueue.some(c => {\n\t\t\tif (c._dirty) renderComponent(c);\n\t\t});\n\t}\n}\nprocess._rerenderCount = 0;\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR } from '../constants';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {import('../internal').PreactElement} parentDom The DOM element whose\n * children are being diffed\n * @param {import('../internal').ComponentChildren[]} renderResult\n * @param {import('../internal').VNode} newParentVNode The new virtual\n * node whose children should be diff'ed against oldParentVNode\n * @param {import('../internal').VNode} oldParentVNode The old virtual\n * node whose children should be diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by getChildContext\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node\n * @param {Array} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').PreactElement} oldDom The current attached DOM\n * element any new dom elements should be placed around. Likely `null` on first\n * render (except when hydrating). Can be a sibling DOM element when diffing\n * Fragments that have siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n */\nexport function diffChildren(\n\tparentDom,\n\trenderResult,\n\tnewParentVNode,\n\toldParentVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating\n) {\n\tlet i, j, oldVNode, childVNode, newDom, firstChildDom, refs;\n\n\t// This is a compression of oldParentVNode!=null && oldParentVNode != EMPTY_OBJ && oldParentVNode._children || EMPTY_ARR\n\t// as EMPTY_OBJ._children should be `undefined`.\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet oldChildrenLength = oldChildren.length;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < renderResult.length; i++) {\n\t\tchildVNode = renderResult[i];\n\n\t\tif (childVNode == null || typeof childVNode == 'boolean') {\n\t\t\tchildVNode = newParentVNode._children[i] = null;\n\t\t}\n\t\t// If this newVNode is being reused (e.g.
{reuse}{reuse}
) in the same diff,\n\t\t// or we are rendering a component (e.g. setState) copy the oldVNodes so it can have\n\t\t// it's own DOM & etc. pointers\n\t\telse if (\n\t\t\ttypeof childVNode == 'string' ||\n\t\t\ttypeof childVNode == 'number' ||\n\t\t\t// eslint-disable-next-line valid-typeof\n\t\t\ttypeof childVNode == 'bigint'\n\t\t) {\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tnull,\n\t\t\t\tchildVNode,\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t} else if (Array.isArray(childVNode)) {\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tFragment,\n\t\t\t\t{ children: childVNode },\n\t\t\t\tnull,\n\t\t\t\tnull,\n\t\t\t\tnull\n\t\t\t);\n\t\t} else if (childVNode._depth > 0) {\n\t\t\t// VNode is already in use, clone it. This can happen in the following\n\t\t\t// scenario:\n\t\t\t// const reuse =
\n\t\t\t//
{reuse}{reuse}
\n\t\t\tchildVNode = newParentVNode._children[i] = createVNode(\n\t\t\t\tchildVNode.type,\n\t\t\t\tchildVNode.props,\n\t\t\t\tchildVNode.key,\n\t\t\t\tnull,\n\t\t\t\tchildVNode._original\n\t\t\t);\n\t\t} else {\n\t\t\tchildVNode = newParentVNode._children[i] = childVNode;\n\t\t}\n\n\t\t// Terser removes the `continue` here and wraps the loop body\n\t\t// in a `if (childVNode) { ... } condition\n\t\tif (childVNode == null) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\t// Check if we find a corresponding element in oldChildren.\n\t\t// If found, delete the array item by setting to `undefined`.\n\t\t// We use `undefined`, as `null` is reserved for empty placeholders\n\t\t// (holes).\n\t\toldVNode = oldChildren[i];\n\n\t\tif (\n\t\t\toldVNode === null ||\n\t\t\t(oldVNode &&\n\t\t\t\tchildVNode.key == oldVNode.key &&\n\t\t\t\tchildVNode.type === oldVNode.type)\n\t\t) {\n\t\t\toldChildren[i] = undefined;\n\t\t} else {\n\t\t\t// Either oldVNode === undefined or oldChildrenLength > 0,\n\t\t\t// so after this loop oldVNode == null or oldVNode is a valid value.\n\t\t\tfor (j = 0; j < oldChildrenLength; j++) {\n\t\t\t\toldVNode = oldChildren[j];\n\t\t\t\t// If childVNode is unkeyed, we only match similarly unkeyed nodes, otherwise we match by key.\n\t\t\t\t// We always match by type (in either case).\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\tchildVNode.key == oldVNode.key &&\n\t\t\t\t\tchildVNode.type === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\toldChildren[j] = undefined;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toldVNode = null;\n\t\t\t}\n\t\t}\n\n\t\toldVNode = oldVNode || EMPTY_OBJ;\n\n\t\t// Morph the old element into the new one, but don't append it to the dom yet\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tchildVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\toldDom,\n\t\t\tisHydrating\n\t\t);\n\n\t\tnewDom = childVNode._dom;\n\n\t\tif ((j = childVNode.ref) && oldVNode.ref != j) {\n\t\t\tif (!refs) refs = [];\n\t\t\tif (oldVNode.ref) refs.push(oldVNode.ref, null, childVNode);\n\t\t\trefs.push(j, childVNode._component || newDom, childVNode);\n\t\t}\n\n\t\tif (newDom != null) {\n\t\t\tif (firstChildDom == null) {\n\t\t\t\tfirstChildDom = newDom;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\t\tchildVNode._children != null && // Can be null if childVNode suspended\n\t\t\t\tchildVNode._children === oldVNode._children\n\t\t\t) {\n\t\t\t\tchildVNode._nextDom = oldDom = reorderChildren(\n\t\t\t\t\tchildVNode,\n\t\t\t\t\toldDom,\n\t\t\t\t\tparentDom\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\toldDom = placeChild(\n\t\t\t\t\tparentDom,\n\t\t\t\t\tchildVNode,\n\t\t\t\t\toldVNode,\n\t\t\t\t\toldChildren,\n\t\t\t\t\tnewDom,\n\t\t\t\t\toldDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Browsers will infer an option's `value` from `textContent` when\n\t\t\t// no value is present. This essentially bypasses our code to set it\n\t\t\t// later in `diff()`. It works fine in all browsers except for IE11\n\t\t\t// where it breaks setting `select.value`. There it will be always set\n\t\t\t// to an empty string. Re-applying an options value will fix that, so\n\t\t\t// there are probably some internal data structures that aren't\n\t\t\t// updated properly.\n\t\t\t//\n\t\t\t// To fix it we make sure to reset the inferred value, so that our own\n\t\t\t// value check in `diff()` won't be skipped.\n\t\t\tif (!isHydrating && newParentVNode.type === 'option') {\n\t\t\t\t// @ts-ignore We have validated that the type of parentDOM is 'option'\n\t\t\t\t// in the above check\n\t\t\t\tparentDom.value = '';\n\t\t\t} else if (typeof newParentVNode.type == 'function') {\n\t\t\t\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t\t\t\t// _nextDom property to the nextSibling of its last child DOM node.\n\t\t\t\t//\n\t\t\t\t// `oldDom` contains the correct value here because if the last child\n\t\t\t\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t\t\t\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t\t\t\t// node's nextSibling.\n\t\t\t\tnewParentVNode._nextDom = oldDom;\n\t\t\t}\n\t\t} else if (\n\t\t\toldDom &&\n\t\t\toldVNode._dom == oldDom &&\n\t\t\toldDom.parentNode != parentDom\n\t\t) {\n\t\t\t// The above condition is to handle null placeholders. See test in placeholder.test.js:\n\t\t\t// `efficiently replace null placeholders in parent rerenders`\n\t\t\toldDom = getDomSibling(oldVNode);\n\t\t}\n\t}\n\n\tnewParentVNode._dom = firstChildDom;\n\n\t// Remove remaining oldChildren if there are any.\n\tfor (i = oldChildrenLength; i--; ) {\n\t\tif (oldChildren[i] != null) {\n\t\t\tif (\n\t\t\t\ttypeof newParentVNode.type == 'function' &&\n\t\t\t\toldChildren[i]._dom != null &&\n\t\t\t\toldChildren[i]._dom == newParentVNode._nextDom\n\t\t\t) {\n\t\t\t\t// If the newParentVNode.__nextDom points to a dom node that is about to\n\t\t\t\t// be unmounted, then get the next sibling of that vnode and set\n\t\t\t\t// _nextDom to it\n\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldParentVNode, i + 1);\n\t\t\t}\n\n\t\t\tunmount(oldChildren[i], oldChildren[i]);\n\t\t}\n\t}\n\n\t// Set refs only after unmount\n\tif (refs) {\n\t\tfor (i = 0; i < refs.length; i++) {\n\t\t\tapplyRef(refs[i], refs[++i], refs[++i]);\n\t\t}\n\t}\n}\n\nfunction reorderChildren(childVNode, oldDom, parentDom) {\n\tfor (let tmp = 0; tmp < childVNode._children.length; tmp++) {\n\t\tlet vnode = childVNode._children[tmp];\n\t\tif (vnode) {\n\t\t\t// We typically enter this code path on sCU bailout, where we copy\n\t\t\t// oldVNode._children to newVNode._children. If that is the case, we need\n\t\t\t// to update the old children's _parent pointer to point to the newVNode\n\t\t\t// (childVNode here).\n\t\t\tvnode._parent = childVNode;\n\n\t\t\tif (typeof vnode.type == 'function') {\n\t\t\t\toldDom = reorderChildren(vnode, oldDom, parentDom);\n\t\t\t} else {\n\t\t\t\toldDom = placeChild(\n\t\t\t\t\tparentDom,\n\t\t\t\t\tvnode,\n\t\t\t\t\tvnode,\n\t\t\t\t\tchildVNode._children,\n\t\t\t\t\tvnode._dom,\n\t\t\t\t\toldDom\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn oldDom;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {import('../index').ComponentChildren} children The unflattened\n * children of a virtual node\n * @returns {import('../internal').VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (Array.isArray(children)) {\n\t\tchildren.some(child => {\n\t\t\ttoChildArray(child, out);\n\t\t});\n\t} else {\n\t\tout.push(children);\n\t}\n\treturn out;\n}\n\nfunction placeChild(\n\tparentDom,\n\tchildVNode,\n\toldVNode,\n\toldChildren,\n\tnewDom,\n\toldDom\n) {\n\tlet nextDom;\n\tif (childVNode._nextDom !== undefined) {\n\t\t// Only Fragments or components that return Fragment like VNodes will\n\t\t// have a non-undefined _nextDom. Continue the diff from the sibling\n\t\t// of last DOM child of this child VNode\n\t\tnextDom = childVNode._nextDom;\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because\n\t\t// it is only used by `diffChildren` to determine where to resume the diff after\n\t\t// diffing Components and Fragments. Once we store it the nextDOM local var, we\n\t\t// can clean up the property\n\t\tchildVNode._nextDom = undefined;\n\t} else if (\n\t\toldVNode == null ||\n\t\tnewDom != oldDom ||\n\t\tnewDom.parentNode == null\n\t) {\n\t\touter: if (oldDom == null || oldDom.parentNode !== parentDom) {\n\t\t\tparentDom.appendChild(newDom);\n\t\t\tnextDom = null;\n\t\t} else {\n\t\t\t// `j href (xlink:href was removed from SVG and isn't needed)\n\t\t\t// - className --> class\n\t\t\tname = name.replace(/xlink[H:h]/, 'h').replace(/sName$/, 's');\n\t\t} else if (\n\t\t\tname !== 'href' &&\n\t\t\tname !== 'list' &&\n\t\t\tname !== 'form' &&\n\t\t\t// Default value in browsers is `-1` and an empty string is\n\t\t\t// cast to `0` instead\n\t\t\tname !== 'tabIndex' &&\n\t\t\tname !== 'download' &&\n\t\t\tname in dom\n\t\t) {\n\t\t\ttry {\n\t\t\t\tdom[name] = value == null ? '' : value;\n\t\t\t\t// labelled break is 1b smaller here than a return statement (sorry)\n\t\t\t\tbreak o;\n\t\t\t} catch (e) {}\n\t\t}\n\n\t\t// ARIA-attributes have a different notion of boolean values.\n\t\t// The value `false` is different from the attribute not\n\t\t// existing on the DOM, so we can't remove it. For non-boolean\n\t\t// ARIA-attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost us too many bytes. On top of\n\t\t// that other VDOM frameworks also always stringify `false`.\n\n\t\tif (typeof value === 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (\n\t\t\tvalue != null &&\n\t\t\t(value !== false || (name[0] === 'a' && name[1] === 'r'))\n\t\t) {\n\t\t\tdom.setAttribute(name, value);\n\t\t} else {\n\t\t\tdom.removeAttribute(name);\n\t\t}\n\t}\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {Event} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tthis._listeners[e.type + false](options.event ? options.event(e) : e);\n}\n\nfunction eventProxyCapture(e) {\n\tthis._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import { EMPTY_OBJ, EMPTY_ARR } from '../constants';\nimport { Component } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { diffProps, setProperty } from './props';\nimport { assign, removeNode } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {import('../internal').PreactElement} parentDom The parent of the DOM element\n * @param {import('../internal').VNode} newVNode The new virtual node\n * @param {import('../internal').VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by getChildContext\n * @param {boolean} isSvg Whether or not this element is an SVG node\n * @param {Array} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').PreactElement} oldDom The current attached DOM\n * element any new dom elements should be placed around. Likely `null` on first\n * render (except when hydrating). Can be a sibling DOM element when diffing\n * Fragments that have siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} [isHydrating] Whether or not we are in hydration\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating\n) {\n\tlet tmp,\n\t\tnewType = newVNode.type;\n\n\t// When passing through createElement it assigns the object\n\t// constructor as undefined. This to prevent JSON-injection.\n\tif (newVNode.constructor !== undefined) return null;\n\n\t// If the previous diff bailed out, resume creating/hydrating.\n\tif (oldVNode._hydrating != null) {\n\t\tisHydrating = oldVNode._hydrating;\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\t// if we resume, we want the tree to be \"unlocked\"\n\t\tnewVNode._hydrating = null;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\ttry {\n\t\touter: if (typeof newType == 'function') {\n\t\t\tlet c, isNew, oldProps, oldState, snapshot, clearProcessingException;\n\t\t\tlet newProps = newVNode.props;\n\n\t\t\t// Necessary for createContext api. Setting this property will pass\n\t\t\t// the context value as `this.context` just for this component.\n\t\t\ttmp = newType.contextType;\n\t\t\tlet provider = tmp && globalContext[tmp._id];\n\t\t\tlet componentContext = tmp\n\t\t\t\t? provider\n\t\t\t\t\t? provider.props.value\n\t\t\t\t\t: tmp._defaultValue\n\t\t\t\t: globalContext;\n\n\t\t\t// Get component and set it to `c`\n\t\t\tif (oldVNode._component) {\n\t\t\t\tc = newVNode._component = oldVNode._component;\n\t\t\t\tclearProcessingException = c._processingException = c._pendingError;\n\t\t\t} else {\n\t\t\t\t// Instantiate the new component\n\t\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\t\t// @ts-ignore The check above verifies that newType is suppose to be constructed\n\t\t\t\t\tnewVNode._component = c = new newType(newProps, componentContext); // eslint-disable-line new-cap\n\t\t\t\t} else {\n\t\t\t\t\t// @ts-ignore Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new Component(newProps, componentContext);\n\t\t\t\t\tc.constructor = newType;\n\t\t\t\t\tc.render = doRender;\n\t\t\t\t}\n\t\t\t\tif (provider) provider.sub(c);\n\n\t\t\t\tc.props = newProps;\n\t\t\t\tif (!c.state) c.state = {};\n\t\t\t\tc.context = componentContext;\n\t\t\t\tc._globalContext = globalContext;\n\t\t\t\tisNew = c._dirty = true;\n\t\t\t\tc._renderCallbacks = [];\n\t\t\t}\n\n\t\t\t// Invoke getDerivedStateFromProps\n\t\t\tif (c._nextState == null) {\n\t\t\t\tc._nextState = c.state;\n\t\t\t}\n\t\t\tif (newType.getDerivedStateFromProps != null) {\n\t\t\t\tif (c._nextState == c.state) {\n\t\t\t\t\tc._nextState = assign({}, c._nextState);\n\t\t\t\t}\n\n\t\t\t\tassign(\n\t\t\t\t\tc._nextState,\n\t\t\t\t\tnewType.getDerivedStateFromProps(newProps, c._nextState)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\toldProps = c.props;\n\t\t\toldState = c.state;\n\n\t\t\t// Invoke pre-render lifecycle methods\n\t\t\tif (isNew) {\n\t\t\t\tif (\n\t\t\t\t\tnewType.getDerivedStateFromProps == null &&\n\t\t\t\t\tc.componentWillMount != null\n\t\t\t\t) {\n\t\t\t\t\tc.componentWillMount();\n\t\t\t\t}\n\n\t\t\t\tif (c.componentDidMount != null) {\n\t\t\t\t\tc._renderCallbacks.push(c.componentDidMount);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tnewType.getDerivedStateFromProps == null &&\n\t\t\t\t\tnewProps !== oldProps &&\n\t\t\t\t\tc.componentWillReceiveProps != null\n\t\t\t\t) {\n\t\t\t\t\tc.componentWillReceiveProps(newProps, componentContext);\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t(!c._force &&\n\t\t\t\t\t\tc.shouldComponentUpdate != null &&\n\t\t\t\t\t\tc.shouldComponentUpdate(\n\t\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\t\tc._nextState,\n\t\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t\t) === false) ||\n\t\t\t\t\tnewVNode._original === oldVNode._original\n\t\t\t\t) {\n\t\t\t\t\tc.props = newProps;\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t// More info about this here: https://gist.github.com/JoviDeCroock/bec5f2ce93544d2e6070ef8e0036e4e8\n\t\t\t\t\tif (newVNode._original !== oldVNode._original) c._dirty = false;\n\t\t\t\t\tc._vnode = newVNode;\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t\tnewVNode._children.forEach(vnode => {\n\t\t\t\t\t\tif (vnode) vnode._parent = newVNode;\n\t\t\t\t\t});\n\t\t\t\t\tif (c._renderCallbacks.length) {\n\t\t\t\t\t\tcommitQueue.push(c);\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\n\t\t\t\tif (c.componentWillUpdate != null) {\n\t\t\t\t\tc.componentWillUpdate(newProps, c._nextState, componentContext);\n\t\t\t\t}\n\n\t\t\t\tif (c.componentDidUpdate != null) {\n\t\t\t\t\tc._renderCallbacks.push(() => {\n\t\t\t\t\t\tc.componentDidUpdate(oldProps, oldState, snapshot);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tc.context = componentContext;\n\t\t\tc.props = newProps;\n\t\t\tc.state = c._nextState;\n\n\t\t\tif ((tmp = options._render)) tmp(newVNode);\n\n\t\t\tc._dirty = false;\n\t\t\tc._vnode = newVNode;\n\t\t\tc._parentDom = parentDom;\n\n\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t// Handle setState called in render, see #2553\n\t\t\tc.state = c._nextState;\n\n\t\t\tif (c.getChildContext != null) {\n\t\t\t\tglobalContext = assign(assign({}, globalContext), c.getChildContext());\n\t\t\t}\n\n\t\t\tif (!isNew && c.getSnapshotBeforeUpdate != null) {\n\t\t\t\tsnapshot = c.getSnapshotBeforeUpdate(oldProps, oldState);\n\t\t\t}\n\n\t\t\tlet isTopLevelFragment =\n\t\t\t\ttmp != null && tmp.type === Fragment && tmp.key == null;\n\t\t\tlet renderResult = isTopLevelFragment ? tmp.props.children : tmp;\n\n\t\t\tdiffChildren(\n\t\t\t\tparentDom,\n\t\t\t\tArray.isArray(renderResult) ? renderResult : [renderResult],\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg,\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\toldDom,\n\t\t\t\tisHydrating\n\t\t\t);\n\n\t\t\tc.base = newVNode._dom;\n\n\t\t\t// We successfully rendered this VNode, unset any stored hydration/bailout state:\n\t\t\tnewVNode._hydrating = null;\n\n\t\t\tif (c._renderCallbacks.length) {\n\t\t\t\tcommitQueue.push(c);\n\t\t\t}\n\n\t\t\tif (clearProcessingException) {\n\t\t\t\tc._pendingError = c._processingException = null;\n\t\t\t}\n\n\t\t\tc._force = false;\n\t\t} else if (\n\t\t\texcessDomChildren == null &&\n\t\t\tnewVNode._original === oldVNode._original\n\t\t) {\n\t\t\tnewVNode._children = oldVNode._children;\n\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t} else {\n\t\t\tnewVNode._dom = diffElementNodes(\n\t\t\t\toldVNode._dom,\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg,\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\tisHydrating\n\t\t\t);\n\t\t}\n\n\t\tif ((tmp = options.diffed)) tmp(newVNode);\n\t} catch (e) {\n\t\tnewVNode._original = null;\n\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\tnewVNode._dom = oldDom;\n\t\t\tnewVNode._hydrating = !!isHydrating;\n\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t// ^ could possibly be simplified to:\n\t\t\t// excessDomChildren.length = 0;\n\t\t}\n\t\toptions._catchError(e, newVNode, oldVNode);\n\t}\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {import('../internal').VNode} root\n */\nexport function commitRoot(commitQueue, root) {\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-ignore Reuse the commitQueue variable here so the type changes\n\t\t\tcommitQueue = c._renderCallbacks;\n\t\t\tc._renderCallbacks = [];\n\t\t\tcommitQueue.some(cb => {\n\t\t\t\t// @ts-ignore See above ts-ignore on commitQueue\n\t\t\t\tcb.call(c);\n\t\t\t});\n\t\t} catch (e) {\n\t\t\toptions._catchError(e, c._vnode);\n\t\t}\n\t});\n}\n\n/**\n * Diff two virtual nodes representing DOM element\n * @param {import('../internal').PreactElement} dom The DOM element representing\n * the virtual nodes being diffed\n * @param {import('../internal').VNode} newVNode The new virtual node\n * @param {import('../internal').VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node\n * @param {*} excessDomChildren\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @returns {import('../internal').PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = newVNode.type;\n\tlet i = 0;\n\n\t// Tracks entering and exiting SVG namespace when descending through the tree.\n\tif (nodeType === 'svg') isSvg = true;\n\n\tif (excessDomChildren != null) {\n\t\tfor (; i < excessDomChildren.length; i++) {\n\t\t\tconst child = excessDomChildren[i];\n\n\t\t\t// if newVNode matches an element in excessDomChildren or the `dom`\n\t\t\t// argument matches an element in excessDomChildren, remove it from\n\t\t\t// excessDomChildren so it isn't later removed in diffChildren\n\t\t\tif (\n\t\t\t\tchild &&\n\t\t\t\t(child === dom ||\n\t\t\t\t\t(nodeType ? child.localName == nodeType : child.nodeType == 3))\n\t\t\t) {\n\t\t\t\tdom = child;\n\t\t\t\texcessDomChildren[i] = null;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tif (dom == null) {\n\t\tif (nodeType === null) {\n\t\t\t// @ts-ignore createTextNode returns Text, we expect PreactElement\n\t\t\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS(\n\t\t\t\t'http://www.w3.org/2000/svg',\n\t\t\t\t// @ts-ignore We know `newVNode.type` is a string\n\t\t\t\tnodeType\n\t\t\t);\n\t\t} else {\n\t\t\tdom = document.createElement(\n\t\t\t\t// @ts-ignore We know `newVNode.type` is a string\n\t\t\t\tnodeType,\n\t\t\t\tnewProps.is && newProps\n\t\t\t);\n\t\t}\n\n\t\t// we created a new parent, so none of the previously attached children can be reused:\n\t\texcessDomChildren = null;\n\t\t// we are creating a new node, so we can assume this is a new subtree (in case we are hydrating), this deopts the hydrate\n\t\tisHydrating = false;\n\t}\n\n\tif (nodeType === null) {\n\t\t// During hydration, we still have to split merged text from SSR'd HTML.\n\t\tif (oldProps !== newProps && (!isHydrating || dom.data !== newProps)) {\n\t\t\tdom.data = newProps;\n\t\t}\n\t} else {\n\t\t// If excessDomChildren was not null, repopulate it with the current element's children:\n\t\texcessDomChildren =\n\t\t\texcessDomChildren && EMPTY_ARR.slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\tlet oldHtml = oldProps.dangerouslySetInnerHTML;\n\t\tlet newHtml = newProps.dangerouslySetInnerHTML;\n\n\t\t// During hydration, props are not diffed at all (including dangerouslySetInnerHTML)\n\t\t// @TODO we should warn in debug mode when props don't match here.\n\t\tif (!isHydrating) {\n\t\t\t// But, if we are in a situation where we are using existing DOM (e.g. replaceNode)\n\t\t\t// we should read the existing DOM attributes to diff them\n\t\t\tif (excessDomChildren != null) {\n\t\t\t\toldProps = {};\n\t\t\t\tfor (let i = 0; i < dom.attributes.length; i++) {\n\t\t\t\t\toldProps[dom.attributes[i].name] = dom.attributes[i].value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (newHtml || oldHtml) {\n\t\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\t\tif (\n\t\t\t\t\t!newHtml ||\n\t\t\t\t\t((!oldHtml || newHtml.__html != oldHtml.__html) &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML)\n\t\t\t\t) {\n\t\t\t\t\tdom.innerHTML = (newHtml && newHtml.__html) || '';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tdiffProps(dom, newProps, oldProps, isSvg, isHydrating);\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\ti = newVNode.props.children;\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tArray.isArray(i) ? i : [i],\n\t\t\t\tnewVNode,\n\t\t\t\toldVNode,\n\t\t\t\tglobalContext,\n\t\t\t\tisSvg && nodeType !== 'foreignObject',\n\t\t\t\texcessDomChildren,\n\t\t\t\tcommitQueue,\n\t\t\t\tdom.firstChild,\n\t\t\t\tisHydrating\n\t\t\t);\n\n\t\t\t// Remove children that are not part of any vnode.\n\t\t\tif (excessDomChildren != null) {\n\t\t\t\tfor (i = excessDomChildren.length; i--; ) {\n\t\t\t\t\tif (excessDomChildren[i] != null) removeNode(excessDomChildren[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// (as above, don't diff props during hydration)\n\t\tif (!isHydrating) {\n\t\t\tif (\n\t\t\t\t'value' in newProps &&\n\t\t\t\t(i = newProps.value) !== undefined &&\n\t\t\t\t// #2756 For the -element the initial value is 0,\n\t\t\t\t// despite the attribute not being present. When the attribute\n\t\t\t\t// is missing the progress bar is treated as indeterminate.\n\t\t\t\t// To fix that we'll always update it when it is 0 for progress elements\n\t\t\t\t(i !== dom.value || (nodeType === 'progress' && !i))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, 'value', i, oldProps.value, false);\n\t\t\t}\n\t\t\tif (\n\t\t\t\t'checked' in newProps &&\n\t\t\t\t(i = newProps.checked) !== undefined &&\n\t\t\t\ti !== dom.checked\n\t\t\t) {\n\t\t\t\tsetProperty(dom, 'checked', i, oldProps.checked, false);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn dom;\n}\n\n/**\n * Invoke or update a ref, depending on whether it is a function or object ref.\n * @param {object|function} ref\n * @param {any} value\n * @param {import('../internal').VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') ref(value);\n\t\telse ref.current = value;\n\t} catch (e) {\n\t\toptions._catchError(e, vnode);\n\t}\n}\n\n/**\n * Unmount a virtual node from the tree and apply DOM changes\n * @param {import('../internal').VNode} vnode The virtual node to unmount\n * @param {import('../internal').VNode} parentVNode The parent of the VNode that\n * initiated the unmount\n * @param {boolean} [skipRemove] Flag that indicates that a parent node of the\n * current element is already detached from the DOM.\n */\nexport function unmount(vnode, parentVNode, skipRemove) {\n\tlet r;\n\tif (options.unmount) options.unmount(vnode);\n\n\tif ((r = vnode.ref)) {\n\t\tif (!r.current || r.current === vnode._dom) applyRef(r, null, parentVNode);\n\t}\n\n\tlet dom;\n\tif (!skipRemove && typeof vnode.type != 'function') {\n\t\tskipRemove = (dom = vnode._dom) != null;\n\t}\n\n\t// Must be set to `undefined` to properly clean up `_nextDom`\n\t// for which `null` is a valid value. See comment in `create-element.js`\n\tvnode._dom = vnode._nextDom = undefined;\n\n\tif ((r = vnode._component) != null) {\n\t\tif (r.componentWillUnmount) {\n\t\t\ttry {\n\t\t\t\tr.componentWillUnmount();\n\t\t\t} catch (e) {\n\t\t\t\toptions._catchError(e, parentVNode);\n\t\t\t}\n\t\t}\n\n\t\tr.base = r._parentDom = null;\n\t}\n\n\tif ((r = vnode._children)) {\n\t\tfor (let i = 0; i < r.length; i++) {\n\t\t\tif (r[i]) unmount(r[i], parentVNode, skipRemove);\n\t\t}\n\t}\n\n\tif (dom != null) removeNode(dom);\n}\n\n/** The `.render()` method for a PFC backing instance. */\nfunction doRender(props, state, context) {\n\treturn this.constructor(props, context);\n}\n","import { EMPTY_OBJ, EMPTY_ARR } from './constants';\nimport { commitRoot, diff } from './diff/index';\nimport { createElement, Fragment } from './create-element';\nimport options from './options';\n\n/**\n * Render a Preact virtual node into a DOM element\n * @param {import('./internal').ComponentChild} vnode The virtual node to render\n * @param {import('./internal').PreactElement} parentDom The DOM element to\n * render into\n * @param {import('./internal').PreactElement | object} [replaceNode] Optional: Attempt to re-use an\n * existing DOM tree rooted at `replaceNode`\n */\nexport function render(vnode, parentDom, replaceNode) {\n\tif (options._root) options._root(vnode, parentDom);\n\n\t// We abuse the `replaceNode` parameter in `hydrate()` to signal if we are in\n\t// hydration mode or not by passing the `hydrate` function instead of a DOM\n\t// element..\n\tlet isHydrating = typeof replaceNode === 'function';\n\n\t// To be able to support calling `render()` multiple times on the same\n\t// DOM node, we need to obtain a reference to the previous tree. We do\n\t// this by assigning a new `_children` property to DOM nodes which points\n\t// to the last rendered tree. By default this property is not present, which\n\t// means that we are mounting a new tree for the first time.\n\tlet oldVNode = isHydrating\n\t\t? null\n\t\t: (replaceNode && replaceNode._children) || parentDom._children;\n\n\tvnode = (\n\t\t(!isHydrating && replaceNode) ||\n\t\tparentDom\n\t)._children = createElement(Fragment, null, [vnode]);\n\n\t// List of effects that need to be called after diffing.\n\tlet commitQueue = [];\n\tdiff(\n\t\tparentDom,\n\t\t// Determine the new vnode tree and store it on the DOM element on\n\t\t// our custom `_children` property.\n\t\tvnode,\n\t\toldVNode || EMPTY_OBJ,\n\t\tEMPTY_OBJ,\n\t\tparentDom.ownerSVGElement !== undefined,\n\t\t!isHydrating && replaceNode\n\t\t\t? [replaceNode]\n\t\t\t: oldVNode\n\t\t\t? null\n\t\t\t: parentDom.firstChild\n\t\t\t? EMPTY_ARR.slice.call(parentDom.childNodes)\n\t\t\t: null,\n\t\tcommitQueue,\n\t\t!isHydrating && replaceNode\n\t\t\t? replaceNode\n\t\t\t: oldVNode\n\t\t\t? oldVNode._dom\n\t\t\t: parentDom.firstChild,\n\t\tisHydrating\n\t);\n\n\t// Flush all queued effects\n\tcommitRoot(commitQueue, vnode);\n}\n\n/**\n * Update an existing DOM element with data from a Preact virtual node\n * @param {import('./internal').ComponentChild} vnode The virtual node to render\n * @param {import('./internal').PreactElement} parentDom The DOM element to\n * update\n */\nexport function hydrate(vnode, parentDom) {\n\trender(vnode, parentDom, hydrate);\n}\n","import { assign } from './util';\nimport { createVNode } from './create-element';\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its children.\n * @param {import('./internal').VNode} vnode The virtual DOM element to clone\n * @param {object} props Attributes/props to add when cloning\n * @param {Array} rest Any additional arguments will be used as replacement children.\n * @returns {import('./internal').VNode}\n */\nexport function cloneElement(vnode, props, children) {\n\tlet normalizedProps = assign({}, vnode.props),\n\t\tkey,\n\t\tref,\n\t\ti;\n\tfor (i in props) {\n\t\tif (i == 'key') key = props[i];\n\t\telse if (i == 'ref') ref = props[i];\n\t\telse normalizedProps[i] = props[i];\n\t}\n\n\tif (arguments.length > 3) {\n\t\tchildren = [children];\n\t\tfor (i = 3; i < arguments.length; i++) {\n\t\t\tchildren.push(arguments[i]);\n\t\t}\n\t}\n\tif (children != null) {\n\t\tnormalizedProps.children = children;\n\t}\n\n\treturn createVNode(\n\t\tvnode.type,\n\t\tnormalizedProps,\n\t\tkey || vnode.key,\n\t\tref || vnode.ref,\n\t\tnull\n\t);\n}\n","import { enqueueRender } from './component';\n\nexport let i = 0;\n\nexport function createContext(defaultValue, contextId) {\n\tcontextId = '__cC' + i++;\n\n\tconst context = {\n\t\t_id: contextId,\n\t\t_defaultValue: defaultValue,\n\t\t/** @type {import('./internal').FunctionComponent} */\n\t\tConsumer(props, contextValue) {\n\t\t\t// return props.children(\n\t\t\t// \tcontext[contextId] ? context[contextId].props.value : defaultValue\n\t\t\t// );\n\t\t\treturn props.children(contextValue);\n\t\t},\n\t\t/** @type {import('./internal').FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\tlet subs = [];\n\t\t\t\tlet ctx = {};\n\t\t\t\tctx[contextId] = this;\n\n\t\t\t\tthis.getChildContext = () => ctx;\n\n\t\t\t\tthis.shouldComponentUpdate = function(_props) {\n\t\t\t\t\tif (this.props.value !== _props.value) {\n\t\t\t\t\t\t// I think the forced value propagation here was only needed when `options.debounceRendering` was being bypassed:\n\t\t\t\t\t\t// https://github.com/preactjs/preact/commit/4d339fb803bea09e9f198abf38ca1bf8ea4b7771#diff-54682ce380935a717e41b8bfc54737f6R358\n\t\t\t\t\t\t// In those cases though, even with the value corrected, we're double-rendering all nodes.\n\t\t\t\t\t\t// It might be better to just tell folks not to use force-sync mode.\n\t\t\t\t\t\t// Currently, using `useContext()` in a class component will overwrite its `this.context` value.\n\t\t\t\t\t\t// subs.some(c => {\n\t\t\t\t\t\t// \tc.context = _props.value;\n\t\t\t\t\t\t// \tenqueueRender(c);\n\t\t\t\t\t\t// });\n\n\t\t\t\t\t\t// subs.some(c => {\n\t\t\t\t\t\t// \tc.context[contextId] = _props.value;\n\t\t\t\t\t\t// \tenqueueRender(c);\n\t\t\t\t\t\t// });\n\t\t\t\t\t\tsubs.some(enqueueRender);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tthis.sub = c => {\n\t\t\t\t\tsubs.push(c);\n\t\t\t\t\tlet old = c.componentWillUnmount;\n\t\t\t\t\tc.componentWillUnmount = () => {\n\t\t\t\t\t\tsubs.splice(subs.indexOf(c), 1);\n\t\t\t\t\t\tif (old) old.call(c);\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn props.children;\n\t\t}\n\t};\n\n\t// Devtools needs access to the context object when it\n\t// encounters a Provider. This is necessary to support\n\t// setting `displayName` on the context object instead\n\t// of on the component itself. See:\n\t// https://reactjs.org/docs/context.html#contextdisplayname\n\n\treturn (context.Provider._contextRef = context.Consumer.contextType = context);\n}\n","export const EMPTY_OBJ = {};\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { _catchError } from './diff/catch-error';\n\n/**\n * The `option` object can potentially contain callback functions\n * that are called during various stages of our renderer. This is the\n * foundation on which all our addons like `preact/debug`, `preact/compat`,\n * and `preact/hooks` are based on. See the `Options` type in `internal.d.ts`\n * for a full list of available option hooks (most editors/IDEs allow you to\n * ctrl+click or cmd+click on mac the type definition below).\n * @type {import('./internal').Options}\n */\nconst options = {\n\t_catchError,\n\t_vnodeId: 0\n};\n\nexport default options;\n","/**\n * Find the closest error boundary to a thrown error and call it\n * @param {object} error The thrown value\n * @param {import('../internal').VNode} vnode The vnode that threw\n * the error that was caught (except for unmounting when this parameter\n * is the highest parent that was being unmounted)\n */\nexport function _catchError(error, vnode) {\n\t/** @type {import('../internal').Component} */\n\tlet component, ctor, handled;\n\n\tfor (; (vnode = vnode._parent); ) {\n\t\tif ((component = vnode._component) && !component._processingException) {\n\t\t\ttry {\n\t\t\t\tctor = component.constructor;\n\n\t\t\t\tif (ctor && ctor.getDerivedStateFromError != null) {\n\t\t\t\t\tcomponent.setState(ctor.getDerivedStateFromError(error));\n\t\t\t\t\thandled = component._dirty;\n\t\t\t\t}\n\n\t\t\t\tif (component.componentDidCatch != null) {\n\t\t\t\t\tcomponent.componentDidCatch(error);\n\t\t\t\t\thandled = component._dirty;\n\t\t\t\t}\n\n\t\t\t\t// This is an error boundary. Mark it as having bailed out, and whether it was mid-hydration.\n\t\t\t\tif (handled) {\n\t\t\t\t\treturn (component._pendingError = component);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\terror = e;\n\t\t\t}\n\t\t}\n\t}\n\n\tthrow error;\n}\n","/* global __webpack_public_path__ */\n\nimport * as Preact from 'preact';\nconst { h, render, hydrate } = Preact;\n\nconst interopDefault = m => (m && m.default ? m.default : m);\n\nconst normalizeURL = url => (url[url.length - 1] === '/' ? url : url + '/');\n\nif (process.env.NODE_ENV === 'development') {\n\t// enable preact devtools\n\trequire('preact/debug');\n\n\t// only add a debug sw if webpack service worker is not requested.\n\tif (process.env.ADD_SW === undefined && 'serviceWorker' in navigator) {\n\t\t// eslint-disable-next-line no-undef\n\t\tnavigator.serviceWorker.register(__webpack_public_path__ + 'sw-debug.js');\n\t} else if (process.env.ADD_SW && 'serviceWorker' in navigator) {\n\t\t// eslint-disable-next-line no-undef\n\t\tnavigator.serviceWorker.register(\n\t\t\t__webpack_public_path__ + (process.env.ES_BUILD ? 'sw-esm.js' : 'sw.js')\n\t\t);\n\t}\n} else if (process.env.ADD_SW && 'serviceWorker' in navigator) {\n\t// eslint-disable-next-line no-undef\n\tnavigator.serviceWorker.register(\n\t\t__webpack_public_path__ + (process.env.ES_BUILD ? 'sw-esm.js' : 'sw.js')\n\t);\n}\n\nlet app = interopDefault(require('preact-cli-entrypoint'));\n\nif (typeof app === 'function') {\n\tlet root =\n\t\tdocument.getElementById('preact_root') || document.body.firstElementChild;\n\n\tlet init = () => {\n\t\tlet app = interopDefault(require('preact-cli-entrypoint'));\n\t\tlet preRenderData = {};\n\t\tconst inlineDataElement = document.querySelector(\n\t\t\t'[type=\"__PREACT_CLI_DATA__\"]'\n\t\t);\n\t\tif (inlineDataElement) {\n\t\t\tpreRenderData =\n\t\t\t\tJSON.parse(decodeURI(inlineDataElement.innerHTML)).preRenderData ||\n\t\t\t\tpreRenderData;\n\t\t}\n\t\t/* An object named CLI_DATA is passed as a prop,\n\t\t * this keeps us future proof if in case we decide,\n\t\t * to send other data like at some point in time.\n\t\t */\n\t\tconst CLI_DATA = { preRenderData };\n\t\tconst currentURL = preRenderData.url ? normalizeURL(preRenderData.url) : '';\n\t\tconst canHydrate =\n\t\t\tprocess.env.PRERENDER &&\n\t\t\tprocess.env.NODE_ENV === 'production' &&\n\t\t\thydrate &&\n\t\t\tcurrentURL === normalizeURL(location.pathname);\n\t\tconst doRender = canHydrate ? hydrate : render;\n\t\troot = doRender(h(app, { CLI_DATA }), document.body, root);\n\t};\n\n\tif (module.hot) module.hot.accept('preact-cli-entrypoint', init);\n\n\tinit();\n}\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.Link = exports.Match = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _preact = require('preact');\n\nvar _preactRouter = require('preact-router');\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Match = exports.Match = function (_Component) {\n\t_inherits(Match, _Component);\n\n\tfunction Match() {\n\t\tvar _temp, _this, _ret;\n\n\t\t_classCallCheck(this, Match);\n\n\t\tfor (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t\t\targs[_key] = arguments[_key];\n\t\t}\n\n\t\treturn _ret = (_temp = (_this = _possibleConstructorReturn(this, _Component.call.apply(_Component, [this].concat(args))), _this), _this.update = function (url) {\n\t\t\t_this.nextUrl = url;\n\t\t\t_this.setState({});\n\t\t}, _temp), _possibleConstructorReturn(_this, _ret);\n\t}\n\n\tMatch.prototype.componentDidMount = function componentDidMount() {\n\t\t_preactRouter.subscribers.push(this.update);\n\t};\n\n\tMatch.prototype.componentWillUnmount = function componentWillUnmount() {\n\t\t_preactRouter.subscribers.splice(_preactRouter.subscribers.indexOf(this.update) >>> 0, 1);\n\t};\n\n\tMatch.prototype.render = function render(props) {\n\t\tvar url = this.nextUrl || (0, _preactRouter.getCurrentUrl)(),\n\t\t path = url.replace(/\\?.+$/, '');\n\t\tthis.nextUrl = null;\n\t\treturn props.children({\n\t\t\turl: url,\n\t\t\tpath: path,\n\t\t\tmatches: (0, _preactRouter.exec)(path, props.path, {}) !== false\n\t\t});\n\t};\n\n\treturn Match;\n}(_preact.Component);\n\nvar Link = function Link(_ref) {\n\tvar activeClassName = _ref.activeClassName,\n\t path = _ref.path,\n\t props = _objectWithoutProperties(_ref, ['activeClassName', 'path']);\n\n\treturn (0, _preact.h)(\n\t\tMatch,\n\t\t{ path: path || props.href },\n\t\tfunction (_ref2) {\n\t\t\tvar matches = _ref2.matches;\n\t\t\treturn (0, _preact.h)(_preactRouter.Link, _extends({}, props, { 'class': [props.class || props.className, matches && activeClassName].filter(Boolean).join(' ') }));\n\t\t}\n\t);\n};\n\nexports.Link = Link;\nexports.default = Match;\n\nMatch.Link = Link;\n","import { h, Component } from 'preact';\n\nconst PENDING = {};\n\n// Given a VNode, finds its previous element sibling\nfunction getPreviousSibling(vnode, inner) {\n\t// in an element parent with no preceeding siblings means we're the first child\n\tif (typeof vnode.type === 'string') return null;\n\tconst parent = vnode.__;\n\tif (!parent) return;\n\tlet children = parent.__k;\n\tif (children) {\n\t\tif (!Array.isArray(children)) children = [children];\n\t\t// only search previous children\n\t\tlet end = children.indexOf(vnode);\n\t\tif (end === -1) end = children.length;\n\t\tfor (let i=end; i--; ) {\n\t\t\tconst child = children[i];\n\t\t\tconst dom = child && child.__e || getPreviousSibling(child, true);\n\t\t\tif (dom) return dom;\n\t\t}\n\t}\n\tif (!inner) return getPreviousSibling(parent);\n}\n\nexport default function async(load) {\n\tlet component;\n\n\tfunction AsyncComponent() {\n\t\tComponent.call(this);\n\n\t\tif (!component) {\n\t\t\tthis.componentWillMount = () => {\n\t\t\t\tload((mod) => {\n\t\t\t\t\tcomponent = (mod && mod.default) || mod;\n\t\t\t\t\tthis.setState({});\n\t\t\t\t});\n\t\t\t};\n\n\t\t\tthis.shouldComponentUpdate = () => component != null;\n\t\t}\n\n\t\tthis.render = (props) => {\n\t\t\tif (component) {\n\t\t\t\treturn h(component, props);\n\t\t\t}\n\n\t\t\tconst prev = getPreviousSibling(this.__v);\n\t\t\tconst me = prev && prev.nextSibling || (this.__P || this._parentDom).firstChild;\n\n\t\t\treturn (\n\t\t\t\tme &&\n\t\t\t\th(me.localName, {\n\t\t\t\t\tdangerouslySetInnerHTML: PENDING,\n\t\t\t\t})\n\t\t\t);\n\t\t};\n\t}\n\n\tAsyncComponent.preload = load;\n\t(AsyncComponent.prototype = new Component()).constructor = AsyncComponent;\n\n\treturn AsyncComponent;\n}\n","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-home\");\n\t\t}\n\n\t\texport default Async(load);\n\t","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-profile\");\n\t\t}\n\n\t\texport default Async(load);\n\t","\n\t\timport Async from \"../../../node_modules/@preact/async-loader/async.js\";\n\n\t\tfunction load(cb) {\n\t\t\trequire.ensure([], function (require) {\n\t\t\t\tvar result = require(\"!!../../../node_modules/babel-loader/lib/index.js??ref--4!./index.tsx\");\n\t\t\t\ttypeof cb === 'function' && cb(result);\n\t\t\t}, \"route-notfound\");\n\t\t}\n\n\t\texport default Async(load);\n\t","// extracted by mini-css-extract-plugin\nexport default {\"header\":\"header__3ax1h\",\"active\":\"active__2XB2z\"};","import { FunctionalComponent, h } from 'preact';\nimport { Link } from 'preact-router/match';\nimport style from './style.css';\n\nconst Header: FunctionalComponent = () => {\n return (\n
\n

AutoUserBGs

\n

by 0J3

\n \n
\n );\n};\n\nexport default Header;\n","import './style/index.css';\nimport App from './components/app';\n\nexport default App;\n","import { FunctionalComponent, h } from 'preact';\nimport { Route, Router } from 'preact-router';\n\nimport Home from '../routes/home';\nimport Profile from '../routes/profile';\nimport NotFoundPage from '../routes/notfound';\nimport Header from './header';\n\nconst App: FunctionalComponent = () => {\n return (\n
\n
\n \n \n \n \n \n \n
\n );\n};\n\nexport default App;\n"],"sourceRoot":""}