From 95a84bcaeca1ea0df61e7a96ec052f4ae8992f82 Mon Sep 17 00:00:00 2001 From: Khietsly Tristan Date: Fri, 13 Feb 2026 14:35:14 +0700 Subject: [PATCH] feat(docs): few changes for better appearance --- bun.lock | 36 +- docs/.vitepress/cache/deps/_metadata.json | 20 +- docs/.vitepress/theme/style.css | 161 +- node_modules/.bin/esbuild | 1 - node_modules/.bin/esbuild.cmd | 17 - node_modules/.bin/esbuild.ps1 | 28 - node_modules/.bin/nanoid | 1 - node_modules/.bin/nanoid.cmd | 17 - node_modules/.bin/nanoid.ps1 | 28 - node_modules/.bin/parser | 1 - node_modules/.bin/parser.cmd | 17 - node_modules/.bin/parser.ps1 | 28 - node_modules/.bin/rollup | 1 - node_modules/.bin/rollup.cmd | 17 - node_modules/.bin/rollup.ps1 | 28 - node_modules/.bin/vite | 1 - node_modules/.bin/vite.cmd | 17 - node_modules/.bin/vite.ps1 | 28 - node_modules/.bin/vitepress | 1 - node_modules/.bin/vitepress.cmd | 17 - node_modules/.bin/vitepress.ps1 | 28 - node_modules/.package-lock.json | 979 ---- .../dist/cache-browser-local-storage.cjs.js | 83 - .../dist/cache-browser-local-storage.d.ts | 31 - .../dist/cache-browser-local-storage.esm.js | 79 - .../cache-browser-local-storage/index.js | 2 - .../cache-browser-local-storage/package.json | 22 - .../cache-common/dist/cache-common.cjs.js | 61 - .../cache-common/dist/cache-common.d.ts | 40 - .../cache-common/dist/cache-common.esm.js | 56 - node_modules/@algolia/cache-common/index.js | 2 - .../@algolia/cache-common/package.json | 19 - .../dist/cache-in-memory.cjs.js | 37 - .../cache-in-memory/dist/cache-in-memory.d.ts | 12 - .../dist/cache-in-memory.esm.js | 33 - .../@algolia/cache-in-memory/index.js | 2 - .../@algolia/cache-in-memory/package.json | 22 - .../client-account/dist/client-account.cjs.js | 69 - .../client-account/dist/client-account.d.ts | 18 - .../client-account/dist/client-account.esm.js | 63 - node_modules/@algolia/client-account/index.js | 2 - .../@algolia/client-account/package.json | 23 - .../@algolia/client-analytics/package.json | 12 +- .../@algolia/client-common/package.json | 6 +- .../client-personalization/package.json | 12 +- .../@algolia/client-search/package.json | 12 +- .../logger-common/dist/logger-common.cjs.js | 26 - .../logger-common/dist/logger-common.d.ts | 23 - .../logger-common/dist/logger-common.esm.js | 21 - node_modules/@algolia/logger-common/index.js | 2 - .../@algolia/logger-common/package.json | 19 - .../logger-console/dist/logger-console.cjs.js | 29 - .../logger-console/dist/logger-console.d.ts | 6 - .../logger-console/dist/logger-console.esm.js | 25 - node_modules/@algolia/logger-console/index.js | 2 - .../@algolia/logger-console/package.json | 22 - .../requester-browser-xhr/package.json | 8 +- .../dist/requester-common.cjs.js | 12 - .../dist/requester-common.d.ts | 66 - .../dist/requester-common.esm.js | 8 - .../@algolia/requester-common/index.js | 2 - .../@algolia/requester-common/package.json | 19 - .../@algolia/requester-node-http/package.json | 8 +- .../transporter/dist/transporter.cjs.js | 483 -- .../transporter/dist/transporter.d.ts | 381 -- .../transporter/dist/transporter.esm.js | 460 -- node_modules/@algolia/transporter/index.js | 2 - .../@algolia/transporter/package.json | 24 - node_modules/@esbuild/win32-x64/package.json | 7 +- .../rollup-win32-x64-msvc/package.json | 7 +- .../rollup.win32-x64-msvc.node | Bin 3395072 -> 2527232 bytes node_modules/algoliasearch/README.md | 10 +- .../algoliasearch/dist/algoliasearch.umd.js | 2 +- node_modules/algoliasearch/package.json | 36 +- node_modules/preact/README.md | 11 +- node_modules/preact/compat/LICENSE | 21 - node_modules/preact/compat/client.js | 6 +- node_modules/preact/compat/client.mjs | 6 +- node_modules/preact/compat/dist/compat.js | 2 +- node_modules/preact/compat/dist/compat.js.map | 2 +- node_modules/preact/compat/dist/compat.mjs | 2 +- .../preact/compat/dist/compat.module.js | 2 +- .../preact/compat/dist/compat.module.js.map | 2 +- node_modules/preact/compat/dist/compat.umd.js | 2 +- .../preact/compat/dist/compat.umd.js.map | 2 +- node_modules/preact/compat/package.json | 5 + node_modules/preact/compat/server.js | 23 +- node_modules/preact/compat/server.mjs | 8 +- .../preact/compat/src/PureComponent.js | 3 +- node_modules/preact/compat/src/forwardRef.js | 2 +- node_modules/preact/compat/src/index.d.ts | 167 +- node_modules/preact/compat/src/index.js | 100 +- node_modules/preact/compat/src/internal.d.ts | 5 +- node_modules/preact/compat/src/memo.js | 1 + node_modules/preact/compat/src/portals.js | 15 +- node_modules/preact/compat/src/render.js | 77 +- .../preact/compat/src/suspense-list.d.ts | 4 +- node_modules/preact/compat/src/suspense.d.ts | 8 +- node_modules/preact/compat/src/suspense.js | 28 +- node_modules/preact/debug/LICENSE | 21 - node_modules/preact/debug/dist/debug.js | 2 +- node_modules/preact/debug/dist/debug.js.map | 2 +- node_modules/preact/debug/dist/debug.mjs | 2 +- .../preact/debug/dist/debug.module.js | 2 +- .../preact/debug/dist/debug.module.js.map | 2 +- node_modules/preact/debug/dist/debug.umd.js | 2 +- .../preact/debug/dist/debug.umd.js.map | 2 +- .../preact/debug/src/component-stack.js | 6 +- node_modules/preact/debug/src/debug.js | 70 +- node_modules/preact/debug/src/index.d.ts | 19 + node_modules/preact/debug/src/index.js | 6 + node_modules/preact/devtools/LICENSE | 21 - node_modules/preact/devtools/dist/devtools.js | 2 +- .../preact/devtools/dist/devtools.js.map | 2 +- .../preact/devtools/dist/devtools.mjs | 2 +- .../preact/devtools/dist/devtools.module.js | 2 +- .../devtools/dist/devtools.module.js.map | 2 +- .../preact/devtools/dist/devtools.umd.js | 2 +- .../preact/devtools/dist/devtools.umd.js.map | 2 +- node_modules/preact/devtools/src/devtools.js | 17 +- node_modules/preact/dist/preact.js | 2 +- node_modules/preact/dist/preact.js.map | 2 +- node_modules/preact/dist/preact.min.js | 2 +- node_modules/preact/dist/preact.min.js.map | 2 +- node_modules/preact/dist/preact.min.module.js | 2 +- .../preact/dist/preact.min.module.js.map | 2 +- node_modules/preact/dist/preact.min.umd.js | 2 +- .../preact/dist/preact.min.umd.js.map | 2 +- node_modules/preact/dist/preact.mjs | 2 +- node_modules/preact/dist/preact.module.js | 2 +- node_modules/preact/dist/preact.module.js.map | 2 +- node_modules/preact/dist/preact.umd.js | 2 +- node_modules/preact/dist/preact.umd.js.map | 2 +- node_modules/preact/hooks/LICENSE | 21 - node_modules/preact/hooks/dist/hooks.js | 2 +- node_modules/preact/hooks/dist/hooks.js.map | 2 +- node_modules/preact/hooks/dist/hooks.mjs | 2 +- .../preact/hooks/dist/hooks.module.js | 2 +- .../preact/hooks/dist/hooks.module.js.map | 2 +- node_modules/preact/hooks/dist/hooks.umd.js | 2 +- .../preact/hooks/dist/hooks.umd.js.map | 2 +- node_modules/preact/hooks/src/index.d.ts | 23 +- node_modules/preact/hooks/src/index.js | 126 +- node_modules/preact/hooks/src/internal.d.ts | 92 +- node_modules/preact/jsx-runtime/LICENSE | 21 - .../preact/jsx-runtime/dist/jsxRuntime.js | 2 +- .../preact/jsx-runtime/dist/jsxRuntime.js.map | 2 +- .../preact/jsx-runtime/dist/jsxRuntime.mjs | 2 +- .../jsx-runtime/dist/jsxRuntime.module.js | 2 +- .../jsx-runtime/dist/jsxRuntime.module.js.map | 2 +- .../preact/jsx-runtime/dist/jsxRuntime.umd.js | 2 +- .../jsx-runtime/dist/jsxRuntime.umd.js.map | 2 +- .../preact/jsx-runtime/src/index.d.ts | 6 +- node_modules/preact/jsx-runtime/src/index.js | 41 +- node_modules/preact/package.json | 206 +- node_modules/preact/src/clone-element.js | 11 +- node_modules/preact/src/component.js | 82 +- node_modules/preact/src/constants.js | 10 +- node_modules/preact/src/create-context.js | 103 +- node_modules/preact/src/create-element.js | 42 +- node_modules/preact/src/diff/catch-error.js | 16 +- node_modules/preact/src/diff/children.js | 320 +- node_modules/preact/src/diff/index.js | 273 +- node_modules/preact/src/diff/props.js | 135 +- node_modules/preact/src/index.d.ts | 73 +- node_modules/preact/src/internal.d.ts | 372 +- node_modules/preact/src/jsx.d.ts | 3939 ++++++------- node_modules/preact/src/options.js | 2 +- node_modules/preact/src/render.js | 35 +- node_modules/preact/src/util.js | 5 +- .../preact/test-utils/dist/testUtils.js | 2 +- .../preact/test-utils/dist/testUtils.js.map | 2 +- .../preact/test-utils/dist/testUtils.mjs | 2 +- .../test-utils/dist/testUtils.module.js | 2 +- .../test-utils/dist/testUtils.module.js.map | 2 +- .../preact/test-utils/dist/testUtils.umd.js | 2 +- .../test-utils/dist/testUtils.umd.js.map | 2 +- node_modules/preact/test-utils/src/index.js | 29 +- node_modules/search-insights/README.md | 1 + .../search-insights/dist/_getVersion.d.ts | 2 +- .../search-insights/dist/_sendEvent.d.ts | 2 +- .../search-insights/dist/_tokenUtils.d.ts | 2 + .../dist/entry-browser-cjs.d.ts | 8 - .../search-insights/dist/entry-node-cjs.d.ts | 8 - .../search-insights/dist/insights.d.ts | 3 +- .../dist/search-insights-browser.cjs.min.js | 1 - .../dist/search-insights-node.cjs.min.js | 1 - .../dist/search-insights.iife.min.js | 2 +- .../dist/search-insights.min.js | 2 +- node_modules/search-insights/dist/types.d.ts | 54 +- .../search-insights/dist/utils/index.d.ts | 2 + .../search-insights/empty-module.cjs.js | 3 - .../search-insights/index-browser.cjs.d.ts | 3 - .../search-insights/index-browser.cjs.js | 8 - .../search-insights/index-node.cjs.d.ts | 3 - .../search-insights/index-node.cjs.js | 8 - .../lib/_getFunctionalInterface.ts | 10 +- .../search-insights/lib/_getVersion.ts | 5 +- .../search-insights/lib/_sendEvent.ts | 36 +- .../search-insights/lib/_tokenUtils.ts | 18 + node_modules/search-insights/lib/click.ts | 9 +- .../search-insights/lib/conversion.ts | 18 +- .../search-insights/lib/entry-browser-cjs.ts | 15 - .../search-insights/lib/entry-node-cjs.ts | 15 - node_modules/search-insights/lib/init.ts | 16 +- node_modules/search-insights/lib/insights.ts | 5 +- node_modules/search-insights/lib/types.ts | 64 +- .../search-insights/lib/utils/index.ts | 4 + .../search-insights/lib/utils/request.ts | 5 +- node_modules/search-insights/package.json | 35 +- node_modules/shikiji-core/LICENSE | 22 - node_modules/shikiji-core/README.md | 5 - .../shikiji-core/dist/chunk-index.d.mts | 17 - .../shikiji-core/dist/chunk-types.d.mts | 1211 ---- node_modules/shikiji-core/dist/index.d.mts | 363 -- node_modules/shikiji-core/dist/index.mjs | 5176 ----------------- node_modules/shikiji-core/dist/onig.d.mts | 1 - node_modules/shikiji-core/dist/onig.mjs | 3 - node_modules/shikiji-core/dist/textmate.d.mts | 29 - node_modules/shikiji-core/dist/textmate.mjs | 3135 ---------- node_modules/shikiji-core/dist/types.d.mts | 2 - node_modules/shikiji-core/dist/types.mjs | 10 - .../shikiji-core/dist/wasm-inlined.d.mts | 5 - .../shikiji-core/dist/wasm-inlined.mjs | 7 - node_modules/shikiji-core/package.json | 70 - node_modules/shikiji-transformers/LICENSE | 22 - node_modules/shikiji-transformers/README.md | 9 - .../shikiji-transformers/dist/index.d.mts | 150 - .../shikiji-transformers/dist/index.d.ts | 150 - .../shikiji-transformers/dist/index.mjs | 394 -- .../shikiji-transformers/package.json | 39 - node_modules/shikiji/LICENSE | 22 - node_modules/shikiji/README.md | 15 - node_modules/shikiji/dist/bundle-full.d.mts | 29 - node_modules/shikiji/dist/bundle-full.mjs | 25 - node_modules/shikiji/dist/bundle-web.d.mts | 41 - node_modules/shikiji/dist/bundle-web.mjs | 334 -- node_modules/shikiji/dist/core-unwasm.d.mts | 1 - node_modules/shikiji/dist/core-unwasm.mjs | 4 - node_modules/shikiji/dist/core.d.mts | 2 - node_modules/shikiji/dist/core.mjs | 1 - node_modules/shikiji/dist/index.d.mts | 9 - node_modules/shikiji/dist/index.mjs | 6 - node_modules/shikiji/dist/langs.d.mts | 17 - node_modules/shikiji/dist/langs.mjs | 1031 ---- node_modules/shikiji/dist/langs/abap.d.mts | 1 - node_modules/shikiji/dist/langs/abap.mjs | 6 - .../shikiji/dist/langs/actionscript-3.d.mts | 1 - .../shikiji/dist/langs/actionscript-3.mjs | 6 - node_modules/shikiji/dist/langs/ada.d.mts | 1 - node_modules/shikiji/dist/langs/ada.mjs | 6 - .../shikiji/dist/langs/angular-html.d.mts | 1 - .../shikiji/dist/langs/angular-html.mjs | 35 - .../shikiji/dist/langs/angular-ts.d.mts | 1 - .../shikiji/dist/langs/angular-ts.mjs | 52 - node_modules/shikiji/dist/langs/apache.d.mts | 1 - node_modules/shikiji/dist/langs/apache.mjs | 6 - node_modules/shikiji/dist/langs/apex.d.mts | 1 - node_modules/shikiji/dist/langs/apex.mjs | 6 - node_modules/shikiji/dist/langs/apl.d.mts | 1 - node_modules/shikiji/dist/langs/apl.mjs | 18 - .../shikiji/dist/langs/applescript.d.mts | 1 - .../shikiji/dist/langs/applescript.mjs | 6 - node_modules/shikiji/dist/langs/ara.d.mts | 1 - node_modules/shikiji/dist/langs/ara.mjs | 6 - node_modules/shikiji/dist/langs/asm.d.mts | 1 - node_modules/shikiji/dist/langs/asm.mjs | 6 - node_modules/shikiji/dist/langs/astro.d.mts | 1 - node_modules/shikiji/dist/langs/astro.mjs | 27 - node_modules/shikiji/dist/langs/awk.d.mts | 1 - node_modules/shikiji/dist/langs/awk.mjs | 6 - .../shikiji/dist/langs/ballerina.d.mts | 1 - node_modules/shikiji/dist/langs/ballerina.mjs | 6 - node_modules/shikiji/dist/langs/bat.d.mts | 1 - node_modules/shikiji/dist/langs/bat.mjs | 6 - .../shikiji/dist/langs/beancount.d.mts | 1 - node_modules/shikiji/dist/langs/beancount.mjs | 6 - node_modules/shikiji/dist/langs/berry.d.mts | 1 - node_modules/shikiji/dist/langs/berry.mjs | 6 - node_modules/shikiji/dist/langs/bibtex.d.mts | 1 - node_modules/shikiji/dist/langs/bibtex.mjs | 6 - node_modules/shikiji/dist/langs/bicep.d.mts | 1 - node_modules/shikiji/dist/langs/bicep.mjs | 6 - node_modules/shikiji/dist/langs/blade.d.mts | 1 - node_modules/shikiji/dist/langs/blade.mjs | 20 - node_modules/shikiji/dist/langs/c.d.mts | 1 - node_modules/shikiji/dist/langs/c.mjs | 20 - node_modules/shikiji/dist/langs/cadence.d.mts | 1 - node_modules/shikiji/dist/langs/cadence.mjs | 6 - node_modules/shikiji/dist/langs/clarity.d.mts | 1 - node_modules/shikiji/dist/langs/clarity.mjs | 6 - node_modules/shikiji/dist/langs/clojure.d.mts | 1 - node_modules/shikiji/dist/langs/clojure.mjs | 6 - node_modules/shikiji/dist/langs/cmake.d.mts | 1 - node_modules/shikiji/dist/langs/cmake.mjs | 6 - node_modules/shikiji/dist/langs/cobol.d.mts | 1 - node_modules/shikiji/dist/langs/cobol.mjs | 15 - node_modules/shikiji/dist/langs/codeql.d.mts | 1 - node_modules/shikiji/dist/langs/codeql.mjs | 6 - node_modules/shikiji/dist/langs/coffee.d.mts | 1 - node_modules/shikiji/dist/langs/coffee.mjs | 15 - node_modules/shikiji/dist/langs/cpp.d.mts | 1 - node_modules/shikiji/dist/langs/cpp.mjs | 41 - node_modules/shikiji/dist/langs/crystal.d.mts | 1 - node_modules/shikiji/dist/langs/crystal.mjs | 19 - node_modules/shikiji/dist/langs/csharp.d.mts | 1 - node_modules/shikiji/dist/langs/csharp.mjs | 10 - node_modules/shikiji/dist/langs/css.d.mts | 1 - node_modules/shikiji/dist/langs/css.mjs | 8 - node_modules/shikiji/dist/langs/csv.d.mts | 1 - node_modules/shikiji/dist/langs/csv.mjs | 6 - node_modules/shikiji/dist/langs/cue.d.mts | 1 - node_modules/shikiji/dist/langs/cue.mjs | 6 - node_modules/shikiji/dist/langs/cypher.d.mts | 1 - node_modules/shikiji/dist/langs/cypher.mjs | 6 - node_modules/shikiji/dist/langs/d.d.mts | 1 - node_modules/shikiji/dist/langs/d.mjs | 6 - node_modules/shikiji/dist/langs/dart.d.mts | 1 - node_modules/shikiji/dist/langs/dart.mjs | 6 - node_modules/shikiji/dist/langs/dax.d.mts | 1 - node_modules/shikiji/dist/langs/dax.mjs | 6 - node_modules/shikiji/dist/langs/diff.d.mts | 1 - node_modules/shikiji/dist/langs/diff.mjs | 6 - node_modules/shikiji/dist/langs/docker.d.mts | 1 - node_modules/shikiji/dist/langs/docker.mjs | 6 - .../shikiji/dist/langs/dream-maker.d.mts | 1 - .../shikiji/dist/langs/dream-maker.mjs | 6 - node_modules/shikiji/dist/langs/elixir.d.mts | 1 - node_modules/shikiji/dist/langs/elixir.mjs | 11 - node_modules/shikiji/dist/langs/elm.d.mts | 1 - node_modules/shikiji/dist/langs/elm.mjs | 10 - node_modules/shikiji/dist/langs/erb.d.mts | 1 - node_modules/shikiji/dist/langs/erb.mjs | 19 - node_modules/shikiji/dist/langs/erlang.d.mts | 1 - node_modules/shikiji/dist/langs/erlang.mjs | 6 - node_modules/shikiji/dist/langs/fish.d.mts | 1 - node_modules/shikiji/dist/langs/fish.mjs | 6 - node_modules/shikiji/dist/langs/fsharp.d.mts | 1 - node_modules/shikiji/dist/langs/fsharp.mjs | 9 - .../shikiji/dist/langs/gdresource.d.mts | 1 - .../shikiji/dist/langs/gdresource.mjs | 11 - .../shikiji/dist/langs/gdscript.d.mts | 1 - node_modules/shikiji/dist/langs/gdscript.mjs | 17 - .../shikiji/dist/langs/gdshader.d.mts | 1 - node_modules/shikiji/dist/langs/gdshader.mjs | 6 - node_modules/shikiji/dist/langs/gherkin.d.mts | 1 - node_modules/shikiji/dist/langs/gherkin.mjs | 6 - .../shikiji/dist/langs/git-commit.d.mts | 1 - .../shikiji/dist/langs/git-commit.mjs | 9 - .../shikiji/dist/langs/git-rebase.d.mts | 1 - .../shikiji/dist/langs/git-rebase.mjs | 9 - .../shikiji/dist/langs/glimmer-js.d.mts | 1 - .../shikiji/dist/langs/glimmer-js.mjs | 14 - .../shikiji/dist/langs/glimmer-ts.d.mts | 1 - .../shikiji/dist/langs/glimmer-ts.mjs | 15 - node_modules/shikiji/dist/langs/glsl.d.mts | 1 - node_modules/shikiji/dist/langs/glsl.mjs | 9 - node_modules/shikiji/dist/langs/gnuplot.d.mts | 1 - node_modules/shikiji/dist/langs/gnuplot.mjs | 6 - node_modules/shikiji/dist/langs/go.d.mts | 1 - node_modules/shikiji/dist/langs/go.mjs | 6 - node_modules/shikiji/dist/langs/graphql.d.mts | 1 - node_modules/shikiji/dist/langs/graphql.mjs | 15 - node_modules/shikiji/dist/langs/groovy.d.mts | 1 - node_modules/shikiji/dist/langs/groovy.mjs | 6 - node_modules/shikiji/dist/langs/hack.d.mts | 1 - node_modules/shikiji/dist/langs/hack.mjs | 17 - node_modules/shikiji/dist/langs/haml.d.mts | 1 - node_modules/shikiji/dist/langs/haml.mjs | 26 - .../shikiji/dist/langs/handlebars.d.mts | 1 - .../shikiji/dist/langs/handlebars.mjs | 15 - node_modules/shikiji/dist/langs/haskell.d.mts | 1 - node_modules/shikiji/dist/langs/haskell.mjs | 33 - node_modules/shikiji/dist/langs/hcl.d.mts | 1 - node_modules/shikiji/dist/langs/hcl.mjs | 6 - node_modules/shikiji/dist/langs/hjson.d.mts | 1 - node_modules/shikiji/dist/langs/hjson.mjs | 31 - node_modules/shikiji/dist/langs/hlsl.d.mts | 1 - node_modules/shikiji/dist/langs/hlsl.mjs | 6 - node_modules/shikiji/dist/langs/html.d.mts | 1 - node_modules/shikiji/dist/langs/html.mjs | 53 - node_modules/shikiji/dist/langs/http.d.mts | 1 - node_modules/shikiji/dist/langs/http.mjs | 20 - node_modules/shikiji/dist/langs/imba.d.mts | 1 - node_modules/shikiji/dist/langs/imba.mjs | 31 - node_modules/shikiji/dist/langs/ini.d.mts | 1 - node_modules/shikiji/dist/langs/ini.mjs | 6 - node_modules/shikiji/dist/langs/java.d.mts | 1 - node_modules/shikiji/dist/langs/java.mjs | 6 - .../shikiji/dist/langs/javascript.d.mts | 1 - .../shikiji/dist/langs/javascript.mjs | 28 - node_modules/shikiji/dist/langs/jinja.d.mts | 1 - node_modules/shikiji/dist/langs/jinja.mjs | 17 - node_modules/shikiji/dist/langs/jison.d.mts | 1 - node_modules/shikiji/dist/langs/jison.mjs | 9 - node_modules/shikiji/dist/langs/json.d.mts | 1 - node_modules/shikiji/dist/langs/json.mjs | 6 - node_modules/shikiji/dist/langs/json5.d.mts | 1 - node_modules/shikiji/dist/langs/json5.mjs | 6 - node_modules/shikiji/dist/langs/jsonc.d.mts | 1 - node_modules/shikiji/dist/langs/jsonc.mjs | 6 - node_modules/shikiji/dist/langs/jsonl.d.mts | 1 - node_modules/shikiji/dist/langs/jsonl.mjs | 6 - node_modules/shikiji/dist/langs/jsonnet.d.mts | 1 - node_modules/shikiji/dist/langs/jsonnet.mjs | 6 - node_modules/shikiji/dist/langs/jssm.d.mts | 1 - node_modules/shikiji/dist/langs/jssm.mjs | 6 - node_modules/shikiji/dist/langs/jsx.d.mts | 1 - node_modules/shikiji/dist/langs/jsx.mjs | 28 - node_modules/shikiji/dist/langs/julia.d.mts | 1 - node_modules/shikiji/dist/langs/julia.mjs | 19 - node_modules/shikiji/dist/langs/kotlin.d.mts | 1 - node_modules/shikiji/dist/langs/kotlin.mjs | 6 - node_modules/shikiji/dist/langs/kusto.d.mts | 1 - node_modules/shikiji/dist/langs/kusto.mjs | 6 - node_modules/shikiji/dist/langs/latex.d.mts | 1 - node_modules/shikiji/dist/langs/latex.mjs | 45 - node_modules/shikiji/dist/langs/less.d.mts | 1 - node_modules/shikiji/dist/langs/less.mjs | 6 - node_modules/shikiji/dist/langs/liquid.d.mts | 1 - node_modules/shikiji/dist/langs/liquid.mjs | 15 - node_modules/shikiji/dist/langs/lisp.d.mts | 1 - node_modules/shikiji/dist/langs/lisp.mjs | 6 - node_modules/shikiji/dist/langs/logo.d.mts | 1 - node_modules/shikiji/dist/langs/logo.mjs | 6 - node_modules/shikiji/dist/langs/lua.d.mts | 1 - node_modules/shikiji/dist/langs/lua.mjs | 9 - node_modules/shikiji/dist/langs/make.d.mts | 1 - node_modules/shikiji/dist/langs/make.mjs | 6 - .../shikiji/dist/langs/markdown.d.mts | 1 - node_modules/shikiji/dist/langs/markdown.mjs | 56 - node_modules/shikiji/dist/langs/marko.d.mts | 1 - node_modules/shikiji/dist/langs/marko.mjs | 15 - node_modules/shikiji/dist/langs/matlab.d.mts | 1 - node_modules/shikiji/dist/langs/matlab.mjs | 6 - node_modules/shikiji/dist/langs/mdc.d.mts | 1 - node_modules/shikiji/dist/langs/mdc.mjs | 19 - node_modules/shikiji/dist/langs/mdx.d.mts | 1 - node_modules/shikiji/dist/langs/mdx.mjs | 6 - node_modules/shikiji/dist/langs/mermaid.d.mts | 1 - node_modules/shikiji/dist/langs/mermaid.mjs | 6 - node_modules/shikiji/dist/langs/mojo.d.mts | 1 - node_modules/shikiji/dist/langs/mojo.mjs | 161 - node_modules/shikiji/dist/langs/narrat.d.mts | 1 - node_modules/shikiji/dist/langs/narrat.mjs | 6 - .../shikiji/dist/langs/nextflow.d.mts | 1 - node_modules/shikiji/dist/langs/nextflow.mjs | 6 - node_modules/shikiji/dist/langs/nginx.d.mts | 1 - node_modules/shikiji/dist/langs/nginx.mjs | 10 - node_modules/shikiji/dist/langs/nim.d.mts | 1 - node_modules/shikiji/dist/langs/nim.mjs | 22 - node_modules/shikiji/dist/langs/nix.d.mts | 1 - node_modules/shikiji/dist/langs/nix.mjs | 6 - node_modules/shikiji/dist/langs/nushell.d.mts | 1 - node_modules/shikiji/dist/langs/nushell.mjs | 6 - .../shikiji/dist/langs/objective-c.d.mts | 1 - .../shikiji/dist/langs/objective-c.mjs | 20 - .../shikiji/dist/langs/objective-cpp.d.mts | 1 - .../shikiji/dist/langs/objective-cpp.mjs | 27 - node_modules/shikiji/dist/langs/ocaml.d.mts | 1 - node_modules/shikiji/dist/langs/ocaml.mjs | 6 - node_modules/shikiji/dist/langs/pascal.d.mts | 1 - node_modules/shikiji/dist/langs/pascal.mjs | 6 - node_modules/shikiji/dist/langs/perl.d.mts | 1 - node_modules/shikiji/dist/langs/perl.mjs | 18 - node_modules/shikiji/dist/langs/php.d.mts | 1 - node_modules/shikiji/dist/langs/php.mjs | 20 - node_modules/shikiji/dist/langs/plsql.d.mts | 1 - node_modules/shikiji/dist/langs/plsql.mjs | 6 - node_modules/shikiji/dist/langs/postcss.d.mts | 1 - node_modules/shikiji/dist/langs/postcss.mjs | 6 - .../shikiji/dist/langs/powerquery.d.mts | 1 - .../shikiji/dist/langs/powerquery.mjs | 6 - .../shikiji/dist/langs/powershell.d.mts | 1 - .../shikiji/dist/langs/powershell.mjs | 6 - node_modules/shikiji/dist/langs/prisma.d.mts | 1 - node_modules/shikiji/dist/langs/prisma.mjs | 6 - node_modules/shikiji/dist/langs/prolog.d.mts | 1 - node_modules/shikiji/dist/langs/prolog.mjs | 6 - node_modules/shikiji/dist/langs/proto.d.mts | 1 - node_modules/shikiji/dist/langs/proto.mjs | 6 - node_modules/shikiji/dist/langs/pug.d.mts | 1 - node_modules/shikiji/dist/langs/pug.mjs | 21 - node_modules/shikiji/dist/langs/puppet.d.mts | 1 - node_modules/shikiji/dist/langs/puppet.mjs | 6 - .../shikiji/dist/langs/purescript.d.mts | 1 - .../shikiji/dist/langs/purescript.mjs | 6 - node_modules/shikiji/dist/langs/python.d.mts | 1 - node_modules/shikiji/dist/langs/python.mjs | 161 - node_modules/shikiji/dist/langs/r.d.mts | 1 - node_modules/shikiji/dist/langs/r.mjs | 6 - node_modules/shikiji/dist/langs/raku.d.mts | 1 - node_modules/shikiji/dist/langs/raku.mjs | 6 - node_modules/shikiji/dist/langs/razor.d.mts | 1 - node_modules/shikiji/dist/langs/razor.mjs | 13 - node_modules/shikiji/dist/langs/reg.d.mts | 1 - node_modules/shikiji/dist/langs/reg.mjs | 6 - node_modules/shikiji/dist/langs/rel.d.mts | 1 - node_modules/shikiji/dist/langs/rel.mjs | 6 - node_modules/shikiji/dist/langs/riscv.d.mts | 1 - node_modules/shikiji/dist/langs/riscv.mjs | 6 - node_modules/shikiji/dist/langs/rst.d.mts | 1 - node_modules/shikiji/dist/langs/rst.mjs | 29 - node_modules/shikiji/dist/langs/ruby.d.mts | 1 - node_modules/shikiji/dist/langs/ruby.mjs | 24 - node_modules/shikiji/dist/langs/rust.d.mts | 1 - node_modules/shikiji/dist/langs/rust.mjs | 6 - node_modules/shikiji/dist/langs/sas.d.mts | 1 - node_modules/shikiji/dist/langs/sas.mjs | 9 - node_modules/shikiji/dist/langs/sass.d.mts | 1 - node_modules/shikiji/dist/langs/sass.mjs | 6 - node_modules/shikiji/dist/langs/scala.d.mts | 1 - node_modules/shikiji/dist/langs/scala.mjs | 6 - node_modules/shikiji/dist/langs/scheme.d.mts | 1 - node_modules/shikiji/dist/langs/scheme.mjs | 6 - node_modules/shikiji/dist/langs/scss.d.mts | 1 - node_modules/shikiji/dist/langs/scss.mjs | 40 - .../shikiji/dist/langs/shaderlab.d.mts | 1 - node_modules/shikiji/dist/langs/shaderlab.mjs | 9 - .../shikiji/dist/langs/shellscript.d.mts | 1 - .../shikiji/dist/langs/shellscript.mjs | 6 - .../shikiji/dist/langs/shellsession.d.mts | 1 - .../shikiji/dist/langs/shellsession.mjs | 9 - .../shikiji/dist/langs/smalltalk.d.mts | 1 - node_modules/shikiji/dist/langs/smalltalk.mjs | 6 - .../shikiji/dist/langs/solidity.d.mts | 1 - node_modules/shikiji/dist/langs/solidity.mjs | 6 - node_modules/shikiji/dist/langs/sparql.d.mts | 1 - node_modules/shikiji/dist/langs/sparql.mjs | 9 - node_modules/shikiji/dist/langs/splunk.d.mts | 1 - node_modules/shikiji/dist/langs/splunk.mjs | 6 - node_modules/shikiji/dist/langs/sql.d.mts | 1 - node_modules/shikiji/dist/langs/sql.mjs | 6 - .../shikiji/dist/langs/ssh-config.d.mts | 1 - .../shikiji/dist/langs/ssh-config.mjs | 6 - node_modules/shikiji/dist/langs/stata.d.mts | 1 - node_modules/shikiji/dist/langs/stata.mjs | 11 - node_modules/shikiji/dist/langs/stylus.d.mts | 1 - node_modules/shikiji/dist/langs/stylus.mjs | 6 - node_modules/shikiji/dist/langs/svelte.d.mts | 1 - node_modules/shikiji/dist/langs/svelte.mjs | 30 - node_modules/shikiji/dist/langs/swift.d.mts | 1 - node_modules/shikiji/dist/langs/swift.mjs | 9 - .../shikiji/dist/langs/system-verilog.d.mts | 1 - .../shikiji/dist/langs/system-verilog.mjs | 6 - node_modules/shikiji/dist/langs/tasl.d.mts | 1 - node_modules/shikiji/dist/langs/tasl.mjs | 6 - node_modules/shikiji/dist/langs/tcl.d.mts | 1 - node_modules/shikiji/dist/langs/tcl.mjs | 6 - node_modules/shikiji/dist/langs/tex.d.mts | 1 - node_modules/shikiji/dist/langs/tex.mjs | 9 - node_modules/shikiji/dist/langs/toml.d.mts | 1 - node_modules/shikiji/dist/langs/toml.mjs | 21 - node_modules/shikiji/dist/langs/tsx.d.mts | 1 - node_modules/shikiji/dist/langs/tsx.mjs | 28 - node_modules/shikiji/dist/langs/turtle.d.mts | 1 - node_modules/shikiji/dist/langs/turtle.mjs | 6 - node_modules/shikiji/dist/langs/twig.d.mts | 1 - node_modules/shikiji/dist/langs/twig.mjs | 34 - .../shikiji/dist/langs/typescript.d.mts | 1 - .../shikiji/dist/langs/typescript.mjs | 28 - node_modules/shikiji/dist/langs/v.d.mts | 1 - node_modules/shikiji/dist/langs/v.mjs | 6 - node_modules/shikiji/dist/langs/vb.d.mts | 1 - node_modules/shikiji/dist/langs/vb.mjs | 6 - node_modules/shikiji/dist/langs/verilog.d.mts | 1 - node_modules/shikiji/dist/langs/verilog.mjs | 6 - node_modules/shikiji/dist/langs/vhdl.d.mts | 1 - node_modules/shikiji/dist/langs/vhdl.mjs | 6 - node_modules/shikiji/dist/langs/viml.d.mts | 1 - node_modules/shikiji/dist/langs/viml.mjs | 6 - .../shikiji/dist/langs/vue-html.d.mts | 1 - node_modules/shikiji/dist/langs/vue-html.mjs | 29 - node_modules/shikiji/dist/langs/vue.d.mts | 1 - node_modules/shikiji/dist/langs/vue.mjs | 69 - node_modules/shikiji/dist/langs/vyper.d.mts | 1 - node_modules/shikiji/dist/langs/vyper.mjs | 157 - node_modules/shikiji/dist/langs/wasm.d.mts | 1 - node_modules/shikiji/dist/langs/wasm.mjs | 6 - node_modules/shikiji/dist/langs/wenyan.d.mts | 1 - node_modules/shikiji/dist/langs/wenyan.mjs | 6 - node_modules/shikiji/dist/langs/wgsl.d.mts | 1 - node_modules/shikiji/dist/langs/wgsl.mjs | 6 - node_modules/shikiji/dist/langs/wolfram.d.mts | 1 - node_modules/shikiji/dist/langs/wolfram.mjs | 6 - node_modules/shikiji/dist/langs/xml.d.mts | 1 - node_modules/shikiji/dist/langs/xml.mjs | 9 - node_modules/shikiji/dist/langs/xsl.d.mts | 1 - node_modules/shikiji/dist/langs/xsl.mjs | 10 - node_modules/shikiji/dist/langs/yaml.d.mts | 1 - node_modules/shikiji/dist/langs/yaml.mjs | 6 - .../shikiji/dist/langs/zenscript.d.mts | 1 - node_modules/shikiji/dist/langs/zenscript.mjs | 6 - node_modules/shikiji/dist/langs/zig.d.mts | 1 - node_modules/shikiji/dist/langs/zig.mjs | 6 - node_modules/shikiji/dist/onig.d.mts | 1 - node_modules/shikiji/dist/onig.wasm | Bin 466610 -> 0 bytes .../shikiji/dist/theme-css-variables.d.mts | 37 - .../shikiji/dist/theme-css-variables.mjs | 206 - node_modules/shikiji/dist/themes.d.mts | 11 - node_modules/shikiji/dist/themes.mjs | 239 - .../shikiji/dist/themes/andromeeda.d.mts | 1 - .../shikiji/dist/themes/andromeeda.mjs | 330 -- .../shikiji/dist/themes/aurora-x.d.mts | 1 - node_modules/shikiji/dist/themes/aurora-x.mjs | 673 --- .../shikiji/dist/themes/ayu-dark.d.mts | 1 - node_modules/shikiji/dist/themes/ayu-dark.mjs | 790 --- .../dist/themes/catppuccin-frappe.d.mts | 1 - .../shikiji/dist/themes/catppuccin-frappe.mjs | 2049 ------- .../dist/themes/catppuccin-latte.d.mts | 1 - .../shikiji/dist/themes/catppuccin-latte.mjs | 2049 ------- .../dist/themes/catppuccin-macchiato.d.mts | 1 - .../dist/themes/catppuccin-macchiato.mjs | 2049 ------- .../dist/themes/catppuccin-mocha.d.mts | 1 - .../shikiji/dist/themes/catppuccin-mocha.mjs | 2049 ------- .../shikiji/dist/themes/dark-plus.d.mts | 1 - .../shikiji/dist/themes/dark-plus.mjs | 586 -- .../shikiji/dist/themes/dracula-soft.d.mts | 1 - .../shikiji/dist/themes/dracula-soft.mjs | 1064 ---- .../shikiji/dist/themes/dracula.d.mts | 1 - node_modules/shikiji/dist/themes/dracula.mjs | 1064 ---- .../dist/themes/github-dark-dimmed.d.mts | 1 - .../dist/themes/github-dark-dimmed.mjs | 654 --- .../shikiji/dist/themes/github-dark.d.mts | 1 - .../shikiji/dist/themes/github-dark.mjs | 546 -- .../shikiji/dist/themes/github-light.d.mts | 1 - .../shikiji/dist/themes/github-light.mjs | 542 -- .../shikiji/dist/themes/light-plus.d.mts | 1 - .../shikiji/dist/themes/light-plus.mjs | 614 -- .../dist/themes/material-theme-darker.d.mts | 1 - .../dist/themes/material-theme-darker.mjs | 768 --- .../dist/themes/material-theme-lighter.d.mts | 1 - .../dist/themes/material-theme-lighter.mjs | 768 --- .../dist/themes/material-theme-ocean.d.mts | 1 - .../dist/themes/material-theme-ocean.mjs | 768 --- .../themes/material-theme-palenight.d.mts | 1 - .../dist/themes/material-theme-palenight.mjs | 768 --- .../shikiji/dist/themes/material-theme.d.mts | 1 - .../shikiji/dist/themes/material-theme.mjs | 768 --- .../shikiji/dist/themes/min-dark.d.mts | 1 - node_modules/shikiji/dist/themes/min-dark.mjs | 308 - .../shikiji/dist/themes/min-light.d.mts | 1 - .../shikiji/dist/themes/min-light.mjs | 327 -- .../shikiji/dist/themes/monokai.d.mts | 1 - node_modules/shikiji/dist/themes/monokai.mjs | 444 -- .../shikiji/dist/themes/night-owl.d.mts | 1 - .../shikiji/dist/themes/night-owl.mjs | 1735 ------ node_modules/shikiji/dist/themes/nord.d.mts | 1 - node_modules/shikiji/dist/themes/nord.mjs | 1288 ---- .../shikiji/dist/themes/one-dark-pro.d.mts | 1 - .../shikiji/dist/themes/one-dark-pro.mjs | 1993 ------- .../shikiji/dist/themes/poimandres.d.mts | 1 - .../shikiji/dist/themes/poimandres.mjs | 1368 ----- node_modules/shikiji/dist/themes/red.d.mts | 1 - node_modules/shikiji/dist/themes/red.mjs | 380 -- .../shikiji/dist/themes/rose-pine-dawn.d.mts | 1 - .../shikiji/dist/themes/rose-pine-dawn.mjs | 736 --- .../shikiji/dist/themes/rose-pine-moon.d.mts | 1 - .../shikiji/dist/themes/rose-pine-moon.mjs | 736 --- .../shikiji/dist/themes/rose-pine.d.mts | 1 - .../shikiji/dist/themes/rose-pine.mjs | 736 --- .../shikiji/dist/themes/slack-dark.d.mts | 1 - .../shikiji/dist/themes/slack-dark.mjs | 573 -- .../shikiji/dist/themes/slack-ochin.d.mts | 1 - .../shikiji/dist/themes/slack-ochin.mjs | 481 -- .../shikiji/dist/themes/solarized-dark.d.mts | 1 - .../shikiji/dist/themes/solarized-dark.mjs | 389 -- .../shikiji/dist/themes/solarized-light.d.mts | 1 - .../shikiji/dist/themes/solarized-light.mjs | 381 -- .../shikiji/dist/themes/synthwave-84.d.mts | 1 - .../shikiji/dist/themes/synthwave-84.mjs | 818 --- .../shikiji/dist/themes/tokyo-night.d.mts | 1 - .../shikiji/dist/themes/tokyo-night.mjs | 1411 ----- .../shikiji/dist/themes/vitesse-black.d.mts | 1 - .../shikiji/dist/themes/vitesse-black.mjs | 682 --- .../shikiji/dist/themes/vitesse-dark.d.mts | 1 - .../shikiji/dist/themes/vitesse-dark.mjs | 682 --- .../shikiji/dist/themes/vitesse-light.d.mts | 1 - .../shikiji/dist/themes/vitesse-light.mjs | 680 --- node_modules/shikiji/dist/types.d.mts | 9 - node_modules/shikiji/dist/types.mjs | 1 - node_modules/shikiji/dist/types/index.d.d.mts | 335 -- node_modules/shikiji/dist/wasm.d.mts | 1 - node_modules/shikiji/dist/wasm.mjs | 1 - node_modules/shikiji/package.json | 107 - package-lock.json | 1507 ----- 686 files changed, 3864 insertions(+), 59792 deletions(-) delete mode 120000 node_modules/.bin/esbuild delete mode 100644 node_modules/.bin/esbuild.cmd delete mode 100644 node_modules/.bin/esbuild.ps1 delete mode 120000 node_modules/.bin/nanoid delete mode 100644 node_modules/.bin/nanoid.cmd delete mode 100644 node_modules/.bin/nanoid.ps1 delete mode 120000 node_modules/.bin/parser delete mode 100644 node_modules/.bin/parser.cmd delete mode 100644 node_modules/.bin/parser.ps1 delete mode 120000 node_modules/.bin/rollup delete mode 100644 node_modules/.bin/rollup.cmd delete mode 100644 node_modules/.bin/rollup.ps1 delete mode 120000 node_modules/.bin/vite delete mode 100644 node_modules/.bin/vite.cmd delete mode 100644 node_modules/.bin/vite.ps1 delete mode 120000 node_modules/.bin/vitepress delete mode 100644 node_modules/.bin/vitepress.cmd delete mode 100644 node_modules/.bin/vitepress.ps1 delete mode 100644 node_modules/.package-lock.json delete mode 100644 node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.cjs.js delete mode 100644 node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.d.ts delete mode 100644 node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.esm.js delete mode 100644 node_modules/@algolia/cache-browser-local-storage/index.js delete mode 100644 node_modules/@algolia/cache-browser-local-storage/package.json delete mode 100644 node_modules/@algolia/cache-common/dist/cache-common.cjs.js delete mode 100644 node_modules/@algolia/cache-common/dist/cache-common.d.ts delete mode 100644 node_modules/@algolia/cache-common/dist/cache-common.esm.js delete mode 100644 node_modules/@algolia/cache-common/index.js delete mode 100644 node_modules/@algolia/cache-common/package.json delete mode 100644 node_modules/@algolia/cache-in-memory/dist/cache-in-memory.cjs.js delete mode 100644 node_modules/@algolia/cache-in-memory/dist/cache-in-memory.d.ts delete mode 100644 node_modules/@algolia/cache-in-memory/dist/cache-in-memory.esm.js delete mode 100644 node_modules/@algolia/cache-in-memory/index.js delete mode 100644 node_modules/@algolia/cache-in-memory/package.json delete mode 100644 node_modules/@algolia/client-account/dist/client-account.cjs.js delete mode 100644 node_modules/@algolia/client-account/dist/client-account.d.ts delete mode 100644 node_modules/@algolia/client-account/dist/client-account.esm.js delete mode 100644 node_modules/@algolia/client-account/index.js delete mode 100644 node_modules/@algolia/client-account/package.json delete mode 100644 node_modules/@algolia/logger-common/dist/logger-common.cjs.js delete mode 100644 node_modules/@algolia/logger-common/dist/logger-common.d.ts delete mode 100644 node_modules/@algolia/logger-common/dist/logger-common.esm.js delete mode 100644 node_modules/@algolia/logger-common/index.js delete mode 100644 node_modules/@algolia/logger-common/package.json delete mode 100644 node_modules/@algolia/logger-console/dist/logger-console.cjs.js delete mode 100644 node_modules/@algolia/logger-console/dist/logger-console.d.ts delete mode 100644 node_modules/@algolia/logger-console/dist/logger-console.esm.js delete mode 100644 node_modules/@algolia/logger-console/index.js delete mode 100644 node_modules/@algolia/logger-console/package.json delete mode 100644 node_modules/@algolia/requester-common/dist/requester-common.cjs.js delete mode 100644 node_modules/@algolia/requester-common/dist/requester-common.d.ts delete mode 100644 node_modules/@algolia/requester-common/dist/requester-common.esm.js delete mode 100644 node_modules/@algolia/requester-common/index.js delete mode 100644 node_modules/@algolia/requester-common/package.json delete mode 100644 node_modules/@algolia/transporter/dist/transporter.cjs.js delete mode 100644 node_modules/@algolia/transporter/dist/transporter.d.ts delete mode 100644 node_modules/@algolia/transporter/dist/transporter.esm.js delete mode 100644 node_modules/@algolia/transporter/index.js delete mode 100644 node_modules/@algolia/transporter/package.json delete mode 100644 node_modules/preact/compat/LICENSE delete mode 100644 node_modules/preact/debug/LICENSE delete mode 100644 node_modules/preact/devtools/LICENSE delete mode 100644 node_modules/preact/hooks/LICENSE delete mode 100644 node_modules/preact/jsx-runtime/LICENSE delete mode 100644 node_modules/search-insights/dist/entry-browser-cjs.d.ts delete mode 100644 node_modules/search-insights/dist/entry-node-cjs.d.ts delete mode 100644 node_modules/search-insights/dist/search-insights-browser.cjs.min.js delete mode 100644 node_modules/search-insights/dist/search-insights-node.cjs.min.js delete mode 100644 node_modules/search-insights/empty-module.cjs.js delete mode 100644 node_modules/search-insights/index-browser.cjs.d.ts delete mode 100644 node_modules/search-insights/index-browser.cjs.js delete mode 100644 node_modules/search-insights/index-node.cjs.d.ts delete mode 100644 node_modules/search-insights/index-node.cjs.js delete mode 100644 node_modules/search-insights/lib/entry-browser-cjs.ts delete mode 100644 node_modules/search-insights/lib/entry-node-cjs.ts delete mode 100644 node_modules/shikiji-core/LICENSE delete mode 100644 node_modules/shikiji-core/README.md delete mode 100644 node_modules/shikiji-core/dist/chunk-index.d.mts delete mode 100644 node_modules/shikiji-core/dist/chunk-types.d.mts delete mode 100644 node_modules/shikiji-core/dist/index.d.mts delete mode 100644 node_modules/shikiji-core/dist/index.mjs delete mode 100644 node_modules/shikiji-core/dist/onig.d.mts delete mode 100644 node_modules/shikiji-core/dist/onig.mjs delete mode 100644 node_modules/shikiji-core/dist/textmate.d.mts delete mode 100644 node_modules/shikiji-core/dist/textmate.mjs delete mode 100644 node_modules/shikiji-core/dist/types.d.mts delete mode 100644 node_modules/shikiji-core/dist/types.mjs delete mode 100644 node_modules/shikiji-core/dist/wasm-inlined.d.mts delete mode 100644 node_modules/shikiji-core/dist/wasm-inlined.mjs delete mode 100644 node_modules/shikiji-core/package.json delete mode 100644 node_modules/shikiji-transformers/LICENSE delete mode 100644 node_modules/shikiji-transformers/README.md delete mode 100644 node_modules/shikiji-transformers/dist/index.d.mts delete mode 100644 node_modules/shikiji-transformers/dist/index.d.ts delete mode 100644 node_modules/shikiji-transformers/dist/index.mjs delete mode 100644 node_modules/shikiji-transformers/package.json delete mode 100644 node_modules/shikiji/LICENSE delete mode 100644 node_modules/shikiji/README.md delete mode 100644 node_modules/shikiji/dist/bundle-full.d.mts delete mode 100644 node_modules/shikiji/dist/bundle-full.mjs delete mode 100644 node_modules/shikiji/dist/bundle-web.d.mts delete mode 100644 node_modules/shikiji/dist/bundle-web.mjs delete mode 100644 node_modules/shikiji/dist/core-unwasm.d.mts delete mode 100644 node_modules/shikiji/dist/core-unwasm.mjs delete mode 100644 node_modules/shikiji/dist/core.d.mts delete mode 100644 node_modules/shikiji/dist/core.mjs delete mode 100644 node_modules/shikiji/dist/index.d.mts delete mode 100644 node_modules/shikiji/dist/index.mjs delete mode 100644 node_modules/shikiji/dist/langs.d.mts delete mode 100644 node_modules/shikiji/dist/langs.mjs delete mode 100644 node_modules/shikiji/dist/langs/abap.d.mts delete mode 100644 node_modules/shikiji/dist/langs/abap.mjs delete mode 100644 node_modules/shikiji/dist/langs/actionscript-3.d.mts delete mode 100644 node_modules/shikiji/dist/langs/actionscript-3.mjs delete mode 100644 node_modules/shikiji/dist/langs/ada.d.mts delete mode 100644 node_modules/shikiji/dist/langs/ada.mjs delete mode 100644 node_modules/shikiji/dist/langs/angular-html.d.mts delete mode 100644 node_modules/shikiji/dist/langs/angular-html.mjs delete mode 100644 node_modules/shikiji/dist/langs/angular-ts.d.mts delete mode 100644 node_modules/shikiji/dist/langs/angular-ts.mjs delete mode 100644 node_modules/shikiji/dist/langs/apache.d.mts delete mode 100644 node_modules/shikiji/dist/langs/apache.mjs delete mode 100644 node_modules/shikiji/dist/langs/apex.d.mts delete mode 100644 node_modules/shikiji/dist/langs/apex.mjs delete mode 100644 node_modules/shikiji/dist/langs/apl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/apl.mjs delete mode 100644 node_modules/shikiji/dist/langs/applescript.d.mts delete mode 100644 node_modules/shikiji/dist/langs/applescript.mjs delete mode 100644 node_modules/shikiji/dist/langs/ara.d.mts delete mode 100644 node_modules/shikiji/dist/langs/ara.mjs delete mode 100644 node_modules/shikiji/dist/langs/asm.d.mts delete mode 100644 node_modules/shikiji/dist/langs/asm.mjs delete mode 100644 node_modules/shikiji/dist/langs/astro.d.mts delete mode 100644 node_modules/shikiji/dist/langs/astro.mjs delete mode 100644 node_modules/shikiji/dist/langs/awk.d.mts delete mode 100644 node_modules/shikiji/dist/langs/awk.mjs delete mode 100644 node_modules/shikiji/dist/langs/ballerina.d.mts delete mode 100644 node_modules/shikiji/dist/langs/ballerina.mjs delete mode 100644 node_modules/shikiji/dist/langs/bat.d.mts delete mode 100644 node_modules/shikiji/dist/langs/bat.mjs delete mode 100644 node_modules/shikiji/dist/langs/beancount.d.mts delete mode 100644 node_modules/shikiji/dist/langs/beancount.mjs delete mode 100644 node_modules/shikiji/dist/langs/berry.d.mts delete mode 100644 node_modules/shikiji/dist/langs/berry.mjs delete mode 100644 node_modules/shikiji/dist/langs/bibtex.d.mts delete mode 100644 node_modules/shikiji/dist/langs/bibtex.mjs delete mode 100644 node_modules/shikiji/dist/langs/bicep.d.mts delete mode 100644 node_modules/shikiji/dist/langs/bicep.mjs delete mode 100644 node_modules/shikiji/dist/langs/blade.d.mts delete mode 100644 node_modules/shikiji/dist/langs/blade.mjs delete mode 100644 node_modules/shikiji/dist/langs/c.d.mts delete mode 100644 node_modules/shikiji/dist/langs/c.mjs delete mode 100644 node_modules/shikiji/dist/langs/cadence.d.mts delete mode 100644 node_modules/shikiji/dist/langs/cadence.mjs delete mode 100644 node_modules/shikiji/dist/langs/clarity.d.mts delete mode 100644 node_modules/shikiji/dist/langs/clarity.mjs delete mode 100644 node_modules/shikiji/dist/langs/clojure.d.mts delete mode 100644 node_modules/shikiji/dist/langs/clojure.mjs delete mode 100644 node_modules/shikiji/dist/langs/cmake.d.mts delete mode 100644 node_modules/shikiji/dist/langs/cmake.mjs delete mode 100644 node_modules/shikiji/dist/langs/cobol.d.mts delete mode 100644 node_modules/shikiji/dist/langs/cobol.mjs delete mode 100644 node_modules/shikiji/dist/langs/codeql.d.mts delete mode 100644 node_modules/shikiji/dist/langs/codeql.mjs delete mode 100644 node_modules/shikiji/dist/langs/coffee.d.mts delete mode 100644 node_modules/shikiji/dist/langs/coffee.mjs delete mode 100644 node_modules/shikiji/dist/langs/cpp.d.mts delete mode 100644 node_modules/shikiji/dist/langs/cpp.mjs delete mode 100644 node_modules/shikiji/dist/langs/crystal.d.mts delete mode 100644 node_modules/shikiji/dist/langs/crystal.mjs delete mode 100644 node_modules/shikiji/dist/langs/csharp.d.mts delete mode 100644 node_modules/shikiji/dist/langs/csharp.mjs delete mode 100644 node_modules/shikiji/dist/langs/css.d.mts delete mode 100644 node_modules/shikiji/dist/langs/css.mjs delete mode 100644 node_modules/shikiji/dist/langs/csv.d.mts delete mode 100644 node_modules/shikiji/dist/langs/csv.mjs delete mode 100644 node_modules/shikiji/dist/langs/cue.d.mts delete mode 100644 node_modules/shikiji/dist/langs/cue.mjs delete mode 100644 node_modules/shikiji/dist/langs/cypher.d.mts delete mode 100644 node_modules/shikiji/dist/langs/cypher.mjs delete mode 100644 node_modules/shikiji/dist/langs/d.d.mts delete mode 100644 node_modules/shikiji/dist/langs/d.mjs delete mode 100644 node_modules/shikiji/dist/langs/dart.d.mts delete mode 100644 node_modules/shikiji/dist/langs/dart.mjs delete mode 100644 node_modules/shikiji/dist/langs/dax.d.mts delete mode 100644 node_modules/shikiji/dist/langs/dax.mjs delete mode 100644 node_modules/shikiji/dist/langs/diff.d.mts delete mode 100644 node_modules/shikiji/dist/langs/diff.mjs delete mode 100644 node_modules/shikiji/dist/langs/docker.d.mts delete mode 100644 node_modules/shikiji/dist/langs/docker.mjs delete mode 100644 node_modules/shikiji/dist/langs/dream-maker.d.mts delete mode 100644 node_modules/shikiji/dist/langs/dream-maker.mjs delete mode 100644 node_modules/shikiji/dist/langs/elixir.d.mts delete mode 100644 node_modules/shikiji/dist/langs/elixir.mjs delete mode 100644 node_modules/shikiji/dist/langs/elm.d.mts delete mode 100644 node_modules/shikiji/dist/langs/elm.mjs delete mode 100644 node_modules/shikiji/dist/langs/erb.d.mts delete mode 100644 node_modules/shikiji/dist/langs/erb.mjs delete mode 100644 node_modules/shikiji/dist/langs/erlang.d.mts delete mode 100644 node_modules/shikiji/dist/langs/erlang.mjs delete mode 100644 node_modules/shikiji/dist/langs/fish.d.mts delete mode 100644 node_modules/shikiji/dist/langs/fish.mjs delete mode 100644 node_modules/shikiji/dist/langs/fsharp.d.mts delete mode 100644 node_modules/shikiji/dist/langs/fsharp.mjs delete mode 100644 node_modules/shikiji/dist/langs/gdresource.d.mts delete mode 100644 node_modules/shikiji/dist/langs/gdresource.mjs delete mode 100644 node_modules/shikiji/dist/langs/gdscript.d.mts delete mode 100644 node_modules/shikiji/dist/langs/gdscript.mjs delete mode 100644 node_modules/shikiji/dist/langs/gdshader.d.mts delete mode 100644 node_modules/shikiji/dist/langs/gdshader.mjs delete mode 100644 node_modules/shikiji/dist/langs/gherkin.d.mts delete mode 100644 node_modules/shikiji/dist/langs/gherkin.mjs delete mode 100644 node_modules/shikiji/dist/langs/git-commit.d.mts delete mode 100644 node_modules/shikiji/dist/langs/git-commit.mjs delete mode 100644 node_modules/shikiji/dist/langs/git-rebase.d.mts delete mode 100644 node_modules/shikiji/dist/langs/git-rebase.mjs delete mode 100644 node_modules/shikiji/dist/langs/glimmer-js.d.mts delete mode 100644 node_modules/shikiji/dist/langs/glimmer-js.mjs delete mode 100644 node_modules/shikiji/dist/langs/glimmer-ts.d.mts delete mode 100644 node_modules/shikiji/dist/langs/glimmer-ts.mjs delete mode 100644 node_modules/shikiji/dist/langs/glsl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/glsl.mjs delete mode 100644 node_modules/shikiji/dist/langs/gnuplot.d.mts delete mode 100644 node_modules/shikiji/dist/langs/gnuplot.mjs delete mode 100644 node_modules/shikiji/dist/langs/go.d.mts delete mode 100644 node_modules/shikiji/dist/langs/go.mjs delete mode 100644 node_modules/shikiji/dist/langs/graphql.d.mts delete mode 100644 node_modules/shikiji/dist/langs/graphql.mjs delete mode 100644 node_modules/shikiji/dist/langs/groovy.d.mts delete mode 100644 node_modules/shikiji/dist/langs/groovy.mjs delete mode 100644 node_modules/shikiji/dist/langs/hack.d.mts delete mode 100644 node_modules/shikiji/dist/langs/hack.mjs delete mode 100644 node_modules/shikiji/dist/langs/haml.d.mts delete mode 100644 node_modules/shikiji/dist/langs/haml.mjs delete mode 100644 node_modules/shikiji/dist/langs/handlebars.d.mts delete mode 100644 node_modules/shikiji/dist/langs/handlebars.mjs delete mode 100644 node_modules/shikiji/dist/langs/haskell.d.mts delete mode 100644 node_modules/shikiji/dist/langs/haskell.mjs delete mode 100644 node_modules/shikiji/dist/langs/hcl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/hcl.mjs delete mode 100644 node_modules/shikiji/dist/langs/hjson.d.mts delete mode 100644 node_modules/shikiji/dist/langs/hjson.mjs delete mode 100644 node_modules/shikiji/dist/langs/hlsl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/hlsl.mjs delete mode 100644 node_modules/shikiji/dist/langs/html.d.mts delete mode 100644 node_modules/shikiji/dist/langs/html.mjs delete mode 100644 node_modules/shikiji/dist/langs/http.d.mts delete mode 100644 node_modules/shikiji/dist/langs/http.mjs delete mode 100644 node_modules/shikiji/dist/langs/imba.d.mts delete mode 100644 node_modules/shikiji/dist/langs/imba.mjs delete mode 100644 node_modules/shikiji/dist/langs/ini.d.mts delete mode 100644 node_modules/shikiji/dist/langs/ini.mjs delete mode 100644 node_modules/shikiji/dist/langs/java.d.mts delete mode 100644 node_modules/shikiji/dist/langs/java.mjs delete mode 100644 node_modules/shikiji/dist/langs/javascript.d.mts delete mode 100644 node_modules/shikiji/dist/langs/javascript.mjs delete mode 100644 node_modules/shikiji/dist/langs/jinja.d.mts delete mode 100644 node_modules/shikiji/dist/langs/jinja.mjs delete mode 100644 node_modules/shikiji/dist/langs/jison.d.mts delete mode 100644 node_modules/shikiji/dist/langs/jison.mjs delete mode 100644 node_modules/shikiji/dist/langs/json.d.mts delete mode 100644 node_modules/shikiji/dist/langs/json.mjs delete mode 100644 node_modules/shikiji/dist/langs/json5.d.mts delete mode 100644 node_modules/shikiji/dist/langs/json5.mjs delete mode 100644 node_modules/shikiji/dist/langs/jsonc.d.mts delete mode 100644 node_modules/shikiji/dist/langs/jsonc.mjs delete mode 100644 node_modules/shikiji/dist/langs/jsonl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/jsonl.mjs delete mode 100644 node_modules/shikiji/dist/langs/jsonnet.d.mts delete mode 100644 node_modules/shikiji/dist/langs/jsonnet.mjs delete mode 100644 node_modules/shikiji/dist/langs/jssm.d.mts delete mode 100644 node_modules/shikiji/dist/langs/jssm.mjs delete mode 100644 node_modules/shikiji/dist/langs/jsx.d.mts delete mode 100644 node_modules/shikiji/dist/langs/jsx.mjs delete mode 100644 node_modules/shikiji/dist/langs/julia.d.mts delete mode 100644 node_modules/shikiji/dist/langs/julia.mjs delete mode 100644 node_modules/shikiji/dist/langs/kotlin.d.mts delete mode 100644 node_modules/shikiji/dist/langs/kotlin.mjs delete mode 100644 node_modules/shikiji/dist/langs/kusto.d.mts delete mode 100644 node_modules/shikiji/dist/langs/kusto.mjs delete mode 100644 node_modules/shikiji/dist/langs/latex.d.mts delete mode 100644 node_modules/shikiji/dist/langs/latex.mjs delete mode 100644 node_modules/shikiji/dist/langs/less.d.mts delete mode 100644 node_modules/shikiji/dist/langs/less.mjs delete mode 100644 node_modules/shikiji/dist/langs/liquid.d.mts delete mode 100644 node_modules/shikiji/dist/langs/liquid.mjs delete mode 100644 node_modules/shikiji/dist/langs/lisp.d.mts delete mode 100644 node_modules/shikiji/dist/langs/lisp.mjs delete mode 100644 node_modules/shikiji/dist/langs/logo.d.mts delete mode 100644 node_modules/shikiji/dist/langs/logo.mjs delete mode 100644 node_modules/shikiji/dist/langs/lua.d.mts delete mode 100644 node_modules/shikiji/dist/langs/lua.mjs delete mode 100644 node_modules/shikiji/dist/langs/make.d.mts delete mode 100644 node_modules/shikiji/dist/langs/make.mjs delete mode 100644 node_modules/shikiji/dist/langs/markdown.d.mts delete mode 100644 node_modules/shikiji/dist/langs/markdown.mjs delete mode 100644 node_modules/shikiji/dist/langs/marko.d.mts delete mode 100644 node_modules/shikiji/dist/langs/marko.mjs delete mode 100644 node_modules/shikiji/dist/langs/matlab.d.mts delete mode 100644 node_modules/shikiji/dist/langs/matlab.mjs delete mode 100644 node_modules/shikiji/dist/langs/mdc.d.mts delete mode 100644 node_modules/shikiji/dist/langs/mdc.mjs delete mode 100644 node_modules/shikiji/dist/langs/mdx.d.mts delete mode 100644 node_modules/shikiji/dist/langs/mdx.mjs delete mode 100644 node_modules/shikiji/dist/langs/mermaid.d.mts delete mode 100644 node_modules/shikiji/dist/langs/mermaid.mjs delete mode 100644 node_modules/shikiji/dist/langs/mojo.d.mts delete mode 100644 node_modules/shikiji/dist/langs/mojo.mjs delete mode 100644 node_modules/shikiji/dist/langs/narrat.d.mts delete mode 100644 node_modules/shikiji/dist/langs/narrat.mjs delete mode 100644 node_modules/shikiji/dist/langs/nextflow.d.mts delete mode 100644 node_modules/shikiji/dist/langs/nextflow.mjs delete mode 100644 node_modules/shikiji/dist/langs/nginx.d.mts delete mode 100644 node_modules/shikiji/dist/langs/nginx.mjs delete mode 100644 node_modules/shikiji/dist/langs/nim.d.mts delete mode 100644 node_modules/shikiji/dist/langs/nim.mjs delete mode 100644 node_modules/shikiji/dist/langs/nix.d.mts delete mode 100644 node_modules/shikiji/dist/langs/nix.mjs delete mode 100644 node_modules/shikiji/dist/langs/nushell.d.mts delete mode 100644 node_modules/shikiji/dist/langs/nushell.mjs delete mode 100644 node_modules/shikiji/dist/langs/objective-c.d.mts delete mode 100644 node_modules/shikiji/dist/langs/objective-c.mjs delete mode 100644 node_modules/shikiji/dist/langs/objective-cpp.d.mts delete mode 100644 node_modules/shikiji/dist/langs/objective-cpp.mjs delete mode 100644 node_modules/shikiji/dist/langs/ocaml.d.mts delete mode 100644 node_modules/shikiji/dist/langs/ocaml.mjs delete mode 100644 node_modules/shikiji/dist/langs/pascal.d.mts delete mode 100644 node_modules/shikiji/dist/langs/pascal.mjs delete mode 100644 node_modules/shikiji/dist/langs/perl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/perl.mjs delete mode 100644 node_modules/shikiji/dist/langs/php.d.mts delete mode 100644 node_modules/shikiji/dist/langs/php.mjs delete mode 100644 node_modules/shikiji/dist/langs/plsql.d.mts delete mode 100644 node_modules/shikiji/dist/langs/plsql.mjs delete mode 100644 node_modules/shikiji/dist/langs/postcss.d.mts delete mode 100644 node_modules/shikiji/dist/langs/postcss.mjs delete mode 100644 node_modules/shikiji/dist/langs/powerquery.d.mts delete mode 100644 node_modules/shikiji/dist/langs/powerquery.mjs delete mode 100644 node_modules/shikiji/dist/langs/powershell.d.mts delete mode 100644 node_modules/shikiji/dist/langs/powershell.mjs delete mode 100644 node_modules/shikiji/dist/langs/prisma.d.mts delete mode 100644 node_modules/shikiji/dist/langs/prisma.mjs delete mode 100644 node_modules/shikiji/dist/langs/prolog.d.mts delete mode 100644 node_modules/shikiji/dist/langs/prolog.mjs delete mode 100644 node_modules/shikiji/dist/langs/proto.d.mts delete mode 100644 node_modules/shikiji/dist/langs/proto.mjs delete mode 100644 node_modules/shikiji/dist/langs/pug.d.mts delete mode 100644 node_modules/shikiji/dist/langs/pug.mjs delete mode 100644 node_modules/shikiji/dist/langs/puppet.d.mts delete mode 100644 node_modules/shikiji/dist/langs/puppet.mjs delete mode 100644 node_modules/shikiji/dist/langs/purescript.d.mts delete mode 100644 node_modules/shikiji/dist/langs/purescript.mjs delete mode 100644 node_modules/shikiji/dist/langs/python.d.mts delete mode 100644 node_modules/shikiji/dist/langs/python.mjs delete mode 100644 node_modules/shikiji/dist/langs/r.d.mts delete mode 100644 node_modules/shikiji/dist/langs/r.mjs delete mode 100644 node_modules/shikiji/dist/langs/raku.d.mts delete mode 100644 node_modules/shikiji/dist/langs/raku.mjs delete mode 100644 node_modules/shikiji/dist/langs/razor.d.mts delete mode 100644 node_modules/shikiji/dist/langs/razor.mjs delete mode 100644 node_modules/shikiji/dist/langs/reg.d.mts delete mode 100644 node_modules/shikiji/dist/langs/reg.mjs delete mode 100644 node_modules/shikiji/dist/langs/rel.d.mts delete mode 100644 node_modules/shikiji/dist/langs/rel.mjs delete mode 100644 node_modules/shikiji/dist/langs/riscv.d.mts delete mode 100644 node_modules/shikiji/dist/langs/riscv.mjs delete mode 100644 node_modules/shikiji/dist/langs/rst.d.mts delete mode 100644 node_modules/shikiji/dist/langs/rst.mjs delete mode 100644 node_modules/shikiji/dist/langs/ruby.d.mts delete mode 100644 node_modules/shikiji/dist/langs/ruby.mjs delete mode 100644 node_modules/shikiji/dist/langs/rust.d.mts delete mode 100644 node_modules/shikiji/dist/langs/rust.mjs delete mode 100644 node_modules/shikiji/dist/langs/sas.d.mts delete mode 100644 node_modules/shikiji/dist/langs/sas.mjs delete mode 100644 node_modules/shikiji/dist/langs/sass.d.mts delete mode 100644 node_modules/shikiji/dist/langs/sass.mjs delete mode 100644 node_modules/shikiji/dist/langs/scala.d.mts delete mode 100644 node_modules/shikiji/dist/langs/scala.mjs delete mode 100644 node_modules/shikiji/dist/langs/scheme.d.mts delete mode 100644 node_modules/shikiji/dist/langs/scheme.mjs delete mode 100644 node_modules/shikiji/dist/langs/scss.d.mts delete mode 100644 node_modules/shikiji/dist/langs/scss.mjs delete mode 100644 node_modules/shikiji/dist/langs/shaderlab.d.mts delete mode 100644 node_modules/shikiji/dist/langs/shaderlab.mjs delete mode 100644 node_modules/shikiji/dist/langs/shellscript.d.mts delete mode 100644 node_modules/shikiji/dist/langs/shellscript.mjs delete mode 100644 node_modules/shikiji/dist/langs/shellsession.d.mts delete mode 100644 node_modules/shikiji/dist/langs/shellsession.mjs delete mode 100644 node_modules/shikiji/dist/langs/smalltalk.d.mts delete mode 100644 node_modules/shikiji/dist/langs/smalltalk.mjs delete mode 100644 node_modules/shikiji/dist/langs/solidity.d.mts delete mode 100644 node_modules/shikiji/dist/langs/solidity.mjs delete mode 100644 node_modules/shikiji/dist/langs/sparql.d.mts delete mode 100644 node_modules/shikiji/dist/langs/sparql.mjs delete mode 100644 node_modules/shikiji/dist/langs/splunk.d.mts delete mode 100644 node_modules/shikiji/dist/langs/splunk.mjs delete mode 100644 node_modules/shikiji/dist/langs/sql.d.mts delete mode 100644 node_modules/shikiji/dist/langs/sql.mjs delete mode 100644 node_modules/shikiji/dist/langs/ssh-config.d.mts delete mode 100644 node_modules/shikiji/dist/langs/ssh-config.mjs delete mode 100644 node_modules/shikiji/dist/langs/stata.d.mts delete mode 100644 node_modules/shikiji/dist/langs/stata.mjs delete mode 100644 node_modules/shikiji/dist/langs/stylus.d.mts delete mode 100644 node_modules/shikiji/dist/langs/stylus.mjs delete mode 100644 node_modules/shikiji/dist/langs/svelte.d.mts delete mode 100644 node_modules/shikiji/dist/langs/svelte.mjs delete mode 100644 node_modules/shikiji/dist/langs/swift.d.mts delete mode 100644 node_modules/shikiji/dist/langs/swift.mjs delete mode 100644 node_modules/shikiji/dist/langs/system-verilog.d.mts delete mode 100644 node_modules/shikiji/dist/langs/system-verilog.mjs delete mode 100644 node_modules/shikiji/dist/langs/tasl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/tasl.mjs delete mode 100644 node_modules/shikiji/dist/langs/tcl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/tcl.mjs delete mode 100644 node_modules/shikiji/dist/langs/tex.d.mts delete mode 100644 node_modules/shikiji/dist/langs/tex.mjs delete mode 100644 node_modules/shikiji/dist/langs/toml.d.mts delete mode 100644 node_modules/shikiji/dist/langs/toml.mjs delete mode 100644 node_modules/shikiji/dist/langs/tsx.d.mts delete mode 100644 node_modules/shikiji/dist/langs/tsx.mjs delete mode 100644 node_modules/shikiji/dist/langs/turtle.d.mts delete mode 100644 node_modules/shikiji/dist/langs/turtle.mjs delete mode 100644 node_modules/shikiji/dist/langs/twig.d.mts delete mode 100644 node_modules/shikiji/dist/langs/twig.mjs delete mode 100644 node_modules/shikiji/dist/langs/typescript.d.mts delete mode 100644 node_modules/shikiji/dist/langs/typescript.mjs delete mode 100644 node_modules/shikiji/dist/langs/v.d.mts delete mode 100644 node_modules/shikiji/dist/langs/v.mjs delete mode 100644 node_modules/shikiji/dist/langs/vb.d.mts delete mode 100644 node_modules/shikiji/dist/langs/vb.mjs delete mode 100644 node_modules/shikiji/dist/langs/verilog.d.mts delete mode 100644 node_modules/shikiji/dist/langs/verilog.mjs delete mode 100644 node_modules/shikiji/dist/langs/vhdl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/vhdl.mjs delete mode 100644 node_modules/shikiji/dist/langs/viml.d.mts delete mode 100644 node_modules/shikiji/dist/langs/viml.mjs delete mode 100644 node_modules/shikiji/dist/langs/vue-html.d.mts delete mode 100644 node_modules/shikiji/dist/langs/vue-html.mjs delete mode 100644 node_modules/shikiji/dist/langs/vue.d.mts delete mode 100644 node_modules/shikiji/dist/langs/vue.mjs delete mode 100644 node_modules/shikiji/dist/langs/vyper.d.mts delete mode 100644 node_modules/shikiji/dist/langs/vyper.mjs delete mode 100644 node_modules/shikiji/dist/langs/wasm.d.mts delete mode 100644 node_modules/shikiji/dist/langs/wasm.mjs delete mode 100644 node_modules/shikiji/dist/langs/wenyan.d.mts delete mode 100644 node_modules/shikiji/dist/langs/wenyan.mjs delete mode 100644 node_modules/shikiji/dist/langs/wgsl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/wgsl.mjs delete mode 100644 node_modules/shikiji/dist/langs/wolfram.d.mts delete mode 100644 node_modules/shikiji/dist/langs/wolfram.mjs delete mode 100644 node_modules/shikiji/dist/langs/xml.d.mts delete mode 100644 node_modules/shikiji/dist/langs/xml.mjs delete mode 100644 node_modules/shikiji/dist/langs/xsl.d.mts delete mode 100644 node_modules/shikiji/dist/langs/xsl.mjs delete mode 100644 node_modules/shikiji/dist/langs/yaml.d.mts delete mode 100644 node_modules/shikiji/dist/langs/yaml.mjs delete mode 100644 node_modules/shikiji/dist/langs/zenscript.d.mts delete mode 100644 node_modules/shikiji/dist/langs/zenscript.mjs delete mode 100644 node_modules/shikiji/dist/langs/zig.d.mts delete mode 100644 node_modules/shikiji/dist/langs/zig.mjs delete mode 100644 node_modules/shikiji/dist/onig.d.mts delete mode 100644 node_modules/shikiji/dist/onig.wasm delete mode 100644 node_modules/shikiji/dist/theme-css-variables.d.mts delete mode 100644 node_modules/shikiji/dist/theme-css-variables.mjs delete mode 100644 node_modules/shikiji/dist/themes.d.mts delete mode 100644 node_modules/shikiji/dist/themes.mjs delete mode 100644 node_modules/shikiji/dist/themes/andromeeda.d.mts delete mode 100644 node_modules/shikiji/dist/themes/andromeeda.mjs delete mode 100644 node_modules/shikiji/dist/themes/aurora-x.d.mts delete mode 100644 node_modules/shikiji/dist/themes/aurora-x.mjs delete mode 100644 node_modules/shikiji/dist/themes/ayu-dark.d.mts delete mode 100644 node_modules/shikiji/dist/themes/ayu-dark.mjs delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-frappe.d.mts delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-frappe.mjs delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-latte.d.mts delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-latte.mjs delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-macchiato.d.mts delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-macchiato.mjs delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-mocha.d.mts delete mode 100644 node_modules/shikiji/dist/themes/catppuccin-mocha.mjs delete mode 100644 node_modules/shikiji/dist/themes/dark-plus.d.mts delete mode 100644 node_modules/shikiji/dist/themes/dark-plus.mjs delete mode 100644 node_modules/shikiji/dist/themes/dracula-soft.d.mts delete mode 100644 node_modules/shikiji/dist/themes/dracula-soft.mjs delete mode 100644 node_modules/shikiji/dist/themes/dracula.d.mts delete mode 100644 node_modules/shikiji/dist/themes/dracula.mjs delete mode 100644 node_modules/shikiji/dist/themes/github-dark-dimmed.d.mts delete mode 100644 node_modules/shikiji/dist/themes/github-dark-dimmed.mjs delete mode 100644 node_modules/shikiji/dist/themes/github-dark.d.mts delete mode 100644 node_modules/shikiji/dist/themes/github-dark.mjs delete mode 100644 node_modules/shikiji/dist/themes/github-light.d.mts delete mode 100644 node_modules/shikiji/dist/themes/github-light.mjs delete mode 100644 node_modules/shikiji/dist/themes/light-plus.d.mts delete mode 100644 node_modules/shikiji/dist/themes/light-plus.mjs delete mode 100644 node_modules/shikiji/dist/themes/material-theme-darker.d.mts delete mode 100644 node_modules/shikiji/dist/themes/material-theme-darker.mjs delete mode 100644 node_modules/shikiji/dist/themes/material-theme-lighter.d.mts delete mode 100644 node_modules/shikiji/dist/themes/material-theme-lighter.mjs delete mode 100644 node_modules/shikiji/dist/themes/material-theme-ocean.d.mts delete mode 100644 node_modules/shikiji/dist/themes/material-theme-ocean.mjs delete mode 100644 node_modules/shikiji/dist/themes/material-theme-palenight.d.mts delete mode 100644 node_modules/shikiji/dist/themes/material-theme-palenight.mjs delete mode 100644 node_modules/shikiji/dist/themes/material-theme.d.mts delete mode 100644 node_modules/shikiji/dist/themes/material-theme.mjs delete mode 100644 node_modules/shikiji/dist/themes/min-dark.d.mts delete mode 100644 node_modules/shikiji/dist/themes/min-dark.mjs delete mode 100644 node_modules/shikiji/dist/themes/min-light.d.mts delete mode 100644 node_modules/shikiji/dist/themes/min-light.mjs delete mode 100644 node_modules/shikiji/dist/themes/monokai.d.mts delete mode 100644 node_modules/shikiji/dist/themes/monokai.mjs delete mode 100644 node_modules/shikiji/dist/themes/night-owl.d.mts delete mode 100644 node_modules/shikiji/dist/themes/night-owl.mjs delete mode 100644 node_modules/shikiji/dist/themes/nord.d.mts delete mode 100644 node_modules/shikiji/dist/themes/nord.mjs delete mode 100644 node_modules/shikiji/dist/themes/one-dark-pro.d.mts delete mode 100644 node_modules/shikiji/dist/themes/one-dark-pro.mjs delete mode 100644 node_modules/shikiji/dist/themes/poimandres.d.mts delete mode 100644 node_modules/shikiji/dist/themes/poimandres.mjs delete mode 100644 node_modules/shikiji/dist/themes/red.d.mts delete mode 100644 node_modules/shikiji/dist/themes/red.mjs delete mode 100644 node_modules/shikiji/dist/themes/rose-pine-dawn.d.mts delete mode 100644 node_modules/shikiji/dist/themes/rose-pine-dawn.mjs delete mode 100644 node_modules/shikiji/dist/themes/rose-pine-moon.d.mts delete mode 100644 node_modules/shikiji/dist/themes/rose-pine-moon.mjs delete mode 100644 node_modules/shikiji/dist/themes/rose-pine.d.mts delete mode 100644 node_modules/shikiji/dist/themes/rose-pine.mjs delete mode 100644 node_modules/shikiji/dist/themes/slack-dark.d.mts delete mode 100644 node_modules/shikiji/dist/themes/slack-dark.mjs delete mode 100644 node_modules/shikiji/dist/themes/slack-ochin.d.mts delete mode 100644 node_modules/shikiji/dist/themes/slack-ochin.mjs delete mode 100644 node_modules/shikiji/dist/themes/solarized-dark.d.mts delete mode 100644 node_modules/shikiji/dist/themes/solarized-dark.mjs delete mode 100644 node_modules/shikiji/dist/themes/solarized-light.d.mts delete mode 100644 node_modules/shikiji/dist/themes/solarized-light.mjs delete mode 100644 node_modules/shikiji/dist/themes/synthwave-84.d.mts delete mode 100644 node_modules/shikiji/dist/themes/synthwave-84.mjs delete mode 100644 node_modules/shikiji/dist/themes/tokyo-night.d.mts delete mode 100644 node_modules/shikiji/dist/themes/tokyo-night.mjs delete mode 100644 node_modules/shikiji/dist/themes/vitesse-black.d.mts delete mode 100644 node_modules/shikiji/dist/themes/vitesse-black.mjs delete mode 100644 node_modules/shikiji/dist/themes/vitesse-dark.d.mts delete mode 100644 node_modules/shikiji/dist/themes/vitesse-dark.mjs delete mode 100644 node_modules/shikiji/dist/themes/vitesse-light.d.mts delete mode 100644 node_modules/shikiji/dist/themes/vitesse-light.mjs delete mode 100644 node_modules/shikiji/dist/types.d.mts delete mode 100644 node_modules/shikiji/dist/types.mjs delete mode 100644 node_modules/shikiji/dist/types/index.d.d.mts delete mode 100644 node_modules/shikiji/dist/wasm.d.mts delete mode 100644 node_modules/shikiji/dist/wasm.mjs delete mode 100644 node_modules/shikiji/package.json delete mode 100644 package-lock.json diff --git a/bun.lock b/bun.lock index 10ccab5..a4a5905 100644 --- a/bun.lock +++ b/bun.lock @@ -1,6 +1,6 @@ { "lockfileVersion": 1, - "configVersion": 0, + "configVersion": 1, "workspaces": { "": { "devDependencies": { @@ -10,7 +10,7 @@ }, }, "packages": { - "@algolia/abtesting": ["@algolia/abtesting@1.14.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-cZfj+1Z1dgrk3YPtNQNt0H9Rr67P8b4M79JjUKGS0d7/EbFbGxGgSu6zby5f22KXo3LT0LZa4O2c6VVbupJuDg=="], + "@algolia/abtesting": ["@algolia/abtesting@1.14.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-Dkj0BgPiLAaim9sbQ97UKDFHJE/880wgStAM18U++NaJ/2Cws34J5731ovJifr6E3Pv4T2CqvMXf8qLCC417Ew=="], "@algolia/autocomplete-core": ["@algolia/autocomplete-core@1.17.7", "", { "dependencies": { "@algolia/autocomplete-plugin-algolia-insights": "1.17.7", "@algolia/autocomplete-shared": "1.17.7" } }, "sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q=="], @@ -20,31 +20,31 @@ "@algolia/autocomplete-shared": ["@algolia/autocomplete-shared@1.17.7", "", { "peerDependencies": { "@algolia/client-search": ">= 4.9.1 < 6", "algoliasearch": ">= 4.9.1 < 6" } }, "sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg=="], - "@algolia/client-abtesting": ["@algolia/client-abtesting@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-n17WSJ7vazmM6yDkWBAjY12J8ERkW9toOqNgQ1GEZu/Kc4dJDJod1iy+QP5T/UlR3WICgZDi/7a/VX5TY5LAPQ=="], + "@algolia/client-abtesting": ["@algolia/client-abtesting@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-LV5qCJdj+/m9I+Aj91o+glYszrzd7CX6NgKaYdTOj4+tUYfbS62pwYgUfZprYNayhkQpVFcrW8x8ZlIHpS23Vw=="], - "@algolia/client-analytics": ["@algolia/client-analytics@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-v5bMZMEqW9U2l40/tTAaRyn4AKrYLio7KcRuHmLaJtxuJAhvZiE7Y62XIsF070juz4MN3eyvfQmI+y5+OVbZuA=="], + "@algolia/client-analytics": ["@algolia/client-analytics@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-/AVoMqHhPm14CcHq7mwB+bUJbfCv+jrxlNvRjXAuO+TQa+V37N8k1b0ijaRBPdmSjULMd8KtJbQyUyabXOu6Kg=="], - "@algolia/client-common": ["@algolia/client-common@5.48.0", "", {}, "sha512-7H3DgRyi7UByScc0wz7EMrhgNl7fKPDjKX9OcWixLwCj7yrRXDSIzwunykuYUUO7V7HD4s319e15FlJ9CQIIFQ=="], + "@algolia/client-common": ["@algolia/client-common@5.48.1", "", {}, "sha512-VXO+qu2Ep6ota28ktvBm3sG53wUHS2n7bgLWmce5jTskdlCD0/JrV4tnBm1l7qpla1CeoQb8D7ShFhad+UoSOw=="], - "@algolia/client-insights": ["@algolia/client-insights@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-tXmkB6qrIGAXrtRYHQNpfW0ekru/qymV02bjT0w5QGaGw0W91yT+53WB6dTtRRsIrgS30Al6efBvyaEosjZ5uw=="], + "@algolia/client-insights": ["@algolia/client-insights@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-zl+Qyb0nLg+Y5YvKp1Ij+u9OaPaKg2/EPzTwKNiVyOHnQJlFxmXyUZL1EInczAZsEY8hVpPCLtNfhMhfxluXKQ=="], - "@algolia/client-personalization": ["@algolia/client-personalization@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-4tXEsrdtcBZbDF73u14Kb3otN+xUdTVGop1tBjict+Rc/FhsJQVIwJIcTrOJqmvhtBfc56Bu65FiVOnpAZCxcw=="], + "@algolia/client-personalization": ["@algolia/client-personalization@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-r89Qf9Oo9mKWQXumRu/1LtvVJAmEDpn8mHZMc485pRfQUMAwSSrsnaw1tQ3sszqzEgAr1c7rw6fjBI+zrAXTOw=="], - "@algolia/client-query-suggestions": ["@algolia/client-query-suggestions@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-unzSUwWFpsDrO8935RhMAlyK0Ttua/5XveVIwzfjs5w+GVBsHgIkbOe8VbBJccMU/z1LCwvu1AY3kffuSLAR5Q=="], + "@algolia/client-query-suggestions": ["@algolia/client-query-suggestions@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-TPKNPKfghKG/bMSc7mQYD9HxHRUkBZA4q1PEmHgICaSeHQscGqL4wBrKkhfPlDV1uYBKW02pbFMUhsOt7p4ZpA=="], - "@algolia/client-search": ["@algolia/client-search@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-RB9bKgYTVUiOcEb5bOcZ169jiiVW811dCsJoLT19DcbbFmU4QaK0ghSTssij35QBQ3SCOitXOUrHcGgNVwS7sQ=="], + "@algolia/client-search": ["@algolia/client-search@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-4Fu7dnzQyQmMFknYwTiN/HxPbH4DyxvQ1m+IxpPp5oslOgz8m6PG5qhiGbqJzH4HiT1I58ecDiCAC716UyVA8Q=="], - "@algolia/ingestion": ["@algolia/ingestion@1.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-rhoSoPu+TDzDpvpk3cY/pYgbeWXr23DxnAIH/AkN0dUC+GCnVIeNSQkLaJ+CL4NZ51cjLIjksrzb4KC5Xu+ktw=="], + "@algolia/ingestion": ["@algolia/ingestion@1.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-/RFq3TqtXDUUawwic/A9xylA2P3LDMO8dNhphHAUOU51b1ZLHrmZ6YYJm3df1APz7xLY1aht6okCQf+/vmrV9w=="], - "@algolia/monitoring": ["@algolia/monitoring@1.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-aSe6jKvWt+8VdjOaq2ERtsXp9+qMXNJ3mTyTc1VMhNfgPl7ArOhRMRSQ8QBnY8ZL4yV5Xpezb7lAg8pdGrrulg=="], + "@algolia/monitoring": ["@algolia/monitoring@1.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-Of0jTeAZRyRhC7XzDSjJef0aBkgRcvRAaw0ooYRlOw57APii7lZdq+layuNdeL72BRq1snaJhoMMwkmLIpJScw=="], - "@algolia/recommend": ["@algolia/recommend@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-p9tfI1bimAaZrdiVExL/dDyGUZ8gyiSHsktP1ZWGzt5hXpM3nhv4tSjyHtXjEKtA0UvsaHKwSfFE8aAAm1eIQA=="], + "@algolia/recommend": ["@algolia/recommend@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-bE7JcpFXzxF5zHwj/vkl2eiCBvyR1zQ7aoUdO+GDXxGp0DGw7nI0p8Xj6u8VmRQ+RDuPcICFQcCwRIJT5tDJFw=="], - "@algolia/requester-browser-xhr": ["@algolia/requester-browser-xhr@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0" } }, "sha512-XshyfpsQB7BLnHseMinp3fVHOGlTv6uEHOzNK/3XrEF9mjxoZAcdVfY1OCXObfwRWX5qXZOq8FnrndFd44iVsQ=="], + "@algolia/requester-browser-xhr": ["@algolia/requester-browser-xhr@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1" } }, "sha512-MK3wZ2koLDnvH/AmqIF1EKbJlhRS5j74OZGkLpxI4rYvNi9Jn/C7vb5DytBnQ4KUWts7QsmbdwHkxY5txQHXVw=="], - "@algolia/requester-fetch": ["@algolia/requester-fetch@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0" } }, "sha512-Q4XNSVQU89bKNAPuvzSYqTH9AcbOOiIo6AeYMQTxgSJ2+uvT78CLPMG89RIIloYuAtSfE07s40OLV50++l1Bbw=="], + "@algolia/requester-fetch": ["@algolia/requester-fetch@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1" } }, "sha512-2oDT43Y5HWRSIQMPQI4tA/W+TN/N2tjggZCUsqQV440kxzzoPGsvv9QP1GhQ4CoDa+yn6ygUsGp6Dr+a9sPPSg=="], - "@algolia/requester-node-http": ["@algolia/requester-node-http@5.48.0", "", { "dependencies": { "@algolia/client-common": "5.48.0" } }, "sha512-ZgxV2+5qt3NLeUYBTsi6PLyHcENQWC0iFppFZekHSEDA2wcLdTUjnaJzimTEULHIvJuLRCkUs4JABdhuJktEag=="], + "@algolia/requester-node-http": ["@algolia/requester-node-http@5.48.1", "", { "dependencies": { "@algolia/client-common": "5.48.1" } }, "sha512-xcaCqbhupVWhuBP1nwbk1XNvwrGljozutEiLx06mvqDf3o8cHyEgQSHS4fKJM+UAggaWVnnFW+Nne5aQ8SUJXg=="], "@babel/helper-string-parser": ["@babel/helper-string-parser@7.27.1", "", {}, "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA=="], @@ -230,7 +230,7 @@ "@vueuse/shared": ["@vueuse/shared@12.8.2", "", { "dependencies": { "vue": "^3.5.13" } }, "sha512-dznP38YzxZoNloI0qpEfpkms8knDtaoQ6Y/sfS0L7Yki4zh40LFHEhur0odJC6xTHG5dxWVPiUWBXn+wCG2s5w=="], - "algoliasearch": ["algoliasearch@5.48.0", "", { "dependencies": { "@algolia/abtesting": "1.14.0", "@algolia/client-abtesting": "5.48.0", "@algolia/client-analytics": "5.48.0", "@algolia/client-common": "5.48.0", "@algolia/client-insights": "5.48.0", "@algolia/client-personalization": "5.48.0", "@algolia/client-query-suggestions": "5.48.0", "@algolia/client-search": "5.48.0", "@algolia/ingestion": "1.48.0", "@algolia/monitoring": "1.48.0", "@algolia/recommend": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", "@algolia/requester-fetch": "5.48.0", "@algolia/requester-node-http": "5.48.0" } }, "sha512-aD8EQC6KEman6/S79FtPdQmB7D4af/etcRL/KwiKFKgAE62iU8c5PeEQvpvIcBPurC3O/4Lj78nOl7ZcoazqSw=="], + "algoliasearch": ["algoliasearch@5.48.1", "", { "dependencies": { "@algolia/abtesting": "1.14.1", "@algolia/client-abtesting": "5.48.1", "@algolia/client-analytics": "5.48.1", "@algolia/client-common": "5.48.1", "@algolia/client-insights": "5.48.1", "@algolia/client-personalization": "5.48.1", "@algolia/client-query-suggestions": "5.48.1", "@algolia/client-search": "5.48.1", "@algolia/ingestion": "1.48.1", "@algolia/monitoring": "1.48.1", "@algolia/recommend": "5.48.1", "@algolia/requester-browser-xhr": "5.48.1", "@algolia/requester-fetch": "5.48.1", "@algolia/requester-node-http": "5.48.1" } }, "sha512-Rf7xmeuIo7nb6S4mp4abW2faW8DauZyE2faBIKFaUfP3wnpOvNSbiI5AwVhqBNj0jPgBWEvhyCu0sLjN2q77Rg=="], "birpc": ["birpc@2.9.0", "", {}, "sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw=="], @@ -302,7 +302,7 @@ "postcss": ["postcss@8.5.6", "", { "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg=="], - "preact": ["preact@10.19.3", "", {}, "sha512-nHHTeFVBTHRGxJXKkKu5hT8C/YWBkPso4/Gad6xuj5dbptt9iF9NZr9pHbPhBrnT2klheu7mHTxTZ/LjwJiEiQ=="], + "preact": ["preact@10.28.3", "", {}, "sha512-tCmoRkPQLpBeWzpmbhryairGnhW9tKV6c6gr/w+RhoRoKEJwsjzipwp//1oCpGPOchvSLaAPlpcJi9MwMmoPyA=="], "property-information": ["property-information@7.1.0", "", {}, "sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ=="], @@ -316,7 +316,7 @@ "rollup": ["rollup@4.57.1", "", { "dependencies": { "@types/estree": "1.0.8" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.57.1", "@rollup/rollup-android-arm64": "4.57.1", "@rollup/rollup-darwin-arm64": "4.57.1", "@rollup/rollup-darwin-x64": "4.57.1", "@rollup/rollup-freebsd-arm64": "4.57.1", "@rollup/rollup-freebsd-x64": "4.57.1", "@rollup/rollup-linux-arm-gnueabihf": "4.57.1", "@rollup/rollup-linux-arm-musleabihf": "4.57.1", "@rollup/rollup-linux-arm64-gnu": "4.57.1", "@rollup/rollup-linux-arm64-musl": "4.57.1", "@rollup/rollup-linux-loong64-gnu": "4.57.1", "@rollup/rollup-linux-loong64-musl": "4.57.1", "@rollup/rollup-linux-ppc64-gnu": "4.57.1", "@rollup/rollup-linux-ppc64-musl": "4.57.1", "@rollup/rollup-linux-riscv64-gnu": "4.57.1", "@rollup/rollup-linux-riscv64-musl": "4.57.1", "@rollup/rollup-linux-s390x-gnu": "4.57.1", "@rollup/rollup-linux-x64-gnu": "4.57.1", "@rollup/rollup-linux-x64-musl": "4.57.1", "@rollup/rollup-openbsd-x64": "4.57.1", "@rollup/rollup-openharmony-arm64": "4.57.1", "@rollup/rollup-win32-arm64-msvc": "4.57.1", "@rollup/rollup-win32-ia32-msvc": "4.57.1", "@rollup/rollup-win32-x64-gnu": "4.57.1", "@rollup/rollup-win32-x64-msvc": "4.57.1", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-oQL6lgK3e2QZeQ7gcgIkS2YZPg5slw37hYufJ3edKlfQSGGm8ICoxswK15ntSzF/a8+h7ekRy7k7oWc3BQ7y8A=="], - "search-insights": ["search-insights@2.13.0", "", {}, "sha512-Orrsjf9trHHxFRuo9/rzm0KIWmgzE8RMlZMzuhZOJ01Rnz3D0YBAe+V6473t6/H6c7irs6Lt48brULAiRWb3Vw=="], + "search-insights": ["search-insights@2.17.3", "", {}, "sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ=="], "shiki": ["shiki@2.5.0", "", { "dependencies": { "@shikijs/core": "2.5.0", "@shikijs/engine-javascript": "2.5.0", "@shikijs/engine-oniguruma": "2.5.0", "@shikijs/langs": "2.5.0", "@shikijs/themes": "2.5.0", "@shikijs/types": "2.5.0", "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, "sha512-mI//trrsaiCIPsja5CNfsyNOqgAZUb6VpJA+340toL42UpzQlXpwRV9nch69X6gaUxrr9kaOOa6e3y3uAkGFxQ=="], diff --git a/docs/.vitepress/cache/deps/_metadata.json b/docs/.vitepress/cache/deps/_metadata.json index ebebcc6..4aa2cdc 100644 --- a/docs/.vitepress/cache/deps/_metadata.json +++ b/docs/.vitepress/cache/deps/_metadata.json @@ -1,43 +1,43 @@ { - "hash": "f3a26489", - "configHash": "4a0428f0", - "lockfileHash": "fbe7d3cd", - "browserHash": "8e057cea", + "hash": "ae8ed175", + "configHash": "ad343dd6", + "lockfileHash": "e3b0c442", + "browserHash": "317f7f96", "optimized": { "vue": { "src": "../../../../node_modules/vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "a0185409", + "fileHash": "b3c2417e", "needsInterop": false }, "vitepress > @vue/devtools-api": { "src": "../../../../node_modules/@vue/devtools-api/dist/index.js", "file": "vitepress___@vue_devtools-api.js", - "fileHash": "8ada93ae", + "fileHash": "ffb91792", "needsInterop": false }, "vitepress > @vueuse/core": { "src": "../../../../node_modules/@vueuse/core/index.mjs", "file": "vitepress___@vueuse_core.js", - "fileHash": "2d8ce331", + "fileHash": "58b8626d", "needsInterop": false }, "vitepress > @vueuse/integrations/useFocusTrap": { "src": "../../../../node_modules/@vueuse/integrations/useFocusTrap.mjs", "file": "vitepress___@vueuse_integrations_useFocusTrap.js", - "fileHash": "1e108db2", + "fileHash": "a3a5751e", "needsInterop": false }, "vitepress > mark.js/src/vanilla.js": { "src": "../../../../node_modules/mark.js/src/vanilla.js", "file": "vitepress___mark__js_src_vanilla__js.js", - "fileHash": "2ceafc1e", + "fileHash": "fd5ee677", "needsInterop": false }, "vitepress > minisearch": { "src": "../../../../node_modules/minisearch/dist/es/index.js", "file": "vitepress___minisearch.js", - "fileHash": "e70ffd6d", + "fileHash": "02230d0a", "needsInterop": false } }, diff --git a/docs/.vitepress/theme/style.css b/docs/.vitepress/theme/style.css index 74b911a..46ef64a 100644 --- a/docs/.vitepress/theme/style.css +++ b/docs/.vitepress/theme/style.css @@ -24,18 +24,21 @@ --vp-c-danger-3: var(--vp-c-red-3); --vp-c-danger-soft: var(--vp-c-red-soft); - --glass-nav-bg: rgba(255, 255, 255, 0.7); + --glass-nav-bg: rgba(255, 255, 255, 0.7); --glass-sidebar-bg: rgba(255, 255, 255, 0.7); - + --glass-bg: rgba(255, 255, 255, 0.8); --glass-border: rgba(0, 0, 0, 0.08); --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.08); + --glass-shadow-2: 0 6px 24px 0 rgba(0, 0, 0, 0.08); --glass-highlight: inset 0 1px 0 0 rgba(255, 255, 255, 0.6); --glass-blur: 28px; + --glass-blur-2: 16px; + --glass-blur-3: 24px; --glass-radius: 24px; --glass-menu-radius: 12px; - --vp-c-bg: #ffffff; + --vp-c-bg: #ffffff; --vp-c-bg-alt: #f8f9fa; --vp-button-brand-border: transparent; @@ -62,39 +65,44 @@ .dark { --glass-nav-bg: rgba(22, 22, 24, 0.6); --glass-sidebar-bg: rgba(22, 22, 24, 0.6); - + --glass-bg: rgba(30, 30, 35, 0.6); --glass-border: rgba(255, 255, 255, 0.1); --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.5); --glass-highlight: inset 0 1px 0 0 rgba(255, 255, 255, 0.1); - + --vp-c-bg: #0f0f11; --vp-c-bg-alt: #161618; + --vp-c-gutter: rgba(255, 255, 255, 0.4); } body::before { content: ""; position: fixed; - top: 0; + top: 0; left: 0; width: 100vw; height: 100vh; z-index: -1; pointer-events: none; - background: + background: radial-gradient(circle at 100% 0%, rgba(254, 82, 52, 0.1), transparent 50%), radial-gradient(circle at 0% 100%, rgba(79, 70, 229, 0.1), transparent 50%); } .dark body::before { - background: + background: radial-gradient(circle at 90% 10%, rgba(254, 82, 52, 0.15), transparent 60%), radial-gradient(circle at 10% 90%, rgba(79, 70, 229, 0.12), transparent 50%); } -.VPNav { background-color: transparent !important; } +.VPNav, +.VPLocalNav, .shell, .backdrop { + background-color: transparent !important; +} -.VPNavBar { +.VPNavBar, +.VPLocalNav { background-color: var(--glass-nav-bg) !important; backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; @@ -102,25 +110,70 @@ body::before { box-shadow: var(--glass-shadow); } -.VPNav .content-body { background-color: transparent !important; backdrop-filter: none !important; } +.VPNav .content-body, +.VPLocalNav.container { + background-color: transparent !important; + backdrop-filter: none !important; +} -.VPSidebar { - background-color: var(--glass-sidebar-bg) !important; - backdrop-filter: blur(var(--glass-blur)); +.VPNavScreenAppearance { + background-color: transparent !important; + backdrop-filter: blur(var(--glass-blur)) !important; + border: 1px solid var(--glass-border); +} + +.VPNavScreenMenuLink, .VPNavScreenMenuGroup { + border-bottom: 1px solid var(--glass-border) !important; +} + +.VPLocalNav .outline { + background-color: rgba(24, 24, 29, 0.9) !important; + backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; + -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; + border: 1px solid var(--glass-border) !important; +} +.VPLocalNav .header { + background-color: rgba(24, 24, 29, 0.95) !important; + backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; + -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; + border: 1px solid var(--glass-border) !important; +} + +.VPSidebar, +.VPNavScreen { + background-color: transparent !important; + backdrop-filter: blur(var(--glass-blur-3)) !important; border-right: 1px solid var(--glass-border); } -.VPNavBar .divider { display: none; } +.shell { + background-color: var(--glass-bg) !important; + backdrop-filter: saturate(180%) blur(var(--glass-blur-2)) !important; + -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur-2)) !important; + border: 1px solid var(--glass-border) !important; + box-shadow: var(--glass-shadow); +} +.backdrop { + background-color: transparent !important; + backdrop-filter: saturate(180%) blur(var(--glass-blur-2)) !important; + -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur-2)) !important; + border: 1px solid var(--glass-border) !important; + box-shadow: var(--glass-shadow); +} + +.VPNavBar .divider { + display: none; +} .VPFlyout .menu { background-color: var(--glass-bg) !important; backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; - + border: 1px solid var(--glass-border) !important; border-radius: var(--glass-menu-radius) !important; box-shadow: var(--glass-shadow), var(--glass-highlight) !important; - + padding: 6px !important; overflow: hidden; } @@ -141,27 +194,46 @@ body::before { background-color: rgba(255, 255, 255, 0.05) !important; } +.vp-adaptive-theme { + background-color: var(--glass-bg) !important; + backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; +} +.custom-block { + backdrop-filter: blur(var(--glass-blur)) !important; + -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; + + border: 1px solid var(--glass-border) !important; + border-radius: var(--glass-menu-radius) !important; + + background-clip: padding-box !important; + box-shadow: var(--glass-shadow-2), var(--glass-highlight) !important; + + transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), + border-color 0.3s ease, + box-shadow 0.3s ease !important; +} + .VPFeature { background: var(--glass-bg) !important; backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; - + border: 1px solid var(--glass-border) !important; border-radius: var(--glass-radius) !important; - + background-clip: padding-box !important; box-shadow: var(--glass-shadow), var(--glass-highlight) !important; - - transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), - border-color 0.3s ease, - box-shadow 0.3s ease !important; + + transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), + border-color 0.3s ease, + box-shadow 0.3s ease !important; } .VPFeature:hover { transform: translateY(-8px) scale(1.01); border-color: rgba(255, 255, 255, 0.4) !important; - box-shadow: 0 24px 48px rgba(0, 0, 0, 0.25), - inset 0 1px 0 rgba(255, 255, 255, 0.2) !important; + box-shadow: 0 24px 48px rgba(0, 0, 0, 0.25), + inset 0 1px 0 rgba(255, 255, 255, 0.2) !important; } .VPButton { @@ -175,7 +247,7 @@ body::before { .VPButton.brand { background: linear-gradient(135deg, var(--vp-c-brand-3), var(--vp-c-brand-1)) !important; border: 1px solid rgba(255, 255, 255, 0.2) !important; - box-shadow: 0 4px 12px rgba(var(--vp-c-brand-rgb), 0.5), inset 0 1px 0 rgba(255,255,255,0.3) !important; + box-shadow: 0 4px 12px rgba(var(--vp-c-brand-rgb), 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.3) !important; } .VPButton.brand:hover { @@ -195,10 +267,15 @@ body::before { } @media (min-width: 640px) { - :root { --vp-home-hero-image-filter: blur(56px); } + :root { + --vp-home-hero-image-filter: blur(56px); + } } + @media (min-width: 960px) { - :root { --vp-home-hero-image-filter: blur(72px); } + :root { + --vp-home-hero-image-filter: blur(72px); + } } .DocSearch { @@ -213,6 +290,7 @@ body::before { .VPHero .name { text-shadow: 0 0 40px rgba(254, 82, 52, 0.3); } + .VPHero .image-src { animation: float-premium 6s ease-in-out infinite; transform-origin: center center; @@ -223,18 +301,27 @@ body::before { } @keyframes float-premium { - 0% { transform: translate(-50%, -50%) translateY(0px); } - 50% { transform: translate(-50%, -50%) translateY(-16px); } - 100% { transform: translate(-50%, -50%) translateY(0px); } + 0% { + transform: translate(-50%, -50%) translateY(0px); + } + + 50% { + transform: translate(-50%, -50%) translateY(-16px); + } + + 100% { + transform: translate(-50%, -50%) translateY(0px); + } } @keyframes pulse-glow-premium { - 0% { - opacity: 0.6; - transform: translate(-50%, -50%) scale(0.95); + 0% { + opacity: 0.6; + transform: translate(-50%, -50%) scale(0.95); } - 100% { - opacity: 1; - transform: translate(-50%, -50%) scale(1.1); + + 100% { + opacity: 1; + transform: translate(-50%, -50%) scale(1.1); } } \ No newline at end of file diff --git a/node_modules/.bin/esbuild b/node_modules/.bin/esbuild deleted file mode 120000 index 55b5b82..0000000 --- a/node_modules/.bin/esbuild +++ /dev/null @@ -1 +0,0 @@ -../@esbuild/linux-x64/bin/esbuild \ No newline at end of file diff --git a/node_modules/.bin/esbuild.cmd b/node_modules/.bin/esbuild.cmd deleted file mode 100644 index cc920c5..0000000 --- a/node_modules/.bin/esbuild.cmd +++ /dev/null @@ -1,17 +0,0 @@ -@ECHO off -GOTO start -:find_dp0 -SET dp0=%~dp0 -EXIT /b -:start -SETLOCAL -CALL :find_dp0 - -IF EXIST "%dp0%\node.exe" ( - SET "_prog=%dp0%\node.exe" -) ELSE ( - SET "_prog=node" - SET PATHEXT=%PATHEXT:;.JS;=;% -) - -endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\esbuild\bin\esbuild" %* diff --git a/node_modules/.bin/esbuild.ps1 b/node_modules/.bin/esbuild.ps1 deleted file mode 100644 index 81ffbf9..0000000 --- a/node_modules/.bin/esbuild.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -} -$ret=0 -if (Test-Path "$basedir/node$exe") { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "$basedir/node$exe" "$basedir/../esbuild/bin/esbuild" $args - } else { - & "$basedir/node$exe" "$basedir/../esbuild/bin/esbuild" $args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "node$exe" "$basedir/../esbuild/bin/esbuild" $args - } else { - & "node$exe" "$basedir/../esbuild/bin/esbuild" $args - } - $ret=$LASTEXITCODE -} -exit $ret diff --git a/node_modules/.bin/nanoid b/node_modules/.bin/nanoid deleted file mode 120000 index e2be547..0000000 --- a/node_modules/.bin/nanoid +++ /dev/null @@ -1 +0,0 @@ -../nanoid/bin/nanoid.cjs \ No newline at end of file diff --git a/node_modules/.bin/nanoid.cmd b/node_modules/.bin/nanoid.cmd deleted file mode 100644 index 9c40107..0000000 --- a/node_modules/.bin/nanoid.cmd +++ /dev/null @@ -1,17 +0,0 @@ -@ECHO off -GOTO start -:find_dp0 -SET dp0=%~dp0 -EXIT /b -:start -SETLOCAL -CALL :find_dp0 - -IF EXIST "%dp0%\node.exe" ( - SET "_prog=%dp0%\node.exe" -) ELSE ( - SET "_prog=node" - SET PATHEXT=%PATHEXT:;.JS;=;% -) - -endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\nanoid\bin\nanoid.cjs" %* diff --git a/node_modules/.bin/nanoid.ps1 b/node_modules/.bin/nanoid.ps1 deleted file mode 100644 index d8a4d7a..0000000 --- a/node_modules/.bin/nanoid.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -} -$ret=0 -if (Test-Path "$basedir/node$exe") { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "$basedir/node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args - } else { - & "$basedir/node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args - } else { - & "node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args - } - $ret=$LASTEXITCODE -} -exit $ret diff --git a/node_modules/.bin/parser b/node_modules/.bin/parser deleted file mode 120000 index ce7bf97..0000000 --- a/node_modules/.bin/parser +++ /dev/null @@ -1 +0,0 @@ -../@babel/parser/bin/babel-parser.js \ No newline at end of file diff --git a/node_modules/.bin/parser.cmd b/node_modules/.bin/parser.cmd deleted file mode 100644 index 1ad5c81..0000000 --- a/node_modules/.bin/parser.cmd +++ /dev/null @@ -1,17 +0,0 @@ -@ECHO off -GOTO start -:find_dp0 -SET dp0=%~dp0 -EXIT /b -:start -SETLOCAL -CALL :find_dp0 - -IF EXIST "%dp0%\node.exe" ( - SET "_prog=%dp0%\node.exe" -) ELSE ( - SET "_prog=node" - SET PATHEXT=%PATHEXT:;.JS;=;% -) - -endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\@babel\parser\bin\babel-parser.js" %* diff --git a/node_modules/.bin/parser.ps1 b/node_modules/.bin/parser.ps1 deleted file mode 100644 index 8926517..0000000 --- a/node_modules/.bin/parser.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -} -$ret=0 -if (Test-Path "$basedir/node$exe") { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "$basedir/node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args - } else { - & "$basedir/node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args - } else { - & "node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args - } - $ret=$LASTEXITCODE -} -exit $ret diff --git a/node_modules/.bin/rollup b/node_modules/.bin/rollup deleted file mode 120000 index 5939621..0000000 --- a/node_modules/.bin/rollup +++ /dev/null @@ -1 +0,0 @@ -../rollup/dist/bin/rollup \ No newline at end of file diff --git a/node_modules/.bin/rollup.cmd b/node_modules/.bin/rollup.cmd deleted file mode 100644 index b3f110b..0000000 --- a/node_modules/.bin/rollup.cmd +++ /dev/null @@ -1,17 +0,0 @@ -@ECHO off -GOTO start -:find_dp0 -SET dp0=%~dp0 -EXIT /b -:start -SETLOCAL -CALL :find_dp0 - -IF EXIST "%dp0%\node.exe" ( - SET "_prog=%dp0%\node.exe" -) ELSE ( - SET "_prog=node" - SET PATHEXT=%PATHEXT:;.JS;=;% -) - -endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\rollup\dist\bin\rollup" %* diff --git a/node_modules/.bin/rollup.ps1 b/node_modules/.bin/rollup.ps1 deleted file mode 100644 index 10f657d..0000000 --- a/node_modules/.bin/rollup.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -} -$ret=0 -if (Test-Path "$basedir/node$exe") { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "$basedir/node$exe" "$basedir/../rollup/dist/bin/rollup" $args - } else { - & "$basedir/node$exe" "$basedir/../rollup/dist/bin/rollup" $args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "node$exe" "$basedir/../rollup/dist/bin/rollup" $args - } else { - & "node$exe" "$basedir/../rollup/dist/bin/rollup" $args - } - $ret=$LASTEXITCODE -} -exit $ret diff --git a/node_modules/.bin/vite b/node_modules/.bin/vite deleted file mode 120000 index 6d1e3be..0000000 --- a/node_modules/.bin/vite +++ /dev/null @@ -1 +0,0 @@ -../vite/bin/vite.js \ No newline at end of file diff --git a/node_modules/.bin/vite.cmd b/node_modules/.bin/vite.cmd deleted file mode 100644 index f62e966..0000000 --- a/node_modules/.bin/vite.cmd +++ /dev/null @@ -1,17 +0,0 @@ -@ECHO off -GOTO start -:find_dp0 -SET dp0=%~dp0 -EXIT /b -:start -SETLOCAL -CALL :find_dp0 - -IF EXIST "%dp0%\node.exe" ( - SET "_prog=%dp0%\node.exe" -) ELSE ( - SET "_prog=node" - SET PATHEXT=%PATHEXT:;.JS;=;% -) - -endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\vite\bin\vite.js" %* diff --git a/node_modules/.bin/vite.ps1 b/node_modules/.bin/vite.ps1 deleted file mode 100644 index a7759bc..0000000 --- a/node_modules/.bin/vite.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -} -$ret=0 -if (Test-Path "$basedir/node$exe") { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "$basedir/node$exe" "$basedir/../vite/bin/vite.js" $args - } else { - & "$basedir/node$exe" "$basedir/../vite/bin/vite.js" $args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "node$exe" "$basedir/../vite/bin/vite.js" $args - } else { - & "node$exe" "$basedir/../vite/bin/vite.js" $args - } - $ret=$LASTEXITCODE -} -exit $ret diff --git a/node_modules/.bin/vitepress b/node_modules/.bin/vitepress deleted file mode 120000 index f7e3383..0000000 --- a/node_modules/.bin/vitepress +++ /dev/null @@ -1 +0,0 @@ -../vitepress/bin/vitepress.js \ No newline at end of file diff --git a/node_modules/.bin/vitepress.cmd b/node_modules/.bin/vitepress.cmd deleted file mode 100644 index 2a811c3..0000000 --- a/node_modules/.bin/vitepress.cmd +++ /dev/null @@ -1,17 +0,0 @@ -@ECHO off -GOTO start -:find_dp0 -SET dp0=%~dp0 -EXIT /b -:start -SETLOCAL -CALL :find_dp0 - -IF EXIST "%dp0%\node.exe" ( - SET "_prog=%dp0%\node.exe" -) ELSE ( - SET "_prog=node" - SET PATHEXT=%PATHEXT:;.JS;=;% -) - -endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\vitepress\bin\vitepress.js" %* diff --git a/node_modules/.bin/vitepress.ps1 b/node_modules/.bin/vitepress.ps1 deleted file mode 100644 index edfd8e3..0000000 --- a/node_modules/.bin/vitepress.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env pwsh -$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent - -$exe="" -if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) { - # Fix case when both the Windows and Linux builds of Node - # are installed in the same directory - $exe=".exe" -} -$ret=0 -if (Test-Path "$basedir/node$exe") { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "$basedir/node$exe" "$basedir/../vitepress/bin/vitepress.js" $args - } else { - & "$basedir/node$exe" "$basedir/../vitepress/bin/vitepress.js" $args - } - $ret=$LASTEXITCODE -} else { - # Support pipeline input - if ($MyInvocation.ExpectingInput) { - $input | & "node$exe" "$basedir/../vitepress/bin/vitepress.js" $args - } else { - & "node$exe" "$basedir/../vitepress/bin/vitepress.js" $args - } - $ret=$LASTEXITCODE -} -exit $ret diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json deleted file mode 100644 index 1afb46f..0000000 --- a/node_modules/.package-lock.json +++ /dev/null @@ -1,979 +0,0 @@ -{ - "name": "Warp", - "lockfileVersion": 3, - "requires": true, - "packages": { - "node_modules/@algolia/autocomplete-core": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz", - "integrity": "sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-plugin-algolia-insights": "1.9.3", - "@algolia/autocomplete-shared": "1.9.3" - } - }, - "node_modules/@algolia/autocomplete-plugin-algolia-insights": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz", - "integrity": "sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-shared": "1.9.3" - }, - "peerDependencies": { - "search-insights": ">= 1 < 3" - } - }, - "node_modules/@algolia/autocomplete-preset-algolia": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz", - "integrity": "sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-shared": "1.9.3" - }, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/autocomplete-shared": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz", - "integrity": "sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==", - "dev": true, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.22.0.tgz", - "integrity": "sha512-uZ1uZMLDZb4qODLfTSNHxSi4fH9RdrQf7DXEzW01dS8XK7QFtFh29N5NGKa9S+Yudf1vUMIF+/RiL4i/J0pWlQ==", - "dev": true, - "dependencies": { - "@algolia/cache-common": "4.22.0" - } - }, - "node_modules/@algolia/cache-common": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.22.0.tgz", - "integrity": "sha512-TPwUMlIGPN16eW67qamNQUmxNiGHg/WBqWcrOoCddhqNTqGDPVqmgfaM85LPbt24t3r1z0zEz/tdsmuq3Q6oaA==", - "dev": true - }, - "node_modules/@algolia/cache-in-memory": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.22.0.tgz", - "integrity": "sha512-kf4Cio9NpPjzp1+uXQgL4jsMDeck7MP89BYThSvXSjf2A6qV/0KeqQf90TL2ECS02ovLOBXkk98P7qVarM+zGA==", - "dev": true, - "dependencies": { - "@algolia/cache-common": "4.22.0" - } - }, - "node_modules/@algolia/client-account": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.22.0.tgz", - "integrity": "sha512-Bjb5UXpWmJT+yGWiqAJL0prkENyEZTBzdC+N1vBuHjwIJcjLMjPB6j1hNBRbT12Lmwi55uzqeMIKS69w+0aPzA==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.22.0", - "@algolia/client-search": "4.22.0", - "@algolia/transporter": "4.22.0" - } - }, - "node_modules/@algolia/client-analytics": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.22.0.tgz", - "integrity": "sha512-os2K+kHUcwwRa4ArFl5p/3YbF9lN3TLOPkbXXXxOvDpqFh62n9IRZuzfxpHxMPKAQS3Et1s0BkKavnNP02E9Hg==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.22.0", - "@algolia/client-search": "4.22.0", - "@algolia/requester-common": "4.22.0", - "@algolia/transporter": "4.22.0" - } - }, - "node_modules/@algolia/client-common": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.22.0.tgz", - "integrity": "sha512-BlbkF4qXVWuwTmYxVWvqtatCR3lzXwxx628p1wj1Q7QP2+LsTmGt1DiUYRuy9jG7iMsnlExby6kRMOOlbhv2Ag==", - "dev": true, - "dependencies": { - "@algolia/requester-common": "4.22.0", - "@algolia/transporter": "4.22.0" - } - }, - "node_modules/@algolia/client-personalization": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.22.0.tgz", - "integrity": "sha512-pEOftCxeBdG5pL97WngOBi9w5Vxr5KCV2j2D+xMVZH8MuU/JX7CglDSDDb0ffQWYqcUN+40Ry+xtXEYaGXTGow==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.22.0", - "@algolia/requester-common": "4.22.0", - "@algolia/transporter": "4.22.0" - } - }, - "node_modules/@algolia/client-search": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.22.0.tgz", - "integrity": "sha512-bn4qQiIdRPBGCwsNuuqB8rdHhGKKWIij9OqidM1UkQxnSG8yzxHdb7CujM30pvp5EnV7jTqDZRbxacbjYVW20Q==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.22.0", - "@algolia/requester-common": "4.22.0", - "@algolia/transporter": "4.22.0" - } - }, - "node_modules/@algolia/logger-common": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.22.0.tgz", - "integrity": "sha512-HMUQTID0ucxNCXs5d1eBJ5q/HuKg8rFVE/vOiLaM4Abfeq1YnTtGV3+rFEhOPWhRQxNDd+YHa4q864IMc0zHpQ==", - "dev": true - }, - "node_modules/@algolia/logger-console": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.22.0.tgz", - "integrity": "sha512-7JKb6hgcY64H7CRm3u6DRAiiEVXMvCJV5gRE672QFOUgDxo4aiDpfU61g6Uzy8NKjlEzHMmgG4e2fklELmPXhQ==", - "dev": true, - "dependencies": { - "@algolia/logger-common": "4.22.0" - } - }, - "node_modules/@algolia/requester-browser-xhr": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.22.0.tgz", - "integrity": "sha512-BHfv1h7P9/SyvcDJDaRuIwDu2yrDLlXlYmjvaLZTtPw6Ok/ZVhBR55JqW832XN/Fsl6k3LjdkYHHR7xnsa5Wvg==", - "dev": true, - "dependencies": { - "@algolia/requester-common": "4.22.0" - } - }, - "node_modules/@algolia/requester-common": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.22.0.tgz", - "integrity": "sha512-Y9cEH/cKjIIZgzvI1aI0ARdtR/xRrOR13g5psCxkdhpgRN0Vcorx+zePhmAa4jdQNqexpxtkUdcKYugBzMZJgQ==", - "dev": true - }, - "node_modules/@algolia/requester-node-http": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.22.0.tgz", - "integrity": "sha512-8xHoGpxVhz3u2MYIieHIB6MsnX+vfd5PS4REgglejJ6lPigftRhTdBCToe6zbwq4p0anZXjjPDvNWMlgK2+xYA==", - "dev": true, - "dependencies": { - "@algolia/requester-common": "4.22.0" - } - }, - "node_modules/@algolia/transporter": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.22.0.tgz", - "integrity": "sha512-ieO1k8x2o77GNvOoC+vAkFKppydQSVfbjM3YrSjLmgywiBejPTvU1R1nEvG59JIIUvtSLrZsLGPkd6vL14zopA==", - "dev": true, - "dependencies": { - "@algolia/cache-common": "4.22.0", - "@algolia/logger-common": "4.22.0", - "@algolia/requester-common": "4.22.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.9.tgz", - "integrity": "sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@docsearch/css": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.5.2.tgz", - "integrity": "sha512-SPiDHaWKQZpwR2siD0KQUwlStvIAnEyK6tAE2h2Wuoq8ue9skzhlyVQ1ddzOxX6khULnAALDiR/isSF3bnuciA==", - "dev": true - }, - "node_modules/@docsearch/js": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.5.2.tgz", - "integrity": "sha512-p1YFTCDflk8ieHgFJYfmyHBki1D61+U9idwrLh+GQQMrBSP3DLGKpy0XUJtPjAOPltcVbqsTjiPFfH7JImjUNg==", - "dev": true, - "dependencies": { - "@docsearch/react": "3.5.2", - "preact": "^10.0.0" - } - }, - "node_modules/@docsearch/react": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.5.2.tgz", - "integrity": "sha512-9Ahcrs5z2jq/DcAvYtvlqEBHImbm4YJI8M9y0x6Tqg598P40HTEkX7hsMcIuThI+hTFxRGZ9hll0Wygm2yEjng==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-core": "1.9.3", - "@algolia/autocomplete-preset-algolia": "1.9.3", - "@docsearch/css": "3.5.2", - "algoliasearch": "^4.19.1" - }, - "peerDependencies": { - "@types/react": ">= 16.8.0 < 19.0.0", - "react": ">= 16.8.0 < 19.0.0", - "react-dom": ">= 16.8.0 < 19.0.0", - "search-insights": ">= 1 < 3" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - }, - "search-insights": { - "optional": true - } - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz", - "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", - "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true - }, - "node_modules/@types/linkify-it": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.5.tgz", - "integrity": "sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw==", - "dev": true - }, - "node_modules/@types/markdown-it": { - "version": "13.0.7", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-13.0.7.tgz", - "integrity": "sha512-U/CBi2YUUcTHBt5tjO2r5QV/x0Po6nsYwQU4Y04fBS6vfoImaiZ6f8bi3CjTCxBPQSO1LMyUqkByzi8AidyxfA==", - "dev": true, - "dependencies": { - "@types/linkify-it": "*", - "@types/mdurl": "*" - } - }, - "node_modules/@types/mdurl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.5.tgz", - "integrity": "sha512-6L6VymKTzYSrEf4Nev4Xa1LCHKrlTlYCBMTlQKFuddo1CvQcE52I0mwfOJayueUC7MJuXOeHTcIU683lzd0cUA==", - "dev": true - }, - "node_modules/@types/web-bluetooth": { - "version": "0.0.20", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", - "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==", - "dev": true - }, - "node_modules/@vitejs/plugin-vue": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.3.tgz", - "integrity": "sha512-b8S5dVS40rgHdDrw+DQi/xOM9ed+kSRZzfm1T74bMmBDCd8XO87NKlFYInzCtwvtWwXZvo1QxE2OSspTATWrbA==", - "dev": true, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0", - "vue": "^3.2.25" - } - }, - "node_modules/@vue/compiler-core": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.15.tgz", - "integrity": "sha512-XcJQVOaxTKCnth1vCxEChteGuwG6wqnUHxAm1DO3gCz0+uXKaJNx8/digSz4dLALCy8n2lKq24jSUs8segoqIw==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.6", - "@vue/shared": "3.4.15", - "entities": "^4.5.0", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" - } - }, - "node_modules/@vue/compiler-dom": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.15.tgz", - "integrity": "sha512-wox0aasVV74zoXyblarOM3AZQz/Z+OunYcIHe1OsGclCHt8RsRm04DObjefaI82u6XDzv+qGWZ24tIsRAIi5MQ==", - "dev": true, - "dependencies": { - "@vue/compiler-core": "3.4.15", - "@vue/shared": "3.4.15" - } - }, - "node_modules/@vue/compiler-sfc": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.15.tgz", - "integrity": "sha512-LCn5M6QpkpFsh3GQvs2mJUOAlBQcCco8D60Bcqmf3O3w5a+KWS5GvYbrrJBkgvL1BDnTp+e8q0lXCLgHhKguBA==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.23.6", - "@vue/compiler-core": "3.4.15", - "@vue/compiler-dom": "3.4.15", - "@vue/compiler-ssr": "3.4.15", - "@vue/shared": "3.4.15", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.5", - "postcss": "^8.4.33", - "source-map-js": "^1.0.2" - } - }, - "node_modules/@vue/compiler-ssr": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.15.tgz", - "integrity": "sha512-1jdeQyiGznr8gjFDadVmOJqZiLNSsMa5ZgqavkPZ8O2wjHv0tVuAEsw5hTdUoUW4232vpBbL/wJhzVW/JwY1Uw==", - "dev": true, - "dependencies": { - "@vue/compiler-dom": "3.4.15", - "@vue/shared": "3.4.15" - } - }, - "node_modules/@vue/devtools-api": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.1.tgz", - "integrity": "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==", - "dev": true - }, - "node_modules/@vue/reactivity": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.15.tgz", - "integrity": "sha512-55yJh2bsff20K5O84MxSvXKPHHt17I2EomHznvFiJCAZpJTNW8IuLj1xZWMLELRhBK3kkFV/1ErZGHJfah7i7w==", - "dev": true, - "dependencies": { - "@vue/shared": "3.4.15" - } - }, - "node_modules/@vue/runtime-core": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.15.tgz", - "integrity": "sha512-6E3by5m6v1AkW0McCeAyhHTw+3y17YCOKG0U0HDKDscV4Hs0kgNT5G+GCHak16jKgcCDHpI9xe5NKb8sdLCLdw==", - "dev": true, - "dependencies": { - "@vue/reactivity": "3.4.15", - "@vue/shared": "3.4.15" - } - }, - "node_modules/@vue/runtime-dom": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.15.tgz", - "integrity": "sha512-EVW8D6vfFVq3V/yDKNPBFkZKGMFSvZrUQmx196o/v2tHKdwWdiZjYUBS+0Ez3+ohRyF8Njwy/6FH5gYJ75liUw==", - "dev": true, - "dependencies": { - "@vue/runtime-core": "3.4.15", - "@vue/shared": "3.4.15", - "csstype": "^3.1.3" - } - }, - "node_modules/@vue/server-renderer": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.15.tgz", - "integrity": "sha512-3HYzaidu9cHjrT+qGUuDhFYvF/j643bHC6uUN9BgM11DVy+pM6ATsG6uPBLnkwOgs7BpJABReLmpL3ZPAsUaqw==", - "dev": true, - "dependencies": { - "@vue/compiler-ssr": "3.4.15", - "@vue/shared": "3.4.15" - }, - "peerDependencies": { - "vue": "3.4.15" - } - }, - "node_modules/@vue/shared": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.15.tgz", - "integrity": "sha512-KzfPTxVaWfB+eGcGdbSf4CWdaXcGDqckoeXUh7SB3fZdEtzPCK2Vq9B/lRRL3yutax/LWITz+SwvgyOxz5V75g==", - "dev": true - }, - "node_modules/@vueuse/core": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.7.2.tgz", - "integrity": "sha512-AOyAL2rK0By62Hm+iqQn6Rbu8bfmbgaIMXcE3TSr7BdQ42wnSFlwIdPjInO62onYsEMK/yDMU8C6oGfDAtZ2qQ==", - "dev": true, - "dependencies": { - "@types/web-bluetooth": "^0.0.20", - "@vueuse/metadata": "10.7.2", - "@vueuse/shared": "10.7.2", - "vue-demi": ">=0.14.6" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/core/node_modules/vue-demi": { - "version": "0.14.6", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", - "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", - "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, - "node_modules/@vueuse/integrations": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-10.7.2.tgz", - "integrity": "sha512-+u3RLPFedjASs5EKPc69Ge49WNgqeMfSxFn+qrQTzblPXZg6+EFzhjarS5edj2qAf6xQ93f95TUxRwKStXj/sQ==", - "dev": true, - "dependencies": { - "@vueuse/core": "10.7.2", - "@vueuse/shared": "10.7.2", - "vue-demi": ">=0.14.6" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "async-validator": "*", - "axios": "*", - "change-case": "*", - "drauu": "*", - "focus-trap": "*", - "fuse.js": "*", - "idb-keyval": "*", - "jwt-decode": "*", - "nprogress": "*", - "qrcode": "*", - "sortablejs": "*", - "universal-cookie": "*" - }, - "peerDependenciesMeta": { - "async-validator": { - "optional": true - }, - "axios": { - "optional": true - }, - "change-case": { - "optional": true - }, - "drauu": { - "optional": true - }, - "focus-trap": { - "optional": true - }, - "fuse.js": { - "optional": true - }, - "idb-keyval": { - "optional": true - }, - "jwt-decode": { - "optional": true - }, - "nprogress": { - "optional": true - }, - "qrcode": { - "optional": true - }, - "sortablejs": { - "optional": true - }, - "universal-cookie": { - "optional": true - } - } - }, - "node_modules/@vueuse/integrations/node_modules/vue-demi": { - "version": "0.14.6", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", - "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", - "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, - "node_modules/@vueuse/metadata": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.7.2.tgz", - "integrity": "sha512-kCWPb4J2KGrwLtn1eJwaJD742u1k5h6v/St5wFe8Quih90+k2a0JP8BS4Zp34XUuJqS2AxFYMb1wjUL8HfhWsQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/shared": { - "version": "10.7.2", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.7.2.tgz", - "integrity": "sha512-qFbXoxS44pi2FkgFjPvF4h7c9oMDutpyBdcJdMYIMg9XyXli2meFMuaKn+UMgsClo//Th6+beeCgqweT/79BVA==", - "dev": true, - "dependencies": { - "vue-demi": ">=0.14.6" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/shared/node_modules/vue-demi": { - "version": "0.14.6", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", - "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", - "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, - "node_modules/algoliasearch": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.22.0.tgz", - "integrity": "sha512-gfceltjkwh7PxXwtkS8KVvdfK+TSNQAWUeNSxf4dA29qW5tf2EGwa8jkJujlT9jLm17cixMVoGNc+GJFO1Mxhg==", - "dev": true, - "dependencies": { - "@algolia/cache-browser-local-storage": "4.22.0", - "@algolia/cache-common": "4.22.0", - "@algolia/cache-in-memory": "4.22.0", - "@algolia/client-account": "4.22.0", - "@algolia/client-analytics": "4.22.0", - "@algolia/client-common": "4.22.0", - "@algolia/client-personalization": "4.22.0", - "@algolia/client-search": "4.22.0", - "@algolia/logger-common": "4.22.0", - "@algolia/logger-console": "4.22.0", - "@algolia/requester-browser-xhr": "4.22.0", - "@algolia/requester-common": "4.22.0", - "@algolia/requester-node-http": "4.22.0", - "@algolia/transporter": "4.22.0" - } - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "dev": true - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/esbuild": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz", - "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.12", - "@esbuild/android-arm": "0.19.12", - "@esbuild/android-arm64": "0.19.12", - "@esbuild/android-x64": "0.19.12", - "@esbuild/darwin-arm64": "0.19.12", - "@esbuild/darwin-x64": "0.19.12", - "@esbuild/freebsd-arm64": "0.19.12", - "@esbuild/freebsd-x64": "0.19.12", - "@esbuild/linux-arm": "0.19.12", - "@esbuild/linux-arm64": "0.19.12", - "@esbuild/linux-ia32": "0.19.12", - "@esbuild/linux-loong64": "0.19.12", - "@esbuild/linux-mips64el": "0.19.12", - "@esbuild/linux-ppc64": "0.19.12", - "@esbuild/linux-riscv64": "0.19.12", - "@esbuild/linux-s390x": "0.19.12", - "@esbuild/linux-x64": "0.19.12", - "@esbuild/netbsd-x64": "0.19.12", - "@esbuild/openbsd-x64": "0.19.12", - "@esbuild/sunos-x64": "0.19.12", - "@esbuild/win32-arm64": "0.19.12", - "@esbuild/win32-ia32": "0.19.12", - "@esbuild/win32-x64": "0.19.12" - } - }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/focus-trap": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.4.tgz", - "integrity": "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==", - "dev": true, - "dependencies": { - "tabbable": "^6.2.0" - } - }, - "node_modules/magic-string": { - "version": "0.30.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", - "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==", - "dev": true - }, - "node_modules/minisearch": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-6.3.0.tgz", - "integrity": "sha512-ihFnidEeU8iXzcVHy74dhkxh/dn8Dc08ERl0xwoMMGqp4+LvRSCgicb+zGqWthVokQKvCSxITlh3P08OzdTYCQ==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/postcss": { - "version": "8.4.33", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", - "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/preact": { - "version": "10.19.3", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.19.3.tgz", - "integrity": "sha512-nHHTeFVBTHRGxJXKkKu5hT8C/YWBkPso4/Gad6xuj5dbptt9iF9NZr9pHbPhBrnT2klheu7mHTxTZ/LjwJiEiQ==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/preact" - } - }, - "node_modules/rollup": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", - "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", - "dev": true, - "dependencies": { - "@types/estree": "1.0.5" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.6", - "@rollup/rollup-android-arm64": "4.9.6", - "@rollup/rollup-darwin-arm64": "4.9.6", - "@rollup/rollup-darwin-x64": "4.9.6", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", - "@rollup/rollup-linux-arm64-gnu": "4.9.6", - "@rollup/rollup-linux-arm64-musl": "4.9.6", - "@rollup/rollup-linux-riscv64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-musl": "4.9.6", - "@rollup/rollup-win32-arm64-msvc": "4.9.6", - "@rollup/rollup-win32-ia32-msvc": "4.9.6", - "@rollup/rollup-win32-x64-msvc": "4.9.6", - "fsevents": "~2.3.2" - } - }, - "node_modules/search-insights": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.13.0.tgz", - "integrity": "sha512-Orrsjf9trHHxFRuo9/rzm0KIWmgzE8RMlZMzuhZOJ01Rnz3D0YBAe+V6473t6/H6c7irs6Lt48brULAiRWb3Vw==", - "dev": true, - "peer": true - }, - "node_modules/shikiji": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/shikiji/-/shikiji-0.10.2.tgz", - "integrity": "sha512-wtZg3T0vtYV2PnqusWQs3mDaJBdCPWxFDrBM/SE5LfrX92gjUvfEMlc+vJnoKY6Z/S44OWaCRzNIsdBRWcTAiw==", - "dev": true, - "dependencies": { - "shikiji-core": "0.10.2" - } - }, - "node_modules/shikiji-core": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/shikiji-core/-/shikiji-core-0.10.2.tgz", - "integrity": "sha512-9Of8HMlF96usXJHmCL3Gd0Fcf0EcyJUF9m8EoAKKd98mHXi0La2AZl1h6PegSFGtiYcBDK/fLuKbDa1l16r1fA==", - "dev": true - }, - "node_modules/shikiji-transformers": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/shikiji-transformers/-/shikiji-transformers-0.10.2.tgz", - "integrity": "sha512-7IVTwl1af205ywYEq5bOAYOTOFW4V1dVX1EablP0nWKErqZeD1o93VMytxmtJomqS+YwbB8doY8SE3MFMn0aPQ==", - "dev": true, - "dependencies": { - "shikiji": "0.10.2" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tabbable": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", - "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", - "dev": true - }, - "node_modules/vite": { - "version": "5.0.12", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.12.tgz", - "integrity": "sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==", - "dev": true, - "dependencies": { - "esbuild": "^0.19.3", - "postcss": "^8.4.32", - "rollup": "^4.2.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vitepress": { - "version": "1.0.0-rc.40", - "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.0.0-rc.40.tgz", - "integrity": "sha512-1x9PCrcsJwqhpccyTR93uD6jpiPDeRC98CBCAQLLBb44a3VSXYBPzhCahi+2kwAYylu49p0XhseMPVM4IVcWcw==", - "dev": true, - "dependencies": { - "@docsearch/css": "^3.5.2", - "@docsearch/js": "^3.5.2", - "@types/markdown-it": "^13.0.7", - "@vitejs/plugin-vue": "^5.0.3", - "@vue/devtools-api": "^6.5.1", - "@vueuse/core": "^10.7.2", - "@vueuse/integrations": "^10.7.2", - "focus-trap": "^7.5.4", - "mark.js": "8.11.1", - "minisearch": "^6.3.0", - "shikiji": "^0.10.0", - "shikiji-core": "^0.10.0", - "shikiji-transformers": "^0.10.0", - "vite": "^5.0.12", - "vue": "^3.4.15" - }, - "bin": { - "vitepress": "bin/vitepress.js" - }, - "peerDependencies": { - "markdown-it-mathjax3": "^4.3.2", - "postcss": "^8.4.33" - }, - "peerDependenciesMeta": { - "markdown-it-mathjax3": { - "optional": true - }, - "postcss": { - "optional": true - } - } - }, - "node_modules/vue": { - "version": "3.4.15", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.15.tgz", - "integrity": "sha512-jC0GH4KkWLWJOEQjOpkqU1bQsBwf4R1rsFtw5GQJbjHVKWDzO6P0nWWBTmjp1xSemAioDFj1jdaK1qa3DnMQoQ==", - "dev": true, - "dependencies": { - "@vue/compiler-dom": "3.4.15", - "@vue/compiler-sfc": "3.4.15", - "@vue/runtime-dom": "3.4.15", - "@vue/server-renderer": "3.4.15", - "@vue/shared": "3.4.15" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - } - } -} diff --git a/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.cjs.js b/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.cjs.js deleted file mode 100644 index 9179f65..0000000 --- a/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.cjs.js +++ /dev/null @@ -1,83 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -function createBrowserLocalStorageCache(options) { - const namespaceKey = `algoliasearch-client-js-${options.key}`; - // eslint-disable-next-line functional/no-let - let storage; - const getStorage = () => { - if (storage === undefined) { - storage = options.localStorage || window.localStorage; - } - return storage; - }; - const getNamespace = () => { - return JSON.parse(getStorage().getItem(namespaceKey) || '{}'); - }; - const setNamespace = (namespace) => { - getStorage().setItem(namespaceKey, JSON.stringify(namespace)); - }; - const removeOutdatedCacheItems = () => { - const timeToLive = options.timeToLive ? options.timeToLive * 1000 : null; - const namespace = getNamespace(); - const filteredNamespaceWithoutOldFormattedCacheItems = Object.fromEntries(Object.entries(namespace).filter(([, cacheItem]) => { - return cacheItem.timestamp !== undefined; - })); - setNamespace(filteredNamespaceWithoutOldFormattedCacheItems); - if (!timeToLive) - return; - const filteredNamespaceWithoutExpiredItems = Object.fromEntries(Object.entries(filteredNamespaceWithoutOldFormattedCacheItems).filter(([, cacheItem]) => { - const currentTimestamp = new Date().getTime(); - const isExpired = cacheItem.timestamp + timeToLive < currentTimestamp; - return !isExpired; - })); - setNamespace(filteredNamespaceWithoutExpiredItems); - }; - return { - get(key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - return Promise.resolve() - .then(() => { - removeOutdatedCacheItems(); - const keyAsString = JSON.stringify(key); - return getNamespace()[keyAsString]; - }) - .then(value => { - return Promise.all([value ? value.value : defaultValue(), value !== undefined]); - }) - .then(([value, exists]) => { - return Promise.all([value, exists || events.miss(value)]); - }) - .then(([value]) => value); - }, - set(key, value) { - return Promise.resolve().then(() => { - const namespace = getNamespace(); - // eslint-disable-next-line functional/immutable-data - namespace[JSON.stringify(key)] = { - timestamp: new Date().getTime(), - value, - }; - getStorage().setItem(namespaceKey, JSON.stringify(namespace)); - return value; - }); - }, - delete(key) { - return Promise.resolve().then(() => { - const namespace = getNamespace(); - // eslint-disable-next-line functional/immutable-data - delete namespace[JSON.stringify(key)]; - getStorage().setItem(namespaceKey, JSON.stringify(namespace)); - }); - }, - clear() { - return Promise.resolve().then(() => { - getStorage().removeItem(namespaceKey); - }); - }, - }; -} - -exports.createBrowserLocalStorageCache = createBrowserLocalStorageCache; diff --git a/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.d.ts b/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.d.ts deleted file mode 100644 index af91e59..0000000 --- a/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { Cache } from '@algolia/cache-common'; - -export declare type BrowserLocalStorageCacheItem = { - /** - * The cache item creation timestamp. - */ - readonly timestamp: number; - /** - * The cache item value - */ - readonly value: any; -}; - -export declare type BrowserLocalStorageOptions = { - /** - * The cache key. - */ - readonly key: string; - /** - * The time to live for each cached item in seconds. - */ - readonly timeToLive?: number; - /** - * The native local storage implementation. - */ - readonly localStorage?: Storage; -}; - -export declare function createBrowserLocalStorageCache(options: BrowserLocalStorageOptions): Cache; - -export { } diff --git a/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.esm.js b/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.esm.js deleted file mode 100644 index f9416ba..0000000 --- a/node_modules/@algolia/cache-browser-local-storage/dist/cache-browser-local-storage.esm.js +++ /dev/null @@ -1,79 +0,0 @@ -function createBrowserLocalStorageCache(options) { - const namespaceKey = `algoliasearch-client-js-${options.key}`; - // eslint-disable-next-line functional/no-let - let storage; - const getStorage = () => { - if (storage === undefined) { - storage = options.localStorage || window.localStorage; - } - return storage; - }; - const getNamespace = () => { - return JSON.parse(getStorage().getItem(namespaceKey) || '{}'); - }; - const setNamespace = (namespace) => { - getStorage().setItem(namespaceKey, JSON.stringify(namespace)); - }; - const removeOutdatedCacheItems = () => { - const timeToLive = options.timeToLive ? options.timeToLive * 1000 : null; - const namespace = getNamespace(); - const filteredNamespaceWithoutOldFormattedCacheItems = Object.fromEntries(Object.entries(namespace).filter(([, cacheItem]) => { - return cacheItem.timestamp !== undefined; - })); - setNamespace(filteredNamespaceWithoutOldFormattedCacheItems); - if (!timeToLive) - return; - const filteredNamespaceWithoutExpiredItems = Object.fromEntries(Object.entries(filteredNamespaceWithoutOldFormattedCacheItems).filter(([, cacheItem]) => { - const currentTimestamp = new Date().getTime(); - const isExpired = cacheItem.timestamp + timeToLive < currentTimestamp; - return !isExpired; - })); - setNamespace(filteredNamespaceWithoutExpiredItems); - }; - return { - get(key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - return Promise.resolve() - .then(() => { - removeOutdatedCacheItems(); - const keyAsString = JSON.stringify(key); - return getNamespace()[keyAsString]; - }) - .then(value => { - return Promise.all([value ? value.value : defaultValue(), value !== undefined]); - }) - .then(([value, exists]) => { - return Promise.all([value, exists || events.miss(value)]); - }) - .then(([value]) => value); - }, - set(key, value) { - return Promise.resolve().then(() => { - const namespace = getNamespace(); - // eslint-disable-next-line functional/immutable-data - namespace[JSON.stringify(key)] = { - timestamp: new Date().getTime(), - value, - }; - getStorage().setItem(namespaceKey, JSON.stringify(namespace)); - return value; - }); - }, - delete(key) { - return Promise.resolve().then(() => { - const namespace = getNamespace(); - // eslint-disable-next-line functional/immutable-data - delete namespace[JSON.stringify(key)]; - getStorage().setItem(namespaceKey, JSON.stringify(namespace)); - }); - }, - clear() { - return Promise.resolve().then(() => { - getStorage().removeItem(namespaceKey); - }); - }, - }; -} - -export { createBrowserLocalStorageCache }; diff --git a/node_modules/@algolia/cache-browser-local-storage/index.js b/node_modules/@algolia/cache-browser-local-storage/index.js deleted file mode 100644 index 618c061..0000000 --- a/node_modules/@algolia/cache-browser-local-storage/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/cache-browser-local-storage.cjs.js'); diff --git a/node_modules/@algolia/cache-browser-local-storage/package.json b/node_modules/@algolia/cache-browser-local-storage/package.json deleted file mode 100644 index c66483e..0000000 --- a/node_modules/@algolia/cache-browser-local-storage/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "@algolia/cache-browser-local-storage", - "version": "4.22.0", - "private": false, - "description": "Promise-based cache library for browser using local storage.", - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-javascript.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/cache-browser-local-storage.esm.js", - "types": "dist/cache-browser-local-storage.d.ts", - "files": [ - "index.js", - "dist" - ], - "dependencies": { - "@algolia/cache-common": "4.22.0" - } -} diff --git a/node_modules/@algolia/cache-common/dist/cache-common.cjs.js b/node_modules/@algolia/cache-common/dist/cache-common.cjs.js deleted file mode 100644 index 3350ea2..0000000 --- a/node_modules/@algolia/cache-common/dist/cache-common.cjs.js +++ /dev/null @@ -1,61 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -// @todo Add logger on options to debug when caches go wrong. -function createFallbackableCache(options) { - const caches = [...options.caches]; - const current = caches.shift(); // eslint-disable-line functional/immutable-data - if (current === undefined) { - return createNullCache(); - } - return { - get(key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - return current.get(key, defaultValue, events).catch(() => { - return createFallbackableCache({ caches }).get(key, defaultValue, events); - }); - }, - set(key, value) { - return current.set(key, value).catch(() => { - return createFallbackableCache({ caches }).set(key, value); - }); - }, - delete(key) { - return current.delete(key).catch(() => { - return createFallbackableCache({ caches }).delete(key); - }); - }, - clear() { - return current.clear().catch(() => { - return createFallbackableCache({ caches }).clear(); - }); - }, - }; -} - -function createNullCache() { - return { - get(_key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - const value = defaultValue(); - return value - .then(result => Promise.all([result, events.miss(result)])) - .then(([result]) => result); - }, - set(_key, value) { - return Promise.resolve(value); - }, - delete(_key) { - return Promise.resolve(); - }, - clear() { - return Promise.resolve(); - }, - }; -} - -exports.createFallbackableCache = createFallbackableCache; -exports.createNullCache = createNullCache; diff --git a/node_modules/@algolia/cache-common/dist/cache-common.d.ts b/node_modules/@algolia/cache-common/dist/cache-common.d.ts deleted file mode 100644 index 971acff..0000000 --- a/node_modules/@algolia/cache-common/dist/cache-common.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { Cache as Cache_2 } from '@algolia/cache-common'; - -export declare type Cache = { - /** - * Gets the value of the given `key`. - */ - readonly get: (key: object | string, defaultValue: () => Readonly>, events?: CacheEvents) => Readonly>; - /** - * Sets the given value with the given `key`. - */ - readonly set: (key: object | string, value: TValue) => Readonly>; - /** - * Deletes the given `key`. - */ - readonly delete: (key: object | string) => Readonly>; - /** - * Clears the cache. - */ - readonly clear: () => Readonly>; -}; - -export declare type CacheEvents = { - /** - * The callback when the given `key` is missing from the cache. - */ - readonly miss: (value: TValue) => Readonly>; -}; - -export declare function createFallbackableCache(options: FallbackableCacheOptions): Cache; - -export declare function createNullCache(): Cache; - -export declare type FallbackableCacheOptions = { - /** - * List of caches order by priority. - */ - readonly caches: readonly Cache_2[]; -}; - -export { } diff --git a/node_modules/@algolia/cache-common/dist/cache-common.esm.js b/node_modules/@algolia/cache-common/dist/cache-common.esm.js deleted file mode 100644 index 273b38b..0000000 --- a/node_modules/@algolia/cache-common/dist/cache-common.esm.js +++ /dev/null @@ -1,56 +0,0 @@ -// @todo Add logger on options to debug when caches go wrong. -function createFallbackableCache(options) { - const caches = [...options.caches]; - const current = caches.shift(); // eslint-disable-line functional/immutable-data - if (current === undefined) { - return createNullCache(); - } - return { - get(key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - return current.get(key, defaultValue, events).catch(() => { - return createFallbackableCache({ caches }).get(key, defaultValue, events); - }); - }, - set(key, value) { - return current.set(key, value).catch(() => { - return createFallbackableCache({ caches }).set(key, value); - }); - }, - delete(key) { - return current.delete(key).catch(() => { - return createFallbackableCache({ caches }).delete(key); - }); - }, - clear() { - return current.clear().catch(() => { - return createFallbackableCache({ caches }).clear(); - }); - }, - }; -} - -function createNullCache() { - return { - get(_key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - const value = defaultValue(); - return value - .then(result => Promise.all([result, events.miss(result)])) - .then(([result]) => result); - }, - set(_key, value) { - return Promise.resolve(value); - }, - delete(_key) { - return Promise.resolve(); - }, - clear() { - return Promise.resolve(); - }, - }; -} - -export { createFallbackableCache, createNullCache }; diff --git a/node_modules/@algolia/cache-common/index.js b/node_modules/@algolia/cache-common/index.js deleted file mode 100644 index b121ae5..0000000 --- a/node_modules/@algolia/cache-common/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/cache-common.cjs.js'); diff --git a/node_modules/@algolia/cache-common/package.json b/node_modules/@algolia/cache-common/package.json deleted file mode 100644 index 1c52355..0000000 --- a/node_modules/@algolia/cache-common/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "@algolia/cache-common", - "version": "4.22.0", - "private": false, - "description": "Common interfaces for promise-based caching libraries", - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-js.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/cache-common.esm.js", - "types": "dist/cache-common.d.ts", - "files": [ - "index.js", - "dist" - ] -} diff --git a/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.cjs.js b/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.cjs.js deleted file mode 100644 index 9e9369e..0000000 --- a/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.cjs.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -function createInMemoryCache(options = { serializable: true }) { - // eslint-disable-next-line functional/no-let - let cache = {}; - return { - get(key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - const keyAsString = JSON.stringify(key); - if (keyAsString in cache) { - return Promise.resolve(options.serializable ? JSON.parse(cache[keyAsString]) : cache[keyAsString]); - } - const promise = defaultValue(); - const miss = (events && events.miss) || (() => Promise.resolve()); - return promise.then((value) => miss(value)).then(() => promise); - }, - set(key, value) { - // eslint-disable-next-line functional/immutable-data - cache[JSON.stringify(key)] = options.serializable ? JSON.stringify(value) : value; - return Promise.resolve(value); - }, - delete(key) { - // eslint-disable-next-line functional/immutable-data - delete cache[JSON.stringify(key)]; - return Promise.resolve(); - }, - clear() { - cache = {}; - return Promise.resolve(); - }, - }; -} - -exports.createInMemoryCache = createInMemoryCache; diff --git a/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.d.ts b/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.d.ts deleted file mode 100644 index 3d45a39..0000000 --- a/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Cache } from '@algolia/cache-common'; - -export declare function createInMemoryCache(options?: InMemoryCacheOptions): Cache; - -export declare type InMemoryCacheOptions = { - /** - * If keys and values should be serialized using `JSON.stringify`. - */ - readonly serializable?: boolean; -}; - -export { } diff --git a/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.esm.js b/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.esm.js deleted file mode 100644 index 520d435..0000000 --- a/node_modules/@algolia/cache-in-memory/dist/cache-in-memory.esm.js +++ /dev/null @@ -1,33 +0,0 @@ -function createInMemoryCache(options = { serializable: true }) { - // eslint-disable-next-line functional/no-let - let cache = {}; - return { - get(key, defaultValue, events = { - miss: () => Promise.resolve(), - }) { - const keyAsString = JSON.stringify(key); - if (keyAsString in cache) { - return Promise.resolve(options.serializable ? JSON.parse(cache[keyAsString]) : cache[keyAsString]); - } - const promise = defaultValue(); - const miss = (events && events.miss) || (() => Promise.resolve()); - return promise.then((value) => miss(value)).then(() => promise); - }, - set(key, value) { - // eslint-disable-next-line functional/immutable-data - cache[JSON.stringify(key)] = options.serializable ? JSON.stringify(value) : value; - return Promise.resolve(value); - }, - delete(key) { - // eslint-disable-next-line functional/immutable-data - delete cache[JSON.stringify(key)]; - return Promise.resolve(); - }, - clear() { - cache = {}; - return Promise.resolve(); - }, - }; -} - -export { createInMemoryCache }; diff --git a/node_modules/@algolia/cache-in-memory/index.js b/node_modules/@algolia/cache-in-memory/index.js deleted file mode 100644 index 14ac878..0000000 --- a/node_modules/@algolia/cache-in-memory/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/cache-in-memory.cjs.js'); diff --git a/node_modules/@algolia/cache-in-memory/package.json b/node_modules/@algolia/cache-in-memory/package.json deleted file mode 100644 index d77c3c0..0000000 --- a/node_modules/@algolia/cache-in-memory/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "@algolia/cache-in-memory", - "version": "4.22.0", - "private": false, - "description": "Promise-based cache library using memory.", - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-javascript.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/cache-in-memory.esm.js", - "types": "dist/cache-in-memory.d.ts", - "files": [ - "index.js", - "dist" - ], - "dependencies": { - "@algolia/cache-common": "4.22.0" - } -} diff --git a/node_modules/@algolia/client-account/dist/client-account.cjs.js b/node_modules/@algolia/client-account/dist/client-account.cjs.js deleted file mode 100644 index d71a320..0000000 --- a/node_modules/@algolia/client-account/dist/client-account.cjs.js +++ /dev/null @@ -1,69 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var clientCommon = require('@algolia/client-common'); -var clientSearch = require('@algolia/client-search'); - -function createDestinationIndiceExistsError() { - return { - name: 'DestinationIndiceAlreadyExistsError', - message: 'Destination indice already exists.', - }; -} - -function createIndicesInSameAppError(appId) { - return { - name: 'IndicesInTheSameAppError', - message: 'Indices are in the same application. Use SearchClient.copyIndex instead.', - appId, - }; -} - -const accountCopyIndex = (source, destination, requestOptions) => { - // eslint-disable-next-line functional/prefer-readonly-type - const responses = []; - const promise = clientSearch.exists(destination)() - .then(res => { - if (source.appId === destination.appId) { - throw createIndicesInSameAppError(source.appId); - } - if (res) { - throw createDestinationIndiceExistsError(); - } - }) - .then(() => clientSearch.getSettings(source)()) - .then(settings => - // eslint-disable-next-line functional/immutable-data - responses.push(clientSearch.setSettings(destination)(settings, requestOptions))) - .then(() => clientSearch.browseRules(source)({ - // eslint-disable-next-line functional/immutable-data - batch: rules => responses.push(clientSearch.saveRules(destination)(rules, requestOptions)), - })) - .then(() => clientSearch.browseSynonyms(source)({ - // eslint-disable-next-line functional/immutable-data - batch: synonyms => responses.push(clientSearch.saveSynonyms(destination)(synonyms, requestOptions)), - })) - .then(() => clientSearch.browseObjects(source)({ - // eslint-disable-next-line functional/immutable-data - batch: objects => responses.push(clientSearch.saveObjects(destination)(objects, requestOptions)), - })); - return clientCommon.createWaitablePromise( - /** - * The original promise will return an array of async responses, now - * we need to resolve that array of async responses using a - * `Promise.all`, and then resolve `void` for the end-user. - */ - promise.then(() => Promise.all(responses)).then(() => undefined), - /** - * Next, if the end-user calls the `wait` method, we need to also call - * the `wait` method on each element of of async responses. - */ - (_response, waitRequestOptions) => { - return Promise.all(responses.map(response => response.wait(waitRequestOptions))); - }); -}; - -exports.accountCopyIndex = accountCopyIndex; -exports.createDestinationIndiceExistsError = createDestinationIndiceExistsError; -exports.createIndicesInSameAppError = createIndicesInSameAppError; diff --git a/node_modules/@algolia/client-account/dist/client-account.d.ts b/node_modules/@algolia/client-account/dist/client-account.d.ts deleted file mode 100644 index d55f291..0000000 --- a/node_modules/@algolia/client-account/dist/client-account.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { RequestOptions } from '@algolia/transporter'; -import { SearchIndex } from '@algolia/client-search'; -import { WaitablePromise } from '@algolia/client-common'; - -export declare const accountCopyIndex: (source: SearchIndex, destination: SearchIndex, requestOptions?: RequestOptions | undefined) => WaitablePromise; - -export declare function createDestinationIndiceExistsError(): Error; - -export declare function createIndicesInSameAppError(appId: string): IndicesInSameAppError; - -export declare type IndicesInSameAppError = Error & { - /** - * The app id. - */ - readonly appId: string; -}; - -export { } diff --git a/node_modules/@algolia/client-account/dist/client-account.esm.js b/node_modules/@algolia/client-account/dist/client-account.esm.js deleted file mode 100644 index 36b4052..0000000 --- a/node_modules/@algolia/client-account/dist/client-account.esm.js +++ /dev/null @@ -1,63 +0,0 @@ -import { createWaitablePromise } from '@algolia/client-common'; -import { exists, getSettings, setSettings, browseRules, saveRules, browseSynonyms, saveSynonyms, browseObjects, saveObjects } from '@algolia/client-search'; - -function createDestinationIndiceExistsError() { - return { - name: 'DestinationIndiceAlreadyExistsError', - message: 'Destination indice already exists.', - }; -} - -function createIndicesInSameAppError(appId) { - return { - name: 'IndicesInTheSameAppError', - message: 'Indices are in the same application. Use SearchClient.copyIndex instead.', - appId, - }; -} - -const accountCopyIndex = (source, destination, requestOptions) => { - // eslint-disable-next-line functional/prefer-readonly-type - const responses = []; - const promise = exists(destination)() - .then(res => { - if (source.appId === destination.appId) { - throw createIndicesInSameAppError(source.appId); - } - if (res) { - throw createDestinationIndiceExistsError(); - } - }) - .then(() => getSettings(source)()) - .then(settings => - // eslint-disable-next-line functional/immutable-data - responses.push(setSettings(destination)(settings, requestOptions))) - .then(() => browseRules(source)({ - // eslint-disable-next-line functional/immutable-data - batch: rules => responses.push(saveRules(destination)(rules, requestOptions)), - })) - .then(() => browseSynonyms(source)({ - // eslint-disable-next-line functional/immutable-data - batch: synonyms => responses.push(saveSynonyms(destination)(synonyms, requestOptions)), - })) - .then(() => browseObjects(source)({ - // eslint-disable-next-line functional/immutable-data - batch: objects => responses.push(saveObjects(destination)(objects, requestOptions)), - })); - return createWaitablePromise( - /** - * The original promise will return an array of async responses, now - * we need to resolve that array of async responses using a - * `Promise.all`, and then resolve `void` for the end-user. - */ - promise.then(() => Promise.all(responses)).then(() => undefined), - /** - * Next, if the end-user calls the `wait` method, we need to also call - * the `wait` method on each element of of async responses. - */ - (_response, waitRequestOptions) => { - return Promise.all(responses.map(response => response.wait(waitRequestOptions))); - }); -}; - -export { accountCopyIndex, createDestinationIndiceExistsError, createIndicesInSameAppError }; diff --git a/node_modules/@algolia/client-account/index.js b/node_modules/@algolia/client-account/index.js deleted file mode 100644 index ea5e560..0000000 --- a/node_modules/@algolia/client-account/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/client-account.cjs.js'); diff --git a/node_modules/@algolia/client-account/package.json b/node_modules/@algolia/client-account/package.json deleted file mode 100644 index 2edf951..0000000 --- a/node_modules/@algolia/client-account/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "@algolia/client-account", - "version": "4.22.0", - "private": false, - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-javascript.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/client-account.esm.js", - "types": "dist/client-account.d.ts", - "files": [ - "index.js", - "dist" - ], - "dependencies": { - "@algolia/client-common": "4.22.0", - "@algolia/client-search": "4.22.0", - "@algolia/transporter": "4.22.0" - } -} diff --git a/node_modules/@algolia/client-analytics/package.json b/node_modules/@algolia/client-analytics/package.json index aa029b3..1b18e27 100644 --- a/node_modules/@algolia/client-analytics/package.json +++ b/node_modules/@algolia/client-analytics/package.json @@ -1,5 +1,5 @@ { - "version": "5.48.0", + "version": "5.48.1", "repository": { "type": "git", "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" @@ -49,10 +49,10 @@ "index.d.ts" ], "dependencies": { - "@algolia/client-common": "5.48.0", - "@algolia/requester-browser-xhr": "5.48.0", - "@algolia/requester-fetch": "5.48.0", - "@algolia/requester-node-http": "5.48.0" + "@algolia/client-common": "5.48.1", + "@algolia/requester-browser-xhr": "5.48.1", + "@algolia/requester-fetch": "5.48.1", + "@algolia/requester-node-http": "5.48.1" }, "devDependencies": { "@arethetypeswrong/cli": "0.18.2", @@ -65,5 +65,5 @@ "engines": { "node": ">= 14.0.0" }, - "gitHead": "b39976bd859ef66e65d2db182d69853a91a71139" + "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" } diff --git a/node_modules/@algolia/client-common/package.json b/node_modules/@algolia/client-common/package.json index e601c0a..ba39778 100644 --- a/node_modules/@algolia/client-common/package.json +++ b/node_modules/@algolia/client-common/package.json @@ -1,6 +1,6 @@ { "name": "@algolia/client-common", - "version": "5.48.0", + "version": "5.48.1", "description": "Common package for the Algolia JavaScript API client.", "repository": { "type": "git", @@ -36,7 +36,7 @@ }, "devDependencies": { "@arethetypeswrong/cli": "0.18.2", - "@types/node": "24.10.9", + "@types/node": "24.10.12", "jsdom": "27.4.0", "publint": "0.3.17", "ts-node": "10.9.2", @@ -47,5 +47,5 @@ "engines": { "node": ">= 14.0.0" }, - "gitHead": "b39976bd859ef66e65d2db182d69853a91a71139" + "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" } diff --git a/node_modules/@algolia/client-personalization/package.json b/node_modules/@algolia/client-personalization/package.json index a99067e..535466d 100644 --- a/node_modules/@algolia/client-personalization/package.json +++ b/node_modules/@algolia/client-personalization/package.json @@ -1,5 +1,5 @@ { - "version": "5.48.0", + "version": "5.48.1", "repository": { "type": "git", "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" @@ -49,10 +49,10 @@ "index.d.ts" ], "dependencies": { - "@algolia/client-common": "5.48.0", - "@algolia/requester-browser-xhr": "5.48.0", - "@algolia/requester-fetch": "5.48.0", - "@algolia/requester-node-http": "5.48.0" + "@algolia/client-common": "5.48.1", + "@algolia/requester-browser-xhr": "5.48.1", + "@algolia/requester-fetch": "5.48.1", + "@algolia/requester-node-http": "5.48.1" }, "devDependencies": { "@arethetypeswrong/cli": "0.18.2", @@ -65,5 +65,5 @@ "engines": { "node": ">= 14.0.0" }, - "gitHead": "b39976bd859ef66e65d2db182d69853a91a71139" + "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" } diff --git a/node_modules/@algolia/client-search/package.json b/node_modules/@algolia/client-search/package.json index e9e438c..49a5330 100644 --- a/node_modules/@algolia/client-search/package.json +++ b/node_modules/@algolia/client-search/package.json @@ -1,5 +1,5 @@ { - "version": "5.48.0", + "version": "5.48.1", "repository": { "type": "git", "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" @@ -49,10 +49,10 @@ "index.d.ts" ], "dependencies": { - "@algolia/client-common": "5.48.0", - "@algolia/requester-browser-xhr": "5.48.0", - "@algolia/requester-fetch": "5.48.0", - "@algolia/requester-node-http": "5.48.0" + "@algolia/client-common": "5.48.1", + "@algolia/requester-browser-xhr": "5.48.1", + "@algolia/requester-fetch": "5.48.1", + "@algolia/requester-node-http": "5.48.1" }, "devDependencies": { "@arethetypeswrong/cli": "0.18.2", @@ -65,5 +65,5 @@ "engines": { "node": ">= 14.0.0" }, - "gitHead": "b39976bd859ef66e65d2db182d69853a91a71139" + "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" } diff --git a/node_modules/@algolia/logger-common/dist/logger-common.cjs.js b/node_modules/@algolia/logger-common/dist/logger-common.cjs.js deleted file mode 100644 index 6df9f4e..0000000 --- a/node_modules/@algolia/logger-common/dist/logger-common.cjs.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -function createNullLogger() { - return { - debug(_message, _args) { - return Promise.resolve(); - }, - info(_message, _args) { - return Promise.resolve(); - }, - error(_message, _args) { - return Promise.resolve(); - }, - }; -} - -const LogLevelEnum = { - Debug: 1, - Info: 2, - Error: 3, -}; - -exports.LogLevelEnum = LogLevelEnum; -exports.createNullLogger = createNullLogger; diff --git a/node_modules/@algolia/logger-common/dist/logger-common.d.ts b/node_modules/@algolia/logger-common/dist/logger-common.d.ts deleted file mode 100644 index 6c08ae2..0000000 --- a/node_modules/@algolia/logger-common/dist/logger-common.d.ts +++ /dev/null @@ -1,23 +0,0 @@ - -export declare function createNullLogger(): Logger; - -export declare type Logger = { - /** - * Logs debug messages. - */ - readonly debug: (message: string, args?: any) => Readonly>; - /** - * Logs info messages. - */ - readonly info: (message: string, args?: any) => Readonly>; - /** - * Logs error messages. - */ - readonly error: (message: string, args?: any) => Readonly>; -}; - -export declare const LogLevelEnum: Readonly>; - -export declare type LogLevelType = 1 | 2 | 3; - -export { } diff --git a/node_modules/@algolia/logger-common/dist/logger-common.esm.js b/node_modules/@algolia/logger-common/dist/logger-common.esm.js deleted file mode 100644 index 2022922..0000000 --- a/node_modules/@algolia/logger-common/dist/logger-common.esm.js +++ /dev/null @@ -1,21 +0,0 @@ -function createNullLogger() { - return { - debug(_message, _args) { - return Promise.resolve(); - }, - info(_message, _args) { - return Promise.resolve(); - }, - error(_message, _args) { - return Promise.resolve(); - }, - }; -} - -const LogLevelEnum = { - Debug: 1, - Info: 2, - Error: 3, -}; - -export { LogLevelEnum, createNullLogger }; diff --git a/node_modules/@algolia/logger-common/index.js b/node_modules/@algolia/logger-common/index.js deleted file mode 100644 index 56c0010..0000000 --- a/node_modules/@algolia/logger-common/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/logger-common.cjs.js'); diff --git a/node_modules/@algolia/logger-common/package.json b/node_modules/@algolia/logger-common/package.json deleted file mode 100644 index 9861beb..0000000 --- a/node_modules/@algolia/logger-common/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "@algolia/logger-common", - "version": "4.22.0", - "private": false, - "description": "Common interfaces for promise-based log libraries", - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-js.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/logger-common.esm.js", - "types": "dist/logger-common.d.ts", - "files": [ - "index.js", - "dist" - ] -} diff --git a/node_modules/@algolia/logger-console/dist/logger-console.cjs.js b/node_modules/@algolia/logger-console/dist/logger-console.cjs.js deleted file mode 100644 index 1b39210..0000000 --- a/node_modules/@algolia/logger-console/dist/logger-console.cjs.js +++ /dev/null @@ -1,29 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var loggerCommon = require('@algolia/logger-common'); - -/* eslint no-console: 0 */ -function createConsoleLogger(logLevel) { - return { - debug(message, args) { - if (loggerCommon.LogLevelEnum.Debug >= logLevel) { - console.debug(message, args); - } - return Promise.resolve(); - }, - info(message, args) { - if (loggerCommon.LogLevelEnum.Info >= logLevel) { - console.info(message, args); - } - return Promise.resolve(); - }, - error(message, args) { - console.error(message, args); - return Promise.resolve(); - }, - }; -} - -exports.createConsoleLogger = createConsoleLogger; diff --git a/node_modules/@algolia/logger-console/dist/logger-console.d.ts b/node_modules/@algolia/logger-console/dist/logger-console.d.ts deleted file mode 100644 index 70af1d4..0000000 --- a/node_modules/@algolia/logger-console/dist/logger-console.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { Logger } from '@algolia/logger-common'; -import { LogLevelType } from '@algolia/logger-common'; - -export declare function createConsoleLogger(logLevel: LogLevelType): Logger; - -export { } diff --git a/node_modules/@algolia/logger-console/dist/logger-console.esm.js b/node_modules/@algolia/logger-console/dist/logger-console.esm.js deleted file mode 100644 index 94e459f..0000000 --- a/node_modules/@algolia/logger-console/dist/logger-console.esm.js +++ /dev/null @@ -1,25 +0,0 @@ -import { LogLevelEnum } from '@algolia/logger-common'; - -/* eslint no-console: 0 */ -function createConsoleLogger(logLevel) { - return { - debug(message, args) { - if (LogLevelEnum.Debug >= logLevel) { - console.debug(message, args); - } - return Promise.resolve(); - }, - info(message, args) { - if (LogLevelEnum.Info >= logLevel) { - console.info(message, args); - } - return Promise.resolve(); - }, - error(message, args) { - console.error(message, args); - return Promise.resolve(); - }, - }; -} - -export { createConsoleLogger }; diff --git a/node_modules/@algolia/logger-console/index.js b/node_modules/@algolia/logger-console/index.js deleted file mode 100644 index 1a8f955..0000000 --- a/node_modules/@algolia/logger-console/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/logger-console.cjs.js'); diff --git a/node_modules/@algolia/logger-console/package.json b/node_modules/@algolia/logger-console/package.json deleted file mode 100644 index 8231890..0000000 --- a/node_modules/@algolia/logger-console/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "@algolia/logger-console", - "version": "4.22.0", - "private": false, - "description": "Promise-based log library using console log.", - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-javascript.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/logger-console.esm.js", - "types": "dist/logger-console.d.ts", - "files": [ - "index.js", - "dist" - ], - "dependencies": { - "@algolia/logger-common": "4.22.0" - } -} diff --git a/node_modules/@algolia/requester-browser-xhr/package.json b/node_modules/@algolia/requester-browser-xhr/package.json index a3b91af..a66d502 100644 --- a/node_modules/@algolia/requester-browser-xhr/package.json +++ b/node_modules/@algolia/requester-browser-xhr/package.json @@ -1,6 +1,6 @@ { "name": "@algolia/requester-browser-xhr", - "version": "5.48.0", + "version": "5.48.1", "description": "Promise-based request library for browser using xhr.", "repository": { "type": "git", @@ -32,11 +32,11 @@ "test:bundle": "publint . && attw --pack . --ignore-rules cjs-resolves-to-esm" }, "dependencies": { - "@algolia/client-common": "5.48.0" + "@algolia/client-common": "5.48.1" }, "devDependencies": { "@arethetypeswrong/cli": "0.18.2", - "@types/node": "24.10.9", + "@types/node": "24.10.12", "jsdom": "27.4.0", "publint": "0.3.17", "tsup": "8.5.1", @@ -47,5 +47,5 @@ "engines": { "node": ">= 14.0.0" }, - "gitHead": "b39976bd859ef66e65d2db182d69853a91a71139" + "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" } diff --git a/node_modules/@algolia/requester-common/dist/requester-common.cjs.js b/node_modules/@algolia/requester-common/dist/requester-common.cjs.js deleted file mode 100644 index 38e1785..0000000 --- a/node_modules/@algolia/requester-common/dist/requester-common.cjs.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -const MethodEnum = { - Delete: 'DELETE', - Get: 'GET', - Post: 'POST', - Put: 'PUT', -}; - -exports.MethodEnum = MethodEnum; diff --git a/node_modules/@algolia/requester-common/dist/requester-common.d.ts b/node_modules/@algolia/requester-common/dist/requester-common.d.ts deleted file mode 100644 index deba11f..0000000 --- a/node_modules/@algolia/requester-common/dist/requester-common.d.ts +++ /dev/null @@ -1,66 +0,0 @@ - -export declare type Destroyable = { - /** - * Destroy any sockets that are currently in use by the agent. - * - * It is usually not necessary to do this. However, if using an agent with keepAlive enabled, then - * it is best to explicitly shut down the agent when it will no longer be used. Otherwise, sockets - * may hang open for quite a long time before the server terminates them. - */ - readonly destroy: () => Readonly>; -}; - -export declare const MethodEnum: Readonly>; - -export declare type MethodType = 'DELETE' | 'GET' | 'POST' | 'PUT'; - -export declare type Request = { - /** - * The headers of the request. - */ - readonly headers: Readonly>; - /** - * The method of the request. `GET`, etc. - */ - readonly method: MethodType; - /** - * The complete url of the request, with the protocol. - */ - readonly url: string; - /** - * The timeout to stablish a connection with the server. - */ - readonly connectTimeout: number; - /** - * The timeout to receive the response. - */ - readonly responseTimeout: number; - /** - * The data to be transfered to the server. - */ - readonly data: string | undefined; -}; - -export declare type Requester = { - /** - * Sends the given `request` to the server. - */ - readonly send: (request: Request) => Readonly>; -}; - -export declare type Response = { - /** - * The raw response from the server. - */ - content: string; - /** - * If the request timeouted. - */ - isTimedOut: boolean; - /** - * The http status code. - */ - status: number; -}; - -export { } diff --git a/node_modules/@algolia/requester-common/dist/requester-common.esm.js b/node_modules/@algolia/requester-common/dist/requester-common.esm.js deleted file mode 100644 index e0b5a16..0000000 --- a/node_modules/@algolia/requester-common/dist/requester-common.esm.js +++ /dev/null @@ -1,8 +0,0 @@ -const MethodEnum = { - Delete: 'DELETE', - Get: 'GET', - Post: 'POST', - Put: 'PUT', -}; - -export { MethodEnum }; diff --git a/node_modules/@algolia/requester-common/index.js b/node_modules/@algolia/requester-common/index.js deleted file mode 100644 index 0ced494..0000000 --- a/node_modules/@algolia/requester-common/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/requester-common.cjs.js'); diff --git a/node_modules/@algolia/requester-common/package.json b/node_modules/@algolia/requester-common/package.json deleted file mode 100644 index df2fef3..0000000 --- a/node_modules/@algolia/requester-common/package.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "@algolia/requester-common", - "version": "4.22.0", - "private": false, - "description": "Common interfaces for promise-based request libraries", - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-js.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/requester-common.esm.js", - "types": "dist/requester-common.d.ts", - "files": [ - "index.js", - "dist" - ] -} diff --git a/node_modules/@algolia/requester-node-http/package.json b/node_modules/@algolia/requester-node-http/package.json index 7b734fa..61450ab 100644 --- a/node_modules/@algolia/requester-node-http/package.json +++ b/node_modules/@algolia/requester-node-http/package.json @@ -1,6 +1,6 @@ { "name": "@algolia/requester-node-http", - "version": "5.48.0", + "version": "5.48.1", "description": "Promise-based request library for node using the native http module.", "repository": { "type": "git", @@ -35,11 +35,11 @@ "test:bundle": "publint . && attw --pack ." }, "dependencies": { - "@algolia/client-common": "5.48.0" + "@algolia/client-common": "5.48.1" }, "devDependencies": { "@arethetypeswrong/cli": "0.18.2", - "@types/node": "24.10.9", + "@types/node": "24.10.12", "nock": "14.0.10", "publint": "0.3.17", "tsup": "8.5.1", @@ -49,5 +49,5 @@ "engines": { "node": ">= 14.0.0" }, - "gitHead": "b39976bd859ef66e65d2db182d69853a91a71139" + "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" } diff --git a/node_modules/@algolia/transporter/dist/transporter.cjs.js b/node_modules/@algolia/transporter/dist/transporter.cjs.js deleted file mode 100644 index 8709a39..0000000 --- a/node_modules/@algolia/transporter/dist/transporter.cjs.js +++ /dev/null @@ -1,483 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { value: true }); - -var requesterCommon = require('@algolia/requester-common'); - -function createMappedRequestOptions(requestOptions, timeout) { - const options = requestOptions || {}; - const data = options.data || {}; - Object.keys(options).forEach(key => { - if (['timeout', 'headers', 'queryParameters', 'data', 'cacheable'].indexOf(key) === -1) { - data[key] = options[key]; // eslint-disable-line functional/immutable-data - } - }); - return { - data: Object.entries(data).length > 0 ? data : undefined, - timeout: options.timeout || timeout, - headers: options.headers || {}, - queryParameters: options.queryParameters || {}, - cacheable: options.cacheable, - }; -} - -const CallEnum = { - /** - * If the host is read only. - */ - Read: 1, - /** - * If the host is write only. - */ - Write: 2, - /** - * If the host is both read and write. - */ - Any: 3, -}; - -const HostStatusEnum = { - Up: 1, - Down: 2, - Timeouted: 3, -}; - -// By default, API Clients at Algolia have expiration delay -// of 5 mins. In the JavaScript client, we have 2 mins. -const EXPIRATION_DELAY = 2 * 60 * 1000; -function createStatefulHost(host, status = HostStatusEnum.Up) { - return { - ...host, - status, - lastUpdate: Date.now(), - }; -} -function isStatefulHostUp(host) { - return host.status === HostStatusEnum.Up || Date.now() - host.lastUpdate > EXPIRATION_DELAY; -} -function isStatefulHostTimeouted(host) { - return (host.status === HostStatusEnum.Timeouted && Date.now() - host.lastUpdate <= EXPIRATION_DELAY); -} - -function createStatelessHost(options) { - if (typeof options === 'string') { - return { - protocol: 'https', - url: options, - accept: CallEnum.Any, - }; - } - return { - protocol: options.protocol || 'https', - url: options.url, - accept: options.accept || CallEnum.Any, - }; -} - -function createRetryableOptions(hostsCache, statelessHosts) { - return Promise.all(statelessHosts.map(statelessHost => { - return hostsCache.get(statelessHost, () => { - return Promise.resolve(createStatefulHost(statelessHost)); - }); - })).then(statefulHosts => { - const hostsUp = statefulHosts.filter(host => isStatefulHostUp(host)); - const hostsTimeouted = statefulHosts.filter(host => isStatefulHostTimeouted(host)); - /** - * Note, we put the hosts that previously timeouted on the end of the list. - */ - const hostsAvailable = [...hostsUp, ...hostsTimeouted]; - const statelessHostsAvailable = hostsAvailable.length > 0 - ? hostsAvailable.map(host => createStatelessHost(host)) - : statelessHosts; - return { - getTimeout(timeoutsCount, baseTimeout) { - /** - * Imagine that you have 4 hosts, if timeouts will increase - * on the following way: 1 (timeouted) > 4 (timeouted) > 5 (200) - * - * Note that, the very next request, we start from the previous timeout - * - * 5 (timeouted) > 6 (timeouted) > 7 ... - * - * This strategy may need to be reviewed, but is the strategy on the our - * current v3 version. - */ - const timeoutMultiplier = hostsTimeouted.length === 0 && timeoutsCount === 0 - ? 1 - : hostsTimeouted.length + 3 + timeoutsCount; - return timeoutMultiplier * baseTimeout; - }, - statelessHosts: statelessHostsAvailable, - }; - }); -} - -const isNetworkError = ({ isTimedOut, status }) => { - return !isTimedOut && ~~status === 0; -}; -const isRetryable = (response) => { - const status = response.status; - const isTimedOut = response.isTimedOut; - return (isTimedOut || isNetworkError(response) || (~~(status / 100) !== 2 && ~~(status / 100) !== 4)); -}; -const isSuccess = ({ status }) => { - return ~~(status / 100) === 2; -}; -const retryDecision = (response, outcomes) => { - if (isRetryable(response)) { - return outcomes.onRetry(response); - } - if (isSuccess(response)) { - return outcomes.onSuccess(response); - } - return outcomes.onFail(response); -}; - -function retryableRequest(transporter, statelessHosts, request, requestOptions) { - const stackTrace = []; // eslint-disable-line functional/prefer-readonly-type - /** - * First we prepare the payload that do not depend from hosts. - */ - const data = serializeData(request, requestOptions); - const headers = serializeHeaders(transporter, requestOptions); - const method = request.method; - // On `GET`, the data is proxied to query parameters. - const dataQueryParameters = request.method !== requesterCommon.MethodEnum.Get - ? {} - : { - ...request.data, - ...requestOptions.data, - }; - const queryParameters = { - 'x-algolia-agent': transporter.userAgent.value, - ...transporter.queryParameters, - ...dataQueryParameters, - ...requestOptions.queryParameters, - }; - let timeoutsCount = 0; // eslint-disable-line functional/no-let - const retry = (hosts, // eslint-disable-line functional/prefer-readonly-type - getTimeout) => { - /** - * We iterate on each host, until there is no host left. - */ - const host = hosts.pop(); // eslint-disable-line functional/immutable-data - if (host === undefined) { - throw createRetryError(stackTraceWithoutCredentials(stackTrace)); - } - const payload = { - data, - headers, - method, - url: serializeUrl(host, request.path, queryParameters), - connectTimeout: getTimeout(timeoutsCount, transporter.timeouts.connect), - responseTimeout: getTimeout(timeoutsCount, requestOptions.timeout), - }; - /** - * The stackFrame is pushed to the stackTrace so we - * can have information about onRetry and onFailure - * decisions. - */ - const pushToStackTrace = (response) => { - const stackFrame = { - request: payload, - response, - host, - triesLeft: hosts.length, - }; - // eslint-disable-next-line functional/immutable-data - stackTrace.push(stackFrame); - return stackFrame; - }; - const decisions = { - onSuccess: response => deserializeSuccess(response), - onRetry(response) { - const stackFrame = pushToStackTrace(response); - /** - * If response is a timeout, we increaset the number of - * timeouts so we can increase the timeout later. - */ - if (response.isTimedOut) { - timeoutsCount++; - } - return Promise.all([ - /** - * Failures are individually send the logger, allowing - * the end user to debug / store stack frames even - * when a retry error does not happen. - */ - transporter.logger.info('Retryable failure', stackFrameWithoutCredentials(stackFrame)), - /** - * We also store the state of the host in failure cases. If the host, is - * down it will remain down for the next 2 minutes. In a timeout situation, - * this host will be added end of the list of hosts on the next request. - */ - transporter.hostsCache.set(host, createStatefulHost(host, response.isTimedOut ? HostStatusEnum.Timeouted : HostStatusEnum.Down)), - ]).then(() => retry(hosts, getTimeout)); - }, - onFail(response) { - pushToStackTrace(response); - throw deserializeFailure(response, stackTraceWithoutCredentials(stackTrace)); - }, - }; - return transporter.requester.send(payload).then(response => { - return retryDecision(response, decisions); - }); - }; - /** - * Finally, for each retryable host perform request until we got a non - * retryable response. Some notes here: - * - * 1. The reverse here is applied so we can apply a `pop` later on => more performant. - * 2. We also get from the retryable options a timeout multiplier that is tailored - * for the current context. - */ - return createRetryableOptions(transporter.hostsCache, statelessHosts).then(options => { - return retry([...options.statelessHosts].reverse(), options.getTimeout); - }); -} - -function createTransporter(options) { - const { hostsCache, logger, requester, requestsCache, responsesCache, timeouts, userAgent, hosts, queryParameters, headers, } = options; - const transporter = { - hostsCache, - logger, - requester, - requestsCache, - responsesCache, - timeouts, - userAgent, - headers, - queryParameters, - hosts: hosts.map(host => createStatelessHost(host)), - read(request, requestOptions) { - /** - * First, we compute the user request options. Now, keep in mind, - * that using request options the user is able to modified the intire - * payload of the request. Such as headers, query parameters, and others. - */ - const mappedRequestOptions = createMappedRequestOptions(requestOptions, transporter.timeouts.read); - const createRetryableRequest = () => { - /** - * Then, we prepare a function factory that contains the construction of - * the retryable request. At this point, we may *not* perform the actual - * request. But we want to have the function factory ready. - */ - return retryableRequest(transporter, transporter.hosts.filter(host => (host.accept & CallEnum.Read) !== 0), request, mappedRequestOptions); - }; - /** - * Once we have the function factory ready, we need to determine of the - * request is "cacheable" - should be cached. Note that, once again, - * the user can force this option. - */ - const cacheable = mappedRequestOptions.cacheable !== undefined - ? mappedRequestOptions.cacheable - : request.cacheable; - /** - * If is not "cacheable", we immediatly trigger the retryable request, no - * need to check cache implementations. - */ - if (cacheable !== true) { - return createRetryableRequest(); - } - /** - * If the request is "cacheable", we need to first compute the key to ask - * the cache implementations if this request is on progress or if the - * response already exists on the cache. - */ - const key = { - request, - mappedRequestOptions, - transporter: { - queryParameters: transporter.queryParameters, - headers: transporter.headers, - }, - }; - /** - * With the computed key, we first ask the responses cache - * implemention if this request was been resolved before. - */ - return transporter.responsesCache.get(key, () => { - /** - * If the request has never resolved before, we actually ask if there - * is a current request with the same key on progress. - */ - return transporter.requestsCache.get(key, () => { - return (transporter.requestsCache - /** - * Finally, if there is no request in progress with the same key, - * this `createRetryableRequest()` will actually trigger the - * retryable request. - */ - .set(key, createRetryableRequest()) - .then(response => Promise.all([transporter.requestsCache.delete(key), response]), err => Promise.all([transporter.requestsCache.delete(key), Promise.reject(err)])) - .then(([_, response]) => response)); - }); - }, { - /** - * Of course, once we get this response back from the server, we - * tell response cache to actually store the received response - * to be used later. - */ - miss: response => transporter.responsesCache.set(key, response), - }); - }, - write(request, requestOptions) { - /** - * On write requests, no cache mechanisms are applied, and we - * proxy the request immediately to the requester. - */ - return retryableRequest(transporter, transporter.hosts.filter(host => (host.accept & CallEnum.Write) !== 0), request, createMappedRequestOptions(requestOptions, transporter.timeouts.write)); - }, - }; - return transporter; -} - -function createUserAgent(version) { - const userAgent = { - value: `Algolia for JavaScript (${version})`, - add(options) { - const addedUserAgent = `; ${options.segment}${options.version !== undefined ? ` (${options.version})` : ''}`; - if (userAgent.value.indexOf(addedUserAgent) === -1) { - // eslint-disable-next-line functional/immutable-data - userAgent.value = `${userAgent.value}${addedUserAgent}`; - } - return userAgent; - }, - }; - return userAgent; -} - -function deserializeSuccess(response) { - // eslint-disable-next-line functional/no-try-statement - try { - return JSON.parse(response.content); - } - catch (e) { - throw createDeserializationError(e.message, response); - } -} -function deserializeFailure({ content, status }, stackFrame) { - // eslint-disable-next-line functional/no-let - let message = content; - // eslint-disable-next-line functional/no-try-statement - try { - message = JSON.parse(content).message; - } - catch (e) { - // .. - } - return createApiError(message, status, stackFrame); -} - -// eslint-disable-next-line functional/prefer-readonly-type -function encode(format, ...args) { - // eslint-disable-next-line functional/no-let - let i = 0; - return format.replace(/%s/g, () => encodeURIComponent(args[i++])); -} - -function serializeUrl(host, path, queryParameters) { - const queryParametersAsString = serializeQueryParameters(queryParameters); - // eslint-disable-next-line functional/no-let - let url = `${host.protocol}://${host.url}/${path.charAt(0) === '/' ? path.substr(1) : path}`; - if (queryParametersAsString.length) { - url += `?${queryParametersAsString}`; - } - return url; -} -function serializeQueryParameters(parameters) { - const isObjectOrArray = (value) => Object.prototype.toString.call(value) === '[object Object]' || - Object.prototype.toString.call(value) === '[object Array]'; - return Object.keys(parameters) - .map(key => encode('%s=%s', key, isObjectOrArray(parameters[key]) ? JSON.stringify(parameters[key]) : parameters[key])) - .join('&'); -} -function serializeData(request, requestOptions) { - if (request.method === requesterCommon.MethodEnum.Get || - (request.data === undefined && requestOptions.data === undefined)) { - return undefined; - } - const data = Array.isArray(request.data) - ? request.data - : { ...request.data, ...requestOptions.data }; - return JSON.stringify(data); -} -function serializeHeaders(transporter, requestOptions) { - const headers = { - ...transporter.headers, - ...requestOptions.headers, - }; - const serializedHeaders = {}; - Object.keys(headers).forEach(header => { - const value = headers[header]; - // @ts-ignore - // eslint-disable-next-line functional/immutable-data - serializedHeaders[header.toLowerCase()] = value; - }); - return serializedHeaders; -} - -function stackTraceWithoutCredentials(stackTrace) { - return stackTrace.map(stackFrame => stackFrameWithoutCredentials(stackFrame)); -} -function stackFrameWithoutCredentials(stackFrame) { - const modifiedHeaders = stackFrame.request.headers['x-algolia-api-key'] - ? { 'x-algolia-api-key': '*****' } - : {}; - return { - ...stackFrame, - request: { - ...stackFrame.request, - headers: { - ...stackFrame.request.headers, - ...modifiedHeaders, - }, - }, - }; -} - -function createApiError(message, status, transporterStackTrace) { - return { - name: 'ApiError', - message, - status, - transporterStackTrace, - }; -} - -function createDeserializationError(message, response) { - return { - name: 'DeserializationError', - message, - response, - }; -} - -function createRetryError(transporterStackTrace) { - return { - name: 'RetryError', - message: 'Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.', - transporterStackTrace, - }; -} - -exports.CallEnum = CallEnum; -exports.HostStatusEnum = HostStatusEnum; -exports.createApiError = createApiError; -exports.createDeserializationError = createDeserializationError; -exports.createMappedRequestOptions = createMappedRequestOptions; -exports.createRetryError = createRetryError; -exports.createStatefulHost = createStatefulHost; -exports.createStatelessHost = createStatelessHost; -exports.createTransporter = createTransporter; -exports.createUserAgent = createUserAgent; -exports.deserializeFailure = deserializeFailure; -exports.deserializeSuccess = deserializeSuccess; -exports.isStatefulHostTimeouted = isStatefulHostTimeouted; -exports.isStatefulHostUp = isStatefulHostUp; -exports.serializeData = serializeData; -exports.serializeHeaders = serializeHeaders; -exports.serializeQueryParameters = serializeQueryParameters; -exports.serializeUrl = serializeUrl; -exports.stackFrameWithoutCredentials = stackFrameWithoutCredentials; -exports.stackTraceWithoutCredentials = stackTraceWithoutCredentials; diff --git a/node_modules/@algolia/transporter/dist/transporter.d.ts b/node_modules/@algolia/transporter/dist/transporter.d.ts deleted file mode 100644 index 81a7bc1..0000000 --- a/node_modules/@algolia/transporter/dist/transporter.d.ts +++ /dev/null @@ -1,381 +0,0 @@ -import { Cache } from '@algolia/cache-common'; -import { Logger } from '@algolia/logger-common'; -import { MethodType } from '@algolia/requester-common'; -import { Request as Request_2 } from '@algolia/requester-common'; -import { Requester } from '@algolia/requester-common'; -import { Response } from '@algolia/requester-common'; - -export declare type ApiError = Error & { - /** - * The http status code. - */ - readonly status: number; - /** - * Contains report of stack frames of the - * execution of a certain request. - */ - readonly transporterStackTrace: readonly StackFrame[]; -}; - -export declare const CallEnum: Readonly>; - -export declare type CallType = 1 | 2 | 3; - -export declare function createApiError(message: string, status: number, transporterStackTrace: readonly StackFrame[]): ApiError; - -export declare function createDeserializationError(message: string, response: Response): DeserializationError; - -export declare function createMappedRequestOptions(requestOptions?: RequestOptions, timeout?: number): MappedRequestOptions; - -export declare function createRetryError(transporterStackTrace: readonly StackFrame[]): RetryError; - -export declare function createStatefulHost(host: StatelessHost, status?: HostStatusType): StatefulHost; - -export declare function createStatelessHost(options: HostOptions): StatelessHost; - -export declare function createTransporter(options: TransporterOptions): Transporter; - -export declare function createUserAgent(version: string): UserAgent; - -export declare type DeserializationError = Error & { - /** - * The raw response from the server. - */ - readonly response: Response; -}; - -export declare function deserializeFailure({ content, status }: Response, stackFrame: readonly StackFrame[]): Error; - -export declare function deserializeSuccess(response: Response): TObject; - -export declare type Headers = Readonly>; - -export declare type HostOptions = string | { - /** - * The url of the server, without the protocol. - */ - readonly url: string; - /** - * The type of host. Defaults to `Any`. - */ - readonly accept?: CallType; - /** - * The protocol. Defaults to `https`. - */ - readonly protocol?: string; -}; - -export declare const HostStatusEnum: Readonly>; - -export declare type HostStatusType = 1 | 2 | 3; - -export declare function isStatefulHostTimeouted(host: StatefulHost): boolean; - -export declare function isStatefulHostUp(host: StatefulHost): boolean; - -export declare type MappedRequestOptions = { - /** - * If the request should be cached. - */ - readonly cacheable: boolean | undefined; - /** - * The `read` or `write` timeout of the request. - */ - readonly timeout: number | undefined; - /** - * The headers of the request. - */ - readonly headers: Record; - /** - * The query parameters of the request. - */ - readonly queryParameters: Record; - /** - * The data to be transfered to the server. - */ - readonly data?: Record; -}; - -export declare type QueryParameters = Readonly>; - -export declare type Request = { - /** - * The method of the request. `GET`, etc. - */ - readonly method: MethodType; - /** - * The path of the request. i.e: `/1/indexes`. - */ - readonly path: string; - /** - * The data to transfer to the server. - */ - readonly data?: Record | ReadonlyArray>; - /** - * If the response should persist on cache. - */ - readonly cacheable?: boolean; -}; - -export declare type RequestOptions = { - /** - * If the given request should persist on the cache. Keep in mind, - * that some methods may have this option enabled by default. - */ - readonly cacheable?: boolean; - /** - * Custom timeout for the request. Note that, in normal situacions - * the given timeout will be applied. But the transporter layer may - * increase this timeout if there is need for it. - */ - readonly timeout?: number; - /** - * Custom headers for the request. This headers are - * going to be merged the transporter headers. - */ - readonly headers?: Readonly>; - /** - * Custom query parameters for the request. This query parameters are - * going to be merged the transporter query parameters. - */ - readonly queryParameters?: Record; - /** - * Custom data for the request. This data are - * going to be merged the transporter data. - */ - readonly data?: Record; - /** - * Additional request body values. It's only taken in - * consideration in `POST` and `PUT` requests. - */ - [key: string]: any; -}; - -export declare type RetryError = Error & { - /** - * Contains report of stack frames of the - * execution of a certain request. - */ - readonly transporterStackTrace: readonly StackFrame[]; -}; - -export declare function serializeData(request: Request, requestOptions: RequestOptions): string | undefined; - -export declare function serializeHeaders(transporter: Transporter, requestOptions: RequestOptions): Headers; - -export declare function serializeQueryParameters(parameters: Readonly>): string; - -export declare function serializeUrl(host: StatelessHost, path: string, queryParameters: Readonly>): string; - -export declare type StackFrame = { - /** - * The request made. - */ - readonly request: Request_2; - /** - * The received response. - */ - readonly response: Response; - /** - * The host associated with the `request` and the `response`. - */ - readonly host: StatelessHost; - /** - * The number of tries left. - */ - readonly triesLeft: number; -}; - -export declare function stackFrameWithoutCredentials(stackFrame: StackFrame): StackFrame; - -export declare function stackTraceWithoutCredentials(stackTrace: readonly StackFrame[]): readonly StackFrame[]; - -export declare type StatefulHost = StatelessHost & { - /** - * Holds the last time this host failed in milliseconds elapsed - * since the UNIX epoch. This failure can be because of an - * timeout error or a because the host is not available. - */ - readonly lastUpdate: number; - /** - * Holds the host status. Note that, depending of the `lastUpdate` - * an host may be considered as `Up` on the transporter layer. - */ - readonly status: HostStatusType; -}; - -export declare type StatelessHost = { - /** - * The protocol of the stateless host. Between `http` and `https`. - */ - readonly protocol: string; - /** - * The url, without protocol. - */ - readonly url: string; - /** - * The type of the host. - */ - readonly accept: CallType; -}; - -export declare type Timeouts = { - /** - * The timeout to stablish a connection with the server. - */ - readonly connect: number; - /** - * The timeout to receive the response on read requests. - */ - readonly read: number; - /** - * The timeout to receive the response on write requests. - */ - readonly write: number; -}; - -export declare type Transporter = { - /** - * The cache of the hosts. Usually used to persist - * the state of the host when its down. - */ - readonly hostsCache: Cache; - /** - * The logger instance to send events of the transporter. - */ - readonly logger: Logger; - /** - * The underlying requester used. Should differ - * depending of the enviroment where the client - * will be used. - */ - readonly requester: Requester; - /** - * The cache of the requests. When requests are - * `cacheable`, the returned promised persists - * in this cache to shared in similar resquests - * before being resolved. - */ - readonly requestsCache: Cache; - /** - * The cache of the responses. When requests are - * `cacheable`, the returned responses persists - * in this cache to shared in similar resquests. - */ - readonly responsesCache: Cache; - /** - * The timeouts used by the requester. The transporter - * layer may increase this timeouts as defined on the - * retry strategy. - */ - readonly timeouts: Timeouts; - /** - * The user agent used. Sent on query parameters. - */ - readonly userAgent: UserAgent; - /** - * The headers used on each request. - */ - readonly headers: Headers; - /** - * The query parameters used on each request. - */ - readonly queryParameters: QueryParameters; - /** - * The hosts used by the retry strategy. - * - * @readonly - */ - hosts: readonly StatelessHost[]; - /** - * Performs a read request using read hosts. - */ - readonly read: (request: Request, requestOptions?: RequestOptions) => Readonly>; - /** - * Performs a write request using write hosts. - */ - readonly write: (request: Request, requestOptions?: RequestOptions) => Readonly>; -}; - -export declare type TransporterOptions = { - /** - * The cache of the hosts. Usually used to persist - * the state of the host when its down. - */ - readonly hostsCache: Cache; - /** - * The logger instance to send events of the transporter. - */ - readonly logger: Logger; - /** - * The underlying requester used. Should differ - * depending of the enviroment where the client - * will be used. - */ - readonly requester: Requester; - /** - * The cache of the requests. When requests are - * `cacheable`, the returned promised persists - * in this cache to shared in similar resquests - * before being resolved. - */ - readonly requestsCache: Cache; - /** - * The cache of the responses. When requests are - * `cacheable`, the returned responses persists - * in this cache to shared in similar resquests. - */ - readonly responsesCache: Cache; - /** - * The timeouts used by the requester. The transporter - * layer may increase this timeouts as defined on the - * retry strategy. - */ - readonly timeouts: Timeouts; - /** - * The hosts used by the requester. - */ - readonly hosts: readonly HostOptions[]; - /** - * The headers used by the requester. The transporter - * layer may add some extra headers during the request - * for the user agent, and others. - */ - readonly headers: Headers; - /** - * The query parameters used by the requester. The transporter - * layer may add some extra headers during the request - * for the user agent, and others. - */ - readonly queryParameters: QueryParameters; - /** - * The user agent used. Sent on query parameters. - */ - readonly userAgent: UserAgent; -}; - -export declare type UserAgent = { - /** - * The raw value of the user agent. - * - * @readonly - */ - value: string; - /** - * Mutates the current user agent ading the given user agent options. - */ - readonly add: (options: UserAgentOptions) => UserAgent; -}; - -export declare type UserAgentOptions = { - /** - * The segment. Usually the integration name. - */ - readonly segment: string; - /** - * The version. Usually the integration version. - */ - readonly version?: string; -}; - -export { } diff --git a/node_modules/@algolia/transporter/dist/transporter.esm.js b/node_modules/@algolia/transporter/dist/transporter.esm.js deleted file mode 100644 index 89ba4c5..0000000 --- a/node_modules/@algolia/transporter/dist/transporter.esm.js +++ /dev/null @@ -1,460 +0,0 @@ -import { MethodEnum } from '@algolia/requester-common'; - -function createMappedRequestOptions(requestOptions, timeout) { - const options = requestOptions || {}; - const data = options.data || {}; - Object.keys(options).forEach(key => { - if (['timeout', 'headers', 'queryParameters', 'data', 'cacheable'].indexOf(key) === -1) { - data[key] = options[key]; // eslint-disable-line functional/immutable-data - } - }); - return { - data: Object.entries(data).length > 0 ? data : undefined, - timeout: options.timeout || timeout, - headers: options.headers || {}, - queryParameters: options.queryParameters || {}, - cacheable: options.cacheable, - }; -} - -const CallEnum = { - /** - * If the host is read only. - */ - Read: 1, - /** - * If the host is write only. - */ - Write: 2, - /** - * If the host is both read and write. - */ - Any: 3, -}; - -const HostStatusEnum = { - Up: 1, - Down: 2, - Timeouted: 3, -}; - -// By default, API Clients at Algolia have expiration delay -// of 5 mins. In the JavaScript client, we have 2 mins. -const EXPIRATION_DELAY = 2 * 60 * 1000; -function createStatefulHost(host, status = HostStatusEnum.Up) { - return { - ...host, - status, - lastUpdate: Date.now(), - }; -} -function isStatefulHostUp(host) { - return host.status === HostStatusEnum.Up || Date.now() - host.lastUpdate > EXPIRATION_DELAY; -} -function isStatefulHostTimeouted(host) { - return (host.status === HostStatusEnum.Timeouted && Date.now() - host.lastUpdate <= EXPIRATION_DELAY); -} - -function createStatelessHost(options) { - if (typeof options === 'string') { - return { - protocol: 'https', - url: options, - accept: CallEnum.Any, - }; - } - return { - protocol: options.protocol || 'https', - url: options.url, - accept: options.accept || CallEnum.Any, - }; -} - -function createRetryableOptions(hostsCache, statelessHosts) { - return Promise.all(statelessHosts.map(statelessHost => { - return hostsCache.get(statelessHost, () => { - return Promise.resolve(createStatefulHost(statelessHost)); - }); - })).then(statefulHosts => { - const hostsUp = statefulHosts.filter(host => isStatefulHostUp(host)); - const hostsTimeouted = statefulHosts.filter(host => isStatefulHostTimeouted(host)); - /** - * Note, we put the hosts that previously timeouted on the end of the list. - */ - const hostsAvailable = [...hostsUp, ...hostsTimeouted]; - const statelessHostsAvailable = hostsAvailable.length > 0 - ? hostsAvailable.map(host => createStatelessHost(host)) - : statelessHosts; - return { - getTimeout(timeoutsCount, baseTimeout) { - /** - * Imagine that you have 4 hosts, if timeouts will increase - * on the following way: 1 (timeouted) > 4 (timeouted) > 5 (200) - * - * Note that, the very next request, we start from the previous timeout - * - * 5 (timeouted) > 6 (timeouted) > 7 ... - * - * This strategy may need to be reviewed, but is the strategy on the our - * current v3 version. - */ - const timeoutMultiplier = hostsTimeouted.length === 0 && timeoutsCount === 0 - ? 1 - : hostsTimeouted.length + 3 + timeoutsCount; - return timeoutMultiplier * baseTimeout; - }, - statelessHosts: statelessHostsAvailable, - }; - }); -} - -const isNetworkError = ({ isTimedOut, status }) => { - return !isTimedOut && ~~status === 0; -}; -const isRetryable = (response) => { - const status = response.status; - const isTimedOut = response.isTimedOut; - return (isTimedOut || isNetworkError(response) || (~~(status / 100) !== 2 && ~~(status / 100) !== 4)); -}; -const isSuccess = ({ status }) => { - return ~~(status / 100) === 2; -}; -const retryDecision = (response, outcomes) => { - if (isRetryable(response)) { - return outcomes.onRetry(response); - } - if (isSuccess(response)) { - return outcomes.onSuccess(response); - } - return outcomes.onFail(response); -}; - -function retryableRequest(transporter, statelessHosts, request, requestOptions) { - const stackTrace = []; // eslint-disable-line functional/prefer-readonly-type - /** - * First we prepare the payload that do not depend from hosts. - */ - const data = serializeData(request, requestOptions); - const headers = serializeHeaders(transporter, requestOptions); - const method = request.method; - // On `GET`, the data is proxied to query parameters. - const dataQueryParameters = request.method !== MethodEnum.Get - ? {} - : { - ...request.data, - ...requestOptions.data, - }; - const queryParameters = { - 'x-algolia-agent': transporter.userAgent.value, - ...transporter.queryParameters, - ...dataQueryParameters, - ...requestOptions.queryParameters, - }; - let timeoutsCount = 0; // eslint-disable-line functional/no-let - const retry = (hosts, // eslint-disable-line functional/prefer-readonly-type - getTimeout) => { - /** - * We iterate on each host, until there is no host left. - */ - const host = hosts.pop(); // eslint-disable-line functional/immutable-data - if (host === undefined) { - throw createRetryError(stackTraceWithoutCredentials(stackTrace)); - } - const payload = { - data, - headers, - method, - url: serializeUrl(host, request.path, queryParameters), - connectTimeout: getTimeout(timeoutsCount, transporter.timeouts.connect), - responseTimeout: getTimeout(timeoutsCount, requestOptions.timeout), - }; - /** - * The stackFrame is pushed to the stackTrace so we - * can have information about onRetry and onFailure - * decisions. - */ - const pushToStackTrace = (response) => { - const stackFrame = { - request: payload, - response, - host, - triesLeft: hosts.length, - }; - // eslint-disable-next-line functional/immutable-data - stackTrace.push(stackFrame); - return stackFrame; - }; - const decisions = { - onSuccess: response => deserializeSuccess(response), - onRetry(response) { - const stackFrame = pushToStackTrace(response); - /** - * If response is a timeout, we increaset the number of - * timeouts so we can increase the timeout later. - */ - if (response.isTimedOut) { - timeoutsCount++; - } - return Promise.all([ - /** - * Failures are individually send the logger, allowing - * the end user to debug / store stack frames even - * when a retry error does not happen. - */ - transporter.logger.info('Retryable failure', stackFrameWithoutCredentials(stackFrame)), - /** - * We also store the state of the host in failure cases. If the host, is - * down it will remain down for the next 2 minutes. In a timeout situation, - * this host will be added end of the list of hosts on the next request. - */ - transporter.hostsCache.set(host, createStatefulHost(host, response.isTimedOut ? HostStatusEnum.Timeouted : HostStatusEnum.Down)), - ]).then(() => retry(hosts, getTimeout)); - }, - onFail(response) { - pushToStackTrace(response); - throw deserializeFailure(response, stackTraceWithoutCredentials(stackTrace)); - }, - }; - return transporter.requester.send(payload).then(response => { - return retryDecision(response, decisions); - }); - }; - /** - * Finally, for each retryable host perform request until we got a non - * retryable response. Some notes here: - * - * 1. The reverse here is applied so we can apply a `pop` later on => more performant. - * 2. We also get from the retryable options a timeout multiplier that is tailored - * for the current context. - */ - return createRetryableOptions(transporter.hostsCache, statelessHosts).then(options => { - return retry([...options.statelessHosts].reverse(), options.getTimeout); - }); -} - -function createTransporter(options) { - const { hostsCache, logger, requester, requestsCache, responsesCache, timeouts, userAgent, hosts, queryParameters, headers, } = options; - const transporter = { - hostsCache, - logger, - requester, - requestsCache, - responsesCache, - timeouts, - userAgent, - headers, - queryParameters, - hosts: hosts.map(host => createStatelessHost(host)), - read(request, requestOptions) { - /** - * First, we compute the user request options. Now, keep in mind, - * that using request options the user is able to modified the intire - * payload of the request. Such as headers, query parameters, and others. - */ - const mappedRequestOptions = createMappedRequestOptions(requestOptions, transporter.timeouts.read); - const createRetryableRequest = () => { - /** - * Then, we prepare a function factory that contains the construction of - * the retryable request. At this point, we may *not* perform the actual - * request. But we want to have the function factory ready. - */ - return retryableRequest(transporter, transporter.hosts.filter(host => (host.accept & CallEnum.Read) !== 0), request, mappedRequestOptions); - }; - /** - * Once we have the function factory ready, we need to determine of the - * request is "cacheable" - should be cached. Note that, once again, - * the user can force this option. - */ - const cacheable = mappedRequestOptions.cacheable !== undefined - ? mappedRequestOptions.cacheable - : request.cacheable; - /** - * If is not "cacheable", we immediatly trigger the retryable request, no - * need to check cache implementations. - */ - if (cacheable !== true) { - return createRetryableRequest(); - } - /** - * If the request is "cacheable", we need to first compute the key to ask - * the cache implementations if this request is on progress or if the - * response already exists on the cache. - */ - const key = { - request, - mappedRequestOptions, - transporter: { - queryParameters: transporter.queryParameters, - headers: transporter.headers, - }, - }; - /** - * With the computed key, we first ask the responses cache - * implemention if this request was been resolved before. - */ - return transporter.responsesCache.get(key, () => { - /** - * If the request has never resolved before, we actually ask if there - * is a current request with the same key on progress. - */ - return transporter.requestsCache.get(key, () => { - return (transporter.requestsCache - /** - * Finally, if there is no request in progress with the same key, - * this `createRetryableRequest()` will actually trigger the - * retryable request. - */ - .set(key, createRetryableRequest()) - .then(response => Promise.all([transporter.requestsCache.delete(key), response]), err => Promise.all([transporter.requestsCache.delete(key), Promise.reject(err)])) - .then(([_, response]) => response)); - }); - }, { - /** - * Of course, once we get this response back from the server, we - * tell response cache to actually store the received response - * to be used later. - */ - miss: response => transporter.responsesCache.set(key, response), - }); - }, - write(request, requestOptions) { - /** - * On write requests, no cache mechanisms are applied, and we - * proxy the request immediately to the requester. - */ - return retryableRequest(transporter, transporter.hosts.filter(host => (host.accept & CallEnum.Write) !== 0), request, createMappedRequestOptions(requestOptions, transporter.timeouts.write)); - }, - }; - return transporter; -} - -function createUserAgent(version) { - const userAgent = { - value: `Algolia for JavaScript (${version})`, - add(options) { - const addedUserAgent = `; ${options.segment}${options.version !== undefined ? ` (${options.version})` : ''}`; - if (userAgent.value.indexOf(addedUserAgent) === -1) { - // eslint-disable-next-line functional/immutable-data - userAgent.value = `${userAgent.value}${addedUserAgent}`; - } - return userAgent; - }, - }; - return userAgent; -} - -function deserializeSuccess(response) { - // eslint-disable-next-line functional/no-try-statement - try { - return JSON.parse(response.content); - } - catch (e) { - throw createDeserializationError(e.message, response); - } -} -function deserializeFailure({ content, status }, stackFrame) { - // eslint-disable-next-line functional/no-let - let message = content; - // eslint-disable-next-line functional/no-try-statement - try { - message = JSON.parse(content).message; - } - catch (e) { - // .. - } - return createApiError(message, status, stackFrame); -} - -// eslint-disable-next-line functional/prefer-readonly-type -function encode(format, ...args) { - // eslint-disable-next-line functional/no-let - let i = 0; - return format.replace(/%s/g, () => encodeURIComponent(args[i++])); -} - -function serializeUrl(host, path, queryParameters) { - const queryParametersAsString = serializeQueryParameters(queryParameters); - // eslint-disable-next-line functional/no-let - let url = `${host.protocol}://${host.url}/${path.charAt(0) === '/' ? path.substr(1) : path}`; - if (queryParametersAsString.length) { - url += `?${queryParametersAsString}`; - } - return url; -} -function serializeQueryParameters(parameters) { - const isObjectOrArray = (value) => Object.prototype.toString.call(value) === '[object Object]' || - Object.prototype.toString.call(value) === '[object Array]'; - return Object.keys(parameters) - .map(key => encode('%s=%s', key, isObjectOrArray(parameters[key]) ? JSON.stringify(parameters[key]) : parameters[key])) - .join('&'); -} -function serializeData(request, requestOptions) { - if (request.method === MethodEnum.Get || - (request.data === undefined && requestOptions.data === undefined)) { - return undefined; - } - const data = Array.isArray(request.data) - ? request.data - : { ...request.data, ...requestOptions.data }; - return JSON.stringify(data); -} -function serializeHeaders(transporter, requestOptions) { - const headers = { - ...transporter.headers, - ...requestOptions.headers, - }; - const serializedHeaders = {}; - Object.keys(headers).forEach(header => { - const value = headers[header]; - // @ts-ignore - // eslint-disable-next-line functional/immutable-data - serializedHeaders[header.toLowerCase()] = value; - }); - return serializedHeaders; -} - -function stackTraceWithoutCredentials(stackTrace) { - return stackTrace.map(stackFrame => stackFrameWithoutCredentials(stackFrame)); -} -function stackFrameWithoutCredentials(stackFrame) { - const modifiedHeaders = stackFrame.request.headers['x-algolia-api-key'] - ? { 'x-algolia-api-key': '*****' } - : {}; - return { - ...stackFrame, - request: { - ...stackFrame.request, - headers: { - ...stackFrame.request.headers, - ...modifiedHeaders, - }, - }, - }; -} - -function createApiError(message, status, transporterStackTrace) { - return { - name: 'ApiError', - message, - status, - transporterStackTrace, - }; -} - -function createDeserializationError(message, response) { - return { - name: 'DeserializationError', - message, - response, - }; -} - -function createRetryError(transporterStackTrace) { - return { - name: 'RetryError', - message: 'Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.', - transporterStackTrace, - }; -} - -export { CallEnum, HostStatusEnum, createApiError, createDeserializationError, createMappedRequestOptions, createRetryError, createStatefulHost, createStatelessHost, createTransporter, createUserAgent, deserializeFailure, deserializeSuccess, isStatefulHostTimeouted, isStatefulHostUp, serializeData, serializeHeaders, serializeQueryParameters, serializeUrl, stackFrameWithoutCredentials, stackTraceWithoutCredentials }; diff --git a/node_modules/@algolia/transporter/index.js b/node_modules/@algolia/transporter/index.js deleted file mode 100644 index e254eb1..0000000 --- a/node_modules/@algolia/transporter/index.js +++ /dev/null @@ -1,2 +0,0 @@ -// eslint-disable-next-line functional/immutable-data, import/no-commonjs -module.exports = require('./dist/transporter.cjs.js'); diff --git a/node_modules/@algolia/transporter/package.json b/node_modules/@algolia/transporter/package.json deleted file mode 100644 index 61df892..0000000 --- a/node_modules/@algolia/transporter/package.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "@algolia/transporter", - "version": "4.22.0", - "private": false, - "description": "Promise-based transporter layer with embedded retry strategy.", - "repository": { - "type": "git", - "url": "git://github.com/algolia/algoliasearch-client-javascript.git" - }, - "license": "MIT", - "sideEffects": false, - "main": "index.js", - "module": "dist/transporter.esm.js", - "types": "dist/transporter.d.ts", - "files": [ - "index.js", - "dist" - ], - "dependencies": { - "@algolia/cache-common": "4.22.0", - "@algolia/logger-common": "4.22.0", - "@algolia/requester-common": "4.22.0" - } -} diff --git a/node_modules/@esbuild/win32-x64/package.json b/node_modules/@esbuild/win32-x64/package.json index e4aa5d8..94abf8c 100644 --- a/node_modules/@esbuild/win32-x64/package.json +++ b/node_modules/@esbuild/win32-x64/package.json @@ -1,8 +1,11 @@ { "name": "@esbuild/win32-x64", - "version": "0.19.12", + "version": "0.21.5", "description": "The Windows 64-bit binary for esbuild, a JavaScript bundler.", - "repository": "https://github.com/evanw/esbuild", + "repository": { + "type": "git", + "url": "git+https://github.com/evanw/esbuild.git" + }, "license": "MIT", "preferUnplugged": true, "engines": { diff --git a/node_modules/@rollup/rollup-win32-x64-msvc/package.json b/node_modules/@rollup/rollup-win32-x64-msvc/package.json index fe06805..44dade6 100644 --- a/node_modules/@rollup/rollup-win32-x64-msvc/package.json +++ b/node_modules/@rollup/rollup-win32-x64-msvc/package.json @@ -1,6 +1,6 @@ { "name": "@rollup/rollup-win32-x64-msvc", - "version": "4.9.6", + "version": "4.57.1", "os": [ "win32" ], @@ -14,6 +14,9 @@ "author": "Lukas Taegert-Atkinson", "homepage": "https://rollupjs.org/", "license": "MIT", - "repository": "rollup/rollup", + "repository": { + "type": "git", + "url": "git+https://github.com/rollup/rollup.git" + }, "main": "./rollup.win32-x64-msvc.node" } \ No newline at end of file diff --git a/node_modules/@rollup/rollup-win32-x64-msvc/rollup.win32-x64-msvc.node b/node_modules/@rollup/rollup-win32-x64-msvc/rollup.win32-x64-msvc.node index fa260d87c05ef256356085ec9d8411de425acd9a..7d1376f23d94f272ca490e45a34d68f5b3fad69c 100644 GIT binary patch literal 2527232 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�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

KkOR$46h;Cq== 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⪻Bj_^Iy49?mv2D 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 Evfg6iVPyI5(qW`w=&!+u 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%0D+@dF{Z3e1}d%~6Mi&B;a0 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

umdBT4x5BcB6F$J~4lohmLf^ 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
=Flu0i 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%0Db2zQI!$$H4pWZnZ;3IL6yI922Tn=1C+7 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%0A|6>811(W55c4Q0bg3v91)HdHy@W9HL5)IH!+ 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 literal 3395072 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ƌ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ℑ-rz_E`KmEr>rS1n_4FC^3wMl8;JW=@?a@ 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%0D*X(lL~+7?kN4N2mk;2`(7`5_)%=E#_c@B`tp8f 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 cEM$)~nw{gW#Vn3#9 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%0AUE@T- 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%0A~5%M&N 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

{vRaF;_Im|84b&cB@5Zm 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 ! zy)UA9-z<*|lPw7;wpl`&;M=Qs=Zu&|le+0)elLyQOV3I)uLv!ctTlNV_I%fBr(UZL z_A@7!mH3FXdlfGA)74f@=bzYtMY=a9>q*_50AU`ooVe zTo(w{@X+`KrTs_=IUT!xwd3d#;80}u!IeAJA2y$s+q`0V&8ZVQ@0K^)nM(Qi{r5w9fue%O^K>WPXOFRdz47M#9Ijl)W0^eTuD8FKhlX}8 z6nuDZMYPe8O2YRtahsI1v!sM*=X3iu2a-;lU2bFV;9F+nbosf0@`3ytA~A)_Mia!| zZZ`m!?AFrrMq>%J?;aj!sAGxs^{BpjB0WUb zcL9t3st@c7ZtK1CXSjO%smuDf#dlMs)^GMa#6Y*=GSA9^MZuAmKlXp7Q(>ZS@H&#% zyX8>UdwKVz4f-Z=qo;P-D#mZrKP)2FIpH~YVXNth((mp8b1Pk>A6L=8bF@SIOEpWA zq~j$o`4xFBVQ{Luw|`ydSop*82d7ixF2`4WxPHM~AT%u@XVrd<{32;-`SQ;A7s)@0 z?g}nlV9Z+8@odY!IjkZPd#?^>`UxdTaakvw=`icwTsqv(XmawL(wx36Pc6t9Upi!a zZ~4-n$t+e}l+e0KT#ZRsu@>!TF^m+hVsWnV*%20XDMQoj5!1Q0CwHo4na$r1AC5L0 z-gP?Z29x9G>IGs82UbYfdgqyc{K8WCaq*c#KPg68U!(h7rDg1{XFdzwHVBV>nsX=G zY~Vm+W@3kh#*rfwp5};CSyC6P7(a0KuvUmbeG zGsda8|Cmxgi{4ka*XC^@29guR-fLQUcMp&192ej7aNR&S&B;%k+;w5WmU>=~^w%xh zr(=*-P#ETwz{?VY_Uo+L)-`yg-I3Ve)WGef+&_@Nr@tbu_KK{kmhgL;lNXW;9(_`p z(>}V5an0+~F?%{MS=~9S)p6(ZlUw4O_Dh!7_PS3V-_NOi;eKsOdWW*N%E4^WYnPar zxFqBzCim+b?Yg)pPf3c6oF+wrrc}yF3yWTo&ZOd=M5ko6?>9)GAl??#)F> z!X+)>!=0k1^hDbvLwVhK=f}~WjM^(7)*f&-7k?GJW@Y@rlXShg`k@#eHJ;kd`RueyL zxDSr+&a}Necvy4z_M)ntMK;UBFFIE&58l2o^@Z&+g}pX)t50eyh&d#5wwlk6I5ALo z?gZLzeRjJpykPETLkIrgkUc5chi=WE*Pn2AoK@MLXU@R5am6-QQMdlcug$R|e0KTa z!aai8ZzC6VRYbSimZ~t{QQXh9`@q@C{`2=4hthYkYW+Arx3KKln>^9DTb=~B=H{B0 zM;~?_?mU?1R-@}k(8+$Zw^Pz*lWcWkC)(c?@ZB9a+Ba^y%02bK=Zz6hP9%6*1m~!p zkt1&28lJv?H*Kn}I-pRlOUkJ}?I6vn7O$lb=&)A*=MspYPNW19=h?gK|n=1(lV z8$ptj5%&c>*?SGhV zx7S;){`EmuZqLF*>+ut3d<0F1H@00r%9ZJVwy&~5h&lVXPWjR0S06U)6P9!vb6S0i zw$+(fKc@e!{a}dpF_9K~UFR2_;mY{_b+_(ko^NyQ(yq&F?b5rH{4wM3dH!u1{Z?++ z*zbM&)A1v^$6E$v)9LdR0~RsWEQzhLiiueqHrZfNW3Fh@uhG*l{sf7_DKqwwUN;8L_-E*3Im z-`F~=+JL z>U6B4O~t;rty%m=u#~VO+MnMW?WKHJ$$7_Rmo1|w9^}UzQKY3gK51Y2zQ*ig9FtZ4 zx9>4DF%h3TT;;Nz@^8DfZu>4-@BA|0p5x^l&4L$^F+TH0?M^fq>4v>$PqgAA=P|51m@Oas7j3+Z*||BuvC{6mR9ojEhXkGSe)5v)uk6&-!_-hWVXU%-MJB z9AknK+KV&eY+KX%R^QU{Uy*ZPhT)Ecb!g1w!ItNX3{NpQZ)3V5D{bQvQLfu|j^DIV zUGVl`XrQO2X!l{06Cw^(w@E8MFW&7GcR1KNkO}Cz7T8v}w;}kwjXS2VV+IMaAx#wq$OWq4>w%i4S@x z>gGWp)fiPHycEeTt=+(+(Qv$>RUC%mO>&{aEePV|;5 z>1~H!i55pKvC&@j*z`k#0-^79w|L&YC;=^aM|A73;kh%TGO-}rXSE4gdvO9|OIlfD4?dtk4q%BpqyK6~`_2~AI zq&IehGWRcqecre7dGgU_+j&dIf~uq6K2lneG)JwDct%u1+0yfM_CBr4=hAn7s5`o- zss4@rv!05)xtxxlQ!iZ|+pNY_B>mzv_fwwA^OxTamw#FHaBk2#&PNCNU0=QzD{)!2 z(O8H(1=k;0)?Z8LU_W+p{;< zUU3SJ?k@_cdbjKCu+ibHz^8{hM=q@6^q{zj4cJxgwrH&s_}D3HRll;%!+lAhO+ZZG znj`xrc-3wS=<3XGd1vloAyIQ?JdNq=i9`2$VsL#G)hi|yhNA{A1M=*fQ|nhJ#8f0H z?W@}BwTAn1)b_FyMJ^O2ErkMKhLbh{Cy$Zi9@YH#!LiMXrEynqyaDk$Z=AA&L!WFA zL(N;uzEquWX?b)i6%s4BSIK7Oo%*&`J>vciy3?|8b2p4$U-d?lch^w#g!tR1fo5q( zKjZo_Rqs1n?>VllyKujPYfvloPX5AlM*6RbilPlY$$c%=la~Gw#)hFEzCSp|`TYaA zEput^(7@hzC2V;=9Jx^aCBkm6+tpl|L0Ng*fgM?%K|}l%+ACH)O@1c4zRW!5TK@az z-4=#|JXO5i-ef1UPlsIR&hKf@O6}zrY5ZD6IveVES7|6ta`QoX9+783bDCL@{!i69 zN!~;0QS5IVue9;ZlX&gnJ#gg9WEa=|<40~34Si0ma~_#Lu9bNELd^H_RIk8u=eM8B z9oxU8Cae3h%XY(i&tE*XzxUWzpeb zWeE@JubC%uiAW-9OYoCwPD9{2B!Rl%N9pYI%khAY&rYv8slwCT)*k!FwOJB z7ZSd?ZU3ONLQD4Bt75%}VWi^fs{_i?F?q)_*i8##S0}G-Q!I%6;|j$_ky+GhX^Z!i)8g_?v<2yLPA8ow)R5px+=#xyYgKm{sui zQJS*dbIRTe&@?^ej>>QSc9FKLa9;Mp%xg84k4{=LZa<};-sWIDY`E0t?dsEqW98o5 zj@b27ZXKI;j=x_Lt}kYJ$&1tCu4&Wxg`#FF0j_)H_^R8HFB;h7G;I4kYuup<0&H6fyE##_lvKZwI zOF((n*JfNF&ST}qM2>Ezv1`{31y=4$c}vG}ehH5VYx$*1>Z?A5)*QID%5SsG$A)uK z`6hzHZT)4R1X-2KOIOTSvV2bRW|ew%wkxsT`ANe92dh2F5{!0<93?9@>|Awxy-II! zc>k(1XV*S%7|z%bBd0GekhVzZ=`%{wn74sq_ZZT@o3s^jX*!W4bmK|upt9WFVl4%6 z&7Fn;uR;&T7sig2v~yN_-Vu4svGHA1@;l4wJ8^ww*D`sG`qEDKsh(c+E+Svj>4H&v znuHdI%kHFe-I=W=YFYExBl?pPR?hu8ICv_iSdwmudyCaPnWPOBh41#|w9COF>2G^6MgE{eFY)DW zSA`od486S?UR|zIS0wM9o299~x>!OYRLHwv&kog6K_+&V%}4r+Y{YL`4LrNqA!c%5 z-}0KbslmaUtmnKF-fb=aBvj{-#m-h-f3ok=y|(+TJQk2-&CjVpUlDvxcC;#zaO;Dr^K+iP z4U$%a+nxkjWQiQ1+kE>y-?uLh-r@S8yFOpe6|NrHeVUw7zQbgG{~IOmd$0QxWf<*6 z4kZm9I(#ov&q-csQq8z5M_H*bw6Z?_;rOK=wagp4%&ylar@SdENCTGG!eH{{+P)DPy}? z+!enylViCs;M6tHVu8c!X_)THEuo}o_=f!D zljnY7Z7`!_eeo0bCeTUT-18G-`ovQ>aw~tu!uH2g_&~9*QdnI46fRrOqQ&Q4Fom-R z?lcQsdw_6O>>O?KTDw?;8&A(WaOt$)X@u1{Nh6E)H#H-S^p|n0-NSlGxt(!;HjXV` zn7h&4z4h@Hj&oAQqYSjS`(etmz+Z00MSq$6k{cP=bJ8&VYg1*Oc`7$BEalxG)LFmo zW$YIWE8X10?X8x|%6pWGwIei;zBCncWv(VYT~#f3t!9{tAI8le+0A~@B0VG(;z<2D zyo&EFUgc=bf$E5aESnDg?+bbalh(|84>40wi+!z1%e~6`Lx&*lxt+bC1Q-J@YAC7z zQ2T_Y$%lD2^%~Arr1k)OkN)m)A3t0_8{m@?gy`|5L}{SLsuLk|&Og<3+rzbn!=IiI zw7DHZp0jCi-j)0$6Y_XBq0w`~gJt(=E5hJV`C*PC!d8Q=bnNevkUn_i<40)*2XX>* zhPS+Tbw0Jr!YD36=1H#6T5t1QZ4I_O$qqM%@&gCbDU7dLELOMN^J&o;eO)#(nW;Yz z#j`&uI!7#FE60biD>qZz#oIrMonrTtnP(|CdPcRH=KVgucTETMLo##6MvgIg)-Uj9 z?fFsGW@U6w`6CU|KR-Z8meqA?Cq62S%orLLzxjFRrHWQHGu^#yov|_{@5j!+$fLw3 zbhd`>Vp|G!DUK<;-<>&PbH}+Yw`I~;H0;{M0(rjKY*2k@NBSG@=_Q%>)$pIH6&@J0)I|F3&sPsR=NIOgjtNglIv8wD z_8baYS#Y~|zjC+gVELoqOZqZANmk!qUC_60EO0S>@RqMUbxZ!`r;a9SBJXNByARw| z{9)Kr~_hat!+7q96D>#OXi*A0Cn{!2OkBVNHx01(l-_)<$ zR6FD^71LR#GDg&2GoBcI62E`z+jfS&ZMQZDEq(U=NpD$t@o?O!Ed!d>Qdu6Cxh2G} zwioBKHM_IFQ)0R<^QdU?S@y@R2Z;3taZD&EMbLjq}@laUqTAKp2^|VZ-LLk!AE76>X!|SU*xt3jGlLEKBU>In7eC zvxjNpmNuWmytn#R%)dKN?J}){TC<69nC*nbO^SBbsv^2=-B+9CR`X|s9M_U^VSn$0 z><5x#)+p87JFQNjupbVk1bq&7dA+k=fB$WgLvOX`75DU}`Q|OWd((IJhP?7L7`k?4 zXRcWN;{mM`C+8fy!B=!)Xg=4wPv(6sH+uRb)dx-PrSO;p*xvt;T`ej_zFlCiUw!0R zQmKLOp2Z6TzG}<~p8Kxmu##Xqv)pH7udwd8ga5*X8g}wsCtE`6JIlReLfOtL?DgB4 zzPH|HB(2-XC57|&gb!=KmdeqKX)lwCH`gTS)JPh=<-9?7z4OTV_2sht2m1$XyR5!k zJ+@i%<-ltdw{kaW1@Dn`Td|FCdxHj}39X&sHSt@nmiB#cE9EXc70F=txW5m#k4Q(R_I=i1gi=2pHPxWzgoh%>+Ey72CtS^v<8!2SC*t(ZrAUXVV&E+#Vxicm?Ou&9$$EZHkDIY|KqJWEme^`CPKec`+YN z)|#g8Uq%~mDg<@}?tEfKyw06@V*KdyXW!qtNr|k@CN6(u*icEFYyG_|>OAE%v+lLM zk4G2k3KneNATH{_Xy{?L{_Rm)kF$M=VZlpP5{}d>$Ys}+#t6Hddt^z7#qB?i=1A1o z?{mAVo*H$4Y~=Gt9l&ppK3 zeN*tA-T{TD?j$2Ap4f{1qM}zB=)c>RYZSO zcK?_+e@?r5Xt8(Fq>IEEeVU>B3p?2KQra1nL`6deJju&rDj9o?Yu@Nbyv==(f8!EO zPA;?4ac>fzL-qkCUKMxRyPW&B*2m{RRd(6X<0UR89+_}N_KCHz@wM+~UodzTEY9+- zso*L+_VgpNr@2|&lbjrV$Zy|BwOU2K?)X=J(JEDm(5CjVi?IO(9>*tqt>(~$ES_X< zf3={6H@3dY#C_f_-p@bo@7p+ZO@K1uVSmlR)%N^Onic77;R;vM$Xh!mv_chzXyYbL zY$pb5#~-(hbJ|Q4#=2dxm#-=uT+tHq)oO87%6Z&=Cx-lSThNB&=P!3_ss@pRtGd4q z9_8NhHJShYKBN1Wc>3%s3yJIQs%#zPsk|dzR&-G90!y7ur&Dnu|C9pQ zv~BB?GhRA`7$1MlTAB5I*Uk+CJFdN-=qu4lVhoI}<=t;PNBF{qgOZ%~~s@{vUU9&20nRhPECSkPxePr4(USK?X9bu>?K-I<&W2C2zW zt`52<$&qWbWrX6y>B1+E7RKu`*$=nsPaKevF<5^^C#As3B&e8?Pi^_fU_Lp8L*oy6 zHyu2ZaBR131+)Bi`(xWb9O|LQH*c%(wNkGe_r6ye2o&yN+KAgj z8E7tAf5N(CPr9>KZahij=<2wzFR!eNl_NA-_7_MsU45R%S0?1SJ~orJ{?mhx--p}Q z3TL0x_o3*$wF|pmaUylWg>yMQCN7zC$o{DpDTbE^MPIOI+H1z!g|mGVpIra`U7pQ- zhKpe_}Cc~8j{V)2+%+09+;9=>A?_bsbxiS5cuyN+L2NMo=uCpvH$KiQDxYJaTb zSzW#Wvr`9%_Fvm+h8H3GvJsuK(L~yQ#pcwdjk+|_lUppagSXJR?bKOGs`1DU&y0Hz z+t=Vk;Jk0VA5ZNMCwwiswmgU9-r=zp&mWe{$KH>w`=n>abG`CQ4E+n-p3TI6@7AST1L_~; z_t~BOAXK}_RNn5Yz?vX7UKfAi!IJ}lFT?$YUpR5U-Mg~k{=;3#`7*@@>zbbL>5^|& zVKB+NbV!-MU1nv9PkL3|jd)@1UKP6McghpT8?)x5KYe(P<={zi7VSf6$3+_LB6v(T zn_XO8#CET|mUaQMpA&h+8S7H2FE6<>@I}FvoW$0igw`MZ?>3d#bFG_`#D31mK{kG6 z{(>NZ;AF4#4;Ihog^o&@^C;X`xTW!WGSzaAU*XXXf3KS8Z4<1|u4ue1X0;)5nKgJj zZy4uzFvKeM*u0Qv-8pKc5w@xCb#UIC_$@3^%lgNQDac-r-7H%tPgNjddzSFBd;_ir z7Fo$P2`y>1D=ZnxwH#%$3sp16%)OwWHiZYff_#Q4^t@*{2^ zmv+8D_JQY4?H~?mr}3TM)62jluajXOH|UrmC7NVja*}CJ_`&P17A?M1^)dIuN!zA9 z{p}Y&KRp-Z=5dCrl)``I(Wl&l>C!{_o!LIOi?yEn-Z{(l<;thU4{TYOzw;+0@0om- z{AuXyXT~AZ)!&|X94{AT(Hu)j`sy;5>r9OaCvK1UL8Vskp`cF&uTA28hnH6G25$I> zC6F6qWo^b@9rFr0RCcVp?6byqrBKiEr_piT71`HB#Fy^7tTmTD=a58iTer#5)9?|y)r^PXtB+UpF}OZ+uKUxqn;P!KzQjF}$H$bVC%hngWlCDHr$)OSV5`e_%Di@q>$481rDC!~nzT zUgtUXw@wsln<&w(P##&;{A#;h*|vtZd(T$VH|U*v5+(G^FI#Yog+4hct|Ixl6mH+S zFh+P@*~jg-19p6N7Hxi5H+;%jl&m29z2(_QjXa{s$Nqg9ZmR0emx;Ie^{e%w`0!@)IV897j+$`y{LPu z=RoysewMRuo%o(q>Ny=&7Y+8*ME0Z))xucZcy6%0iYFTEAbTFTA-UHzQf6Y&lRll) zXJ2E>z6{7kI)3?jZmmmewbhE;u0Rjftg*nb&F6PI+bny{nAqDT;j(QN>r;o#mpzHk zjL$kfk<~mZ*nDs_*y{$-YSXg`uCP1W**YOr(#}F%7cM1aurx(9()ATcZ96+1$Gf}_N(sPDM}hJ_TM*XJZFh$e$a-=E9*YG zZ`!BexoO_Fg{|C*lYag3F@Y8K*E;sw+r|{_oV;Q6U9oY&XQg|eg5+~-Hb+$CZ(mvE zcV6rI5+1d?@0UCDviQ5##F??;Ba)~}tXyxAs8)JduSGJRLO_Ojf}`iq{8 zdE-Am$ryDcTGZ{2U*^1PeC?$l!(YxEbQM61{HgEe!F8U(8TtV#&WA=O5=Myw)v4NoZnkgW8MhlRaL#Q-oL<+{=xT{ z?UJOI7JVM1#h>IW8;o|g-sKD0+j>w3Y`TaneP$|R6eYY?-l*KNZ>*$Si?_2UE!(;0 z>*LqC5}_T>IR$KyJ@BfKcX{uaIoDJDqZvXsBbbLkWbcFY8qwX68S_`T0hqvA2ZTen zg2ujh9I%!#t6ro(3l@)>&a@b_rDMU0hxZFy1Khm<2PmQD6gTwelqW-~(Tzi}zeA88 z)!Ux~vcQ~;FP9?5mp}{7<)R}I4$?ak?0K^YJp3e4Hj<<0kZhLB;w24g>N%k(4A`Y^uf_uJIGI z%($FwNoXNkQSN735uS)y6FR$WN?(!J_jilg-RsS^BM}DehKUgy2>!sMlpJuGL<9aK zu3}v>my1XNddD<0L^=uLe4&l3YRt?;0pQ{Zm`Kpe&}uL(79f&TKm_2Aib%`ILL)*{ zgVBL!B4#2BjUbVRMitmn0B2ORw8Z(q4HGNGz#$VIaSjb1u(SZ70dL?pik5|DK2aUS zWdkv#0DHidmL6z2Gt#h9xxy@gL}?%vrcnj?L#c=mR{`%yfH`pOw3bN2$j0OZ{C%-9 z8q){?eng@Q2Xp~N&q|bJCc4rAms2z}H1lZaXu0Uv!JiC7PT+QoKr2EsAN;2c9Bl!Y zW30?Xpk+-ArV%HG0Ka0)Lz>4{RzY&0ZLNFwbD z@DN0#Rb!%|NuwpQ14mpSL0XyyZ33}gj6j=6bR-cNJb;HQA`6Mef(Gd0gS^iJKCF(= z2=cHK7c$Lbm8V?-%0@%8h^Pl@o`!}EluLoQ6mSLp*g&}#12D$;EuDsxJMaf+;y1SSmr&GGGzs<_o35>~eui340&0NSN$_ z;pyQ&;9|pWRNZj+C)5##7aevZoZW`mZE-!t^uM`|V|O9^o_`F(et`~D0fFp}QG9ei ztBmEt1?Z^I z{&7PnB&rk4U|&j@KgAh@Cjqy)!Bii(RupGTY65zG{^7dNQ>+@vV~rIF(1Qa!g2I7O zBH4!mogq{0i-A{G%OGzfiZ2#PjkF#Z!1;v+k^;klV`QJ7hRslw9tPI8)G^mr!)=pE zKEd8W9>8Rg6y)IpQ_{1r0c8mU{yDupyeQt`C^#^f3knFvTrB@m(Df82l3qZ#Kd?~L zu`q`95bR410ck<=GCkl06k7JdK=7$EHK07GFf6z0peImZW=YlZht*0gBt?z1E^Iw0 zU?9oT+=v7W-GV^|@f!Z=an!{ew4S_YAkLMf=jY?&=WAj$Ey5qNf+9`J4ouk3$I!#u z+Y0!L#&d(h86bYZtQ0uFg=Kf~2moyc?CqyoTNW6PQb_JWLH>bi3JNZM&Vj%JLt(0` zNce)BdIri-0_Cv6$l)qp3%u^(<#fOxp%>ht|BruSLcrDk!XV%i z7!D*7^= z&hYwUxW7-9(24U?!`KmwC_!dap|%Q09&gGoX~Q5(^04yGn>D-*HX{9-b?J!nHTcQb zBEZjC$HgUp5{SewcvgvrL*)ng{XN{jQ+}KuD!*X>g@V`n&q{~o&d18lgXiz}aDSJm zEzU;;=Mw-e`@v`k?CPPbY23R9a8)1Z0o|s+v6LDz3y&v($8)ASk%w=YGw{a(toq3$ zJ@BFe<7qd{H2~Fm9QcjF;~_iozl%o-^#J}6pc{PZ7zv!~d*kVH6=3zCieos8lAM97 zY~YQ+NDmmVlXLvvqFSRdV_s#+A?ueg%Gjsl` zEkQ$_zs{N-evZVyjQ_9r|1Y2a=f?kk)!(q`lmj{j1oSl6G+f14yKTqY3BCu?;Ae?W z3&En1z~mc_TG)W}hj=l727NoM2lH+U$!v|jjj4fyrGb&Lm9>GTgPxA5sjiORYWO~4 zCzasr9q?R*DB`SV=4U?WH1L}Qc1jSIgb5QYH`By0VMPg64j2|*+Bio2Q4fc7J%Le0z;qk>F09X19{#GDAC>K9jfUhOLDY75N8LP6!8TomJ zV>Dm=`68nRLRIcaO<$lCD{OTd>B z3LJ`v5ir^8;O30Ch~AW}Hbj1<{$(e@;uz`SEU0JR0BMJv&4Wgr*}43dvb8((Ar?q> zrTl#!Y^cKdXYT(eJbpGB@EVI9x&po~shJ^xuVH6z3fUKUv~lqH-&=~*fGzlj^KW|4QcS*4E!8P?Bkum>Ac%4xfFs3EyN*%2J?}Qk2h73hj+gYst zLwk96Ed~7#{6F>mGSeTI|08UCAhlz6G``FX*NH#B`uLy2Wp&`=&69r)M|z4qCp`P- zaGm(`tmjy`|GO&uInO|j+hBbPoX6@D`FT_abqUv`pqvFCx7dOW*1B-4|1EqZ9v++G zdANqVQGy&`NEZii(2+klz$DxOyw8}EW$b(+5ChCxXE}Fgw((e$Hxci^AVgM@`H%lgd`;|FHHjDaT%6AGc`1UFb~JDZQ%8L>9E3UI}-!iRTCU zV};jp@Pj_gewH7bRsTtR{&7P6uLFXfPr^fC-HSSxo|;o_$ST~&$ud)2Odadi2$_TT6a9@w zI)u%GeVix(2Zob?NFZ7?Mm48-2vdSK-Ou+{}` zOTZQ!ULt)kkwJe?``AGweF`{;${j8fQXgWKg&wYlAF2AF|ARB&yv+R!!mzb%tnveO zz|nA_6c>EGzy=(B=IQ~?SHr6U)g%^WYTQBNB)W4|WAYrzQEUm0gywwHH8{3g%Zq*wVfO{1Tg@1J9mV{-!AKt9S}vX-`2o#)I~xVyrVc zVA+~ZA;a&`-v|!y+Z*mX0vCnTAG-JjgIbd$0FU3f{0WNZ2wL6^(R=M4#lVK=7S852@B-EGFVOsfr z5`Px>Cv93S{3QOYh@UjrNHY@oy?TBI$Dd8r(4U^5N&>sb&J?hT49-`>({P?50T)By z&Bw|=MV#I{rifUIQ&|K9eUKllo9Ps6=!Y|bKq@&9R2Z5OPzhk!_E!ST_b(wZIr%FM z#)A7wzXXK5f1PtorSJzbOy>_|$ONpNz=IX1Vo%2~+H{QP?pG3&6ew>Vc*((G5_XaL!t`UmjZi~gh@`ABh?!nl;6;4+dL92NrW{J)U#pi?6ro+w<80?Q5f ziWQYOg&=(fg*q-zCG#^RH9;yJuB62) ziinK?C?GWe>Ri|WMQy|sh)|^e)c4g1S}Cajd8}XFoOyi{3QL1 zkLL$ESqt%?U=;^={(@m#MEDsKQo&biAUNc3dda}M@8c1OwL1LT_YR=|Cw`!R1yEe5 z;Q}adE$3GnNb#3=!M>pHz#VXE46=(SSbqSGfbVkqfP+s1urYAPdKopiD=3TiwD!YJ z+lBkA7&q$SyI_kwD8LVALiVCKz?T}%a;RbOTA9`WIAtmizdyoT26TChD=5>nK(My( z5K}V*)EA~s1E!{pi>{w%1XHPC!9SQX?ciW6o78FCOe#zYZqTCEG5&d`CD^Y6+EuUv z;}aYbn8gqX%~!Gc4f12Imiz1X(tr4S0qnJbHTR|XE-ki)NX-WqKF@NdBH%X<+~Gc+ z89Y@JW}IX$2lu(*R|Y6U-~l{5`kwkf%_kE0a4Q_o-^_VoKls4>WnLH@;y?)jW0r%r zpPxSfU|Ru3of&UpdOW=Q{vt@g%98`dH-su_z+#gFTx_ED0DM6B<1?yoMcw*0S^Vn* ztUxpKB|tN+Ja}&f0ux_``*jF}z3vasfQ|`JP6@+aJ?g;uhd|V#ke#;#14V>CF~N%p z#BAW~PxKg4$Z(=)8x!nocJzP(Iv2V}UnoR8Ckv0wyfhzi$J6B@AhWeZM!4eoG_ z_CMJFf_>zGV@WUp1=<43}ps(?n;Uhr0oPVH4(5hyZD#+D0A+*gGc)N? zfClSzCcOv94YWoD9{=?v)+;J)Syq`ZHA{>PMy~P0Hz{tg&*4{BrSLT!B>%a|;ui7Y zy2@yO1O-BO#2@W90Z;x^dvsnrfa+*v28I>dISZ@#n$_7&I2*aeIe*=WWg_ug#NuOebdR5fRy?6M`(Gg~Z zFQ~{xRmb$OAq-AXx6Tbe#)WXoUQ@BjTD`dl6IL8G2tPVU2w~0`6TOQs&BYO>rg2tF z24U1c5hko!r!r5YUJv2Dck6W|g>Zmh#g^+47x|PzIxy=P|7p)oUSck z?vwht2ulwJud$*xorf@Jy(dSd*NGq;zGgBfA?u?U!i1a-ckhIyixA$TVWnRGQC1FN zkgj$&!{?<4bBi;G^sDEnBTVRixL+>bMjv52Z-q>&M}h($m1G=Ftyyk{|3TH{vb@yFWQl1ccm6#X2r{gwb`xP5eDgh z;B&q75#i;xWzIOgPzHw#<5%j#rTxnfO=12GwyHfrU#2h!W$Urg1soENUGt7#pD?L- zHiZdC6YqDqID&(Zv1>wg&)rvRhNm!rut`)mD3Jj@-w|ErDf)5+Bf^Bu6UQ%~`80(c zKJBiG5V!&kfSz_a9%n|F%xhIX|J6Pggb7Zpg0kF)SP|CS9#kn1TEd1f(A3MjP~ORo z@Qom!AD{QhaUx7uxMh4}YYG>_dE;ryrrU*h5C*w$Pdssz7vX~A{;W;j@pBO-EPfIq ztr5VF@LoE*YkjdX^AIKw`hSRY*9alZeo$qpuZZM)gb9Ph^g-cEB!q`vI;SyyjgUYX z)`I`YwuK0P$Qzgd?mDFrCVZr<`J^c(hwy`IdFwlftxFIl5Jnuu+8UN2Y;$wuvCSB* zD#Clca&!b~=eq336 z7-8q^M-Sr5i!%@gCrs)u=6aluaE}iCoD9zLGK2|+zPlb$Eb0)xDdD54rF^a#VUYH2 zNuk%z5WclM`?BQX5AP8snCu^WI`(D)Ve(s3ChxgJM6^#pAY>=2o3qg%ES9r3D}_O3 z3KQyb+Ly0cJ%yvzABhc6^_jx3>^kiSrf`&F95@M~d4D*ohyR}96ee$vW+BaSn8F0InA6@}NmE$Ilb=^s{pu73$%`E`9ht&)yoy5_t&8cV z_=_DqXV~LBg}Y*1zt(4FPGN8!v;A@57gIR9l}{%l-xAV0#yDnE{WNy!2TQyYblJr7}G!x>GIM};851mdUl z7X=>+A)GBVkeTa7D}peZUnAUAfApik;%%Y`6S5bZdRR1)5Uz_fCf*4Y6Gs@NPd!i^ zVI3doGrh83B@rfc_21Ko3tNaVS5eB_y zZuOVU6$q0T60HV zSR)L}PpJE{9%1x-gfJoMW%VWZfXxVJKl-F_IIo?IFo@h}C2C7SxQi6CamAhycZ3OI z+wYyoE%8RUZqb#y0xGfo2!qtKchZChA*_@7$(`omzA%Id@3hf%qPT2|AxtosC~4AsjVFt)Hd0<}kvr_)*8Mr6C+85wj)L zdLRQ~LY*M1JhRp*gwgyEVUYcLlXV+Q5hm9M)m|7`RE992ODFR1QPC=dbvU{2Z?V<8 ziZDo?=%=6DfN+5fcsBFxGOP?RmURx3Bn+Ht(d|2E`+n|LKl6I`_hXr zf%uKVPTzMJVd9ujqd}w47{ajp)30gkAitht`(Ik;fQiEW3bfF%r5#&0L+gHWAhU2T zFq57?3;jKy!?lN*;rjs%euK}Xe*rYHKhWX&*Pr+Zfb}DdKZF;<*OmTD)fVXP;Ti<% zEdMc9Uw$A@@Pcb_Q0HnU-5Ag$!0*44Kh&B8!m17|e;y!hczp+p@zCZ2=@p`N8Pq@T zh0;>>&$Yv_I|_%Mqx;#z4AgMw`Aj~J;aGfMiW^vxMaGcGz|L3hzq6DFmxiaBiduf_ zCs=*>QW1gR3hq+iN40+k8au|g(L5>_DlfW|@N(gbOZxC=qW?~tZUQ?V9zp0;ow+^_ z?MVKM>+ONTPQa>#YAXu*8ql4B7Bq-Ra>BIT$s{L=GdUPoaXCTLPH$*N8vqu0fo3&X z9Y}p5 zRaKQjaapeFMBW6p(gMJtkei%=IU#k&fO@d#CZOyOZC1d?&@-$*nB)0r28qM>3IZ;Ps#D z!+t>F!vU(&$tlV!s^UAEzz!1FD!TlXOPw?Fn+@`y41P1|#{dnEKd2q4=Q#rnU3h9U z)}9o1$Tji>R(`k_0WV-HPnZwxmT;ex8VMK?W8KsVn1}iKdr(|pxJo=8TAQEA2Y45t z>Xb)zV*JrQrx&2}gZM~J{3icmG5L27zt0*D$;luWZ*O_RBn3>x zZ7pQL;imzl^<3K5Z6yF3yJo+@Y-f#jqHczsP2SYTIH)f!c9uYSw|qU^gwy z3V3`V2LZiT5FcLqy0H9fV(_!M)={P$BLsLIAe;mWpL3WNa%ljFm z0q0EcUHw;S=~JA&)zoaDZY{y(6_$S)5D#86`Lcs{g7dJy;|VJXj0mn|XH-9xIDbVd z_uu(*0RB+c{4IZLppm5G?LkKJL*O-*|JnEhZ!G^7e*>Tm39}l8^Oc;Y?*skxi_JGd- zza`yReVIY#;F_7fJV+nz>CB{S13Ii@o1bntfa(=Y6xpc-0`D9it{xPu$6m$Lfpc|u z&E&Tl@Pl>xcjdD}yw%jqp=K%Y|A2Qet{$vBYSdJIPsbXhBlSN?2d~mFod1eh_}c*f zPOG?PvT=yh>)-=6z{4pR___iiK^^sD>A|@lyk@3n3i!hD3B2bdFG{!^ zRhyoKtSF#8{y(P?hV!3o{4fFhc>w?4`ss|0`55N|+YVkc^BD#B{LOp{n@7R=rcTMJ z^wR-~5~QumHxsYHC=`z$~7{ z`OYSPEO5T`Anb2_X2$oIRge!5ZtKApIrvr_!ty)YIC2W`h3`KQV^C!M)*kHO#ro6t zqa03$eBn0`%r}(Da9#uJ2F^pE?1%63Qt(>_esHXT<1c(C;JgrilQDuHyngG~IDc;N z48AA4;0M1~=Yk&}_`$Ugm~Z%v1?wBi9yo7;?+FR~#K2D+{Gg1K1V1Rd;rk5Vci4}m z!H)_2U|)l}JTucD#?yy$dN%N52S0et4Cl)5=lUs_g+31Gu%2e}ffezmdS(LjKZWO* zCA==6!@8fzf6pv@j?cp9!Yp*C2=J$TuAYSsHzr|tBMN+fehN@%90|NZlAQcpz^oW( z^?ktlDf)(+nSW2f2e#Erdg?6crq4nz0Q5hNvlf8)pUMRlasEVi0Q5h#i|Z`mBW9sT z<8-Wk6o66PKUULk<&OpNrTphGz`lm8n)hjL>ky>FKA zP_gt+{l#P!y4fsrs9^dhKId_|g9GNZ#fEKTu|ZWMcuq(GkG1>2MZ{xO42 z0wn4fHiIq==rGRA@KBcii4NsDl*co}!!)6M{$KBxz?FQk7+U!mE7vNR7PvZre1>U& zB~xI40&KmhOS@DHK?jPD2X$}s|FL%_@Nrh<{(lQJU;zo6;sOkdBtRR|h3-qz4XRy2 zo3L5vOp{4Fkj{im(uGBWh#)G|^`aLwUKA0x0D^#`5!u`@h%9>)ZZv=6&9?ug`hTbIuWahy2C6lkq_wDa!jH3eO<>fHfTPE^1JFR44xg?%o7d+-=~j&{Bt+ z)t-!r?g`vAK@@l0vVpH8!2VI(wWvGUvsB_N`i;7ai|3i@PV&*txhu`c#IwHqg>P_A z5Z^Y4mOtiR>?PG*TskxA&gD;u!)w%?@e5(Q$f`S+KPB!4M{y^WLgMN6bm@71yheNd z&8IIeo}1O3}+U+=UIvV_7;`iWE5aMqz)9`WETL>f}8$&mxy4pBUI59gBJ*(jfuP4vzpY!K`T}Im86Y`tK`hiZPf8X~5Luw`-_U{dC-c0Jd+3(Z$$?2F7m%BDHrgrt3gOn;;+r4q5}mqVXz!R7%CM|gU9b|Bp@sp0s1CIu;Ju08f2 z9)WV5`PH`5w2-YcU-0!y>Zv@}18Fb+aAV+tmO1O+K9Z&EDL3>!(fuV?rC-^s?(ZWLkmC%=zvHwnJ(uPBSgf4uf z^r!NK-#-HF#4_}^LK|O({x)cDC_}$o>ARvHZLBXeKkBvLcQ50;Jd?nIAf!tkl%pRX zLq8L`^pnYUk<~2f>f+Ex4%BB(+|h>Gl9MjFvxC!aMN+29sf4$T2$e&im?kE1AI9TN z(1b4z=~Ax3lXUiEx5)T#K|L=#p*=Y_ROB`xeIj(>^F#U+=qEuJMIyQHz#myRGXWpV ziMt$_#&M5&uoRtr8|UuR-_M*WM}4i46L@NmP0UFoHl@%Yu|sk>m~MRvjlGEp4y5Yx z$1%H~`NSstOtj}X!>MnKFBg#^$@4>f-^0H~KhbxYx5%?y-$kAzPneF?q(jwy1MNwT#w@S&6nS*+k-a z%2tm4q~N6J6B4_T{{CQhFDE%N(VneMOqiRH;=Uk}xTsz@(~Xdft z>U&#;gWkH@yc*bua8^-2WWHVSVA1CFs50UYL>`LEJyze%B)i=cn)cn?39llLnf5)- zoqZ=-?y+|>Lw6RA(c|oyfA8GQx946p-=^kmYF?q{Eoz#*kLmk|)%<+$eXG8ILd_4V zd83+lsA>M0`EI3uT+Qjqhpm5Mcs$>y-#=yk==V7Osc?UV-o;@zSIHrItqcPl?vk9M zUZ3$*W^Pq}D$f6Yy*Fp)wH!_y?CO?oFS`znO4u#OYh|*WC|{gqMD=?PA17tp6a2H| zu{O6kEoz;&YxwJZ^^6)ZWgHCY8=)NyxVA;EL}9Gad90lu45d9InrjJcp_jdvPuEfI z4Sn5y|K6(aa_)tU4@Lhtv?#|hAdFKb-b8)skBl+$g#N4@;g7{jCb|+&uePYsihiU1 z`CfOVe>wa!nUsV#n*MI|NuRD2VwvYhRh|zF>9^2fIGI#nU+71O!+`!NrT@e8B9Q~G z7TsP7o4Xyd$WF4TA##wCgc|KT&c|QMT%Lhf`1fW0HTnwXD?s(`wQinm^S0fY5DQ<_ z`*uH1v36!={U<%$<~!BupM6i%4?nNi=w_OpGe?ShT^Bv&2|g&@(O$=iRKitoydXRc zdg8Tm1RbYC9{cMnef))=ljo;&pc2nMz5gbRNAK(RbmpZti=hlY=ObKqm%49j~O@s#%E)i51jYpT=eUzh0Ls=}>k=X0_O-#En8 zontg}CX5T0HFU!o>V-^tjRu!vv@?9VV_Ll38npUpY#j+X3r#Mzfpz8<89hl%#>y}6 zUE}ga=0@_|&%h*Y*&XSW&^slJX=P(ThM-&Jek9jDc#&_e)y1eSv1xsVKEo+QcjdB~ z^XU?`Sr*P4XxhhzcZv&5!odlbg5-*)$@gS4935u;%@QukTAS&1s(G+dHpt(u{+Rwi zn2rx?eF!sGBDcCDb^aFAvs=$C&SMVQ*T>7XQQ~$j5I!b!FTD*-%Qdr=EvuT>EL}2x zja)&{ys~k@B1b8_!T;G^WKJCC+`-mJ)-j1OpIlCyuHnnvS)MEDpQKEBpZE2s)=`BY z)Mu=(kI5=;G61Dh8w!`5(K*V&`Etb>2fnv7FPTJ_UL zDRSqV-XF%1e6%1r!boltS!JtU=7ZtVdgrI<@`-rj3r8Zp_R&oL^fT?WILHy zAmu~plD2JRY0q-oOIw1O?; zERqZJ+FS&>b2;4$WH%qI?a6ORZ)U>e?@4pEgw{shNS?NKagPror;VJ(Oj=1C>8Fd5 zIO7?Ts4b3+X1K4A;)8r;$5D?g>F|}h;{wiQ*A>gn&6>MYMj+{py>j2IA2C88I%YKZ)8LQ+yF~BwRS*dGG`K`*ypx`-*?cM_YWtekzk& zEj5?(8|mZ9d}Kh$dHi9L(cCyQh#h5`aW*vgX@)UyxPMgSmb3P{cQNLqoIc(xUEH`bFTw^ zI&GYP2D>7QA8Eha?N^$v_C=3Io*9HI^0>OX)$Tp~{sS`L2)=~$7om%MF{D2aUHl8_ zbsTuwBS8ITW@5Q1$>_FJ^Z}E z`lGP_l2$XawBYXDjiIYIA?kDm_6ZH=Narhcfp#*7-%ow*E=LK!f0^%Mw}Ri+!+0NG z?b9i3Rh~0|%p3f$0RutBbIJlTmT<8V`mj19@inAD-5cN3qVG1ZD$6&QZgSip8y*p0 za~-Wa_E{_573z=FeR<;jY4y7#iDm10sW)kKN8JGKu1PRPdrO z&uyM9BFo0?mbnzG49snF{RARWQv>sn&9t7&*qQ216xzuthxmLne)J4|w|rQq?-Y-F z!t;53dx>oo6O%~DH)h~y9DA@a)s-=M1PpX1QXra3q2iN={TkkK4KJbZ)~_@Z5s??h zjn_>&&x;$UZNGfn_vjSgPc*5ST;|^s8XwE2UZoE#_uu2>RDJLF^U`s}+;?+3_d0WC zs$)}X3+KSgT^+T@j!(EBQkq(wqOkov{u*Ci6E!|syanI=)D8V@*&QeYzWY))!sGha zdVj2*sy}WUx!kjyo#6NW#(A+>-A~YX#HRmnpFd%{X8h%Uq2%3!8IGFEN?`A7lPZ2c zuHj74a5mC0)$=>dmymx+Oh`Bvp}mt|=hMw_=pNx6*=xSNVo7AA$=uu=>tQ061w!KOGRw3 zS~{-zHcwq9qiVfA>ir1!f8&Gnr!B>~ufIJ^9a#IZ_F!gG`QYWb?!_YOX)4S=7rN=^ zg2ME3rJsG45}16R%;dABxR$ou&pk^hMf;7?XwqC=-K{ikq-5f`B-@ft%MU&@+U?ou z&q8LK^WAK-iOFW8pJgs`lT3H_%Y0#1#N9%hNiNA3e;0_@aNFEg!kMpNO1YS6i=R;z ze=TKNxJqV)8nk@zH{2}olcyyzBh=punFcn?G;l>vx4R+nOeTS={LEBtx*@<-I`J!p zaEeU%#(ms=`lKdjXG-h8HZiwe^{u^|+@-)4bK_R{%#sH->!ElQ~1Rk)@d$+bziay|KuExyOCKiu~Z zCXZYmHAf4hrTnW?Gm5xDevzBuC2IW|^)mWeWC*7r$@90<+XOWceM0@Se&cicE^Sku z(dK_ttHRd(TG8EFZI7?^;N#Tz*o*3!dD3IH~rnzps>Tx#Zr@ zN?4Cjcb0A`SK&`8xwkp{nE&C2X#RuGZWW*1gJ%zUNO&|dl=3J!jL{8r1wG- zove`lHfS=J4e4)JdP#h}^oi_T#_s#fe5O9lxzjRj=>;snMAMJ<@shO56Z-cxXyxK{ zH+10@L;Hi!q$dgKKZGVSn(Zyc1xN&0bh_*^l)78DT=O5s99ti0_fwpiIe@iE<{pzpv`*PmR zQrw61G0>%)vvN*Nw7h$P%QSb^j5}&3D#N}`+8e!{s% zzlrdr{FisH*orulE~Egbu9=`{JA z`Ddo3!`@LVaF5Y%czXNxelP$Y0z=>_Fy_zOw;uow12te8m=BhMGe9fo1Q&vLgO7pF zfp38CfggdNgWrR{fHD8QefuHcXiyL4gExZHK^w?}w}Vc?eh=nH!KcCJfkZe?9#Fq> z&t9ny)y>`ewkR6Z3`kQ}8 zdgX-IPRCQmES9r#J?qvdlH8S*+Ome#xh$7!t>ePre7=Xy>g~t-eqx3zHO4@F&+7X% zBwp&`PSh7FpB|ap(7*pi!(XrAUxF!ZXjr=3=qo!_6Uhl@CS(PgE6=*R*mfmpb1v79 z_vt!b{Rz{RrbCrF8q#Gyx5(_1>wP)zigcqFD!X(@{iaMCiAt>FV9czO%?t0C<1P6teeKKDpJEQ-nsH%HdV=@=B=vtg9jdI2T0aw()1c}T z#+A=tvzO!AcUyn7{BF9==kGQ(7r8bi6B@Ve2acCBIaC|LEhYWavsyc}woGbW7NJ_E zmA0JeVD(nAKl-ia&qbO)qTeU&*YZcnZtRxdmhRBpdC5RsNG4Gn$Vi)Y+g&Dl6-=kB zV4{!ydS9*`8bO)Iyhh>|&?i7U6qKp&W%bdh{KsNF3iZ)$rbCc=S;n7SkKCEtj+BfG z^4bz}=b&xDk{)^!Y0lt8nRMsnP0W}@AFqAgYTFa%cT2lixpMx_M4w-8mBjG~|19YV z>E}R`I$e$~dAaJe1#1>An%{ELDi@{~fIR^L`%o((=i=K83-<*ZI&n@B^LVSrly-T zJmM~owco8>zJ14iZ_x0~UUITecfH2HLCvI^M(@;jYd6NfTDSwB7~Zdh-+NV_ZuTD6 zaH~J(^)Y+v_q|EoZB?`3M4w*sKdE#pU!xByeL(Z$^q6qt zzK7x79)#OJO1O+LGBGRk&sML@-1=2tKYYIcAEWtZ-_2~;;_IQ))Y_r_O(sotGkN;E zZYQGeo$B*VWN7mIqvJX9=CbqgK@G?9`%=OZe$48ipxpCq4-B#J3 z===LrEbqZPD!cE$)Tb*h{Qleg_vSn&^tqEbE2n$lR%IWC)g3kw}maIc$vT^=ITF!CblV9@wNWUy+tj5_J%D&Q-3+*Dss&=={Ym85| z`Cp{-^EiL%@AKouinVfeJRbS%kFTd+_xAl6jq&xl{y%(svo0|%{N#@+*RSLc{dYG$ zNQMOQ6Iq))W^Vnh+IQnb(Se0;_RLJGeVFO?%;sWx?7NxC{=;2!HM4I`<@Ph!=+j#mN7c)?dR?#MuEpQNF|+zCAD)b};?)AiQ8CdL z>PW*sY>P=(|LNWxf>*~ERe#HuV^}`PJ6}<`U%bYrhjH1Zr1LxF{ptG;O?Ub{v6luF z`LS)^RQ~Rlo{zJ3e#IsJ-Q;^$>AQXZsJ>hNyjS0?zqnrCO)h^^@E*_thZ-;TR`>erz3ENK%c$40s=^wf%?rmAt8Pz1j8+U%vI< zE}vh0ANT3%R?aCdo_#;|>4L-3lf^~ZyEVs7Bw>FLY?SwZ;NL5kNB`o4tM`tdk)*l? zTkJP2|IHjc)0a;D=ZBY{jk9Ljcsp=T`SzXs%y9P>A2WyE=f9WaU&+t#6!rM}+j(#K z{`TR|`+Tx=pK_sp7a6lW8GX0@^mn@Nz~Xmz`|y0;`mAq{VSkahd3b+e`D5nRPgKr_ zzB?+nzbGgNi=UYdCt5z9(!(B2PKNjQD)j$0rd+pG4sW#iWA!82Z*dt|M@QkdnZg0% zarM9Rejl#h7$8TH4RajlZtH#KPB>Mzc5f*-bLAN4uIXNLhpGaLY{Okus89EpJCqt; zg1fEXFn5ep>vL^88eZ?+-d$WeItTpstzY+MSpSA@_4RM)693)mg_->ysa*et-tWJQ zIvIM|ZDIctwu|Z7ZdiVF&$CN>JF)OKXNSLEv)RAfxDfI|4eFn{5BZ$r+sdcQ`1D?_ zALian<1co0dcyd|mD`Z=MLRqEuwRM`zyD^RZ#z5ums);t@w54Ha~_2)ws*J5MJ3dz zIQ!cUuzp8o-fFpm{rZCa#n}~I%rg8sXs&CNaH{t!ghPbbBjBrfY`l`MEVX}1PufXI zWCvpA{?Pd1S^6xHq zADchh_B8t~S=Po@uswoaHSbRVC_0aIAB{ElGE;O1pIQ`M$;8ET+wSIWNwz(0r5;}{ zQNh0BoY_1e2Txh8jCWVPn}s8ZS>a9!kTW*p;#EJ!>@N{TA-0UP%1)_5PQ`t^UC*P9g9EVNW!u#?bxlFI{>VxLio2>A9YA(}Ocxj>R+gYbCQbe>`_`DoVuVO4{G3-6aXIk}p z#d^Q>_m%UZ`j3^r52#$}<;nv(bzU@dkuPr>kIfwVP37=yzTZt9StGlDTx#RXeNg2% zoiYO}br2)B>;IdNSDN``srC9^PY>6NoA$MOv&bC{vRtDSSI?4P@cs-Q;rX(J#^2H( zJ?!}{xe}&$8y)Af#LUA6uJ!iWS4_=}*T?F=$IpWhr)*dwnOFGX#8vU_M&(sZzGS>m zSp@e0-sICUJ&1qjjXplzTbgM-^yu2~Q%<4-xdrlo;I&Db4dI1+}d+o z08ahW{c0xkrjDNcvP`xoFE!awN8`tyX!iWF&09}v@$aHDBTvX*$MK^UKQsILe7RNY zJRvOCNauwey24=Twfr@+|9PJ;ao?kF_;BLBC-1HNz4M;R-xGKH@3t}-7f#=cKAzO; z&W@5Hu<7rfK4KoF^LW~2URK=W{5APsSdM?#;LFMM`d?Ieg2`FJdClyq;c}Qz9^CMU z^74khJBG^}tX#~jKFInj*WTo&)A?Ne((D$iN^$lU>|NmDk+b}C#m$f{2bb<<(XgRZXhkh;AQ$Z_`%`+xgE8{CocSL zU$J^3J-a*X$VDN}{@|A@*ZAN`~gW4+h%1JNt7k|;KFZK4QbweHwadxf=O|E;iK zE3Zgxx?%QVSc9t~o7v`z)((TJJ0>G8K21OK@pa`W7j8-A;u%eDo5!k*d~yD6({
&GZ^>U#aYFpZ`FupdbBQww332`nUg_;EO|505Z;Q2; zPKkDD%{e$aflVeXTf8KC~x3@$m#u+5jpN@puYnDSyD#b7B z{c9d&e!W%s&(q`x!3zHMZt(ss%z2x!>FDtG*ja{e@##pOQ?R$Bk{(HKreJSHrS_dT zT;oTxs}yd(@{@7#uRqNDBW+QdPnOsHHC%frdLP?~xAPEBPj&d7D=yuG|K`K-?M3{TbE~^J(mG2Y*~-dSWj?^XD!GgqGDCmeUe8!kNi!V8Z%=D6eL%{zY1ggM8}IbqHloTa&QurcSt zIcLu~X3lZP%{k_nITv0yXWqOyE=S_xW$RE*3W?1)dnSJn>7aNRXV2siUc?e_&*Twt z{@D6g+;`L0iv6zoOD{Y zG@iKl_1Am%ao;2Tj;!j`R0lKQRJT(x>znA^)q3v>{m;<6%KlkBFQm`;w&Uy8mTog` zyjUei-btsY@rg^1t%q8A;_M~f>C@rk8J~akS5{7M(>p4E@4RA^?{D|tExwvvQSx$6 zf64i8?ZfG%nQx=#zh8ANv9I?enLd-P2b!KmU&hDJ%E`>p)-MNjobju*5}udtG+Y|v zpVoiBN?VLyT)CPaU)=Z6V-rY98l z-Q<{Y-%ZXN_ucroxbMb4#(f`6Kd5OGeP5e5#`-@{d7j?4b(C@XOO@pS4G&dzKX7Md z_lespmtS(Ivj4`<$ECkvi`P$%`)>VS-1o#UDu-|5Oq_eupNjil{Rz*n#(m#u+ACayip)ctF38#jZR{^m~(8d?yV*Y{upjDQ^#tz!9O!2~8pQ9I!2hxOZgR(`)V{^%1pRL5S)lJ0|4D&= zN}|B$|0dbX&2^S?82e?;)UufAJ&F9zvJ2H&sO?P#}ExZHuyXD7!sek6bge!LKJxtGGLHugey~Y17eYfy$ z(|5~{Cp13x{d4-=)&~v?-d6QI3m`jmu)6 z)QQ*w%~bBv8ijw0^Dl8%<#EjRH;ooA8_$TBS3+KZfRFkc7w${ge}&RUmL^eH`gG+m z@I4>zaDLzLT~FtpAGZ;p>31>fH2r=aD7Vk7kvrZ9K|Hqj+BjvV%?sTECDSlpszv+O zUd*(0Z}Ov&s1*FQ?`Cej#mCoYS}~0l53^^c?F+)+1wPhAH>L46`(_S(+lSNeMQ_%- zTr92w^(j3r+`$ifccu{)XK%Fqi}hde{z(00s!lKGBNFGI?VrQ`V(#H6IEb@v`{}UX zEc>3V-B~`EY5iJPs`9>1tisZ{T5{w2COmF(HNvTb3E zOLxDnU!w`+N+8aj&Fj1lP<%VJdE3hLy7XpzjPtMa>pnjQb$#3Fk(pbctjupmS5?k$ z8$Z*VJKH-_>+)XHDLy_8)&6`3J&QLs-igOX3HMR|{Z!6=tW-WG7j4mwGA^G?J}S$H zC=$y0c13@yAN2WFvfN$Ke)Oo>m-X=Y{OSCu+4CGkTznfI_x2WN-5Rg3T`qjEw!h?s;62m_*>j86AF*=+!+F7I z0ED5=M!cAth6~%_J_LJ*}`Co7mm(FONw=ew~dclS5BXRa^Ux-_; zt<>IBKY^1qIfBcy9pdw)y4}a4v8OxdRg?X~cU(M@hkN_yrnhitdyiMJ<4A1UlAOts zX-zr(=FHj*nq}OQw#FuU@)IrBE)E8Ey0Bc`D+L?2vv9x3EZr|+^Y2jq?PUFK^Wm_a zhWo(6c6qkCw{|<)KCw{Gt2@}w5~Y3q)Vf+*Ftdw)XpepQ~n=^^IOnLOE04TYUd2vKe{8dh(Cfi@{UMmt$YRw^{j_ znb3a7^(%#5X!P`j`*6bXCrnRRE}a{Ed_(>tq5H}D|K`VwupIh7=F5R0lzR*P*e&@P z+druMLwDi1J$04ro7`Xff>Nf~!0^s5lRrruI_jsCE$3icBhd;9QFCHl4T=}$an^EjVle*L~6 z28zvxAw5rEgr2O=hFEulqpTa6oKxme;#FLIG`&BcN-2PRXS&txC~>00-k5ecr1~iw zRqbP{`D^vuOp~j)o<^>%9VJ~u@Adtbt3f_1or`L%U*R~@cbm>T-sa28!Zow^lit6$ z^w+=DyL01ag?zGe#TNVH=3?{H&bcd*E4W%67rx0Ati{CH8|w1$)Rqz({Cm=zLmdghpVg#$mN5s`oxB3>ki&MvxBb2e8IUVx}+6o8Xx1&!t%6rhKy@<>9&Eq zPfxA7E0pV}e7Q1`4Xavl`Dc7=-1nxdN=xbxrI7*7RH5d?Q~UC>(2FP*ZjU4^BCaH zQ{uXl%~TDpK+Puf`=FjHV)BNadsc9|bwdhHrCW|so(QJ-BkoyHa)$yFhi5f>(M^@- z{V?XTh97qx?9k0#9@%hn%AW&TYPy3Fs?HkMT2-MtO`Mv3mvLzV|=q&kMD6qDDP4-p7(^fn2o4Y%uJxi8yI8L|@ z9*C=$|7Gv;^F7l8Fj>PuaL!A3zQyC}&iboxy*>QCm)f^;%;kb9xzpn~ciex0 zaUY-H25eclmg|ScClGqD{LW!5U2?;@W9hX3Ol}dDM@FRGJ9aLv9xEhAtmNbd8s8G+ z`dM~Cx@eUwqF?iFpHHW2fMI%8lYyc?6VmsGE>$n2@2B(w!vyI2uB}&edtIy1pDi@g zD0!7nukka&?MgbN?~%v!D*T&2liYrnnxQ|((6FW4cYXSbX_NR_eJ_ox{BF3~r@Kc# zTt|E*&8By+QN!iXHEJ=8#}9~b zBi};$pP(OAhJF=vnN!PcisGf+pCi9Z9~;+7Y4SS^XN9)c?li-Pv`?o8J<{F_*mL)Y z)Fq|KCTo-4=g_|i2qup&6VCUci-vuza~(ym_RdHA4gK4U;*Z?F^b*>?zde(i3g!Hw z?92qrM_27N@A2i|pdp6$K8E2o6YhBIhV%*0r9Wuy;-o1ui(u&0WspT_p~qda%tduu z^c3Hb?sunSl`;$c-8+VUpwf3d{Vqb>g22Unz81bkr4Jv0JTtRv({xULGb!S4 z$!I7=Rp8^&Z8H-n0~C02r|y)PFjt7SZ6tcj`+a_#p!xBF=8s=xjiR~GMc0#RTlSfo zsFf(FxN%OTuzb4rxxoF6hZ#$?i8y6^ zVs>58?~(Dlf^wC9c9_?@wvZV>C}G!?k4WO1T_q)cFO^RZ`RyI=*X_Osf9cH31Url5 zzJzOh{hLQzMkp5w463|IcgN80 zilOgCM#&sJ^k+}#<@~RTv0o2e`o_?o8PLn+V~f%;{BxxJ@Mh@GrkMEu5)TqM3GF`u zy?|3`*JB`7@)K@?!q)7ECOUJkr}Nd`}E_8IIqfTrHHlh2v-_PYd_|gz~b{ znUidw}tdeWJ?~Shk}DJ{Aa13({N|@cM~SE=5lwshi?fM?7J5Yc7k9pG+fubDi(!IyG`4 zOADHKX|yZ;X2>Z#V+xOw3hyI+h=noH2y%hoJb1YaLuf;#ZCz-!ir$1fw{<&gb~oc3Q6kgzT?J;NVZfasMGaSo+jk$!_KR8 zav`Z(Wc2*d@I|E#&eiQ&O}*sAOq(H{b-ho|Mo9yYj1jUX7Sd%7D6*t&UwpkQpKzUf zP}d!|E%57)1Nt8Na}s_`DC7SJlpbbQdq*zS%|)Ri;OOefch}^dAZ$eZuEV{w@i4q^ zLKC@oNPkr6<-=1^N*Q-Qg(m%f=uV@UZ12i#K*P6d4OgLOHYYuEiT&yud_G(Ml+btK zDdh>{cMdeES0SC2>W0ja{$}V$V?T^nY5vX6tXpFHzC!nFa4+RPeT-i(@8P#RHv{1@ zLi(N1WXd1XrQS;)7SewPZ5i0E{&(|Rp7#UsKct^Zd?asnY12T0VC`b_r-!%m&k`4j zPe{L>cuIZP_vgJg{Ji(mn&kez07nb)-UF%8)RVfG!_1k5pRA$#?xt?%r6#pLm6uz_r`LH!2p_21GvO-5VW0Ey&uBbXVonCe zFTmcq$4t8)9*#@a5bAXLPt=($H_7FevU437IxBWv>5VE-X=SH|UmfFiM^}VlfA$*M ztMF+d{W1Cj8Q&~Eyt>Cs)3>$n7Ed!xuWOMq7;*LnZua-_HN#Q+8@7EoarXOfQu}h; zC|Bxs=QpED=~dP9ZQc27ZcRGX)v;xbzn-2$_M}B_T9euUi_(+p$**A#Q1oEU+B9<+?pybIUGDE1wy%g1>>3#oRjMVs!!v8SPepzA+sROC$s_Y$v%%dE zcuIx->mUlXL1O9Hh0olWV$&MR_|Beze9--{)Jak7l$Alc`yuUWf7QoZ;iQ zRn5@-a@H;PIG zhjA7?7+&(uQquP%$+8|K7=hreRQTk77kg}5No-6cv6oC(Z;?r=>$DP?j+7&NTq zhgsXeEQ28&OXWt~1fWJro^YKvFLE{6f@H?r&_}B6*hCfTWCGI@MVy z2lm!($dCw^+g`4nz*$-y$`$Rz-m22X){R-d=bCz}PhZX_FPg`|D}A#+2hY}1 z;){1>i7+m#d^8NI3YDfsln&(tS}8zxlB_JNi`aeG7oF(CdeGNq<$_J$@%3agt(3J^ ziP9d?*O5Gn8tH5+l_e{}!F1O~f|0wRm`$E}n@^wc81f7YuuBe8pn7^mfMK6Zk84Sx zVpw}nWi&4qD2Yt5K1n#g)^KI6CXdxRO{1^fMjW2N`Kh+zgvi=~rE$D;A3j^0zq7vN z(^u=>7$5EH@rVsda zn;@>G9+c_Vty3$s%&_csU(&vJsxsghBnuB6gAEyG03Q8i0BT*;k9ZTVn2lihNVb4`hp z4s3cUH4A>-o6>0;U)G~i;?n7cn-Uj3kYut>Q~!)eJq+wXqmwtl7#uEO1 z;X=emb4D<3`Fpu=)waOoUP^V6wFG<(bIdL)HHBK>_}ao-%`8_PiY?BaE}xL9nCcL| z%dtCf?CG{w-R0Yf@fEMvcUzBXv`*0KizSv=7j_5K_~t-Gbe&_`%`53Cm0K?6yYQ7U zmbGEoP@oe^VQfo=1a<2!!!GT++~`r>N!>y?1=&l`K`?{!0YGb0)XPu zd?Efi)d{-rmF|X%66k(#j<; z*f13y75X%?BE^klPWwHj%mvnL0`KR=BDf}bqNs!dsxY<1QM>4=AGXzx;q|{R(Zpqg zj2ALyB-N`1!tu75G3wCLXibq_e!eHRE=E}iGTIJZF&lM7aau`5D-5~Td*iY=;rFel zI6nLB1tpEpU7l1(d?dw!(1Iz>a4CtI!M14tJvgShv*J-|g#@$Y|wpv5^*3KGE(_oLpC3qq3z|WaLS4ULUxY{NQ_`Cu!7rL#%!4cWIWM zvczGd^_Dg;mXvofxrO>cPbGyud@H4td5Zo&UAIaO%Ob8F9VHPq#|uglOYf^ZLP_Og zrbS;yqY7$zbBddjXil~TN9T2cHR*jVD4AzvvUMZ46c~9gam72iGLy-tA6jcsLphcK z$!}2+fvU7j<#vjFWnoxTcF*lxnl)m!BNc7aXky*S3z3f3Qp zNV3qC_!dfJ*CJsX*4RjFNuT1o;?3RgaHfosPs<1aHz?UOOs-|KgYHc^FAEXQZ zUa@0Q@a0mBf*U=HIbG))d`)TA&{v2ci-u7gC)*ZsmnF=vBnDYQ4_$NVSR)4@GHIxj zc;2V+lr=DUey8uIC#5&U#(9&kTVzwKVdYn(B1+kS7^H)nGDDuaR1_+`xKod^QQuNU zhlt86&9bE7%JdVi*h}`TFkS0Mppth|<_)Q?b17751_kb+q^EPf!+^AM_!e1F=mP7) ze(lHi`*O7P`)Bms^bm_q3#@UTSL2j_*m^_K*KULqVec!~8&h6L%4t{3+jUT* zlD9kUs)QT?RmQn=kH+5!ALK+&#;*H*O%{1Xo0$Gl7Ri#1{}~wr>XK^~PKq0r%g9c1 zMA4}gKLpXPiX|X|cXsr1+;q|7v`#XN_hDe1;bx**>?MvQyE{H8D0 z6ZN|=7R8!cU~P9GfJVtFj=oD2h8y3qT{e~#Q4bHx31zG?P=t;ZElBFfQ|iw!vC%N$ zS4|uBtUF!G&Fh9iD&nxFEsasS)7EaOy6MJ5jZ+=0DUKo%3Ew4KO_Bk_S3%^R%DOt? zrE9AczRt`GOnWozV@JBZdxEU7lOwcJqMu^KfoZ6#%e5yaqlWjvvMMtI65a}VEkf>XV&|V5XX~IpANUby;xgoG@g3oaQ=ZLAZ z?jjAJUnbFoq*lzp(flj;!g->8a#&Jj%hrejb77p0Faj>gx?Pl996nl7F;%P8U&35c z$Fvh;_NB+y+x093F^=O@OPZ=IHZv+w8Pbg8jLag-O_h#L!(2-aDsTcFH$q566s2w&9Fn0UJmS-1c{&nO?T zv}3d3S3I=_lCg#Sl2i@vjOG4Ue|(YUul5JJ9dAd)+LL3Ni+bv+u)w{V4jLv}0n2j~&W}6~-^h&5dBRZ!df<0+FVB!tprsy&5OKP3ZSb6~vObqWxA<+AIrCU&Ma40s?xlsp=pfyu4@X~oBip`?p_ zWH^J-KCd`;9^Rpp`ccAMjhF~IZ!GhruuEB+;a|K_qi%9u5_@}4jyF&$wbk~Xk?;$vZ{_XKWl?~p;HZGy`K$;HCZtdTSkfGZof zq5^~Ecq`8VV&AW_6y}vB#mb%Bj5aJ;cAtYHRQHQYG9zbK8NWHs<&FWdfaZNZmyLtRv*8k?rl?_nju~ZlSON2`zLtn^o4>0z_ zWZ{M0l1OjNpp#fA0J#TPyeaTe>=_XLXh-!_X0k+CDuC0q1Mi(@oMh^pRR5DEyN;sU z9`ogu)biRz8ZTrJ1;1K4KCk_0dVAr%rtK{Jimu@zIqJ>n$@qwxzM-uHo4GCN^+XqW z<-Fy&ZaQIM&0Pl3<~k~p7U#P7za+cVbneu}BClqrz4LN9)g{@2k4q2)tn|xfZMZJb zOOE4Ol3ik5o%-QKt_x^DrSGM`hq-oZLCe#dn%&$_tu1jnYTR&}+f+={BG+pa-%oNH zKVE%kfn#;&r&qEFBBDkAtw|(K-h%ttoaw*`PSD^b7378}gZY;gqU2>! zk-mBXy9Nl}O*R*bvXJJH?n-A^**jX**!j`i)h^WLNZG!&7B=fBnKKroo9K^ zhT`gpWki)>^#tx;B87ZKCOY+Iv^z-G0Cut4TZi)DpJ z)pVA!_oD|*X97wuwB7J6qF%EkOLRm;;tMA3+{o&i_j36rHrKF1l^vxV?f$cqQO_^v z<}ArJi#AT-eZCtOU4tr?Aetz}mu9(5S@LXE4{IAvBunjL{jv?AH0tI4a_kD_J@nnf zT)a!GA)SM7$&M#&QeKm6&@z>z#nqp_M|}N>`#z}q+03_9NUiCkcy)KRr!ieSUxid@ zc$_$jX_aZOtmvX4s^-dqg5rwg!&0w}vZ8aDs+uhHJcSK$Ql(O^Sx9qU&vLD$mM zTKY7pum!~d;$fYgF996Fat-^f{hy~TOLwQNML& zZ^Yb&VM|_t6)*xO9epP2EiQJaEtdEtT!UX*m2oF)wrw5CHMu2jm9(@bYr~XUx}v9h zG3snS&wYW(`@&qeQ}vPhT$pm+nd^&8sHX*H3nTPjr80$lr-m z++RnTG(*P+JLlT?MKk+O+0*sQ;$(8Y`#aJ7oi2Z;OmcsxxxbEb;#B!P-FZIU1vkUl znc?U (Ce}z7=UTjXRm#-7+#h;1w;tIq4m8edf=HCOO|GO@lIN zlEjw3@_X`BVmoQFgg$ACqfe2TPnsf`jK^YU%8A5k(iDlqq$x9;%^BiqniS2Hi4*xc zy?!z|BXi6~*`Vgi*tK-uiF4?FE-S+fuYSf^>_OdNBVBkV%cU97;3J;TxAHSHTI=b? z64<^#Td%f#fp+g1v49=+ETM~+g=|E}4agVQ_w2msQRn*hHF>x>WEygqcHJb|!E{1l z2h&Nv^7FEGt+z8VZI70aL`#Q3QWPFp&uV2UT+TRU7K&OcJx3d2hE23|k-cO#X7Wt_ zn2w&G?y`La<@^`j#*i*&N{j_NHQ^;GUcDjJDRaMuCw+R?5SBc0?x5@^wr6|rSh?DF z)9;KKbL%)g_q@fM;l8xqEmf{x+Ijh(X9Cy3 z=HUqw>n2XFs}DBL4gA`dgUyT1AflpB5z2AAhkh6igR!!0H3!tJe$aofSF?8~ncLK#hVOa*`_9$>9X|x|88~$=^D`Y>W7A>w_o3*?|XXZkbeK8nlC7Q+!3zdY&gW5$z!}}`IMM4 z{C#M?fA4MbX5wsb_Mhv`p)KC*yWE@RPyYw}`_}8c8Qtv7&H-=sKIqN*AA8f>4gPlc zd*@&M`+%C&&-(YIn*C}<&w2X4%zx#B<01Z4A6z^CKhqv|(x^Z1f^R>AYTCP*M&C)n z?KE#Jeml*>e|hw;9Qgkz2Zpr0{>$|J*T3@NU-=+>(EpWsAev|+Wh)!lC^~x%n+iJG z>kyLE9$O+FJST^44T>ZP3Ry^CkxUeMoNN%AiMgotWzJ8}oVl#=^nd(JI;1Wt_&EAG zFGo6A`_>O(${zlZ-VaUWeEsKm`zFWTrtfdyn>;n&p7Wm%^-jA*&YD06!re$Ds+|oR zygS?1)1>cqK8(2=O zGuIQUUl^W$N2$G9rMo!>v<9U&1oUpbchBsh73FNMS9`mwyCc->4cyl%{hEM&tkT2# ztlq5j2Lk(NDSarQU!e471NucuuMWJ^I5sYCF}P z$#=taT@&Qv(Hil7b!YY4@5&o_{>Jfg*g4NoV1I%hwDW90e~Y&sRsY?Wzm=cLO>H*? zm*;qkwQA4eKV9D~USWFJo|i5j<&&uGe2MOnhYq^~$m&VI`m?{rf3$e`1B&fPp+xPo zFEJi+d6UyQ)d)=A?(@seBMH+j_T6PqYJdGG_D9?orRlmx-B~*IJ}cJJQTlB=HX6|H z`>Fk-w1EvN-O6P)5@`{HJJq?FiMh`P?!x`?bXRiNbJ8zG&z#wl-PD!pI7w^}C$vh~vQNxSsrA-w~d@Dwk1 zq(yVZp9e3?G^_RODH1DtmN){mr@MXn%tSU#6JqZ-=Y+}vt^by2;RrC!4t1-vYkS(! zICqB;5gDH3?mqr@ep8peALu_vm+8BmUskQ}P5S)>4yuuQEbVg@D&BGYN<#GjU+OvN zae8=h_cwQ=7%lbhfxUdXG@4P!FU-^rp}lZCv`tN^d`k3t^k9qM7fni+}JhEAsxB)Hm7I8_T?UqaLQ!KdA}=zt&(X@GD>qIh;ALq*ls9-kp;|r zm)GlM-)7x)Wz8a-@3k4_iVPM*NQ%3 zmn!tL@qjCV-5E_CTiSD7wpS+8u6G8*{fqep^%082Bz|9aGug>Nv zbd}Gg*I<-wV~RKKqCI`Pv2#bl_EB6v-qgj8W43Hj-{@YXTagG3s(U-9_thHfm)q~z z3?q{(IgA@W_tN&gMEyUTe&}d^Q|mUklVp5yqfWJF{EG2&#&4i*g92&DZ?Me+#ed~D zTnJ4$lv%P6Q8-MUzlDjduYs;BHKkL|JatFBbvnyw(Pem8!#_^rx$_369QA)qYr3OD z6e?zf3Ki9_@a34+a1Te%LB{cVAUbJ{;7lNTFM<@1vFk>~t(bx@DelA+41h<$<3Q$g z&w{Vh5bgsHfgvDwzWqV*M@&J)gsdBE1e?J5;39Cb;_aAMf_Evd!u&Y64m<OG_AjbItL2@HT|z;lWhF$K|HoO2Euz?(r5oC7++<=`FQ zDsT<>8TbWgMX1mYa^O60DYy*03tSDhg7<+Nz>T0E+^o0_^A7M8a1Xd2JOI889t4jm zevJ7O@C5h;coO^xyrB3yreF*ckln#pFb?bos=0kz!t(c2B zADjeE25$n(z$uC|Fjs@K744Wk;1X~txD31-Tn*j>-Un^~H-dg}Gq?rZ3hn@30r!IY z!8gIT!FR!+VhHmW;7RZl_#2QtKw~(VWOpzY>;v`#)!;x-3yuTzU=o-NP6RW+Y_JfV z1WpET0?R-PI1Q`@XMr`K6|{pKI8X6b%uB&#;7V{6*b3eYJ^(%hJ`Ao^d=&Fz;5zUL za09pzd>-5Zz6$OJ_kjn%x4?J7pyDx1!IR)AAeU0_16~QL!2zHa90z8A*N@DuP;Fa&-9o&-;UKY>33QP$cAyb@G{1HeMC7@Q2=2$q9pa2i+xT0uL=f%Cz| z;1X~txD0#{d>GsWZUJ8gcPR!i?*rdbd=K*n;8Dfnm`{Kw!BgOA@MkavW_l)Q0LwuW zI0IY)-U{BPcsu5m;9cN4@JYp|Fz*5b;2vnw91j7n0SRy{ zI8iYTQ!qm@7xN^r1ayG&z}vvv!M}kIfv1oVM>!TpNwVhRSqbKnJV zGLw-vf@PoyoC;1?oQZiBNP;WCmEhfAE9eI|gImGv;HzLjaX03@-~sR`cpOwS$vFTV z3=RQjg0sLHkOAj`UT`(&1J8hG!HZxFN~;|RkaOT-a0&P@=mWn4e+170xnJ*Ka5$I( z8o(-$1RWp?Izbo6gI@43cuetQ%%6ZE@LRAq2OjMU_5-g039uRTf*V0Ucm~K|e;7!B z<3T-`1r~!1pc8b1Uho;v555To!H<9lYhMQv;B1ft7lMnyJHS@(A@C_hKjvNFYv4f; zy)KHDf+lbVI2YtWFZeT%&6U$Y16TrSl!xUVs*ot{A7z95CKU4e)a~s(02#-B61>?Yh;9$ie zn1_O+6~|x-Y8A&}&H%H)Jg^8X0m~Ih%qu`N9)1n{9{d@|B`j|MH42gA3hKc+kW*ZY z`9aVJt_L@O&x3w&8@L^O6%2s;zyshxFbEz6kAt6rA+Q~cttXw}2ygKfG=LoF z1{Z;g!JojZKSkRGM}jNBJHfZWAb1Eotat?Thu~>Ya|79`Xu!;aUT`lM1V02r;IH6$ z#fz8|K21J@RUip21ifGYd=LB(41vD`VbrIB2Cxh?fipl7Yy{_nyTN~gpMW9o6nGl^ z1&sMj6jgy&fLDV3!K*+590O`W9jFIqg4G}cI>GP2AHaWsZQySp`YhwnW0XI*4}2Ru z52C-(-#mvq@Iw$iPq^Sf@M>@(^Ua0HkM<|!I6&je}kRd6@BAAAdZ z4}2dy27Uy749MANZ?G>o2GoL?U^bWo=7D9P37iFb!E>Mi`9wE(QPI2GnCM#22L{2A zBHDdSbU2s*-Uyn&`Jfkk1oVM#fCs?$z(e2>5beQt&<8#Z`oY8Caqv8d#*T?Z$_ac1d=~VBo4||U_4{F0QIFXKI>BY2 zAKU|mz+XUAJtkTV+CdMv7~Bc&Rt#eP25bX=1JV9tqA6f1mnLu2fqW`z~4Z0Ams(d zf_=b#pc)(qYQb@!9!vt0!HHl7m<1MslfcQ~O<);lQk;eHH#QY)XJ$OuXE4UpDfXBg4K=dl=1X!qO!aM`?g4@9W_$G*6JtlfB zI20TY>cI@q02YJj5b7i71HT2^LDg%;+x{_6AeIOvP->Iba?*2{eH-KoX?EIRZL zMtcC!;nW*&0GJ8pg885coB{e3QG#?Hh5e()L|M=a7Q6xfPoPeMsD4az!W7a7T0pdr z@>z_zp0u9>9h?o4AOkwVSHS@ICKv?&1-60z2GO~s8#I6gpb4A-TEQl85x5#OWNE`7 z%26-D3UE2N8hi{4fuDh2fM0@b;7=gx925QZa?C3j58j3OZt@&#`@)#$&)^yGJa`fO z9Yp+nSArHr8|FID37)?h`(L39Kqt5m^nxqER`4P45%5tEeUGsV)Puz! z{Sf&BHh?a00eCC847?NE2tEhqf1kDkq92Tjn!%~yTJTZuG4LOXPhwsVJ`Fw#J`e5y zUsl|O`3-O{82iYWXiqQ>>Hc=r^Ph41z~N^jrF7&;-r^(I4sW z!B}uOI076Aj#kuQ3XTPnz!WeI%uvk26wFtggeh2}coU{z8CU^M0V_eX;xtUb8HzV! z3eHlj!4#yxTF|Cghj|X@09~LPYyw-rh2SlUUd(rZcY=Qh9|zZgPl8W_&www3ZO@aR zfZ1U5#PtZ$Kebyl<4e0m4dBq*cZ(9>;}7l@^@E|`?-p$XXNkc5S-wB#1@CV>aCgSL z-J>rYg%BM9(^H@kAI}6Sa6Vv4;9zq9J9!rjfJedO;4k1=@O8W$P2S&0P@~EFMdp76 z*b%w^X!8D0j-RMPh6F@@p9ALsljDml|5xBi@JH|zcn*Z}e39uN08RiR*Z(9C*}mXg z;CJA^L8+WyQn~-waW7BKAIk5$@TVJG240HX{x0kbO6BxF<6Y$Qf|n|n zpR+f43QFbgDc())E;4t)&XT*Ee0}Ubu>K%Uo<4_ff^u^66m*f73wBgqeiwEHKLI8e z{~5nU9{x1gV_)I}O6B1*d7q;YS-8o=Pv!R-kOC$L-%TzfHiDe~-o z?B5J-0V3NjC*Ka`*$v2_OXbv8@cu3kRU>Nv^AsYNZUJY4vp`Cb#%u>!&zvcTMz#qY% z!8715KxED)cmCR;__AoMXuaCVduz|OXbPO*2l|} z|DA6pPkxTyFMypTS3dlD`Wj&JUTz%iH&SlA2%5-^F9D(4cz0yM)4+M43yADka4Gl#FuC#W`y)F5 zA}2OkvB`_Opqae*QhwhIz79lgEVAM_dGYbcd*^`$@KWT(KgIq_l@HHB#w##+u*iW^ zD)*go5HbTG^4~SU*zpPi>@#1xdua|d}BS+2=*MW!qAT*2O85}2tFxvpR}cn7E?->rK+Wuq{; zZaFz_J#yE@igNPWckoSQv;vXOJ`Hv|++z<+lhaP-_e+(_HclaI5GR*4d92A{MgDq% z$X9{LUq_R>Hs#1K@IDaAT}Af#KP_+lza}RQ<(($SH2LK;Eq@P0 zZu$F{Ah#5GDf?Y{dSW2^Su>lNen-e=!e?(U!c%zVX8eyY{K z{rz)*nQ)H(GtZdaT=J{-s`44IUv*Vg)&2(@cu>{BuX^<%uX*k3UVrFehbN9W@~9(^ ze#0>}wZ|U!hU3Ris5_y4;-tw_PMkVz`iz-Xvu2MQhoh>hIqq-a&)j(pjq|G(R4s(E zXz@uWFL~pemM*KRTF$Gt&yN*Nr>tDn+;Zw^r=L-EW>wXjt5%Rb#3;s;V|*XU&?G>pZV(R(@7@&&Ex>?YgIG*9En!L)yH>fK7Z3iIl! zttA$MpYN%vdase*=YG8Z163dVx2kJC^x=QM_9GwtSYKV$$H)IiRn>K$_~i9fRiC=y z(>H#m>a*DU9Qgbfs`_ub`4;Eui&eK)-S(y1<@X(Te%XYtOovQxeL-{jd{UkzjP zwSli&+5VHvyUY0djeEj){Lj7LEAhMUeizFJb}Sm-+%aoAVC!4oR!iUcZdKKTl^uL< z@S(C6zF+mVDqpS-|3EF6Y4#tfdenZ7G#{&~di;k!`p>E#|D>wwr%w$1?B~Cj^~+y9 z`Rm`z`t7XWVf**u;t&5dYgW}CpV~Ikb=Cj$IP$AMF%pj(H*W88aoZKNUC{mhZw}&V zWBOXkKL^|QvmV>jv;D6ZZ*S>oX*unY)1Fz=bMczLK63G8>@$XY7y&5gPV&~pGERsAdY4A?Vvr(tOj){yD`JQMvCLi~WZsrGaaa^Kr;JP zLGNLfAvC*`Q%_BAwp`gPQ(U`PTsm{%aYbk8(EFU_cxTyIewTrd4wwD)V4QqbFVL@K z)>Gf5U#YAOyeRY&bzwvKx$a#DsuATZVKdy^W=H{-^pR&m%^hWc#dWajnFo*VOqnI~ z*m62t&x{=Ds%A|OJ!4LFJ;QB}dkps(H`+$(RNboX>Kdw6I-^RiuIXpOSR(X6*g2Wx zDr&&s!J)LfNop$LYX8bM^bPThY72G!l&?Oj=Ds|64l6;)S>o$bWL%+E7#;9 z_hZ*roo%usvur$;$; zHqD25j*OSbN7=th7;NttX3WYusK{#S<2Pk(G-~5t&un#d7@&*eGdmp%JQs(m!x#~V zc2yjdr9R$#Mt{n3T*u~9)>n4cF{-mmmvTm92X$-Zp=YS$L$RE_O?@e#*WzWRhUk45 zGs&4A21keaL>d0f=ps+_~y9*xE}RX30PWd{~;n8v-uXt#fT*?8Z`eC`fi z6f;Mv{ocHJ7%yg(#$&vS@#-qf-0#gEP;c z3vwxEZ&zP3?|Zt%VU*EQF1sc3aGbNeuNQc9MD5cucgSAjNjjW>vIAYST;t_jI=sw* z$ucE#csbr=oc5p`Yi8M80kwLbvi42=`AfNe`7@7uIrD8WbIAghfzIozPeS^=H1m8p zE?dshxmBu=mJ-^^GPe$xt#MT zRp*Vu+z!7P$sAG6Qr1OX;CWp1`wJEpZsl`|%9({n^cY!#2{*Y`?Z;^F`G(Sj|(%)$#bL^I<=4PVaGScGKoRzb$@d zpPOZk@k=;0_B97(eP>cb#~TwIwwSf}Vb&@)Zr3H_jW!lFuK@K?=Fi80#wGTlYNYvK zg+b#tsjG$01P&J)1I;CjyJJTzwj7l{+7dM`~+V=fAzbJVD+1f z$y262`t?c!H>X4J*HxQ{{!#?f;T!KxY@e{QS^JEr-G>ep?OWxYmt%YW_Vv)lhgZG!OT^@0uZst_&Te+< z(t(4oua>)IJTFx!e(vR+*U$DiRo=B`ozvq!saJmQkm=pl++T3#+Y?idH~ziLkv0pK zl+Ry#TiCr{clUI8&A1Bmbx}ko|Ge1#Fq3~OZGZ5S2K&QoSO1h)J@_Zl_J`SSjw`I& zOX=iKM%W+boz?8;KOe9^%=zZ_%<<}ujpCgU;SM-E~ga`Hs$7djD(cRR7;^>e0jq z3;+Dn{%EN4Ii2QlF#FAQ%vArWzj~Pcjf|?rTj%A~#{QRCV`OWcy>-sexm9PR&igu_ zU2DuU*D71$a?Korn)@xZa zT-Tk`9Ct_e-`8o;>*d#3NM|vfC3Tk7`HarWI;}dZ>#VKQJ>J-_@FXMa>-I)Eo9S$& zvz<;Cot<@d*V#*FKb_0;{;$-zTIYJ58+Dq`d%LcGt@B%*dvxyC`IFAWI*;l+uJg3n zf6I7YM|B?8dHBE7Zk|8uWn(*q^me~pVEjF0cU|{-%>F#3U&qe(?d>y-b@~l6@@-w` z$7c42na1}%{5NT?#<)H@`|C9O&Fz?V4Yq%C+eK7^L?G_cUlE`6e?7x zaAAJ&#Xo+@leb{OqUy7wdYJc7Gx^U3?GH1Z$2r%{d1gA#Gspj@X|Cs-=KbEeeY=No z+`iQLwa%S7cj?@%)BHQx-|PB5oj>S2pz~*)hjbp+`HRk9bso`qRA=(1#{T@K>&J8s ze9E})2I)MZ+fV5U6&Db2=a9@i)^v&t~1cf17E3&Nr`jbG+GZo>z0cInKOp%rw_G$2+IlZ>G5&bDUW> z`^_}>!`zOUX1}>V=6%iVH`g=k|GQp{*NgM(*F279n#awoo9Eq3^L&`c-5hVWo9ELU zZ;mt1gPG>~=6L5c`^_}BV~#WHX1|%{ewf=a)9g3*=W*AIInGRTyJnjASF_)_Znm50 zJkK2epQgE9PWk`p`?&c&?ficJzxQq9{cyj2UpTDuSDnXnp3-?nXN1leok=>)&*A3h za`SWg1KporzrPjISwv?Eo#k}?OJ^;ejdixt*FkeSz-Mn9zX^uD7ac(#7H|BhE zJ#(Hp-u(W|O!NL@&NtJ%PdKMJ&m3p2n^T(Oa@r5``I!4{uH(EN=ejvAY;&0S<&xv9 zTPl}S`8-T^Zp|GPS$jBZ=Y}NKl`XmB>K9?sKbJK6CQLlP&K)hk4U<_rb4S%(VbbBd z+_8LjnE0@MZuod_n9Tn^cjVn4CfoPrj*35o$!Dye8=C(dCQ}dQj@5_5(P~b?I{7jz4L#$%$uV`C}PcZ|BaSmH? z6AN((p_q$5Fae*y1G|t2%h53Tfjou`+=&d6dby-^GRHb8cf^$mmv_tlwPEGLWi-rj z;~mOo+ds{qY}TAgTZwAnauBa$9s1x7s#Fh`ugRClK(aOYBI$+_lj zr<{izg0}U-#j|d>G}L*xS-9N9U8r)CkZ_s%7(MBCbr|F3P=4IpC++viX3c4|4f;4- zYT+fF>(_+KMr_3%wE33fh4vVLr*?-+QIteg{16!~HKM|$F&5zyxStCbA3TR3)Wxf4 ziguWTF6e{77#+vaW9lRhLwzv;w5rNlkySLvs~^dRv|)a zuzqgn@JxhsX8qhy>e&dX%=)=uN5u$9V*T8(xOIe_Yn40N_KJ|#dghMw5fSqF$O!Sl zyJ&$}6c`mDE6FD05b`;)2H6eiD2u5mguN(3e;*v9oB|ih`^HAdvM2EDxF;LuxK`H* z5i)js?ilPFA$6X>=qDKCyw3VpA|x>|ciaw&ko~!&cW{Ih%_U*1yFHiqPvUwG$sJ8t zTiHFuVAj`8jgZ%;8GYR+^O_0G9mQB%`H5{QW_{Ib5i)V6QNQ>B`;kl5E{TwxteqRK zeiR|qm*tLKDafT)(%>pJ8rFskWyh{(fjs8%b zU+7eG3ZQM>vof{b*+1nl-M(Ds8J(pVtHvwd@Tn0g?_n2`Iz-B}nvpWSR-~-09Vs=N zM9NXJY~4ud(v*6$Ncp3Aq?BwJDR~-2%Hd@knu{Pch5yMMuipnpuv&$vML_w>Xw?!*ZNL z@!OG7EHzTj;xax+i!8$O->9gE$mU0owN#ywTQ8Eon zumOMIw@;%a7WYx&Gxim38=@ozw^48-$7nO#+Y%*1@G9l4JECMaP9p)WchdG9=X!UP zypFAS>ia0UgwuODR(ql(9C`L}Y^WC_XP@M`;36KNe+b?;Y zlSnKdla-Ww%`QW2-61(!8T!H0d zBfr{wm1_UYvY8be#+q%8&%Se2eYI#A0hP)YhqBpbwyQa+d`6E6 z&ta_Ny#J*9@4va8xnKXuw$#|aGw+MP*vGH`qVGT5H^=ci9oBu^F^XjDMm>I*!#v0J z9Lv#9FvfAbD#!heIgV>Q$$lmNjcxqZxpCb7-zh)IK0j{V^H1=c9MARR*83;@<~8zH zYg}Z1n{i)T@)+|T)1Te^-rO^@YyYdZWo%~!KEWcr%{AnDT~>29IFx5n-t16U{eF0_ zNwj=`jZo!nIDoUL(llDCp(Rw=hW;3VeK?2+U5+JhqiC~e3Bgpnr^`#oP1ujZt)ry^ zT0xaN!3#UvuqJ+iDxX3uTD4^@ybe`<8}l)#L$uWD7%d-mGRi^JRe3QsVY@DWOYTD) z4&irQK0`*~o6ga46*aqLEtlyQEmpLLD!&9D*rr6wa7;%2snJph&!R5cq8CQO2UGDb zR^oH)#WBR<2J*hj+Ng>~=z#w4LI%tV57yu6hU^?E# ztFyR9unZ+S=CK{j_+TyAAqopZcKueVPh0hPLq7hsWafEH+2o~c$N*!g} zWKD7-S(Theu0avXuaQ4t63*ip+Ik?Baz3&x`e6t4ZSbY+Lk=cKp#fs4HzVI512G(< zF%aIgcf?1OqYg#O&BL5?%I(#c=rRatHDo z{DEV-yqmm;cDJJ?2}9Gk$3T@s$hWZ$&9E^&TJ}Jd50GIbF&yJ-8@FB<0$T+ zNQ)Smj}*MtIz|e$iIK(_fw_1e^nAoycAy|KEQB}a_v{xE}jmGk>Pj?Um*;|nA-vJR*dv|o8yLSXgN1VHlxD4 z7#WY1*n(Y{gxT*I_AH2zG7DqG1^)O72hsEW7#WEGyvx{pi(;fau2HT{=3(9tawF=X z(h{~w-wR~Or>u>Y_zn;L9V52wF%pfvU&P2=Sij^im>rCff8!8RQ0bQ#8I4)^0_}h0 zImE`u9-P5>l#h#%;_=K!JM_f{tV)QHs);eu4Bb#RIYt&>BaS3-{BCeAZgPF1Ddu9t zZLZlg&J{*rM|zB`xWoC(;JTyyHol;|6nikBc&u!|F8qdAEX2kNv6AnZ$IEWqX{Wh| zs4M1r&i!WllVo<=dy;uMjd_ywo@9)cI;V^m*;@ChI`aUeiJL7?4Z6gR{r%Z>tZI#pX4~>--tluY4-07>-|BV;u<-}wS~P%LhyO+ zWjKo~uw00h?PUEc924ZZ8Y|0@fK&{>7Arrad)_#C1B-iH*hMq}tPQ(hhEveXGYwrYQMvN%!!kHbK_+9Y_?7P#=CJchkD@jIB7_I&-AJBKT%4Ss{ASU3S&f#(;$>t*o{m0u#BVj#xgGWxZS7f*!ZE$l?zHu2IQrzpSE zjd2$Tt?=(7I>NCEmU%a#pj+Y-O&!B&E5c@}cAM3Wn{?K??=pHX|w0#i5 z_E~p@PrSVLO1!wTRt1lE$?wMT#zpq&59UmNGhV8qDL!~3UY3yYcxOYr{EpHa<7E&& zLNuP=#IeCG7tAq`~t@YHVnrCY(+R`r*NDQ#+(utxo&V5FI|e4jaYFx zUY6ZtAIRSki~G8*-W9fs71)d8h)02|TM0OOP6rKcjyb{YaMNu zAT|ua-nI!6*`IwHz&>FEE}`K-*2PZTLwnZ*nT4_p!5~L3n;SW@t%CW*)B%|)D3F410k%l(Y667`fh`iGiq$}RR5!{@aAjMv1 zdpLvh$UvQ03Gxy`@jfE4basL~L<)0i&EYxY={MLGzQP40y^|pM-b|2ksD(~YZQkSu zIE8#~(T`dfjE7KbzVLQ}e9iihNrH4lJ?vX+I7?PrmmvM{ zCJx{X9-`#>1bH4CQS4LB4;rHrg0UA*f0iH%$gUe{W38cNxgQgx1-f7==3+Zsk0cH~c#It3Etmwbs5N&WSLiShyU_gW?L`883>w@#E{_yjS?-#bx;;sDan zv`?ZOMD)vvat90gCyJodfJCW=0SLqj>_nb{%tdq8L^;FwQRD)&8I&j=AqM*fC(6ri ziE@^_jEAT=#As_rPQW(A;0E#yWj_!NwdT{q66F%x_+gac3-VWVL(>pLA95*v!d zI$FJ-D5n-BO6Z4)viyTY*|H>2_AXA8_Dd6GFy^gf4V3*jQHEeSeqWU+7cgUWqFh6s zHHlINo#2H9*n(7iwKh>|tmC{ez7IJAb=N1#J2-}IpC(F&&p9S!6t1GkXGU9nayVAu z7~*gX)i$sXP-{LUBiY6mTMcW-U1*8teqWyR{@iV&Np&MG?~O2*oB8^Kbhw>)v%eo1?#IxG6;+DDSk&RZesGZB#FW`_weKfM z-bFlL)LP7%%Xxm}K#ajG-L{@Qg$f@q7DF)sD_~n zqQ-Wv3sgn9?W{Ts5I?pNgjx~#^yQC4kgzRI7V+SQuoI$@Oa)34f|({t6@X1^+%)H>$;v$S8; zRN0X$q+8|HF)DzlI$UWM=b8^wpurmq%{`f0M6h%D%|8X1GVOPvR$cUyP@PZ zM4@!)Wa$eJyn~haH=316mSxzAy*Lg_*<|U7&(R!}alK@+EUJ(!zco*mD|m?3Et2IW zG{uzG$?`Uq;xl}MOGxOHEVj;%m)*D$PV@3oSIqUC`_1+z$?UfGB=d3_^Cas%$ry8e z$FYuOvp>76%&~dg*vIu}x9&e}Q~Tw(hS~>{WBcDJt981tei{E{+3EYw-SA}VoxFoljM+n;Mt{n$ zU-#u%7m=YNHXnu?QbwEy8dWX?TdIzGAzmfd*)f7tsa1;fj&)#v7QACHNSh;&Xh1 z?{N^n;SA0p30IJc2Pp70&lTlR1uvotdczeX;SE28Vmdy?r}!M-;CmdzZ#aWK|$oFls z6hd*7Mg>&HbEt`W=nOvu;cPtPl9MGeDXTr_v(_E^N2Mh5Gx$IEuW(r7ZTcJCOO`R1 z=cK1o-Le05`qZ{-T}YN4PVUg|+-BD2Fn02i^V0gmzi+>uAN|33QL
3hhcfWAo!Q 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

F7z>NMYgoX+#>$m=rKEO!s-7>`3yC%F|Ro#6#2 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 diff --git a/node_modules/algoliasearch/README.md b/node_modules/algoliasearch/README.md index e1ea1ea..8c37481 100644 --- a/node_modules/algoliasearch/README.md +++ b/node_modules/algoliasearch/README.md @@ -37,11 +37,11 @@ All of our clients comes with type definition, and are available for both browse ### With a package manager ```bash -yarn add algoliasearch@5.48.0 +yarn add algoliasearch@5.48.1 # or -npm install algoliasearch@5.48.0 +npm install algoliasearch@5.48.1 # or -pnpm add algoliasearch@5.48.0 +pnpm add algoliasearch@5.48.1 ``` ### Without a package manager @@ -50,10 +50,10 @@ Add the following JavaScript snippet to the of your website: ```html // for the full client - + // for the lite client - + ``` ### Usage diff --git a/node_modules/algoliasearch/dist/algoliasearch.umd.js b/node_modules/algoliasearch/dist/algoliasearch.umd.js index 8b28c51..a53ca41 100644 --- a/node_modules/algoliasearch/dist/algoliasearch.umd.js +++ b/node_modules/algoliasearch/dist/algoliasearch.umd.js @@ -4,7 +4,7 @@ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.algoliasearch = {})); })(this, (function (exports) { 'use strict'; - function R(c){let h,d=`algolia-client-js-${c.key}`;function q(){return h===void 0&&(h=c.localStorage||window.localStorage),h}function p(){return JSON.parse(q().getItem(d)||"{}")}function m(t){q().setItem(d,JSON.stringify(t));}function l(){let t=c.timeToLive?c.timeToLive*1e3:null,e=p(),r=Object.fromEntries(Object.entries(e).filter(([,s])=>s.timestamp!==void 0));if(m(r),!t)return;let a=Object.fromEntries(Object.entries(r).filter(([,s])=>{let o=new Date().getTime();return !(s.timestamp+tPromise.resolve()}){return Promise.resolve().then(()=>(l(),p()[JSON.stringify(t)])).then(a=>Promise.all([a?a.value:e(),a!==void 0])).then(([a,s])=>Promise.all([a,s||r.miss(a)])).then(([a])=>a)},set(t,e){return Promise.resolve().then(()=>{let r=p();return r[JSON.stringify(t)]={timestamp:new Date().getTime(),value:e},q().setItem(d,JSON.stringify(r)),e})},delete(t){return Promise.resolve().then(()=>{let e=p();delete e[JSON.stringify(t)],q().setItem(d,JSON.stringify(e));})},clear(){return Promise.resolve().then(()=>{q().removeItem(d);})}}}function Se(){return {get(c,h,d={miss:()=>Promise.resolve()}){return h().then(p=>Promise.all([p,d.miss(p)])).then(([p])=>p)},set(c,h){return Promise.resolve(h)},delete(c){return Promise.resolve()},clear(){return Promise.resolve()}}}function S(c){let h=[...c.caches],d=h.shift();return d===void 0?Se():{get(q,p,m={miss:()=>Promise.resolve()}){return d.get(q,p,m).catch(()=>S({caches:h}).get(q,p,m))},set(q,p){return d.set(q,p).catch(()=>S({caches:h}).set(q,p))},delete(q){return d.delete(q).catch(()=>S({caches:h}).delete(q))},clear(){return d.clear().catch(()=>S({caches:h}).clear())}}}function E(c={serializable:true}){let h={};return {get(d,q,p={miss:()=>Promise.resolve()}){let m=JSON.stringify(d);if(m in h)return Promise.resolve(c.serializable?JSON.parse(h[m]):h[m]);let l=q();return l.then(t=>p.miss(t)).then(()=>l)},set(d,q){return h[JSON.stringify(d)]=c.serializable?JSON.stringify(q):q,Promise.resolve(q)},delete(d){return delete h[JSON.stringify(d)],Promise.resolve()},clear(){return h={},Promise.resolve()}}}function ve(c){let h={value:`Algolia for JavaScript (${c})`,add(d){let q=`; ${d.segment}${d.version!==void 0?` (${d.version})`:""}`;return h.value.indexOf(q)===-1&&(h.value=`${h.value}${q}`),h}};return h}function I(c,h,d="WithinHeaders"){let q={"x-algolia-api-key":h,"x-algolia-application-id":c};return {headers(){return d==="WithinHeaders"?q:{}},queryParameters(){return d==="WithinQueryParameters"?q:{}}}}function k({func:c,validate:h,aggregator:d,error:q,timeout:p=()=>0}){let m=l=>new Promise((t,e)=>{c(l).then(async r=>(d&&await d(r),await h(r)?t(r):q&&await q.validate(r)?e(new Error(await q.message(r))):setTimeout(()=>{m(r).then(t).catch(e);},await p()))).catch(r=>{e(r);});});return m()}function C({algoliaAgents:c,client:h,version:d}){let q=ve(d).add({segment:h,version:d});return c.forEach(p=>q.add(p)),q}function A(){return {debug(c,h){return Promise.resolve()},info(c,h){return Promise.resolve()},error(c,h){return Promise.resolve()}}}var _=120*1e3;function M(c,h="up"){let d=Date.now();function q(){return h==="up"||Date.now()-d>_}function p(){return h==="timed out"&&Date.now()-d<=_}return {...c,status:h,lastUpdate:d,isUp:q,isTimedOut:p}}var J=class extends Error{name="AlgoliaError";constructor(c,h){super(c),h&&(this.name=h);}};var K=class extends J{stackTrace;constructor(c,h,d){super(c,d),this.stackTrace=h;}},Re=class extends K{constructor(c){super("Unreachable hosts - your application id may be incorrect. If the error persists, please visit our help center https://alg.li/support-unreachable-hosts or reach out to the Algolia Support team: https://alg.li/support",c,"RetryError");}},G=class extends K{status;constructor(c,h,d,q="ApiError"){super(c,d,q),this.status=h;}},Ie=class extends J{response;constructor(c,h){super(c,"DeserializationError"),this.response=h;}},Ce=class extends G{error;constructor(c,h,d,q){super(c,h,q,"DetailedApiError"),this.error=d;}};function j(c){let h=c;for(let d=c.length-1;d>0;d--){let q=Math.floor(Math.random()*(d+1)),p=c[d];h[d]=c[q],h[q]=p;}return h}function Ae(c,h,d){let q=be(d),p=`${c.protocol}://${c.url}${c.port?`:${c.port}`:""}/${h.charAt(0)==="/"?h.substring(1):h}`;return q.length&&(p+=`?${q}`),p}function be(c){return Object.keys(c).filter(h=>c[h]!==void 0).sort().map(h=>`${h}=${encodeURIComponent(Object.prototype.toString.call(c[h])==="[object Array]"?c[h].join(","):c[h]).replace(/\+/g,"%20")}`).join("&")}function De(c,h){if(c.method==="GET"||c.data===void 0&&h.data===void 0)return;let d=Array.isArray(c.data)?c.data:{...c.data,...h.data};return JSON.stringify(d)}function xe(c,h,d){let q={Accept:"application/json",...c,...h,...d},p={};return Object.keys(q).forEach(m=>{let l=q[m];p[m.toLowerCase()]=l;}),p}function ke(c){try{return JSON.parse(c.content)}catch(h){throw new Ie(h.message,c)}}function Oe({content:c,status:h},d){try{let q=JSON.parse(c);return "error"in q?new Ce(q.message,h,q.error,d):new G(q.message,h,d)}catch{}return new G(c,h,d)}function Ue({isTimedOut:c,status:h}){return !c&&~~h===0}function Ne({isTimedOut:c,status:h}){return c||Ue({isTimedOut:c,status:h})||~~(h/100)!==2&&~~(h/100)!==4}function Be({status:c}){return ~~(c/100)===2}function Ge(c){return c.map(h=>X(h))}function X(c){let h=c.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return {...c,request:{...c.request,headers:{...c.request.headers,...h}}}}function b({hosts:c,hostsCache:h,baseHeaders:d,logger:q,baseQueryParameters:p,algoliaAgent:m,timeouts:l,requester:t,requestsCache:e,responsesCache:r}){async function a(n){let i=await Promise.all(n.map(y=>h.get(y,()=>Promise.resolve(M(y))))),u=i.filter(y=>y.isUp()),g=i.filter(y=>y.isTimedOut()),P=[...u,...g];return {hosts:P.length>0?P:n,getTimeout(y,f){return (g.length===0&&y===0?1:g.length+3+y)*f}}}async function s(n,i,u){let g=[],P=De(n,i),w=xe(d,n.headers,i.headers),y=n.method==="GET"?{...n.data,...i.data}:{},f={...p,...n.queryParameters,...y};if(m.value&&(f["x-algolia-agent"]=m.value),i&&i.queryParameters)for(let x of Object.keys(i.queryParameters))!i.queryParameters[x]||Object.prototype.toString.call(i.queryParameters[x])==="[object Object]"?f[x]=i.queryParameters[x]:f[x]=i.queryParameters[x].toString();let T=0,v=async(x,F)=>{let B=x.pop();if(B===void 0)throw new Re(Ge(g));let L={...l,...i.timeouts},V={data:P,headers:w,method:n.method,url:Ae(B,n.path,f),connectTimeout:F(T,L.connect),responseTimeout:F(T,u?L.read:L.write)},$=H=>{let z={request:V,response:H,host:B,triesLeft:x.length};return g.push(z),z},U=await t.send(V);if(Ne(U)){let H=$(U);return U.isTimedOut&&T++,q.info("Retryable failure",X(H)),await h.set(B,M(B,U.isTimedOut?"timed out":"down")),v(x,F)}if(Be(U))return ke(U);throw $(U),Oe(U,g)},O=c.filter(x=>x.accept==="readWrite"||(u?x.accept==="read":x.accept==="write")),N=await a(O);return v([...N.hosts].reverse(),N.getTimeout)}function o(n,i={}){let u=()=>s(n,i,g),g=n.useReadTransporter||n.method==="GET";if((i.cacheable||n.cacheable)!==true)return u();let w={request:n,requestOptions:i,transporter:{queryParameters:p,headers:d}};return r.get(w,()=>e.get(w,()=>e.set(w,u()).then(y=>Promise.all([e.delete(w),y]),y=>Promise.all([e.delete(w),Promise.reject(y)])).then(([y,f])=>f)),{miss:y=>r.set(w,y)})}return {hostsCache:h,requester:t,timeouts:l,logger:q,algoliaAgent:m,baseHeaders:d,baseQueryParameters:p,hosts:c,request:o,requestsCache:e,responsesCache:r}}function D(){function c(h){return new Promise(d=>{let q=new XMLHttpRequest;q.open(h.method,h.url,true),Object.keys(h.headers).forEach(t=>q.setRequestHeader(t,h.headers[t]));let p=(t,e)=>setTimeout(()=>{q.abort(),d({status:0,content:e,isTimedOut:true});},t),m=p(h.connectTimeout,"Connection timeout"),l;q.onreadystatechange=()=>{q.readyState>q.OPENED&&l===void 0&&(clearTimeout(m),l=p(h.responseTimeout,"Socket timeout"));},q.onerror=()=>{q.status===0&&(clearTimeout(m),clearTimeout(l),d({content:q.responseText||"Network request failed",status:q.status,isTimedOut:false}));},q.onload=()=>{clearTimeout(m),clearTimeout(l),d({content:q.responseText,status:q.status,isTimedOut:false});},q.send(h.data);})}return {send:c}}var Z="1.14.0",Y=["de","us"];function je(c){return [{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]}function Fe({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:je(p),...m,algoliaAgent:C({algoliaAgents:q,client:"AbtestingV3",version:Z}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},addABTests(e,r){if(!e)throw new Error("Parameter `addABTestsRequest` is required when calling `addABTests`.");if(!e.name)throw new Error("Parameter `addABTestsRequest.name` is required when calling `addABTests`.");if(!e.variants)throw new Error("Parameter `addABTestsRequest.variants` is required when calling `addABTests`.");if(!e.metrics)throw new Error("Parameter `addABTestsRequest.metrics` is required when calling `addABTests`.");if(!e.endAt)throw new Error("Parameter `addABTestsRequest.endAt` is required when calling `addABTests`.");let n={method:"POST",path:"/3/abtests",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `deleteABTest`.");let n={method:"DELETE",path:"/3/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},estimateABTest(e,r){if(!e)throw new Error("Parameter `estimateABTestRequest` is required when calling `estimateABTest`.");if(!e.configuration)throw new Error("Parameter `estimateABTestRequest.configuration` is required when calling `estimateABTest`.");if(!e.variants)throw new Error("Parameter `estimateABTestRequest.variants` is required when calling `estimateABTest`.");let n={method:"POST",path:"/3/abtests/estimate",queryParameters:{},headers:{},data:e};return t.request(n,r)},getABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `getABTest`.");let n={method:"GET",path:"/3/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTimeseries({id:e,startDate:r,endDate:a,metric:s},o){if(!e)throw new Error("Parameter `id` is required when calling `getTimeseries`.");let n="/3/abtests/{id}/timeseries".replace("{id}",encodeURIComponent(e)),i={},u={};r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.metric=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},listABTests({offset:e,limit:r,indexPrefix:a,indexSuffix:s,direction:o}={},n=void 0){let i="/3/abtests",u={},g={};e!==void 0&&(g.offset=e.toString()),r!==void 0&&(g.limit=r.toString()),a!==void 0&&(g.indexPrefix=a.toString()),s!==void 0&&(g.indexSuffix=s.toString()),o!==void 0&&(g.direction=o.toString());let P={method:"GET",path:i,queryParameters:g,headers:u};return t.request(P,n)},stopABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `stopABTest`.");let n={method:"POST",path:"/3/abtests/{id}/stop".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)}}}function ee(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!Y.includes(d)))throw new Error(`\`region\` must be one of the following: ${Y.join(", ")}`);return Fe({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${Z}-${c}`}),E()]}),...q})}var te="5.48.0",re=["de","us"];function Le(c){return [{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]}function He({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Le(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Abtesting",version:te}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},addABTests(e,r){if(!e)throw new Error("Parameter `addABTestsRequest` is required when calling `addABTests`.");if(!e.name)throw new Error("Parameter `addABTestsRequest.name` is required when calling `addABTests`.");if(!e.variants)throw new Error("Parameter `addABTestsRequest.variants` is required when calling `addABTests`.");if(!e.endAt)throw new Error("Parameter `addABTestsRequest.endAt` is required when calling `addABTests`.");let n={method:"POST",path:"/2/abtests",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `deleteABTest`.");let n={method:"DELETE",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},estimateABTest(e,r){if(!e)throw new Error("Parameter `estimateABTestRequest` is required when calling `estimateABTest`.");if(!e.configuration)throw new Error("Parameter `estimateABTestRequest.configuration` is required when calling `estimateABTest`.");if(!e.variants)throw new Error("Parameter `estimateABTestRequest.variants` is required when calling `estimateABTest`.");let n={method:"POST",path:"/2/abtests/estimate",queryParameters:{},headers:{},data:e};return t.request(n,r)},getABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `getABTest`.");let n={method:"GET",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},listABTests({offset:e,limit:r,indexPrefix:a,indexSuffix:s}={},o=void 0){let n="/2/abtests",i={},u={};e!==void 0&&(u.offset=e.toString()),r!==void 0&&(u.limit=r.toString()),a!==void 0&&(u.indexPrefix=a.toString()),s!==void 0&&(u.indexSuffix=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},stopABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `stopABTest`.");let n={method:"POST",path:"/2/abtests/{id}/stop".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)}}}function ae(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!re.includes(d)))throw new Error(`\`region\` must be one of the following: ${re.join(", ")}`);return He({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${te}-${c}`}),E()]}),...q})}var ne="5.48.0",se=["de","us"];function We(c){return [{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]}function Qe({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:We(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Analytics",version:ne}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},getAddToCartRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getAddToCartRate`.");let n="/2/conversions/addToCartRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getAverageClickPosition({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getAverageClickPosition`.");let n="/2/clicks/averageClickPosition",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getClickPositions({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getClickPositions`.");let n="/2/clicks/positions",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getClickThroughRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getClickThroughRate`.");let n="/2/clicks/clickThroughRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getConversionRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getConversionRate`.");let n="/2/conversions/conversionRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getNoClickRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getNoClickRate`.");let n="/2/searches/noClickRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getNoResultsRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getNoResultsRate`.");let n="/2/searches/noResultRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getPurchaseRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getPurchaseRate`.");let n="/2/conversions/purchaseRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getRevenue({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getRevenue`.");let n="/2/conversions/revenue",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getSearchesCount({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesCount`.");let n="/2/searches/count",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getSearchesNoClicks({index:e,startDate:r,endDate:a,limit:s,offset:o,tags:n},i){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoClicks`.");let u="/2/searches/noClicks",g={},P={};e!==void 0&&(P.index=e.toString()),r!==void 0&&(P.startDate=r.toString()),a!==void 0&&(P.endDate=a.toString()),s!==void 0&&(P.limit=s.toString()),o!==void 0&&(P.offset=o.toString()),n!==void 0&&(P.tags=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},getSearchesNoResults({index:e,startDate:r,endDate:a,limit:s,offset:o,tags:n},i){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoResults`.");let u="/2/searches/noResults",g={},P={};e!==void 0&&(P.index=e.toString()),r!==void 0&&(P.startDate=r.toString()),a!==void 0&&(P.endDate=a.toString()),s!==void 0&&(P.limit=s.toString()),o!==void 0&&(P.offset=o.toString()),n!==void 0&&(P.tags=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},getStatus({index:e},r){if(!e)throw new Error("Parameter `index` is required when calling `getStatus`.");let a="/2/status",s={},o={};e!==void 0&&(o.index=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return t.request(n,r)},getTopCountries({index:e,startDate:r,endDate:a,limit:s,offset:o,tags:n},i){if(!e)throw new Error("Parameter `index` is required when calling `getTopCountries`.");let u="/2/countries",g={},P={};e!==void 0&&(P.index=e.toString()),r!==void 0&&(P.startDate=r.toString()),a!==void 0&&(P.endDate=a.toString()),s!==void 0&&(P.limit=s.toString()),o!==void 0&&(P.offset=o.toString()),n!==void 0&&(P.tags=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},getTopFilterAttributes({index:e,search:r,startDate:a,endDate:s,limit:o,offset:n,tags:i},u){if(!e)throw new Error("Parameter `index` is required when calling `getTopFilterAttributes`.");let g="/2/filters",P={},w={};e!==void 0&&(w.index=e.toString()),r!==void 0&&(w.search=r.toString()),a!==void 0&&(w.startDate=a.toString()),s!==void 0&&(w.endDate=s.toString()),o!==void 0&&(w.limit=o.toString()),n!==void 0&&(w.offset=n.toString()),i!==void 0&&(w.tags=i.toString());let y={method:"GET",path:g,queryParameters:w,headers:P};return t.request(y,u)},getTopFilterForAttribute({attribute:e,index:r,search:a,startDate:s,endDate:o,limit:n,offset:i,tags:u},g){if(!e)throw new Error("Parameter `attribute` is required when calling `getTopFilterForAttribute`.");if(!r)throw new Error("Parameter `index` is required when calling `getTopFilterForAttribute`.");let P="/2/filters/{attribute}".replace("{attribute}",encodeURIComponent(e)),w={},y={};r!==void 0&&(y.index=r.toString()),a!==void 0&&(y.search=a.toString()),s!==void 0&&(y.startDate=s.toString()),o!==void 0&&(y.endDate=o.toString()),n!==void 0&&(y.limit=n.toString()),i!==void 0&&(y.offset=i.toString()),u!==void 0&&(y.tags=u.toString());let f={method:"GET",path:P,queryParameters:y,headers:w};return t.request(f,g)},getTopFiltersNoResults({index:e,search:r,startDate:a,endDate:s,limit:o,offset:n,tags:i},u){if(!e)throw new Error("Parameter `index` is required when calling `getTopFiltersNoResults`.");let g="/2/filters/noResults",P={},w={};e!==void 0&&(w.index=e.toString()),r!==void 0&&(w.search=r.toString()),a!==void 0&&(w.startDate=a.toString()),s!==void 0&&(w.endDate=s.toString()),o!==void 0&&(w.limit=o.toString()),n!==void 0&&(w.offset=n.toString()),i!==void 0&&(w.tags=i.toString());let y={method:"GET",path:g,queryParameters:w,headers:P};return t.request(y,u)},getTopHits({index:e,search:r,clickAnalytics:a,revenueAnalytics:s,startDate:o,endDate:n,limit:i,offset:u,tags:g},P){if(!e)throw new Error("Parameter `index` is required when calling `getTopHits`.");let w="/2/hits",y={},f={};e!==void 0&&(f.index=e.toString()),r!==void 0&&(f.search=r.toString()),a!==void 0&&(f.clickAnalytics=a.toString()),s!==void 0&&(f.revenueAnalytics=s.toString()),o!==void 0&&(f.startDate=o.toString()),n!==void 0&&(f.endDate=n.toString()),i!==void 0&&(f.limit=i.toString()),u!==void 0&&(f.offset=u.toString()),g!==void 0&&(f.tags=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},getTopSearches({index:e,clickAnalytics:r,revenueAnalytics:a,startDate:s,endDate:o,orderBy:n,direction:i,limit:u,offset:g,tags:P},w){if(!e)throw new Error("Parameter `index` is required when calling `getTopSearches`.");let y="/2/searches",f={},T={};e!==void 0&&(T.index=e.toString()),r!==void 0&&(T.clickAnalytics=r.toString()),a!==void 0&&(T.revenueAnalytics=a.toString()),s!==void 0&&(T.startDate=s.toString()),o!==void 0&&(T.endDate=o.toString()),n!==void 0&&(T.orderBy=n.toString()),i!==void 0&&(T.direction=i.toString()),u!==void 0&&(T.limit=u.toString()),g!==void 0&&(T.offset=g.toString()),P!==void 0&&(T.tags=P.toString());let v={method:"GET",path:y,queryParameters:T,headers:f};return t.request(v,w)},getUsersCount({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getUsersCount`.");let n="/2/users/count",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)}}}function oe(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!se.includes(d)))throw new Error(`\`region\` must be one of the following: ${se.join(", ")}`);return Qe({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${ne}-${c}`}),E()]}),...q})}var ce="5.48.0",ie=["de","us"];function Ve(c){return [{url:c?"insights.{region}.algolia.io".replace("{region}",c):"insights.algolia.io",accept:"readWrite",protocol:"https"}]}function $e({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Ve(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Insights",version:ce}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteUserToken({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserToken`.");let n={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},pushEvents(e,r){if(!e)throw new Error("Parameter `insightsEvents` is required when calling `pushEvents`.");if(!e.events)throw new Error("Parameter `insightsEvents.events` is required when calling `pushEvents`.");let n={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:e};return t.request(n,r)}}}function ue(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!ie.includes(d)))throw new Error(`\`region\` must be one of the following: ${ie.join(", ")}`);return $e({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${ce}-${c}`}),E()]}),...q})}var de="5.48.0",he=["eu","us"];function ze(c){return [{url:"personalization.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]}function _e({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:ze(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Personalization",version:de}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteUserProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserProfile`.");let n={method:"DELETE",path:"/1/profiles/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getPersonalizationStrategy(e){let o={method:"GET",path:"/1/strategies/personalization",queryParameters:{},headers:{}};return t.request(o,e)},getUserTokenProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `getUserTokenProfile`.");let n={method:"GET",path:"/1/profiles/personalization/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},setPersonalizationStrategy(e,r){if(!e)throw new Error("Parameter `personalizationStrategyParams` is required when calling `setPersonalizationStrategy`.");if(!e.eventsScoring)throw new Error("Parameter `personalizationStrategyParams.eventsScoring` is required when calling `setPersonalizationStrategy`.");if(!e.facetsScoring)throw new Error("Parameter `personalizationStrategyParams.facetsScoring` is required when calling `setPersonalizationStrategy`.");if(!e.personalizationImpact)throw new Error("Parameter `personalizationStrategyParams.personalizationImpact` is required when calling `setPersonalizationStrategy`.");let n={method:"POST",path:"/1/strategies/personalization",queryParameters:{},headers:{},data:e};return t.request(n,r)}}}function le(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(!d||d&&(typeof d!="string"||!he.includes(d)))throw new Error(`\`region\` is required and must be one of the following: ${he.join(", ")}`);return _e({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${de}-${c}`}),E()]}),...q})}var qe="5.48.0",me=["eu","us"];function Me(c){return [{url:"query-suggestions.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]}function Je({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Me(p),...m,algoliaAgent:C({algoliaAgents:q,client:"QuerySuggestions",version:qe}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},createConfig(e,r){if(!e)throw new Error("Parameter `configurationWithIndex` is required when calling `createConfig`.");let n={method:"POST",path:"/1/configs",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteConfig({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteConfig`.");let n={method:"DELETE",path:"/1/configs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getAllConfigs(e){let o={method:"GET",path:"/1/configs",queryParameters:{},headers:{}};return t.request(o,e)},getConfig({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getConfig`.");let n={method:"GET",path:"/1/configs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getConfigStatus({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getConfigStatus`.");let n={method:"GET",path:"/1/configs/{indexName}/status".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getLogFile({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getLogFile`.");let n={method:"GET",path:"/1/logs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},updateConfig({indexName:e,configuration:r},a){if(!e)throw new Error("Parameter `indexName` is required when calling `updateConfig`.");if(!r)throw new Error("Parameter `configuration` is required when calling `updateConfig`.");if(!r.sourceIndices)throw new Error("Parameter `configuration.sourceIndices` is required when calling `updateConfig`.");let i={method:"PUT",path:"/1/configs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)}}}function ge(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(!d||d&&(typeof d!="string"||!me.includes(d)))throw new Error(`\`region\` is required and must be one of the following: ${me.join(", ")}`);return Je({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${qe}-${c}`}),E()]}),...q})}var W="5.48.0";function Ke(c){return [{url:`${c}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${c}.algolia.net`,accept:"write",protocol:"https"}].concat(j([{url:`${c}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}function Xe({appId:c,apiKey:h,authMode:d,algoliaAgents:q,...p}){let m=I(c,h,d),l=b({hosts:Ke(c),...p,algoliaAgent:C({algoliaAgents:q,client:"Search",version:W}),baseHeaders:{"content-type":"text/plain",...m.headers(),...p.baseHeaders},baseQueryParameters:{...m.queryParameters(),...p.baseQueryParameters}});return {transporter:l,appId:c,apiKey:h,clearCache(){return Promise.all([l.requestsCache.clear(),l.responsesCache.clear()]).then(()=>{})},get _ua(){return l.algoliaAgent.value},addAlgoliaAgent(t,e){l.algoliaAgent.add({segment:t,version:e});},setClientApiKey({apiKey:t}){!d||d==="WithinHeaders"?l.baseHeaders["x-algolia-api-key"]=t:l.baseQueryParameters["x-algolia-api-key"]=t;},waitForTask({indexName:t,taskID:e,maxRetries:r=50,timeout:a=o=>Math.min(o*200,5e3)},s){let o=0;return k({func:()=>this.getTask({indexName:t,taskID:e},s),validate:n=>n.status==="published",aggregator:()=>o+=1,error:{validate:()=>o>=r,message:()=>`The maximum number of retries exceeded. (${o}/${r})`},timeout:()=>a(o)})},waitForAppTask({taskID:t,maxRetries:e=50,timeout:r=s=>Math.min(s*200,5e3)},a){let s=0;return k({func:()=>this.getAppTask({taskID:t},a),validate:o=>o.status==="published",aggregator:()=>s+=1,error:{validate:()=>s>=e,message:()=>`The maximum number of retries exceeded. (${s}/${e})`},timeout:()=>r(s)})},waitForApiKey({operation:t,key:e,apiKey:r,maxRetries:a=50,timeout:s=n=>Math.min(n*200,5e3)},o){let n=0,i={aggregator:()=>n+=1,error:{validate:()=>n>=a,message:()=>`The maximum number of retries exceeded. (${n}/${a})`},timeout:()=>s(n)};if(t==="update"){if(!r)throw new Error("`apiKey` is required when waiting for an `update` operation.");return k({...i,func:()=>this.getApiKey({key:e},o),validate:u=>{for(let g of Object.keys(r)){let P=r[g],w=u[g];if(Array.isArray(P)&&Array.isArray(w)){if(P.length!==w.length||P.some((y,f)=>y!==w[f]))return false}else if(P!==w)return false}return true}})}return k({...i,func:()=>this.getApiKey({key:e},o).catch(u=>{if(u.status!==404)throw u}),validate:u=>t==="add"?u!==void 0:u===void 0})},browseObjects({indexName:t,browseParams:e,...r},a){return k({func:s=>this.browse({indexName:t,browseParams:{cursor:s?s.cursor:void 0,hitsPerPage:1e3,...e}},a),validate:s=>s.cursor===void 0,...r})},browseRules({indexName:t,searchRulesParams:e,...r},a){let s={...e,hitsPerPage:e?.hitsPerPage||1e3};return k({func:o=>this.searchRules({indexName:t,searchRulesParams:{...s,page:o?o.page+1:s.page||0}},a),validate:o=>o.hits.length{let n=this.searchSynonyms({indexName:t,searchSynonymsParams:{...s,page:s.page}},a);return s.page+=1,n},validate:o=>o.hits.length({objectID:o})),action:"deleteObject",waitForTasks:r,batchSize:a},s)},async partialUpdateObjects({indexName:t,objects:e,createIfNotExists:r,waitForTasks:a,batchSize:s},o){return await this.chunkedBatch({indexName:t,objects:e,action:r?"partialUpdateObject":"partialUpdateObjectNoCreate",batchSize:s,waitForTasks:a},o)},async replaceAllObjects({indexName:t,objects:e,batchSize:r,scopes:a},s){let o=Math.floor(Math.random()*1e6)+1e5,n=`${t}_tmp_${o}`;a===void 0&&(a=["settings","rules","synonyms"]);try{let i=await this.operationIndex({indexName:t,operationIndexParams:{operation:"copy",destination:n,scope:a}},s),u=await this.chunkedBatch({indexName:n,objects:e,waitForTasks:!0,batchSize:r},s);await this.waitForTask({indexName:n,taskID:i.taskID}),i=await this.operationIndex({indexName:t,operationIndexParams:{operation:"copy",destination:n,scope:a}},s),await this.waitForTask({indexName:n,taskID:i.taskID});let g=await this.operationIndex({indexName:n,operationIndexParams:{operation:"move",destination:t}},s);return await this.waitForTask({indexName:n,taskID:g.taskID}),{copyOperationResponse:i,batchResponses:u,moveOperationResponse:g}}catch(i){throw await this.deleteIndex({indexName:n}),i}},async indexExists({indexName:t}){try{await this.getSettings({indexName:t});}catch(e){if(e instanceof G&&e.status===404)return false;throw e}return true},searchForHits(t,e){return this.search(t,e)},searchForFacets(t,e){return this.search(t,e)},addApiKey(t,e){if(!t)throw new Error("Parameter `apiKey` is required when calling `addApiKey`.");if(!t.acl)throw new Error("Parameter `apiKey.acl` is required when calling `addApiKey`.");let o={method:"POST",path:"/1/keys",queryParameters:{},headers:{},data:t};return l.request(o,e)},addOrUpdateObject({indexName:t,objectID:e,body:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `addOrUpdateObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `addOrUpdateObject`.");if(!r)throw new Error("Parameter `body` is required when calling `addOrUpdateObject`.");let i={method:"PUT",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return l.request(i,a)},appendSource(t,e){if(!t)throw new Error("Parameter `source` is required when calling `appendSource`.");if(!t.source)throw new Error("Parameter `source.source` is required when calling `appendSource`.");let o={method:"POST",path:"/1/security/sources/append",queryParameters:{},headers:{},data:t};return l.request(o,e)},assignUserId({xAlgoliaUserID:t,assignUserIdParams:e},r){if(!t)throw new Error("Parameter `xAlgoliaUserID` is required when calling `assignUserId`.");if(!e)throw new Error("Parameter `assignUserIdParams` is required when calling `assignUserId`.");if(!e.cluster)throw new Error("Parameter `assignUserIdParams.cluster` is required when calling `assignUserId`.");let a="/1/clusters/mapping",s={},o={};t!==void 0&&(s["X-Algolia-User-ID"]=t.toString());let n={method:"POST",path:a,queryParameters:o,headers:s,data:e};return l.request(n,r)},batch({indexName:t,batchWriteParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `batch`.");if(!e)throw new Error("Parameter `batchWriteParams` is required when calling `batch`.");if(!e.requests)throw new Error("Parameter `batchWriteParams.requests` is required when calling `batch`.");let n={method:"POST",path:"/1/indexes/{indexName}/batch".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},batchAssignUserIds({xAlgoliaUserID:t,batchAssignUserIdsParams:e},r){if(!t)throw new Error("Parameter `xAlgoliaUserID` is required when calling `batchAssignUserIds`.");if(!e)throw new Error("Parameter `batchAssignUserIdsParams` is required when calling `batchAssignUserIds`.");if(!e.cluster)throw new Error("Parameter `batchAssignUserIdsParams.cluster` is required when calling `batchAssignUserIds`.");if(!e.users)throw new Error("Parameter `batchAssignUserIdsParams.users` is required when calling `batchAssignUserIds`.");let a="/1/clusters/mapping/batch",s={},o={};t!==void 0&&(s["X-Algolia-User-ID"]=t.toString());let n={method:"POST",path:a,queryParameters:o,headers:s,data:e};return l.request(n,r)},batchDictionaryEntries({dictionaryName:t,batchDictionaryEntriesParams:e},r){if(!t)throw new Error("Parameter `dictionaryName` is required when calling `batchDictionaryEntries`.");if(!e)throw new Error("Parameter `batchDictionaryEntriesParams` is required when calling `batchDictionaryEntries`.");if(!e.requests)throw new Error("Parameter `batchDictionaryEntriesParams.requests` is required when calling `batchDictionaryEntries`.");let n={method:"POST",path:"/1/dictionaries/{dictionaryName}/batch".replace("{dictionaryName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},browse({indexName:t,browseParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `browse`.");let n={method:"POST",path:"/1/indexes/{indexName}/browse".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true};return l.request(n,r)},clearObjects({indexName:t},e){if(!t)throw new Error("Parameter `indexName` is required when calling `clearObjects`.");let o={method:"POST",path:"/1/indexes/{indexName}/clear".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},clearRules({indexName:t,forwardToReplicas:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `clearRules`.");let a="/1/indexes/{indexName}/rules/clear".replace("{indexName}",encodeURIComponent(t)),s={},o={};e!==void 0&&(o.forwardToReplicas=e.toString());let n={method:"POST",path:a,queryParameters:o,headers:s};return l.request(n,r)},clearSynonyms({indexName:t,forwardToReplicas:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `clearSynonyms`.");let a="/1/indexes/{indexName}/synonyms/clear".replace("{indexName}",encodeURIComponent(t)),s={},o={};e!==void 0&&(o.forwardToReplicas=e.toString());let n={method:"POST",path:a,queryParameters:o,headers:s};return l.request(n,r)},customDelete({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customDelete`.");let n={method:"DELETE",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customGet({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customGet`.");let n={method:"GET",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customPost({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPost`.");let i={method:"POST",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},customPut({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPut`.");let i={method:"PUT",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},deleteApiKey({key:t},e){if(!t)throw new Error("Parameter `key` is required when calling `deleteApiKey`.");let o={method:"DELETE",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},deleteBy({indexName:t,deleteByParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteBy`.");if(!e)throw new Error("Parameter `deleteByParams` is required when calling `deleteBy`.");let n={method:"POST",path:"/1/indexes/{indexName}/deleteByQuery".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},deleteIndex({indexName:t},e){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteIndex`.");let o={method:"DELETE",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},deleteObject({indexName:t,objectID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `deleteObject`.");let n={method:"DELETE",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},deleteRule({indexName:t,objectID:e,forwardToReplicas:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteRule`.");if(!e)throw new Error("Parameter `objectID` is required when calling `deleteRule`.");let s="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),o={},n={};r!==void 0&&(n.forwardToReplicas=r.toString());let i={method:"DELETE",path:s,queryParameters:n,headers:o};return l.request(i,a)},deleteSource({source:t},e){if(!t)throw new Error("Parameter `source` is required when calling `deleteSource`.");let o={method:"DELETE",path:"/1/security/sources/{source}".replace("{source}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},deleteSynonym({indexName:t,objectID:e,forwardToReplicas:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteSynonym`.");if(!e)throw new Error("Parameter `objectID` is required when calling `deleteSynonym`.");let s="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),o={},n={};r!==void 0&&(n.forwardToReplicas=r.toString());let i={method:"DELETE",path:s,queryParameters:n,headers:o};return l.request(i,a)},getApiKey({key:t},e){if(!t)throw new Error("Parameter `key` is required when calling `getApiKey`.");let o={method:"GET",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getAppTask({taskID:t},e){if(!t)throw new Error("Parameter `taskID` is required when calling `getAppTask`.");let o={method:"GET",path:"/1/task/{taskID}".replace("{taskID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getDictionaryLanguages(t){let s={method:"GET",path:"/1/dictionaries/*/languages",queryParameters:{},headers:{}};return l.request(s,t)},getDictionarySettings(t){let s={method:"GET",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{}};return l.request(s,t)},getLogs({offset:t,length:e,indexName:r,type:a}={},s=void 0){let o="/1/logs",n={},i={};t!==void 0&&(i.offset=t.toString()),e!==void 0&&(i.length=e.toString()),r!==void 0&&(i.indexName=r.toString()),a!==void 0&&(i.type=a.toString());let u={method:"GET",path:o,queryParameters:i,headers:n};return l.request(u,s)},getObject({indexName:t,objectID:e,attributesToRetrieve:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `getObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `getObject`.");let s="/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),o={},n={};r!==void 0&&(n.attributesToRetrieve=r.toString());let i={method:"GET",path:s,queryParameters:n,headers:o};return l.request(i,a)},getObjects(t,e){if(!t)throw new Error("Parameter `getObjectsParams` is required when calling `getObjects`.");if(!t.requests)throw new Error("Parameter `getObjectsParams.requests` is required when calling `getObjects`.");let o={method:"POST",path:"/1/indexes/*/objects",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},getRule({indexName:t,objectID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getRule`.");if(!e)throw new Error("Parameter `objectID` is required when calling `getRule`.");let n={method:"GET",path:"/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getSettings({indexName:t,getVersion:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getSettings`.");let a="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(t)),s={},o={};e!==void 0&&(o.getVersion=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return l.request(n,r)},getSources(t){let s={method:"GET",path:"/1/security/sources",queryParameters:{},headers:{}};return l.request(s,t)},getSynonym({indexName:t,objectID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getSynonym`.");if(!e)throw new Error("Parameter `objectID` is required when calling `getSynonym`.");let n={method:"GET",path:"/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getTask({indexName:t,taskID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getTask`.");if(!e)throw new Error("Parameter `taskID` is required when calling `getTask`.");let n={method:"GET",path:"/1/indexes/{indexName}/task/{taskID}".replace("{indexName}",encodeURIComponent(t)).replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getTopUserIds(t){let s={method:"GET",path:"/1/clusters/mapping/top",queryParameters:{},headers:{}};return l.request(s,t)},getUserId({userID:t},e){if(!t)throw new Error("Parameter `userID` is required when calling `getUserId`.");let o={method:"GET",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},hasPendingMappings({getClusters:t}={},e=void 0){let r="/1/clusters/mapping/pending",a={},s={};t!==void 0&&(s.getClusters=t.toString());let o={method:"GET",path:r,queryParameters:s,headers:a};return l.request(o,e)},listApiKeys(t){let s={method:"GET",path:"/1/keys",queryParameters:{},headers:{}};return l.request(s,t)},listClusters(t){let s={method:"GET",path:"/1/clusters",queryParameters:{},headers:{}};return l.request(s,t)},listIndices({page:t,hitsPerPage:e}={},r=void 0){let a="/1/indexes",s={},o={};t!==void 0&&(o.page=t.toString()),e!==void 0&&(o.hitsPerPage=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return l.request(n,r)},listUserIds({page:t,hitsPerPage:e}={},r=void 0){let a="/1/clusters/mapping",s={},o={};t!==void 0&&(o.page=t.toString()),e!==void 0&&(o.hitsPerPage=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return l.request(n,r)},multipleBatch(t,e){if(!t)throw new Error("Parameter `batchParams` is required when calling `multipleBatch`.");if(!t.requests)throw new Error("Parameter `batchParams.requests` is required when calling `multipleBatch`.");let o={method:"POST",path:"/1/indexes/*/batch",queryParameters:{},headers:{},data:t};return l.request(o,e)},operationIndex({indexName:t,operationIndexParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `operationIndex`.");if(!e)throw new Error("Parameter `operationIndexParams` is required when calling `operationIndex`.");if(!e.operation)throw new Error("Parameter `operationIndexParams.operation` is required when calling `operationIndex`.");if(!e.destination)throw new Error("Parameter `operationIndexParams.destination` is required when calling `operationIndex`.");let n={method:"POST",path:"/1/indexes/{indexName}/operation".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},partialUpdateObject({indexName:t,objectID:e,attributesToUpdate:r,createIfNotExists:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `partialUpdateObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `partialUpdateObject`.");if(!r)throw new Error("Parameter `attributesToUpdate` is required when calling `partialUpdateObject`.");let o="/1/indexes/{indexName}/{objectID}/partial".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.createIfNotExists=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:r};return l.request(u,s)},removeUserId({userID:t},e){if(!t)throw new Error("Parameter `userID` is required when calling `removeUserId`.");let o={method:"DELETE",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},replaceSources({source:t},e){if(!t)throw new Error("Parameter `source` is required when calling `replaceSources`.");let o={method:"PUT",path:"/1/security/sources",queryParameters:{},headers:{},data:t};return l.request(o,e)},restoreApiKey({key:t},e){if(!t)throw new Error("Parameter `key` is required when calling `restoreApiKey`.");let o={method:"POST",path:"/1/keys/{key}/restore".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},saveObject({indexName:t,body:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `saveObject`.");if(!e)throw new Error("Parameter `body` is required when calling `saveObject`.");let n={method:"POST",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},saveRule({indexName:t,objectID:e,rule:r,forwardToReplicas:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveRule`.");if(!e)throw new Error("Parameter `objectID` is required when calling `saveRule`.");if(!r)throw new Error("Parameter `rule` is required when calling `saveRule`.");if(!r.objectID)throw new Error("Parameter `rule.objectID` is required when calling `saveRule`.");if(!r.consequence)throw new Error("Parameter `rule.consequence` is required when calling `saveRule`.");let o="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.forwardToReplicas=a.toString());let u={method:"PUT",path:o,queryParameters:i,headers:n,data:r};return l.request(u,s)},saveRules({indexName:t,rules:e,forwardToReplicas:r,clearExistingRules:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveRules`.");if(!e)throw new Error("Parameter `rules` is required when calling `saveRules`.");let o="/1/indexes/{indexName}/rules/batch".replace("{indexName}",encodeURIComponent(t)),n={},i={};r!==void 0&&(i.forwardToReplicas=r.toString()),a!==void 0&&(i.clearExistingRules=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:e};return l.request(u,s)},saveSynonym({indexName:t,objectID:e,synonymHit:r,forwardToReplicas:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveSynonym`.");if(!e)throw new Error("Parameter `objectID` is required when calling `saveSynonym`.");if(!r)throw new Error("Parameter `synonymHit` is required when calling `saveSynonym`.");if(!r.objectID)throw new Error("Parameter `synonymHit.objectID` is required when calling `saveSynonym`.");if(!r.type)throw new Error("Parameter `synonymHit.type` is required when calling `saveSynonym`.");let o="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.forwardToReplicas=a.toString());let u={method:"PUT",path:o,queryParameters:i,headers:n,data:r};return l.request(u,s)},saveSynonyms({indexName:t,synonymHit:e,forwardToReplicas:r,replaceExistingSynonyms:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveSynonyms`.");if(!e)throw new Error("Parameter `synonymHit` is required when calling `saveSynonyms`.");let o="/1/indexes/{indexName}/synonyms/batch".replace("{indexName}",encodeURIComponent(t)),n={},i={};r!==void 0&&(i.forwardToReplicas=r.toString()),a!==void 0&&(i.replaceExistingSynonyms=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:e};return l.request(u,s)},search(t,e){if(t&&Array.isArray(t)&&(t={requests:t.map(({params:i,...u})=>u.type==="facet"?{...u,...i,type:"facet"}:{...u,...i,facet:void 0,maxFacetHits:void 0,facetQuery:void 0})}),!t)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!t.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");let o={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},searchDictionaryEntries({dictionaryName:t,searchDictionaryEntriesParams:e},r){if(!t)throw new Error("Parameter `dictionaryName` is required when calling `searchDictionaryEntries`.");if(!e)throw new Error("Parameter `searchDictionaryEntriesParams` is required when calling `searchDictionaryEntries`.");if(!e.query)throw new Error("Parameter `searchDictionaryEntriesParams.query` is required when calling `searchDictionaryEntries`.");let n={method:"POST",path:"/1/dictionaries/{dictionaryName}/search".replace("{dictionaryName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e,useReadTransporter:true,cacheable:true};return l.request(n,r)},searchForFacetValues({indexName:t,facetName:e,searchForFacetValuesRequest:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `searchForFacetValues`.");if(!e)throw new Error("Parameter `facetName` is required when calling `searchForFacetValues`.");let i={method:"POST",path:"/1/indexes/{indexName}/facets/{facetName}/query".replace("{indexName}",encodeURIComponent(t)).replace("{facetName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:true,cacheable:true};return l.request(i,a)},searchRules({indexName:t,searchRulesParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `searchRules`.");let n={method:"POST",path:"/1/indexes/{indexName}/rules/search".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true,cacheable:true};return l.request(n,r)},searchSingleIndex({indexName:t,searchParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `searchSingleIndex`.");let n={method:"POST",path:"/1/indexes/{indexName}/query".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true,cacheable:true};return l.request(n,r)},searchSynonyms({indexName:t,searchSynonymsParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `searchSynonyms`.");let n={method:"POST",path:"/1/indexes/{indexName}/synonyms/search".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true,cacheable:true};return l.request(n,r)},searchUserIds(t,e){if(!t)throw new Error("Parameter `searchUserIdsParams` is required when calling `searchUserIds`.");if(!t.query)throw new Error("Parameter `searchUserIdsParams.query` is required when calling `searchUserIds`.");let o={method:"POST",path:"/1/clusters/mapping/search",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},setDictionarySettings(t,e){if(!t)throw new Error("Parameter `dictionarySettingsParams` is required when calling `setDictionarySettings`.");if(!t.disableStandardEntries)throw new Error("Parameter `dictionarySettingsParams.disableStandardEntries` is required when calling `setDictionarySettings`.");let o={method:"PUT",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{},data:t};return l.request(o,e)},setSettings({indexName:t,indexSettings:e,forwardToReplicas:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `setSettings`.");if(!e)throw new Error("Parameter `indexSettings` is required when calling `setSettings`.");let s="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(t)),o={},n={};r!==void 0&&(n.forwardToReplicas=r.toString());let i={method:"PUT",path:s,queryParameters:n,headers:o,data:e};return l.request(i,a)},updateApiKey({key:t,apiKey:e},r){if(!t)throw new Error("Parameter `key` is required when calling `updateApiKey`.");if(!e)throw new Error("Parameter `apiKey` is required when calling `updateApiKey`.");if(!e.acl)throw new Error("Parameter `apiKey.acl` is required when calling `updateApiKey`.");let n={method:"PUT",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)}}}function Pe(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");return Xe({appId:c,apiKey:h,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${W}-${c}`}),E()]}),...d})}var we="1.48.0",pe=["eu","us"];function Ye(c){return [{url:"data.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]}function Qr(c){return c.type==="onDemand"}function Vr(c){return c.type==="schedule"}function $r(c){return c.type==="subscription"}function Ze({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Ye(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Ingestion",version:we}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},async chunkedPush({indexName:e,objects:r,action:a="addObject",waitForTasks:s,batchSize:o=1e3,referenceIndexName:n},i){let u=[],g=0,P=[],w=Math.floor(o/10)||o,y=r.entries();for(let[f,T]of y)if(u.push(T),(u.length===o||f===r.length-1)&&(P.push(await this.push({indexName:e,pushTaskPayload:{action:a,records:u},referenceIndexName:n},i)),u=[]),s&&P.length>0&&(P.length%w===0||f===r.length-1)){for(let v of P.slice(g,g+w)){if(!v.eventID)throw new Error("received unexpected response from the push endpoint, eventID must not be undefined");let O=0;await k({func:async()=>{if(v.eventID===void 0||!v.eventID)throw new Error("received unexpected response from the push endpoint, eventID must not be undefined");return this.getEvent({runID:v.runID,eventID:v.eventID}).catch(N=>{if(N.status!==404)throw N})},validate:N=>N!==void 0,aggregator:()=>O+=1,error:{validate:()=>O>=50,message:()=>`The maximum number of retries exceeded. (${O}/50)`},timeout:()=>Math.min(O*500,5e3)});}g+=w;}return P},createAuthentication(e,r){if(!e)throw new Error("Parameter `authenticationCreate` is required when calling `createAuthentication`.");if(!e.type)throw new Error("Parameter `authenticationCreate.type` is required when calling `createAuthentication`.");if(!e.name)throw new Error("Parameter `authenticationCreate.name` is required when calling `createAuthentication`.");if(!e.input)throw new Error("Parameter `authenticationCreate.input` is required when calling `createAuthentication`.");let n={method:"POST",path:"/1/authentications",queryParameters:{},headers:{},data:e};return t.request(n,r)},createDestination(e,r){if(!e)throw new Error("Parameter `destinationCreate` is required when calling `createDestination`.");if(!e.type)throw new Error("Parameter `destinationCreate.type` is required when calling `createDestination`.");if(!e.name)throw new Error("Parameter `destinationCreate.name` is required when calling `createDestination`.");if(!e.input)throw new Error("Parameter `destinationCreate.input` is required when calling `createDestination`.");let n={method:"POST",path:"/1/destinations",queryParameters:{},headers:{},data:e};return t.request(n,r)},createSource(e,r){if(!e)throw new Error("Parameter `sourceCreate` is required when calling `createSource`.");if(!e.type)throw new Error("Parameter `sourceCreate.type` is required when calling `createSource`.");if(!e.name)throw new Error("Parameter `sourceCreate.name` is required when calling `createSource`.");let n={method:"POST",path:"/1/sources",queryParameters:{},headers:{},data:e};return t.request(n,r)},createTask(e,r){if(!e)throw new Error("Parameter `taskCreate` is required when calling `createTask`.");if(!e.sourceID)throw new Error("Parameter `taskCreate.sourceID` is required when calling `createTask`.");if(!e.destinationID)throw new Error("Parameter `taskCreate.destinationID` is required when calling `createTask`.");if(!e.action)throw new Error("Parameter `taskCreate.action` is required when calling `createTask`.");let n={method:"POST",path:"/2/tasks",queryParameters:{},headers:{},data:e};return t.request(n,r)},createTaskV1(e,r){if(!e)throw new Error("Parameter `taskCreate` is required when calling `createTaskV1`.");if(!e.sourceID)throw new Error("Parameter `taskCreate.sourceID` is required when calling `createTaskV1`.");if(!e.destinationID)throw new Error("Parameter `taskCreate.destinationID` is required when calling `createTaskV1`.");if(!e.trigger)throw new Error("Parameter `taskCreate.trigger` is required when calling `createTaskV1`.");if(!e.action)throw new Error("Parameter `taskCreate.action` is required when calling `createTaskV1`.");let n={method:"POST",path:"/1/tasks",queryParameters:{},headers:{},data:e};return t.request(n,r)},createTransformation(e,r){if(!e)throw new Error("Parameter `transformationCreate` is required when calling `createTransformation`.");if(!e.name)throw new Error("Parameter `transformationCreate.name` is required when calling `createTransformation`.");let n={method:"POST",path:"/1/transformations",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteAuthentication({authenticationID:e},r){if(!e)throw new Error("Parameter `authenticationID` is required when calling `deleteAuthentication`.");let n={method:"DELETE",path:"/1/authentications/{authenticationID}".replace("{authenticationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteDestination({destinationID:e},r){if(!e)throw new Error("Parameter `destinationID` is required when calling `deleteDestination`.");let n={method:"DELETE",path:"/1/destinations/{destinationID}".replace("{destinationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteSource({sourceID:e},r){if(!e)throw new Error("Parameter `sourceID` is required when calling `deleteSource`.");let n={method:"DELETE",path:"/1/sources/{sourceID}".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `deleteTask`.");let n={method:"DELETE",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `deleteTaskV1`.");let n={method:"DELETE",path:"/1/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteTransformation({transformationID:e},r){if(!e)throw new Error("Parameter `transformationID` is required when calling `deleteTransformation`.");let n={method:"DELETE",path:"/1/transformations/{transformationID}".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},disableTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `disableTask`.");let n={method:"PUT",path:"/2/tasks/{taskID}/disable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},disableTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `disableTaskV1`.");let n={method:"PUT",path:"/1/tasks/{taskID}/disable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},enableTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `enableTask`.");let n={method:"PUT",path:"/2/tasks/{taskID}/enable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},enableTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `enableTaskV1`.");let n={method:"PUT",path:"/1/tasks/{taskID}/enable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getAuthentication({authenticationID:e},r){if(!e)throw new Error("Parameter `authenticationID` is required when calling `getAuthentication`.");let n={method:"GET",path:"/1/authentications/{authenticationID}".replace("{authenticationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getDestination({destinationID:e},r){if(!e)throw new Error("Parameter `destinationID` is required when calling `getDestination`.");let n={method:"GET",path:"/1/destinations/{destinationID}".replace("{destinationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getEvent({runID:e,eventID:r},a){if(!e)throw new Error("Parameter `runID` is required when calling `getEvent`.");if(!r)throw new Error("Parameter `eventID` is required when calling `getEvent`.");let i={method:"GET",path:"/1/runs/{runID}/events/{eventID}".replace("{runID}",encodeURIComponent(e)).replace("{eventID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return t.request(i,a)},getRun({runID:e},r){if(!e)throw new Error("Parameter `runID` is required when calling `getRun`.");let n={method:"GET",path:"/1/runs/{runID}".replace("{runID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getSource({sourceID:e},r){if(!e)throw new Error("Parameter `sourceID` is required when calling `getSource`.");let n={method:"GET",path:"/1/sources/{sourceID}".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `getTask`.");let n={method:"GET",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `getTaskV1`.");let n={method:"GET",path:"/1/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTransformation({transformationID:e},r){if(!e)throw new Error("Parameter `transformationID` is required when calling `getTransformation`.");let n={method:"GET",path:"/1/transformations/{transformationID}".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},listAuthentications({itemsPerPage:e,page:r,type:a,platform:s,sort:o,order:n}={},i=void 0){let u="/1/authentications",g={},P={};e!==void 0&&(P.itemsPerPage=e.toString()),r!==void 0&&(P.page=r.toString()),a!==void 0&&(P.type=a.toString()),s!==void 0&&(P.platform=s.toString()),o!==void 0&&(P.sort=o.toString()),n!==void 0&&(P.order=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},listDestinations({itemsPerPage:e,page:r,type:a,authenticationID:s,transformationID:o,sort:n,order:i}={},u=void 0){let g="/1/destinations",P={},w={};e!==void 0&&(w.itemsPerPage=e.toString()),r!==void 0&&(w.page=r.toString()),a!==void 0&&(w.type=a.toString()),s!==void 0&&(w.authenticationID=s.toString()),o!==void 0&&(w.transformationID=o.toString()),n!==void 0&&(w.sort=n.toString()),i!==void 0&&(w.order=i.toString());let y={method:"GET",path:g,queryParameters:w,headers:P};return t.request(y,u)},listEvents({runID:e,itemsPerPage:r,page:a,status:s,type:o,sort:n,order:i,startDate:u,endDate:g},P){if(!e)throw new Error("Parameter `runID` is required when calling `listEvents`.");let w="/1/runs/{runID}/events".replace("{runID}",encodeURIComponent(e)),y={},f={};r!==void 0&&(f.itemsPerPage=r.toString()),a!==void 0&&(f.page=a.toString()),s!==void 0&&(f.status=s.toString()),o!==void 0&&(f.type=o.toString()),n!==void 0&&(f.sort=n.toString()),i!==void 0&&(f.order=i.toString()),u!==void 0&&(f.startDate=u.toString()),g!==void 0&&(f.endDate=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},listRuns({itemsPerPage:e,page:r,status:a,type:s,taskID:o,sort:n,order:i,startDate:u,endDate:g}={},P=void 0){let w="/1/runs",y={},f={};e!==void 0&&(f.itemsPerPage=e.toString()),r!==void 0&&(f.page=r.toString()),a!==void 0&&(f.status=a.toString()),s!==void 0&&(f.type=s.toString()),o!==void 0&&(f.taskID=o.toString()),n!==void 0&&(f.sort=n.toString()),i!==void 0&&(f.order=i.toString()),u!==void 0&&(f.startDate=u.toString()),g!==void 0&&(f.endDate=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},listSources({itemsPerPage:e,page:r,type:a,authenticationID:s,sort:o,order:n}={},i=void 0){let u="/1/sources",g={},P={};e!==void 0&&(P.itemsPerPage=e.toString()),r!==void 0&&(P.page=r.toString()),a!==void 0&&(P.type=a.toString()),s!==void 0&&(P.authenticationID=s.toString()),o!==void 0&&(P.sort=o.toString()),n!==void 0&&(P.order=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},listTasks({itemsPerPage:e,page:r,action:a,enabled:s,sourceID:o,sourceType:n,destinationID:i,triggerType:u,withEmailNotifications:g,sort:P,order:w}={},y=void 0){let f="/2/tasks",T={},v={};e!==void 0&&(v.itemsPerPage=e.toString()),r!==void 0&&(v.page=r.toString()),a!==void 0&&(v.action=a.toString()),s!==void 0&&(v.enabled=s.toString()),o!==void 0&&(v.sourceID=o.toString()),n!==void 0&&(v.sourceType=n.toString()),i!==void 0&&(v.destinationID=i.toString()),u!==void 0&&(v.triggerType=u.toString()),g!==void 0&&(v.withEmailNotifications=g.toString()),P!==void 0&&(v.sort=P.toString()),w!==void 0&&(v.order=w.toString());let O={method:"GET",path:f,queryParameters:v,headers:T};return t.request(O,y)},listTasksV1({itemsPerPage:e,page:r,action:a,enabled:s,sourceID:o,destinationID:n,triggerType:i,sort:u,order:g}={},P=void 0){let w="/1/tasks",y={},f={};e!==void 0&&(f.itemsPerPage=e.toString()),r!==void 0&&(f.page=r.toString()),a!==void 0&&(f.action=a.toString()),s!==void 0&&(f.enabled=s.toString()),o!==void 0&&(f.sourceID=o.toString()),n!==void 0&&(f.destinationID=n.toString()),i!==void 0&&(f.triggerType=i.toString()),u!==void 0&&(f.sort=u.toString()),g!==void 0&&(f.order=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},listTransformations({itemsPerPage:e,page:r,sort:a,order:s,type:o}={},n=void 0){let i="/1/transformations",u={},g={};e!==void 0&&(g.itemsPerPage=e.toString()),r!==void 0&&(g.page=r.toString()),a!==void 0&&(g.sort=a.toString()),s!==void 0&&(g.order=s.toString()),o!==void 0&&(g.type=o.toString());let P={method:"GET",path:i,queryParameters:g,headers:u};return t.request(P,n)},push({indexName:e,pushTaskPayload:r,watch:a,referenceIndexName:s},o){if(!e)throw new Error("Parameter `indexName` is required when calling `push`.");if(!r)throw new Error("Parameter `pushTaskPayload` is required when calling `push`.");if(!r.action)throw new Error("Parameter `pushTaskPayload.action` is required when calling `push`.");if(!r.records)throw new Error("Parameter `pushTaskPayload.records` is required when calling `push`.");let n="/1/push/{indexName}".replace("{indexName}",encodeURIComponent(e)),i={},u={};a!==void 0&&(u.watch=a.toString()),s!==void 0&&(u.referenceIndexName=s.toString());let g={method:"POST",path:n,queryParameters:u,headers:i,data:r};return o={timeouts:{connect:18e4,read:18e4,write:18e4,...o?.timeouts}},t.request(g,o)},pushTask({taskID:e,pushTaskPayload:r,watch:a},s){if(!e)throw new Error("Parameter `taskID` is required when calling `pushTask`.");if(!r)throw new Error("Parameter `pushTaskPayload` is required when calling `pushTask`.");if(!r.action)throw new Error("Parameter `pushTaskPayload.action` is required when calling `pushTask`.");if(!r.records)throw new Error("Parameter `pushTaskPayload.records` is required when calling `pushTask`.");let o="/2/tasks/{taskID}/push".replace("{taskID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.watch=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:r};return s={timeouts:{connect:18e4,read:18e4,write:18e4,...s?.timeouts}},t.request(u,s)},replaceTask({taskID:e,taskReplace:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `replaceTask`.");if(!r)throw new Error("Parameter `taskReplace` is required when calling `replaceTask`.");if(!r.destinationID)throw new Error("Parameter `taskReplace.destinationID` is required when calling `replaceTask`.");if(!r.action)throw new Error("Parameter `taskReplace.action` is required when calling `replaceTask`.");let i={method:"PUT",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},runSource({sourceID:e,runSourcePayload:r},a){if(!e)throw new Error("Parameter `sourceID` is required when calling `runSource`.");let i={method:"POST",path:"/1/sources/{sourceID}/run".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return t.request(i,a)},runTask({taskID:e,runTaskPayload:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `runTask`.");let i={method:"POST",path:"/2/tasks/{taskID}/run".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return t.request(i,a)},runTaskV1({taskID:e,runTaskPayload:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `runTaskV1`.");let i={method:"POST",path:"/1/tasks/{taskID}/run".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return t.request(i,a)},searchAuthentications(e,r){if(!e)throw new Error("Parameter `authenticationSearch` is required when calling `searchAuthentications`.");if(!e.authenticationIDs)throw new Error("Parameter `authenticationSearch.authenticationIDs` is required when calling `searchAuthentications`.");let n={method:"POST",path:"/1/authentications/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchDestinations(e,r){if(!e)throw new Error("Parameter `destinationSearch` is required when calling `searchDestinations`.");if(!e.destinationIDs)throw new Error("Parameter `destinationSearch.destinationIDs` is required when calling `searchDestinations`.");let n={method:"POST",path:"/1/destinations/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchSources(e,r){if(!e)throw new Error("Parameter `sourceSearch` is required when calling `searchSources`.");if(!e.sourceIDs)throw new Error("Parameter `sourceSearch.sourceIDs` is required when calling `searchSources`.");let n={method:"POST",path:"/1/sources/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchTasks(e,r){if(!e)throw new Error("Parameter `taskSearch` is required when calling `searchTasks`.");if(!e.taskIDs)throw new Error("Parameter `taskSearch.taskIDs` is required when calling `searchTasks`.");let n={method:"POST",path:"/2/tasks/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchTasksV1(e,r){if(!e)throw new Error("Parameter `taskSearch` is required when calling `searchTasksV1`.");if(!e.taskIDs)throw new Error("Parameter `taskSearch.taskIDs` is required when calling `searchTasksV1`.");let n={method:"POST",path:"/1/tasks/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchTransformations(e,r){if(!e)throw new Error("Parameter `transformationSearch` is required when calling `searchTransformations`.");if(!e.transformationIDs)throw new Error("Parameter `transformationSearch.transformationIDs` is required when calling `searchTransformations`.");let n={method:"POST",path:"/1/transformations/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},triggerDockerSourceDiscover({sourceID:e},r){if(!e)throw new Error("Parameter `sourceID` is required when calling `triggerDockerSourceDiscover`.");let n={method:"POST",path:"/1/sources/{sourceID}/discover".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return r={timeouts:{connect:18e4,read:18e4,write:18e4,...r?.timeouts}},t.request(n,r)},tryTransformation(e,r){if(!e)throw new Error("Parameter `transformationTry` is required when calling `tryTransformation`.");if(!e.sampleRecord)throw new Error("Parameter `transformationTry.sampleRecord` is required when calling `tryTransformation`.");let n={method:"POST",path:"/1/transformations/try",queryParameters:{},headers:{},data:e};return t.request(n,r)},tryTransformationBeforeUpdate({transformationID:e,transformationTry:r},a){if(!e)throw new Error("Parameter `transformationID` is required when calling `tryTransformationBeforeUpdate`.");if(!r)throw new Error("Parameter `transformationTry` is required when calling `tryTransformationBeforeUpdate`.");if(!r.sampleRecord)throw new Error("Parameter `transformationTry.sampleRecord` is required when calling `tryTransformationBeforeUpdate`.");let i={method:"POST",path:"/1/transformations/{transformationID}/try".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateAuthentication({authenticationID:e,authenticationUpdate:r},a){if(!e)throw new Error("Parameter `authenticationID` is required when calling `updateAuthentication`.");if(!r)throw new Error("Parameter `authenticationUpdate` is required when calling `updateAuthentication`.");let i={method:"PATCH",path:"/1/authentications/{authenticationID}".replace("{authenticationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateDestination({destinationID:e,destinationUpdate:r},a){if(!e)throw new Error("Parameter `destinationID` is required when calling `updateDestination`.");if(!r)throw new Error("Parameter `destinationUpdate` is required when calling `updateDestination`.");let i={method:"PATCH",path:"/1/destinations/{destinationID}".replace("{destinationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateSource({sourceID:e,sourceUpdate:r},a){if(!e)throw new Error("Parameter `sourceID` is required when calling `updateSource`.");if(!r)throw new Error("Parameter `sourceUpdate` is required when calling `updateSource`.");let i={method:"PATCH",path:"/1/sources/{sourceID}".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateTask({taskID:e,taskUpdate:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `updateTask`.");if(!r)throw new Error("Parameter `taskUpdate` is required when calling `updateTask`.");let i={method:"PATCH",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateTaskV1({taskID:e,taskUpdate:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `updateTaskV1`.");if(!r)throw new Error("Parameter `taskUpdate` is required when calling `updateTaskV1`.");let i={method:"PATCH",path:"/1/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateTransformation({transformationID:e,transformationCreate:r},a){if(!e)throw new Error("Parameter `transformationID` is required when calling `updateTransformation`.");if(!r)throw new Error("Parameter `transformationCreate` is required when calling `updateTransformation`.");if(!r.name)throw new Error("Parameter `transformationCreate.name` is required when calling `updateTransformation`.");let i={method:"PUT",path:"/1/transformations/{transformationID}".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},validateSource(e,r=void 0){let n={method:"POST",path:"/1/sources/validate",queryParameters:{},headers:{},data:e||{}};return r={timeouts:{connect:18e4,read:18e4,write:18e4,...r?.timeouts}},t.request(n,r)},validateSourceBeforeUpdate({sourceID:e,sourceUpdate:r},a){if(!e)throw new Error("Parameter `sourceID` is required when calling `validateSourceBeforeUpdate`.");if(!r)throw new Error("Parameter `sourceUpdate` is required when calling `validateSourceBeforeUpdate`.");let i={method:"POST",path:"/1/sources/{sourceID}/validate".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return a={timeouts:{connect:18e4,read:18e4,write:18e4,...a?.timeouts}},t.request(i,a)}}}function Q(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(!d||d&&(typeof d!="string"||!pe.includes(d)))throw new Error(`\`region\` is required and must be one of the following: ${pe.join(", ")}`);return Ze({appId:c,apiKey:h,region:d,timeouts:{connect:25e3,read:25e3,write:25e3},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${we}-${c}`}),E()]}),...q})}var fe="1.48.0";function er(){return [{url:"status.algolia.com",accept:"readWrite",protocol:"https"}]}function rr({appId:c,apiKey:h,authMode:d,algoliaAgents:q,...p}){let m=I(c,h,d),l=b({hosts:er(),...p,algoliaAgent:C({algoliaAgents:q,client:"Monitoring",version:fe}),baseHeaders:{"content-type":"text/plain",...m.headers(),...p.baseHeaders},baseQueryParameters:{...m.queryParameters(),...p.baseQueryParameters}});return {transporter:l,appId:c,apiKey:h,clearCache(){return Promise.all([l.requestsCache.clear(),l.responsesCache.clear()]).then(()=>{})},get _ua(){return l.algoliaAgent.value},addAlgoliaAgent(t,e){l.algoliaAgent.add({segment:t,version:e});},setClientApiKey({apiKey:t}){!d||d==="WithinHeaders"?l.baseHeaders["x-algolia-api-key"]=t:l.baseQueryParameters["x-algolia-api-key"]=t;},customDelete({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customDelete`.");let n={method:"DELETE",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customGet({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customGet`.");let n={method:"GET",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customPost({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPost`.");let i={method:"POST",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},customPut({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPut`.");let i={method:"PUT",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},getClusterIncidents({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getClusterIncidents`.");let o={method:"GET",path:"/1/incidents/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getClusterStatus({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getClusterStatus`.");let o={method:"GET",path:"/1/status/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getIncidents(t){let s={method:"GET",path:"/1/incidents",queryParameters:{},headers:{}};return l.request(s,t)},getIndexingTime({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getIndexingTime`.");let o={method:"GET",path:"/1/indexing/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getLatency({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getLatency`.");let o={method:"GET",path:"/1/latency/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getMetrics({metric:t,period:e},r){if(!t)throw new Error("Parameter `metric` is required when calling `getMetrics`.");if(!e)throw new Error("Parameter `period` is required when calling `getMetrics`.");let n={method:"GET",path:"/1/infrastructure/{metric}/period/{period}".replace("{metric}",encodeURIComponent(t)).replace("{period}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getReachability({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getReachability`.");let o={method:"GET",path:"/1/reachability/{clusters}/probes".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getServers(t){let s={method:"GET",path:"/1/inventory/servers",queryParameters:{},headers:{}};return l.request(s,t)},getStatus(t){let s={method:"GET",path:"/1/status",queryParameters:{},headers:{}};return l.request(s,t)}}}function ye(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");return rr({appId:c,apiKey:h,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${fe}-${c}`}),E()]}),...d})}var Ee="5.48.0";function tr(c){return [{url:`${c}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${c}.algolia.net`,accept:"write",protocol:"https"}].concat(j([{url:`${c}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}function ar({appId:c,apiKey:h,authMode:d,algoliaAgents:q,...p}){let m=I(c,h,d),l=b({hosts:tr(c),...p,algoliaAgent:C({algoliaAgents:q,client:"Recommend",version:Ee}),baseHeaders:{"content-type":"text/plain",...m.headers(),...p.baseHeaders},baseQueryParameters:{...m.queryParameters(),...p.baseQueryParameters}});return {transporter:l,appId:c,apiKey:h,clearCache(){return Promise.all([l.requestsCache.clear(),l.responsesCache.clear()]).then(()=>{})},get _ua(){return l.algoliaAgent.value},addAlgoliaAgent(t,e){l.algoliaAgent.add({segment:t,version:e});},setClientApiKey({apiKey:t}){!d||d==="WithinHeaders"?l.baseHeaders["x-algolia-api-key"]=t:l.baseQueryParameters["x-algolia-api-key"]=t;},batchRecommendRules({indexName:t,model:e,recommendRule:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `batchRecommendRules`.");if(!e)throw new Error("Parameter `model` is required when calling `batchRecommendRules`.");let i={method:"POST",path:"/1/indexes/{indexName}/{model}/recommend/rules/batch".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return l.request(i,a)},customDelete({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customDelete`.");let n={method:"DELETE",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customGet({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customGet`.");let n={method:"GET",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customPost({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPost`.");let i={method:"POST",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},customPut({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPut`.");let i={method:"PUT",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},deleteRecommendRule({indexName:t,model:e,objectID:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteRecommendRule`.");if(!e)throw new Error("Parameter `model` is required when calling `deleteRecommendRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteRecommendRule`.");let i={method:"DELETE",path:"/1/indexes/{indexName}/{model}/recommend/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return l.request(i,a)},getRecommendRule({indexName:t,model:e,objectID:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `getRecommendRule`.");if(!e)throw new Error("Parameter `model` is required when calling `getRecommendRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getRecommendRule`.");let i={method:"GET",path:"/1/indexes/{indexName}/{model}/recommend/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return l.request(i,a)},getRecommendStatus({indexName:t,model:e,taskID:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `getRecommendStatus`.");if(!e)throw new Error("Parameter `model` is required when calling `getRecommendStatus`.");if(!r)throw new Error("Parameter `taskID` is required when calling `getRecommendStatus`.");let i={method:"GET",path:"/1/indexes/{indexName}/{model}/task/{taskID}".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)).replace("{taskID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return l.request(i,a)},getRecommendations(t,e){if(t&&Array.isArray(t)&&(t={requests:t}),!t)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!t.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");let o={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},searchRecommendRules({indexName:t,model:e,searchRecommendRulesParams:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `searchRecommendRules`.");if(!e)throw new Error("Parameter `model` is required when calling `searchRecommendRules`.");let i={method:"POST",path:"/1/indexes/{indexName}/{model}/recommend/rules/search".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:true,cacheable:true};return l.request(i,a)}}}function Te(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");return ar({appId:c,apiKey:h,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${Ee}-${c}`}),E()]}),...d})}function St(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");let q=Pe(c,h,d),p;if(d?.transformation){if(!d.transformation.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");p=Q(c,h,d.transformation.region,d);}return {...q,async saveObjectsWithTransformation({indexName:m,objects:l,waitForTasks:t},e){if(!p)throw new Error("`transformation.region` must be provided at client instantiation before calling this method.");if(!d?.transformation?.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");return p.chunkedPush({indexName:m,objects:l,action:"addObject",waitForTasks:t},e)},async partialUpdateObjectsWithTransformation({indexName:m,objects:l,createIfNotExists:t,waitForTasks:e},r){if(!p)throw new Error("`transformation.region` must be provided at client instantiation before calling this method.");if(!d?.transformation?.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");return p.chunkedPush({indexName:m,objects:l,action:t?"partialUpdateObject":"partialUpdateObjectNoCreate",waitForTasks:e},r)},async replaceAllObjectsWithTransformation({indexName:m,objects:l,batchSize:t,scopes:e},r){if(!p)throw new Error("`transformation.region` must be provided at client instantiation before calling this method.");if(!d?.transformation?.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");let a=Math.floor(Math.random()*1e6)+1e5,s=`${m}_tmp_${a}`;e===void 0&&(e=["settings","rules","synonyms"]);try{let o=await this.operationIndex({indexName:m,operationIndexParams:{operation:"copy",destination:s,scope:e}},r),n=await p.chunkedPush({indexName:s,objects:l,waitForTasks:!0,batchSize:t,referenceIndexName:m},r);await this.waitForTask({indexName:s,taskID:o.taskID}),o=await this.operationIndex({indexName:m,operationIndexParams:{operation:"copy",destination:s,scope:e}},r),await this.waitForTask({indexName:s,taskID:o.taskID});let i=await this.operationIndex({indexName:s,operationIndexParams:{operation:"move",destination:m}},r);return await this.waitForTask({indexName:s,taskID:i.taskID}),{copyOperationResponse:o,watchResponses:n,moveOperationResponse:i}}catch(o){throw await this.deleteIndex({indexName:s}),o}},get _ua(){return q.transporter.algoliaAgent.value},initAbtesting:m=>ae(m.appId||c,m.apiKey||h,m.region,m.options),initAbtestingV3:m=>ee(m.appId||c,m.apiKey||h,m.region,m.options),initAnalytics:m=>oe(m.appId||c,m.apiKey||h,m.region,m.options),initIngestion:m=>Q(m.appId||c,m.apiKey||h,m.region,m.options),initInsights:m=>ue(m.appId||c,m.apiKey||h,m.region,m.options),initMonitoring:(m={})=>ye(m.appId||c,m.apiKey||h,m.options),initPersonalization:m=>le(m.appId||c,m.apiKey||h,m.region,m.options),initQuerySuggestions:m=>ge(m.appId||c,m.apiKey||h,m.region,m.options),initRecommend:(m={})=>Te(m.appId||c,m.apiKey||h,m.options)}} + function R(c){let h,d=`algolia-client-js-${c.key}`;function q(){return h===void 0&&(h=c.localStorage||window.localStorage),h}function p(){return JSON.parse(q().getItem(d)||"{}")}function m(t){q().setItem(d,JSON.stringify(t));}function l(){let t=c.timeToLive?c.timeToLive*1e3:null,e=p(),r=Object.fromEntries(Object.entries(e).filter(([,s])=>s.timestamp!==void 0));if(m(r),!t)return;let a=Object.fromEntries(Object.entries(r).filter(([,s])=>{let o=new Date().getTime();return !(s.timestamp+tPromise.resolve()}){return Promise.resolve().then(()=>(l(),p()[JSON.stringify(t)])).then(a=>Promise.all([a?a.value:e(),a!==void 0])).then(([a,s])=>Promise.all([a,s||r.miss(a)])).then(([a])=>a)},set(t,e){return Promise.resolve().then(()=>{let r=p();return r[JSON.stringify(t)]={timestamp:new Date().getTime(),value:e},q().setItem(d,JSON.stringify(r)),e})},delete(t){return Promise.resolve().then(()=>{let e=p();delete e[JSON.stringify(t)],q().setItem(d,JSON.stringify(e));})},clear(){return Promise.resolve().then(()=>{q().removeItem(d);})}}}function Se(){return {get(c,h,d={miss:()=>Promise.resolve()}){return h().then(p=>Promise.all([p,d.miss(p)])).then(([p])=>p)},set(c,h){return Promise.resolve(h)},delete(c){return Promise.resolve()},clear(){return Promise.resolve()}}}function S(c){let h=[...c.caches],d=h.shift();return d===void 0?Se():{get(q,p,m={miss:()=>Promise.resolve()}){return d.get(q,p,m).catch(()=>S({caches:h}).get(q,p,m))},set(q,p){return d.set(q,p).catch(()=>S({caches:h}).set(q,p))},delete(q){return d.delete(q).catch(()=>S({caches:h}).delete(q))},clear(){return d.clear().catch(()=>S({caches:h}).clear())}}}function E(c={serializable:true}){let h={};return {get(d,q,p={miss:()=>Promise.resolve()}){let m=JSON.stringify(d);if(m in h)return Promise.resolve(c.serializable?JSON.parse(h[m]):h[m]);let l=q();return l.then(t=>p.miss(t)).then(()=>l)},set(d,q){return h[JSON.stringify(d)]=c.serializable?JSON.stringify(q):q,Promise.resolve(q)},delete(d){return delete h[JSON.stringify(d)],Promise.resolve()},clear(){return h={},Promise.resolve()}}}function ve(c){let h={value:`Algolia for JavaScript (${c})`,add(d){let q=`; ${d.segment}${d.version!==void 0?` (${d.version})`:""}`;return h.value.indexOf(q)===-1&&(h.value=`${h.value}${q}`),h}};return h}function I(c,h,d="WithinHeaders"){let q={"x-algolia-api-key":h,"x-algolia-application-id":c};return {headers(){return d==="WithinHeaders"?q:{}},queryParameters(){return d==="WithinQueryParameters"?q:{}}}}function k({func:c,validate:h,aggregator:d,error:q,timeout:p=()=>0}){let m=l=>new Promise((t,e)=>{c(l).then(async r=>(d&&await d(r),await h(r)?t(r):q&&await q.validate(r)?e(new Error(await q.message(r))):setTimeout(()=>{m(r).then(t).catch(e);},await p()))).catch(r=>{e(r);});});return m()}function C({algoliaAgents:c,client:h,version:d}){let q=ve(d).add({segment:h,version:d});return c.forEach(p=>q.add(p)),q}function A(){return {debug(c,h){return Promise.resolve()},info(c,h){return Promise.resolve()},error(c,h){return Promise.resolve()}}}var _=120*1e3;function M(c,h="up"){let d=Date.now();function q(){return h==="up"||Date.now()-d>_}function p(){return h==="timed out"&&Date.now()-d<=_}return {...c,status:h,lastUpdate:d,isUp:q,isTimedOut:p}}var J=class extends Error{name="AlgoliaError";constructor(c,h){super(c),h&&(this.name=h);}};var K=class extends J{stackTrace;constructor(c,h,d){super(c,d),this.stackTrace=h;}},Re=class extends K{constructor(c){super("Unreachable hosts - your application id may be incorrect. If the error persists, please visit our help center https://alg.li/support-unreachable-hosts or reach out to the Algolia Support team: https://alg.li/support",c,"RetryError");}},G=class extends K{status;constructor(c,h,d,q="ApiError"){super(c,d,q),this.status=h;}},Ie=class extends J{response;constructor(c,h){super(c,"DeserializationError"),this.response=h;}},Ce=class extends G{error;constructor(c,h,d,q){super(c,h,q,"DetailedApiError"),this.error=d;}};function j(c){let h=c;for(let d=c.length-1;d>0;d--){let q=Math.floor(Math.random()*(d+1)),p=c[d];h[d]=c[q],h[q]=p;}return h}function Ae(c,h,d){let q=be(d),p=`${c.protocol}://${c.url}${c.port?`:${c.port}`:""}/${h.charAt(0)==="/"?h.substring(1):h}`;return q.length&&(p+=`?${q}`),p}function be(c){return Object.keys(c).filter(h=>c[h]!==void 0).sort().map(h=>`${h}=${encodeURIComponent(Object.prototype.toString.call(c[h])==="[object Array]"?c[h].join(","):c[h]).replace(/\+/g,"%20")}`).join("&")}function De(c,h){if(c.method==="GET"||c.data===void 0&&h.data===void 0)return;let d=Array.isArray(c.data)?c.data:{...c.data,...h.data};return JSON.stringify(d)}function xe(c,h,d){let q={Accept:"application/json",...c,...h,...d},p={};return Object.keys(q).forEach(m=>{let l=q[m];p[m.toLowerCase()]=l;}),p}function ke(c){try{return JSON.parse(c.content)}catch(h){throw new Ie(h.message,c)}}function Oe({content:c,status:h},d){try{let q=JSON.parse(c);return "error"in q?new Ce(q.message,h,q.error,d):new G(q.message,h,d)}catch{}return new G(c,h,d)}function Ue({isTimedOut:c,status:h}){return !c&&~~h===0}function Ne({isTimedOut:c,status:h}){return c||Ue({isTimedOut:c,status:h})||~~(h/100)!==2&&~~(h/100)!==4}function Be({status:c}){return ~~(c/100)===2}function Ge(c){return c.map(h=>X(h))}function X(c){let h=c.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return {...c,request:{...c.request,headers:{...c.request.headers,...h}}}}function b({hosts:c,hostsCache:h,baseHeaders:d,logger:q,baseQueryParameters:p,algoliaAgent:m,timeouts:l,requester:t,requestsCache:e,responsesCache:r}){async function a(n){let i=await Promise.all(n.map(y=>h.get(y,()=>Promise.resolve(M(y))))),u=i.filter(y=>y.isUp()),g=i.filter(y=>y.isTimedOut()),P=[...u,...g];return {hosts:P.length>0?P:n,getTimeout(y,f){return (g.length===0&&y===0?1:g.length+3+y)*f}}}async function s(n,i,u){let g=[],P=De(n,i),w=xe(d,n.headers,i.headers),y=n.method==="GET"?{...n.data,...i.data}:{},f={...p,...n.queryParameters,...y};if(m.value&&(f["x-algolia-agent"]=m.value),i&&i.queryParameters)for(let x of Object.keys(i.queryParameters))!i.queryParameters[x]||Object.prototype.toString.call(i.queryParameters[x])==="[object Object]"?f[x]=i.queryParameters[x]:f[x]=i.queryParameters[x].toString();let T=0,v=async(x,F)=>{let B=x.pop();if(B===void 0)throw new Re(Ge(g));let L={...l,...i.timeouts},V={data:P,headers:w,method:n.method,url:Ae(B,n.path,f),connectTimeout:F(T,L.connect),responseTimeout:F(T,u?L.read:L.write)},$=H=>{let z={request:V,response:H,host:B,triesLeft:x.length};return g.push(z),z},U=await t.send(V);if(Ne(U)){let H=$(U);return U.isTimedOut&&T++,q.info("Retryable failure",X(H)),await h.set(B,M(B,U.isTimedOut?"timed out":"down")),v(x,F)}if(Be(U))return ke(U);throw $(U),Oe(U,g)},O=c.filter(x=>x.accept==="readWrite"||(u?x.accept==="read":x.accept==="write")),N=await a(O);return v([...N.hosts].reverse(),N.getTimeout)}function o(n,i={}){let u=()=>s(n,i,g),g=n.useReadTransporter||n.method==="GET";if((i.cacheable||n.cacheable)!==true)return u();let w={request:n,requestOptions:i,transporter:{queryParameters:p,headers:d}};return r.get(w,()=>e.get(w,()=>e.set(w,u()).then(y=>Promise.all([e.delete(w),y]),y=>Promise.all([e.delete(w),Promise.reject(y)])).then(([y,f])=>f)),{miss:y=>r.set(w,y)})}return {hostsCache:h,requester:t,timeouts:l,logger:q,algoliaAgent:m,baseHeaders:d,baseQueryParameters:p,hosts:c,request:o,requestsCache:e,responsesCache:r}}function D(){function c(h){return new Promise(d=>{let q=new XMLHttpRequest;q.open(h.method,h.url,true),Object.keys(h.headers).forEach(t=>q.setRequestHeader(t,h.headers[t]));let p=(t,e)=>setTimeout(()=>{q.abort(),d({status:0,content:e,isTimedOut:true});},t),m=p(h.connectTimeout,"Connection timeout"),l;q.onreadystatechange=()=>{q.readyState>q.OPENED&&l===void 0&&(clearTimeout(m),l=p(h.responseTimeout,"Socket timeout"));},q.onerror=()=>{q.status===0&&(clearTimeout(m),clearTimeout(l),d({content:q.responseText||"Network request failed",status:q.status,isTimedOut:false}));},q.onload=()=>{clearTimeout(m),clearTimeout(l),d({content:q.responseText,status:q.status,isTimedOut:false});},q.send(h.data);})}return {send:c}}var Z="1.14.1",Y=["de","us"];function je(c){return [{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]}function Fe({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:je(p),...m,algoliaAgent:C({algoliaAgents:q,client:"AbtestingV3",version:Z}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},addABTests(e,r){if(!e)throw new Error("Parameter `addABTestsRequest` is required when calling `addABTests`.");if(!e.name)throw new Error("Parameter `addABTestsRequest.name` is required when calling `addABTests`.");if(!e.variants)throw new Error("Parameter `addABTestsRequest.variants` is required when calling `addABTests`.");if(!e.metrics)throw new Error("Parameter `addABTestsRequest.metrics` is required when calling `addABTests`.");if(!e.endAt)throw new Error("Parameter `addABTestsRequest.endAt` is required when calling `addABTests`.");let n={method:"POST",path:"/3/abtests",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `deleteABTest`.");let n={method:"DELETE",path:"/3/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},estimateABTest(e,r){if(!e)throw new Error("Parameter `estimateABTestRequest` is required when calling `estimateABTest`.");if(!e.configuration)throw new Error("Parameter `estimateABTestRequest.configuration` is required when calling `estimateABTest`.");if(!e.variants)throw new Error("Parameter `estimateABTestRequest.variants` is required when calling `estimateABTest`.");let n={method:"POST",path:"/3/abtests/estimate",queryParameters:{},headers:{},data:e};return t.request(n,r)},getABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `getABTest`.");let n={method:"GET",path:"/3/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTimeseries({id:e,startDate:r,endDate:a,metric:s},o){if(!e)throw new Error("Parameter `id` is required when calling `getTimeseries`.");let n="/3/abtests/{id}/timeseries".replace("{id}",encodeURIComponent(e)),i={},u={};r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.metric=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},listABTests({offset:e,limit:r,indexPrefix:a,indexSuffix:s,direction:o}={},n=void 0){let i="/3/abtests",u={},g={};e!==void 0&&(g.offset=e.toString()),r!==void 0&&(g.limit=r.toString()),a!==void 0&&(g.indexPrefix=a.toString()),s!==void 0&&(g.indexSuffix=s.toString()),o!==void 0&&(g.direction=o.toString());let P={method:"GET",path:i,queryParameters:g,headers:u};return t.request(P,n)},stopABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `stopABTest`.");let n={method:"POST",path:"/3/abtests/{id}/stop".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)}}}function ee(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!Y.includes(d)))throw new Error(`\`region\` must be one of the following: ${Y.join(", ")}`);return Fe({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${Z}-${c}`}),E()]}),...q})}var te="5.48.1",re=["de","us"];function Le(c){return [{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]}function He({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Le(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Abtesting",version:te}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},addABTests(e,r){if(!e)throw new Error("Parameter `addABTestsRequest` is required when calling `addABTests`.");if(!e.name)throw new Error("Parameter `addABTestsRequest.name` is required when calling `addABTests`.");if(!e.variants)throw new Error("Parameter `addABTestsRequest.variants` is required when calling `addABTests`.");if(!e.endAt)throw new Error("Parameter `addABTestsRequest.endAt` is required when calling `addABTests`.");let n={method:"POST",path:"/2/abtests",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `deleteABTest`.");let n={method:"DELETE",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},estimateABTest(e,r){if(!e)throw new Error("Parameter `estimateABTestRequest` is required when calling `estimateABTest`.");if(!e.configuration)throw new Error("Parameter `estimateABTestRequest.configuration` is required when calling `estimateABTest`.");if(!e.variants)throw new Error("Parameter `estimateABTestRequest.variants` is required when calling `estimateABTest`.");let n={method:"POST",path:"/2/abtests/estimate",queryParameters:{},headers:{},data:e};return t.request(n,r)},getABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `getABTest`.");let n={method:"GET",path:"/2/abtests/{id}".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},listABTests({offset:e,limit:r,indexPrefix:a,indexSuffix:s}={},o=void 0){let n="/2/abtests",i={},u={};e!==void 0&&(u.offset=e.toString()),r!==void 0&&(u.limit=r.toString()),a!==void 0&&(u.indexPrefix=a.toString()),s!==void 0&&(u.indexSuffix=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},stopABTest({id:e},r){if(!e)throw new Error("Parameter `id` is required when calling `stopABTest`.");let n={method:"POST",path:"/2/abtests/{id}/stop".replace("{id}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)}}}function ae(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!re.includes(d)))throw new Error(`\`region\` must be one of the following: ${re.join(", ")}`);return He({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${te}-${c}`}),E()]}),...q})}var ne="5.48.1",se=["de","us"];function We(c){return [{url:c?"analytics.{region}.algolia.com".replace("{region}",c):"analytics.algolia.com",accept:"readWrite",protocol:"https"}]}function Qe({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:We(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Analytics",version:ne}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},getAddToCartRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getAddToCartRate`.");let n="/2/conversions/addToCartRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getAverageClickPosition({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getAverageClickPosition`.");let n="/2/clicks/averageClickPosition",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getClickPositions({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getClickPositions`.");let n="/2/clicks/positions",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getClickThroughRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getClickThroughRate`.");let n="/2/clicks/clickThroughRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getConversionRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getConversionRate`.");let n="/2/conversions/conversionRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getNoClickRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getNoClickRate`.");let n="/2/searches/noClickRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getNoResultsRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getNoResultsRate`.");let n="/2/searches/noResultRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getPurchaseRate({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getPurchaseRate`.");let n="/2/conversions/purchaseRate",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getRevenue({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getRevenue`.");let n="/2/conversions/revenue",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getSearchesCount({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesCount`.");let n="/2/searches/count",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)},getSearchesNoClicks({index:e,startDate:r,endDate:a,limit:s,offset:o,tags:n},i){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoClicks`.");let u="/2/searches/noClicks",g={},P={};e!==void 0&&(P.index=e.toString()),r!==void 0&&(P.startDate=r.toString()),a!==void 0&&(P.endDate=a.toString()),s!==void 0&&(P.limit=s.toString()),o!==void 0&&(P.offset=o.toString()),n!==void 0&&(P.tags=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},getSearchesNoResults({index:e,startDate:r,endDate:a,limit:s,offset:o,tags:n},i){if(!e)throw new Error("Parameter `index` is required when calling `getSearchesNoResults`.");let u="/2/searches/noResults",g={},P={};e!==void 0&&(P.index=e.toString()),r!==void 0&&(P.startDate=r.toString()),a!==void 0&&(P.endDate=a.toString()),s!==void 0&&(P.limit=s.toString()),o!==void 0&&(P.offset=o.toString()),n!==void 0&&(P.tags=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},getStatus({index:e},r){if(!e)throw new Error("Parameter `index` is required when calling `getStatus`.");let a="/2/status",s={},o={};e!==void 0&&(o.index=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return t.request(n,r)},getTopCountries({index:e,startDate:r,endDate:a,limit:s,offset:o,tags:n},i){if(!e)throw new Error("Parameter `index` is required when calling `getTopCountries`.");let u="/2/countries",g={},P={};e!==void 0&&(P.index=e.toString()),r!==void 0&&(P.startDate=r.toString()),a!==void 0&&(P.endDate=a.toString()),s!==void 0&&(P.limit=s.toString()),o!==void 0&&(P.offset=o.toString()),n!==void 0&&(P.tags=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},getTopFilterAttributes({index:e,search:r,startDate:a,endDate:s,limit:o,offset:n,tags:i},u){if(!e)throw new Error("Parameter `index` is required when calling `getTopFilterAttributes`.");let g="/2/filters",P={},w={};e!==void 0&&(w.index=e.toString()),r!==void 0&&(w.search=r.toString()),a!==void 0&&(w.startDate=a.toString()),s!==void 0&&(w.endDate=s.toString()),o!==void 0&&(w.limit=o.toString()),n!==void 0&&(w.offset=n.toString()),i!==void 0&&(w.tags=i.toString());let y={method:"GET",path:g,queryParameters:w,headers:P};return t.request(y,u)},getTopFilterForAttribute({attribute:e,index:r,search:a,startDate:s,endDate:o,limit:n,offset:i,tags:u},g){if(!e)throw new Error("Parameter `attribute` is required when calling `getTopFilterForAttribute`.");if(!r)throw new Error("Parameter `index` is required when calling `getTopFilterForAttribute`.");let P="/2/filters/{attribute}".replace("{attribute}",encodeURIComponent(e)),w={},y={};r!==void 0&&(y.index=r.toString()),a!==void 0&&(y.search=a.toString()),s!==void 0&&(y.startDate=s.toString()),o!==void 0&&(y.endDate=o.toString()),n!==void 0&&(y.limit=n.toString()),i!==void 0&&(y.offset=i.toString()),u!==void 0&&(y.tags=u.toString());let f={method:"GET",path:P,queryParameters:y,headers:w};return t.request(f,g)},getTopFiltersNoResults({index:e,search:r,startDate:a,endDate:s,limit:o,offset:n,tags:i},u){if(!e)throw new Error("Parameter `index` is required when calling `getTopFiltersNoResults`.");let g="/2/filters/noResults",P={},w={};e!==void 0&&(w.index=e.toString()),r!==void 0&&(w.search=r.toString()),a!==void 0&&(w.startDate=a.toString()),s!==void 0&&(w.endDate=s.toString()),o!==void 0&&(w.limit=o.toString()),n!==void 0&&(w.offset=n.toString()),i!==void 0&&(w.tags=i.toString());let y={method:"GET",path:g,queryParameters:w,headers:P};return t.request(y,u)},getTopHits({index:e,search:r,clickAnalytics:a,revenueAnalytics:s,startDate:o,endDate:n,limit:i,offset:u,tags:g},P){if(!e)throw new Error("Parameter `index` is required when calling `getTopHits`.");let w="/2/hits",y={},f={};e!==void 0&&(f.index=e.toString()),r!==void 0&&(f.search=r.toString()),a!==void 0&&(f.clickAnalytics=a.toString()),s!==void 0&&(f.revenueAnalytics=s.toString()),o!==void 0&&(f.startDate=o.toString()),n!==void 0&&(f.endDate=n.toString()),i!==void 0&&(f.limit=i.toString()),u!==void 0&&(f.offset=u.toString()),g!==void 0&&(f.tags=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},getTopSearches({index:e,clickAnalytics:r,revenueAnalytics:a,startDate:s,endDate:o,orderBy:n,direction:i,limit:u,offset:g,tags:P},w){if(!e)throw new Error("Parameter `index` is required when calling `getTopSearches`.");let y="/2/searches",f={},T={};e!==void 0&&(T.index=e.toString()),r!==void 0&&(T.clickAnalytics=r.toString()),a!==void 0&&(T.revenueAnalytics=a.toString()),s!==void 0&&(T.startDate=s.toString()),o!==void 0&&(T.endDate=o.toString()),n!==void 0&&(T.orderBy=n.toString()),i!==void 0&&(T.direction=i.toString()),u!==void 0&&(T.limit=u.toString()),g!==void 0&&(T.offset=g.toString()),P!==void 0&&(T.tags=P.toString());let v={method:"GET",path:y,queryParameters:T,headers:f};return t.request(v,w)},getUsersCount({index:e,startDate:r,endDate:a,tags:s},o){if(!e)throw new Error("Parameter `index` is required when calling `getUsersCount`.");let n="/2/users/count",i={},u={};e!==void 0&&(u.index=e.toString()),r!==void 0&&(u.startDate=r.toString()),a!==void 0&&(u.endDate=a.toString()),s!==void 0&&(u.tags=s.toString());let g={method:"GET",path:n,queryParameters:u,headers:i};return t.request(g,o)}}}function oe(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!se.includes(d)))throw new Error(`\`region\` must be one of the following: ${se.join(", ")}`);return Qe({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${ne}-${c}`}),E()]}),...q})}var ce="5.48.1",ie=["de","us"];function Ve(c){return [{url:c?"insights.{region}.algolia.io".replace("{region}",c):"insights.algolia.io",accept:"readWrite",protocol:"https"}]}function $e({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Ve(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Insights",version:ce}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteUserToken({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserToken`.");let n={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},pushEvents(e,r){if(!e)throw new Error("Parameter `insightsEvents` is required when calling `pushEvents`.");if(!e.events)throw new Error("Parameter `insightsEvents.events` is required when calling `pushEvents`.");let n={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:e};return t.request(n,r)}}}function ue(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(d&&(typeof d!="string"||!ie.includes(d)))throw new Error(`\`region\` must be one of the following: ${ie.join(", ")}`);return $e({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${ce}-${c}`}),E()]}),...q})}var de="5.48.1",he=["eu","us"];function ze(c){return [{url:"personalization.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]}function _e({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:ze(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Personalization",version:de}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteUserProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserProfile`.");let n={method:"DELETE",path:"/1/profiles/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getPersonalizationStrategy(e){let o={method:"GET",path:"/1/strategies/personalization",queryParameters:{},headers:{}};return t.request(o,e)},getUserTokenProfile({userToken:e},r){if(!e)throw new Error("Parameter `userToken` is required when calling `getUserTokenProfile`.");let n={method:"GET",path:"/1/profiles/personalization/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},setPersonalizationStrategy(e,r){if(!e)throw new Error("Parameter `personalizationStrategyParams` is required when calling `setPersonalizationStrategy`.");if(!e.eventsScoring)throw new Error("Parameter `personalizationStrategyParams.eventsScoring` is required when calling `setPersonalizationStrategy`.");if(!e.facetsScoring)throw new Error("Parameter `personalizationStrategyParams.facetsScoring` is required when calling `setPersonalizationStrategy`.");if(!e.personalizationImpact)throw new Error("Parameter `personalizationStrategyParams.personalizationImpact` is required when calling `setPersonalizationStrategy`.");let n={method:"POST",path:"/1/strategies/personalization",queryParameters:{},headers:{},data:e};return t.request(n,r)}}}function le(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(!d||d&&(typeof d!="string"||!he.includes(d)))throw new Error(`\`region\` is required and must be one of the following: ${he.join(", ")}`);return _e({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${de}-${c}`}),E()]}),...q})}var qe="5.48.1",me=["eu","us"];function Me(c){return [{url:"query-suggestions.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]}function Je({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Me(p),...m,algoliaAgent:C({algoliaAgents:q,client:"QuerySuggestions",version:qe}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},createConfig(e,r){if(!e)throw new Error("Parameter `configurationWithIndex` is required when calling `createConfig`.");let n={method:"POST",path:"/1/configs",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteConfig({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `deleteConfig`.");let n={method:"DELETE",path:"/1/configs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getAllConfigs(e){let o={method:"GET",path:"/1/configs",queryParameters:{},headers:{}};return t.request(o,e)},getConfig({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getConfig`.");let n={method:"GET",path:"/1/configs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getConfigStatus({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getConfigStatus`.");let n={method:"GET",path:"/1/configs/{indexName}/status".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getLogFile({indexName:e},r){if(!e)throw new Error("Parameter `indexName` is required when calling `getLogFile`.");let n={method:"GET",path:"/1/logs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},updateConfig({indexName:e,configuration:r},a){if(!e)throw new Error("Parameter `indexName` is required when calling `updateConfig`.");if(!r)throw new Error("Parameter `configuration` is required when calling `updateConfig`.");if(!r.sourceIndices)throw new Error("Parameter `configuration.sourceIndices` is required when calling `updateConfig`.");let i={method:"PUT",path:"/1/configs/{indexName}".replace("{indexName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)}}}function ge(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(!d||d&&(typeof d!="string"||!me.includes(d)))throw new Error(`\`region\` is required and must be one of the following: ${me.join(", ")}`);return Je({appId:c,apiKey:h,region:d,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${qe}-${c}`}),E()]}),...q})}var W="5.48.1";function Ke(c){return [{url:`${c}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${c}.algolia.net`,accept:"write",protocol:"https"}].concat(j([{url:`${c}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}function Xe({appId:c,apiKey:h,authMode:d,algoliaAgents:q,...p}){let m=I(c,h,d),l=b({hosts:Ke(c),...p,algoliaAgent:C({algoliaAgents:q,client:"Search",version:W}),baseHeaders:{"content-type":"text/plain",...m.headers(),...p.baseHeaders},baseQueryParameters:{...m.queryParameters(),...p.baseQueryParameters}});return {transporter:l,appId:c,apiKey:h,clearCache(){return Promise.all([l.requestsCache.clear(),l.responsesCache.clear()]).then(()=>{})},get _ua(){return l.algoliaAgent.value},addAlgoliaAgent(t,e){l.algoliaAgent.add({segment:t,version:e});},setClientApiKey({apiKey:t}){!d||d==="WithinHeaders"?l.baseHeaders["x-algolia-api-key"]=t:l.baseQueryParameters["x-algolia-api-key"]=t;},waitForTask({indexName:t,taskID:e,maxRetries:r=50,timeout:a=o=>Math.min(o*200,5e3)},s){let o=0;return k({func:()=>this.getTask({indexName:t,taskID:e},s),validate:n=>n.status==="published",aggregator:()=>o+=1,error:{validate:()=>o>=r,message:()=>`The maximum number of retries exceeded. (${o}/${r})`},timeout:()=>a(o)})},waitForAppTask({taskID:t,maxRetries:e=50,timeout:r=s=>Math.min(s*200,5e3)},a){let s=0;return k({func:()=>this.getAppTask({taskID:t},a),validate:o=>o.status==="published",aggregator:()=>s+=1,error:{validate:()=>s>=e,message:()=>`The maximum number of retries exceeded. (${s}/${e})`},timeout:()=>r(s)})},waitForApiKey({operation:t,key:e,apiKey:r,maxRetries:a=50,timeout:s=n=>Math.min(n*200,5e3)},o){let n=0,i={aggregator:()=>n+=1,error:{validate:()=>n>=a,message:()=>`The maximum number of retries exceeded. (${n}/${a})`},timeout:()=>s(n)};if(t==="update"){if(!r)throw new Error("`apiKey` is required when waiting for an `update` operation.");return k({...i,func:()=>this.getApiKey({key:e},o),validate:u=>{for(let g of Object.keys(r)){let P=r[g],w=u[g];if(Array.isArray(P)&&Array.isArray(w)){if(P.length!==w.length||P.some((y,f)=>y!==w[f]))return false}else if(P!==w)return false}return true}})}return k({...i,func:()=>this.getApiKey({key:e},o).catch(u=>{if(u.status!==404)throw u}),validate:u=>t==="add"?u!==void 0:u===void 0})},browseObjects({indexName:t,browseParams:e,...r},a){return k({func:s=>this.browse({indexName:t,browseParams:{cursor:s?s.cursor:void 0,hitsPerPage:1e3,...e}},a),validate:s=>s.cursor===void 0,...r})},browseRules({indexName:t,searchRulesParams:e,...r},a){let s={...e,hitsPerPage:e?.hitsPerPage||1e3};return k({func:o=>this.searchRules({indexName:t,searchRulesParams:{...s,page:o?o.page+1:s.page||0}},a),validate:o=>o.hits.length{let n=this.searchSynonyms({indexName:t,searchSynonymsParams:{...s,page:s.page}},a);return s.page+=1,n},validate:o=>o.hits.length({objectID:o})),action:"deleteObject",waitForTasks:r,batchSize:a},s)},async partialUpdateObjects({indexName:t,objects:e,createIfNotExists:r,waitForTasks:a,batchSize:s},o){return await this.chunkedBatch({indexName:t,objects:e,action:r?"partialUpdateObject":"partialUpdateObjectNoCreate",batchSize:s,waitForTasks:a},o)},async replaceAllObjects({indexName:t,objects:e,batchSize:r,scopes:a},s){let o=Math.floor(Math.random()*1e6)+1e5,n=`${t}_tmp_${o}`;a===void 0&&(a=["settings","rules","synonyms"]);try{let i=await this.operationIndex({indexName:t,operationIndexParams:{operation:"copy",destination:n,scope:a}},s),u=await this.chunkedBatch({indexName:n,objects:e,waitForTasks:!0,batchSize:r},s);await this.waitForTask({indexName:n,taskID:i.taskID}),i=await this.operationIndex({indexName:t,operationIndexParams:{operation:"copy",destination:n,scope:a}},s),await this.waitForTask({indexName:n,taskID:i.taskID});let g=await this.operationIndex({indexName:n,operationIndexParams:{operation:"move",destination:t}},s);return await this.waitForTask({indexName:n,taskID:g.taskID}),{copyOperationResponse:i,batchResponses:u,moveOperationResponse:g}}catch(i){throw await this.deleteIndex({indexName:n}),i}},async indexExists({indexName:t}){try{await this.getSettings({indexName:t});}catch(e){if(e instanceof G&&e.status===404)return false;throw e}return true},searchForHits(t,e){return this.search(t,e)},searchForFacets(t,e){return this.search(t,e)},addApiKey(t,e){if(!t)throw new Error("Parameter `apiKey` is required when calling `addApiKey`.");if(!t.acl)throw new Error("Parameter `apiKey.acl` is required when calling `addApiKey`.");let o={method:"POST",path:"/1/keys",queryParameters:{},headers:{},data:t};return l.request(o,e)},addOrUpdateObject({indexName:t,objectID:e,body:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `addOrUpdateObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `addOrUpdateObject`.");if(!r)throw new Error("Parameter `body` is required when calling `addOrUpdateObject`.");let i={method:"PUT",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return l.request(i,a)},appendSource(t,e){if(!t)throw new Error("Parameter `source` is required when calling `appendSource`.");if(!t.source)throw new Error("Parameter `source.source` is required when calling `appendSource`.");let o={method:"POST",path:"/1/security/sources/append",queryParameters:{},headers:{},data:t};return l.request(o,e)},assignUserId({xAlgoliaUserID:t,assignUserIdParams:e},r){if(!t)throw new Error("Parameter `xAlgoliaUserID` is required when calling `assignUserId`.");if(!e)throw new Error("Parameter `assignUserIdParams` is required when calling `assignUserId`.");if(!e.cluster)throw new Error("Parameter `assignUserIdParams.cluster` is required when calling `assignUserId`.");let a="/1/clusters/mapping",s={},o={};t!==void 0&&(s["X-Algolia-User-ID"]=t.toString());let n={method:"POST",path:a,queryParameters:o,headers:s,data:e};return l.request(n,r)},batch({indexName:t,batchWriteParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `batch`.");if(!e)throw new Error("Parameter `batchWriteParams` is required when calling `batch`.");if(!e.requests)throw new Error("Parameter `batchWriteParams.requests` is required when calling `batch`.");let n={method:"POST",path:"/1/indexes/{indexName}/batch".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},batchAssignUserIds({xAlgoliaUserID:t,batchAssignUserIdsParams:e},r){if(!t)throw new Error("Parameter `xAlgoliaUserID` is required when calling `batchAssignUserIds`.");if(!e)throw new Error("Parameter `batchAssignUserIdsParams` is required when calling `batchAssignUserIds`.");if(!e.cluster)throw new Error("Parameter `batchAssignUserIdsParams.cluster` is required when calling `batchAssignUserIds`.");if(!e.users)throw new Error("Parameter `batchAssignUserIdsParams.users` is required when calling `batchAssignUserIds`.");let a="/1/clusters/mapping/batch",s={},o={};t!==void 0&&(s["X-Algolia-User-ID"]=t.toString());let n={method:"POST",path:a,queryParameters:o,headers:s,data:e};return l.request(n,r)},batchDictionaryEntries({dictionaryName:t,batchDictionaryEntriesParams:e},r){if(!t)throw new Error("Parameter `dictionaryName` is required when calling `batchDictionaryEntries`.");if(!e)throw new Error("Parameter `batchDictionaryEntriesParams` is required when calling `batchDictionaryEntries`.");if(!e.requests)throw new Error("Parameter `batchDictionaryEntriesParams.requests` is required when calling `batchDictionaryEntries`.");let n={method:"POST",path:"/1/dictionaries/{dictionaryName}/batch".replace("{dictionaryName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},browse({indexName:t,browseParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `browse`.");let n={method:"POST",path:"/1/indexes/{indexName}/browse".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true};return l.request(n,r)},clearObjects({indexName:t},e){if(!t)throw new Error("Parameter `indexName` is required when calling `clearObjects`.");let o={method:"POST",path:"/1/indexes/{indexName}/clear".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},clearRules({indexName:t,forwardToReplicas:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `clearRules`.");let a="/1/indexes/{indexName}/rules/clear".replace("{indexName}",encodeURIComponent(t)),s={},o={};e!==void 0&&(o.forwardToReplicas=e.toString());let n={method:"POST",path:a,queryParameters:o,headers:s};return l.request(n,r)},clearSynonyms({indexName:t,forwardToReplicas:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `clearSynonyms`.");let a="/1/indexes/{indexName}/synonyms/clear".replace("{indexName}",encodeURIComponent(t)),s={},o={};e!==void 0&&(o.forwardToReplicas=e.toString());let n={method:"POST",path:a,queryParameters:o,headers:s};return l.request(n,r)},customDelete({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customDelete`.");let n={method:"DELETE",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customGet({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customGet`.");let n={method:"GET",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customPost({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPost`.");let i={method:"POST",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},customPut({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPut`.");let i={method:"PUT",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},deleteApiKey({key:t},e){if(!t)throw new Error("Parameter `key` is required when calling `deleteApiKey`.");let o={method:"DELETE",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},deleteBy({indexName:t,deleteByParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteBy`.");if(!e)throw new Error("Parameter `deleteByParams` is required when calling `deleteBy`.");let n={method:"POST",path:"/1/indexes/{indexName}/deleteByQuery".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},deleteIndex({indexName:t},e){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteIndex`.");let o={method:"DELETE",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},deleteObject({indexName:t,objectID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `deleteObject`.");let n={method:"DELETE",path:"/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},deleteRule({indexName:t,objectID:e,forwardToReplicas:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteRule`.");if(!e)throw new Error("Parameter `objectID` is required when calling `deleteRule`.");let s="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),o={},n={};r!==void 0&&(n.forwardToReplicas=r.toString());let i={method:"DELETE",path:s,queryParameters:n,headers:o};return l.request(i,a)},deleteSource({source:t},e){if(!t)throw new Error("Parameter `source` is required when calling `deleteSource`.");let o={method:"DELETE",path:"/1/security/sources/{source}".replace("{source}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},deleteSynonym({indexName:t,objectID:e,forwardToReplicas:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteSynonym`.");if(!e)throw new Error("Parameter `objectID` is required when calling `deleteSynonym`.");let s="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),o={},n={};r!==void 0&&(n.forwardToReplicas=r.toString());let i={method:"DELETE",path:s,queryParameters:n,headers:o};return l.request(i,a)},getApiKey({key:t},e){if(!t)throw new Error("Parameter `key` is required when calling `getApiKey`.");let o={method:"GET",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getAppTask({taskID:t},e){if(!t)throw new Error("Parameter `taskID` is required when calling `getAppTask`.");let o={method:"GET",path:"/1/task/{taskID}".replace("{taskID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getDictionaryLanguages(t){let s={method:"GET",path:"/1/dictionaries/*/languages",queryParameters:{},headers:{}};return l.request(s,t)},getDictionarySettings(t){let s={method:"GET",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{}};return l.request(s,t)},getLogs({offset:t,length:e,indexName:r,type:a}={},s=void 0){let o="/1/logs",n={},i={};t!==void 0&&(i.offset=t.toString()),e!==void 0&&(i.length=e.toString()),r!==void 0&&(i.indexName=r.toString()),a!==void 0&&(i.type=a.toString());let u={method:"GET",path:o,queryParameters:i,headers:n};return l.request(u,s)},getObject({indexName:t,objectID:e,attributesToRetrieve:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `getObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `getObject`.");let s="/1/indexes/{indexName}/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),o={},n={};r!==void 0&&(n.attributesToRetrieve=r.toString());let i={method:"GET",path:s,queryParameters:n,headers:o};return l.request(i,a)},getObjects(t,e){if(!t)throw new Error("Parameter `getObjectsParams` is required when calling `getObjects`.");if(!t.requests)throw new Error("Parameter `getObjectsParams.requests` is required when calling `getObjects`.");let o={method:"POST",path:"/1/indexes/*/objects",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},getRule({indexName:t,objectID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getRule`.");if(!e)throw new Error("Parameter `objectID` is required when calling `getRule`.");let n={method:"GET",path:"/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getSettings({indexName:t,getVersion:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getSettings`.");let a="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(t)),s={},o={};e!==void 0&&(o.getVersion=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return l.request(n,r)},getSources(t){let s={method:"GET",path:"/1/security/sources",queryParameters:{},headers:{}};return l.request(s,t)},getSynonym({indexName:t,objectID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getSynonym`.");if(!e)throw new Error("Parameter `objectID` is required when calling `getSynonym`.");let n={method:"GET",path:"/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getTask({indexName:t,taskID:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `getTask`.");if(!e)throw new Error("Parameter `taskID` is required when calling `getTask`.");let n={method:"GET",path:"/1/indexes/{indexName}/task/{taskID}".replace("{indexName}",encodeURIComponent(t)).replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getTopUserIds(t){let s={method:"GET",path:"/1/clusters/mapping/top",queryParameters:{},headers:{}};return l.request(s,t)},getUserId({userID:t},e){if(!t)throw new Error("Parameter `userID` is required when calling `getUserId`.");let o={method:"GET",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},hasPendingMappings({getClusters:t}={},e=void 0){let r="/1/clusters/mapping/pending",a={},s={};t!==void 0&&(s.getClusters=t.toString());let o={method:"GET",path:r,queryParameters:s,headers:a};return l.request(o,e)},listApiKeys(t){let s={method:"GET",path:"/1/keys",queryParameters:{},headers:{}};return l.request(s,t)},listClusters(t){let s={method:"GET",path:"/1/clusters",queryParameters:{},headers:{}};return l.request(s,t)},listIndices({page:t,hitsPerPage:e}={},r=void 0){let a="/1/indexes",s={},o={};t!==void 0&&(o.page=t.toString()),e!==void 0&&(o.hitsPerPage=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return l.request(n,r)},listUserIds({page:t,hitsPerPage:e}={},r=void 0){let a="/1/clusters/mapping",s={},o={};t!==void 0&&(o.page=t.toString()),e!==void 0&&(o.hitsPerPage=e.toString());let n={method:"GET",path:a,queryParameters:o,headers:s};return l.request(n,r)},multipleBatch(t,e){if(!t)throw new Error("Parameter `batchParams` is required when calling `multipleBatch`.");if(!t.requests)throw new Error("Parameter `batchParams.requests` is required when calling `multipleBatch`.");let o={method:"POST",path:"/1/indexes/*/batch",queryParameters:{},headers:{},data:t};return l.request(o,e)},operationIndex({indexName:t,operationIndexParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `operationIndex`.");if(!e)throw new Error("Parameter `operationIndexParams` is required when calling `operationIndex`.");if(!e.operation)throw new Error("Parameter `operationIndexParams.operation` is required when calling `operationIndex`.");if(!e.destination)throw new Error("Parameter `operationIndexParams.destination` is required when calling `operationIndex`.");let n={method:"POST",path:"/1/indexes/{indexName}/operation".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},partialUpdateObject({indexName:t,objectID:e,attributesToUpdate:r,createIfNotExists:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `partialUpdateObject`.");if(!e)throw new Error("Parameter `objectID` is required when calling `partialUpdateObject`.");if(!r)throw new Error("Parameter `attributesToUpdate` is required when calling `partialUpdateObject`.");let o="/1/indexes/{indexName}/{objectID}/partial".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.createIfNotExists=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:r};return l.request(u,s)},removeUserId({userID:t},e){if(!t)throw new Error("Parameter `userID` is required when calling `removeUserId`.");let o={method:"DELETE",path:"/1/clusters/mapping/{userID}".replace("{userID}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},replaceSources({source:t},e){if(!t)throw new Error("Parameter `source` is required when calling `replaceSources`.");let o={method:"PUT",path:"/1/security/sources",queryParameters:{},headers:{},data:t};return l.request(o,e)},restoreApiKey({key:t},e){if(!t)throw new Error("Parameter `key` is required when calling `restoreApiKey`.");let o={method:"POST",path:"/1/keys/{key}/restore".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},saveObject({indexName:t,body:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `saveObject`.");if(!e)throw new Error("Parameter `body` is required when calling `saveObject`.");let n={method:"POST",path:"/1/indexes/{indexName}".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)},saveRule({indexName:t,objectID:e,rule:r,forwardToReplicas:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveRule`.");if(!e)throw new Error("Parameter `objectID` is required when calling `saveRule`.");if(!r)throw new Error("Parameter `rule` is required when calling `saveRule`.");if(!r.objectID)throw new Error("Parameter `rule.objectID` is required when calling `saveRule`.");if(!r.consequence)throw new Error("Parameter `rule.consequence` is required when calling `saveRule`.");let o="/1/indexes/{indexName}/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.forwardToReplicas=a.toString());let u={method:"PUT",path:o,queryParameters:i,headers:n,data:r};return l.request(u,s)},saveRules({indexName:t,rules:e,forwardToReplicas:r,clearExistingRules:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveRules`.");if(!e)throw new Error("Parameter `rules` is required when calling `saveRules`.");let o="/1/indexes/{indexName}/rules/batch".replace("{indexName}",encodeURIComponent(t)),n={},i={};r!==void 0&&(i.forwardToReplicas=r.toString()),a!==void 0&&(i.clearExistingRules=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:e};return l.request(u,s)},saveSynonym({indexName:t,objectID:e,synonymHit:r,forwardToReplicas:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveSynonym`.");if(!e)throw new Error("Parameter `objectID` is required when calling `saveSynonym`.");if(!r)throw new Error("Parameter `synonymHit` is required when calling `saveSynonym`.");if(!r.objectID)throw new Error("Parameter `synonymHit.objectID` is required when calling `saveSynonym`.");if(!r.type)throw new Error("Parameter `synonymHit.type` is required when calling `saveSynonym`.");let o="/1/indexes/{indexName}/synonyms/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{objectID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.forwardToReplicas=a.toString());let u={method:"PUT",path:o,queryParameters:i,headers:n,data:r};return l.request(u,s)},saveSynonyms({indexName:t,synonymHit:e,forwardToReplicas:r,replaceExistingSynonyms:a},s){if(!t)throw new Error("Parameter `indexName` is required when calling `saveSynonyms`.");if(!e)throw new Error("Parameter `synonymHit` is required when calling `saveSynonyms`.");let o="/1/indexes/{indexName}/synonyms/batch".replace("{indexName}",encodeURIComponent(t)),n={},i={};r!==void 0&&(i.forwardToReplicas=r.toString()),a!==void 0&&(i.replaceExistingSynonyms=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:e};return l.request(u,s)},search(t,e){if(t&&Array.isArray(t)&&(t={requests:t.map(({params:i,...u})=>u.type==="facet"?{...u,...i,type:"facet"}:{...u,...i,facet:void 0,maxFacetHits:void 0,facetQuery:void 0})}),!t)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!t.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");let o={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},searchDictionaryEntries({dictionaryName:t,searchDictionaryEntriesParams:e},r){if(!t)throw new Error("Parameter `dictionaryName` is required when calling `searchDictionaryEntries`.");if(!e)throw new Error("Parameter `searchDictionaryEntriesParams` is required when calling `searchDictionaryEntries`.");if(!e.query)throw new Error("Parameter `searchDictionaryEntriesParams.query` is required when calling `searchDictionaryEntries`.");let n={method:"POST",path:"/1/dictionaries/{dictionaryName}/search".replace("{dictionaryName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e,useReadTransporter:true,cacheable:true};return l.request(n,r)},searchForFacetValues({indexName:t,facetName:e,searchForFacetValuesRequest:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `searchForFacetValues`.");if(!e)throw new Error("Parameter `facetName` is required when calling `searchForFacetValues`.");let i={method:"POST",path:"/1/indexes/{indexName}/facets/{facetName}/query".replace("{indexName}",encodeURIComponent(t)).replace("{facetName}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:true,cacheable:true};return l.request(i,a)},searchRules({indexName:t,searchRulesParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `searchRules`.");let n={method:"POST",path:"/1/indexes/{indexName}/rules/search".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true,cacheable:true};return l.request(n,r)},searchSingleIndex({indexName:t,searchParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `searchSingleIndex`.");let n={method:"POST",path:"/1/indexes/{indexName}/query".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true,cacheable:true};return l.request(n,r)},searchSynonyms({indexName:t,searchSynonymsParams:e},r){if(!t)throw new Error("Parameter `indexName` is required when calling `searchSynonyms`.");let n={method:"POST",path:"/1/indexes/{indexName}/synonyms/search".replace("{indexName}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e||{},useReadTransporter:true,cacheable:true};return l.request(n,r)},searchUserIds(t,e){if(!t)throw new Error("Parameter `searchUserIdsParams` is required when calling `searchUserIds`.");if(!t.query)throw new Error("Parameter `searchUserIdsParams.query` is required when calling `searchUserIds`.");let o={method:"POST",path:"/1/clusters/mapping/search",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},setDictionarySettings(t,e){if(!t)throw new Error("Parameter `dictionarySettingsParams` is required when calling `setDictionarySettings`.");if(!t.disableStandardEntries)throw new Error("Parameter `dictionarySettingsParams.disableStandardEntries` is required when calling `setDictionarySettings`.");let o={method:"PUT",path:"/1/dictionaries/*/settings",queryParameters:{},headers:{},data:t};return l.request(o,e)},setSettings({indexName:t,indexSettings:e,forwardToReplicas:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `setSettings`.");if(!e)throw new Error("Parameter `indexSettings` is required when calling `setSettings`.");let s="/1/indexes/{indexName}/settings".replace("{indexName}",encodeURIComponent(t)),o={},n={};r!==void 0&&(n.forwardToReplicas=r.toString());let i={method:"PUT",path:s,queryParameters:n,headers:o,data:e};return l.request(i,a)},updateApiKey({key:t,apiKey:e},r){if(!t)throw new Error("Parameter `key` is required when calling `updateApiKey`.");if(!e)throw new Error("Parameter `apiKey` is required when calling `updateApiKey`.");if(!e.acl)throw new Error("Parameter `apiKey.acl` is required when calling `updateApiKey`.");let n={method:"PUT",path:"/1/keys/{key}".replace("{key}",encodeURIComponent(t)),queryParameters:{},headers:{},data:e};return l.request(n,r)}}}function Pe(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");return Xe({appId:c,apiKey:h,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${W}-${c}`}),E()]}),...d})}var we="1.48.1",pe=["eu","us"];function Ye(c){return [{url:"data.{region}.algolia.com".replace("{region}",c),accept:"readWrite",protocol:"https"}]}function Qr(c){return c.type==="onDemand"}function Vr(c){return c.type==="schedule"}function $r(c){return c.type==="subscription"}function Ze({appId:c,apiKey:h,authMode:d,algoliaAgents:q,region:p,...m}){let l=I(c,h,d),t=b({hosts:Ye(p),...m,algoliaAgent:C({algoliaAgents:q,client:"Ingestion",version:we}),baseHeaders:{"content-type":"text/plain",...l.headers(),...m.baseHeaders},baseQueryParameters:{...l.queryParameters(),...m.baseQueryParameters}});return {transporter:t,appId:c,apiKey:h,clearCache(){return Promise.all([t.requestsCache.clear(),t.responsesCache.clear()]).then(()=>{})},get _ua(){return t.algoliaAgent.value},addAlgoliaAgent(e,r){t.algoliaAgent.add({segment:e,version:r});},setClientApiKey({apiKey:e}){!d||d==="WithinHeaders"?t.baseHeaders["x-algolia-api-key"]=e:t.baseQueryParameters["x-algolia-api-key"]=e;},async chunkedPush({indexName:e,objects:r,action:a="addObject",waitForTasks:s,batchSize:o=1e3,referenceIndexName:n},i){let u=[],g=0,P=[],w=Math.floor(o/10)||o,y=r.entries();for(let[f,T]of y)if(u.push(T),(u.length===o||f===r.length-1)&&(P.push(await this.push({indexName:e,pushTaskPayload:{action:a,records:u},referenceIndexName:n},i)),u=[]),s&&P.length>0&&(P.length%w===0||f===r.length-1)){for(let v of P.slice(g,g+w)){if(!v.eventID)throw new Error("received unexpected response from the push endpoint, eventID must not be undefined");let O=0;await k({func:async()=>{if(v.eventID===void 0||!v.eventID)throw new Error("received unexpected response from the push endpoint, eventID must not be undefined");return this.getEvent({runID:v.runID,eventID:v.eventID}).catch(N=>{if(N.status!==404)throw N})},validate:N=>N!==void 0,aggregator:()=>O+=1,error:{validate:()=>O>=50,message:()=>`The maximum number of retries exceeded. (${O}/50)`},timeout:()=>Math.min(O*500,5e3)});}g+=w;}return P},createAuthentication(e,r){if(!e)throw new Error("Parameter `authenticationCreate` is required when calling `createAuthentication`.");if(!e.type)throw new Error("Parameter `authenticationCreate.type` is required when calling `createAuthentication`.");if(!e.name)throw new Error("Parameter `authenticationCreate.name` is required when calling `createAuthentication`.");if(!e.input)throw new Error("Parameter `authenticationCreate.input` is required when calling `createAuthentication`.");let n={method:"POST",path:"/1/authentications",queryParameters:{},headers:{},data:e};return t.request(n,r)},createDestination(e,r){if(!e)throw new Error("Parameter `destinationCreate` is required when calling `createDestination`.");if(!e.type)throw new Error("Parameter `destinationCreate.type` is required when calling `createDestination`.");if(!e.name)throw new Error("Parameter `destinationCreate.name` is required when calling `createDestination`.");if(!e.input)throw new Error("Parameter `destinationCreate.input` is required when calling `createDestination`.");let n={method:"POST",path:"/1/destinations",queryParameters:{},headers:{},data:e};return t.request(n,r)},createSource(e,r){if(!e)throw new Error("Parameter `sourceCreate` is required when calling `createSource`.");if(!e.type)throw new Error("Parameter `sourceCreate.type` is required when calling `createSource`.");if(!e.name)throw new Error("Parameter `sourceCreate.name` is required when calling `createSource`.");let n={method:"POST",path:"/1/sources",queryParameters:{},headers:{},data:e};return t.request(n,r)},createTask(e,r){if(!e)throw new Error("Parameter `taskCreate` is required when calling `createTask`.");if(!e.sourceID)throw new Error("Parameter `taskCreate.sourceID` is required when calling `createTask`.");if(!e.destinationID)throw new Error("Parameter `taskCreate.destinationID` is required when calling `createTask`.");if(!e.action)throw new Error("Parameter `taskCreate.action` is required when calling `createTask`.");let n={method:"POST",path:"/2/tasks",queryParameters:{},headers:{},data:e};return t.request(n,r)},createTaskV1(e,r){if(!e)throw new Error("Parameter `taskCreate` is required when calling `createTaskV1`.");if(!e.sourceID)throw new Error("Parameter `taskCreate.sourceID` is required when calling `createTaskV1`.");if(!e.destinationID)throw new Error("Parameter `taskCreate.destinationID` is required when calling `createTaskV1`.");if(!e.trigger)throw new Error("Parameter `taskCreate.trigger` is required when calling `createTaskV1`.");if(!e.action)throw new Error("Parameter `taskCreate.action` is required when calling `createTaskV1`.");let n={method:"POST",path:"/1/tasks",queryParameters:{},headers:{},data:e};return t.request(n,r)},createTransformation(e,r){if(!e)throw new Error("Parameter `transformationCreate` is required when calling `createTransformation`.");if(!e.name)throw new Error("Parameter `transformationCreate.name` is required when calling `createTransformation`.");let n={method:"POST",path:"/1/transformations",queryParameters:{},headers:{},data:e};return t.request(n,r)},customDelete({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");let i={method:"DELETE",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customGet({path:e,parameters:r},a){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");let i={method:"GET",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{}};return t.request(i,a)},customPost({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");let u={method:"POST",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},customPut({path:e,parameters:r,body:a},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");let u={method:"PUT",path:"/{path}".replace("{path}",e),queryParameters:r||{},headers:{},data:a||{}};return t.request(u,s)},deleteAuthentication({authenticationID:e},r){if(!e)throw new Error("Parameter `authenticationID` is required when calling `deleteAuthentication`.");let n={method:"DELETE",path:"/1/authentications/{authenticationID}".replace("{authenticationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteDestination({destinationID:e},r){if(!e)throw new Error("Parameter `destinationID` is required when calling `deleteDestination`.");let n={method:"DELETE",path:"/1/destinations/{destinationID}".replace("{destinationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteSource({sourceID:e},r){if(!e)throw new Error("Parameter `sourceID` is required when calling `deleteSource`.");let n={method:"DELETE",path:"/1/sources/{sourceID}".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `deleteTask`.");let n={method:"DELETE",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `deleteTaskV1`.");let n={method:"DELETE",path:"/1/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},deleteTransformation({transformationID:e},r){if(!e)throw new Error("Parameter `transformationID` is required when calling `deleteTransformation`.");let n={method:"DELETE",path:"/1/transformations/{transformationID}".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},disableTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `disableTask`.");let n={method:"PUT",path:"/2/tasks/{taskID}/disable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},disableTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `disableTaskV1`.");let n={method:"PUT",path:"/1/tasks/{taskID}/disable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},enableTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `enableTask`.");let n={method:"PUT",path:"/2/tasks/{taskID}/enable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},enableTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `enableTaskV1`.");let n={method:"PUT",path:"/1/tasks/{taskID}/enable".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getAuthentication({authenticationID:e},r){if(!e)throw new Error("Parameter `authenticationID` is required when calling `getAuthentication`.");let n={method:"GET",path:"/1/authentications/{authenticationID}".replace("{authenticationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getDestination({destinationID:e},r){if(!e)throw new Error("Parameter `destinationID` is required when calling `getDestination`.");let n={method:"GET",path:"/1/destinations/{destinationID}".replace("{destinationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getEvent({runID:e,eventID:r},a){if(!e)throw new Error("Parameter `runID` is required when calling `getEvent`.");if(!r)throw new Error("Parameter `eventID` is required when calling `getEvent`.");let i={method:"GET",path:"/1/runs/{runID}/events/{eventID}".replace("{runID}",encodeURIComponent(e)).replace("{eventID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return t.request(i,a)},getRun({runID:e},r){if(!e)throw new Error("Parameter `runID` is required when calling `getRun`.");let n={method:"GET",path:"/1/runs/{runID}".replace("{runID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getSource({sourceID:e},r){if(!e)throw new Error("Parameter `sourceID` is required when calling `getSource`.");let n={method:"GET",path:"/1/sources/{sourceID}".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTask({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `getTask`.");let n={method:"GET",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTaskV1({taskID:e},r){if(!e)throw new Error("Parameter `taskID` is required when calling `getTaskV1`.");let n={method:"GET",path:"/1/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},getTransformation({transformationID:e},r){if(!e)throw new Error("Parameter `transformationID` is required when calling `getTransformation`.");let n={method:"GET",path:"/1/transformations/{transformationID}".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return t.request(n,r)},listAuthentications({itemsPerPage:e,page:r,type:a,platform:s,sort:o,order:n}={},i=void 0){let u="/1/authentications",g={},P={};e!==void 0&&(P.itemsPerPage=e.toString()),r!==void 0&&(P.page=r.toString()),a!==void 0&&(P.type=a.toString()),s!==void 0&&(P.platform=s.toString()),o!==void 0&&(P.sort=o.toString()),n!==void 0&&(P.order=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},listDestinations({itemsPerPage:e,page:r,type:a,authenticationID:s,transformationID:o,sort:n,order:i}={},u=void 0){let g="/1/destinations",P={},w={};e!==void 0&&(w.itemsPerPage=e.toString()),r!==void 0&&(w.page=r.toString()),a!==void 0&&(w.type=a.toString()),s!==void 0&&(w.authenticationID=s.toString()),o!==void 0&&(w.transformationID=o.toString()),n!==void 0&&(w.sort=n.toString()),i!==void 0&&(w.order=i.toString());let y={method:"GET",path:g,queryParameters:w,headers:P};return t.request(y,u)},listEvents({runID:e,itemsPerPage:r,page:a,status:s,type:o,sort:n,order:i,startDate:u,endDate:g},P){if(!e)throw new Error("Parameter `runID` is required when calling `listEvents`.");let w="/1/runs/{runID}/events".replace("{runID}",encodeURIComponent(e)),y={},f={};r!==void 0&&(f.itemsPerPage=r.toString()),a!==void 0&&(f.page=a.toString()),s!==void 0&&(f.status=s.toString()),o!==void 0&&(f.type=o.toString()),n!==void 0&&(f.sort=n.toString()),i!==void 0&&(f.order=i.toString()),u!==void 0&&(f.startDate=u.toString()),g!==void 0&&(f.endDate=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},listRuns({itemsPerPage:e,page:r,status:a,type:s,taskID:o,sort:n,order:i,startDate:u,endDate:g}={},P=void 0){let w="/1/runs",y={},f={};e!==void 0&&(f.itemsPerPage=e.toString()),r!==void 0&&(f.page=r.toString()),a!==void 0&&(f.status=a.toString()),s!==void 0&&(f.type=s.toString()),o!==void 0&&(f.taskID=o.toString()),n!==void 0&&(f.sort=n.toString()),i!==void 0&&(f.order=i.toString()),u!==void 0&&(f.startDate=u.toString()),g!==void 0&&(f.endDate=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},listSources({itemsPerPage:e,page:r,type:a,authenticationID:s,sort:o,order:n}={},i=void 0){let u="/1/sources",g={},P={};e!==void 0&&(P.itemsPerPage=e.toString()),r!==void 0&&(P.page=r.toString()),a!==void 0&&(P.type=a.toString()),s!==void 0&&(P.authenticationID=s.toString()),o!==void 0&&(P.sort=o.toString()),n!==void 0&&(P.order=n.toString());let w={method:"GET",path:u,queryParameters:P,headers:g};return t.request(w,i)},listTasks({itemsPerPage:e,page:r,action:a,enabled:s,sourceID:o,sourceType:n,destinationID:i,triggerType:u,withEmailNotifications:g,sort:P,order:w}={},y=void 0){let f="/2/tasks",T={},v={};e!==void 0&&(v.itemsPerPage=e.toString()),r!==void 0&&(v.page=r.toString()),a!==void 0&&(v.action=a.toString()),s!==void 0&&(v.enabled=s.toString()),o!==void 0&&(v.sourceID=o.toString()),n!==void 0&&(v.sourceType=n.toString()),i!==void 0&&(v.destinationID=i.toString()),u!==void 0&&(v.triggerType=u.toString()),g!==void 0&&(v.withEmailNotifications=g.toString()),P!==void 0&&(v.sort=P.toString()),w!==void 0&&(v.order=w.toString());let O={method:"GET",path:f,queryParameters:v,headers:T};return t.request(O,y)},listTasksV1({itemsPerPage:e,page:r,action:a,enabled:s,sourceID:o,destinationID:n,triggerType:i,sort:u,order:g}={},P=void 0){let w="/1/tasks",y={},f={};e!==void 0&&(f.itemsPerPage=e.toString()),r!==void 0&&(f.page=r.toString()),a!==void 0&&(f.action=a.toString()),s!==void 0&&(f.enabled=s.toString()),o!==void 0&&(f.sourceID=o.toString()),n!==void 0&&(f.destinationID=n.toString()),i!==void 0&&(f.triggerType=i.toString()),u!==void 0&&(f.sort=u.toString()),g!==void 0&&(f.order=g.toString());let T={method:"GET",path:w,queryParameters:f,headers:y};return t.request(T,P)},listTransformations({itemsPerPage:e,page:r,sort:a,order:s,type:o}={},n=void 0){let i="/1/transformations",u={},g={};e!==void 0&&(g.itemsPerPage=e.toString()),r!==void 0&&(g.page=r.toString()),a!==void 0&&(g.sort=a.toString()),s!==void 0&&(g.order=s.toString()),o!==void 0&&(g.type=o.toString());let P={method:"GET",path:i,queryParameters:g,headers:u};return t.request(P,n)},push({indexName:e,pushTaskPayload:r,watch:a,referenceIndexName:s},o){if(!e)throw new Error("Parameter `indexName` is required when calling `push`.");if(!r)throw new Error("Parameter `pushTaskPayload` is required when calling `push`.");if(!r.action)throw new Error("Parameter `pushTaskPayload.action` is required when calling `push`.");if(!r.records)throw new Error("Parameter `pushTaskPayload.records` is required when calling `push`.");let n="/1/push/{indexName}".replace("{indexName}",encodeURIComponent(e)),i={},u={};a!==void 0&&(u.watch=a.toString()),s!==void 0&&(u.referenceIndexName=s.toString());let g={method:"POST",path:n,queryParameters:u,headers:i,data:r};return o={timeouts:{connect:18e4,read:18e4,write:18e4,...o?.timeouts}},t.request(g,o)},pushTask({taskID:e,pushTaskPayload:r,watch:a},s){if(!e)throw new Error("Parameter `taskID` is required when calling `pushTask`.");if(!r)throw new Error("Parameter `pushTaskPayload` is required when calling `pushTask`.");if(!r.action)throw new Error("Parameter `pushTaskPayload.action` is required when calling `pushTask`.");if(!r.records)throw new Error("Parameter `pushTaskPayload.records` is required when calling `pushTask`.");let o="/2/tasks/{taskID}/push".replace("{taskID}",encodeURIComponent(e)),n={},i={};a!==void 0&&(i.watch=a.toString());let u={method:"POST",path:o,queryParameters:i,headers:n,data:r};return s={timeouts:{connect:18e4,read:18e4,write:18e4,...s?.timeouts}},t.request(u,s)},replaceTask({taskID:e,taskReplace:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `replaceTask`.");if(!r)throw new Error("Parameter `taskReplace` is required when calling `replaceTask`.");if(!r.destinationID)throw new Error("Parameter `taskReplace.destinationID` is required when calling `replaceTask`.");if(!r.action)throw new Error("Parameter `taskReplace.action` is required when calling `replaceTask`.");let i={method:"PUT",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},runSource({sourceID:e,runSourcePayload:r},a){if(!e)throw new Error("Parameter `sourceID` is required when calling `runSource`.");let i={method:"POST",path:"/1/sources/{sourceID}/run".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return t.request(i,a)},runTask({taskID:e,runTaskPayload:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `runTask`.");let i={method:"POST",path:"/2/tasks/{taskID}/run".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return t.request(i,a)},runTaskV1({taskID:e,runTaskPayload:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `runTaskV1`.");let i={method:"POST",path:"/1/tasks/{taskID}/run".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return t.request(i,a)},searchAuthentications(e,r){if(!e)throw new Error("Parameter `authenticationSearch` is required when calling `searchAuthentications`.");if(!e.authenticationIDs)throw new Error("Parameter `authenticationSearch.authenticationIDs` is required when calling `searchAuthentications`.");let n={method:"POST",path:"/1/authentications/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchDestinations(e,r){if(!e)throw new Error("Parameter `destinationSearch` is required when calling `searchDestinations`.");if(!e.destinationIDs)throw new Error("Parameter `destinationSearch.destinationIDs` is required when calling `searchDestinations`.");let n={method:"POST",path:"/1/destinations/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchSources(e,r){if(!e)throw new Error("Parameter `sourceSearch` is required when calling `searchSources`.");if(!e.sourceIDs)throw new Error("Parameter `sourceSearch.sourceIDs` is required when calling `searchSources`.");let n={method:"POST",path:"/1/sources/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchTasks(e,r){if(!e)throw new Error("Parameter `taskSearch` is required when calling `searchTasks`.");if(!e.taskIDs)throw new Error("Parameter `taskSearch.taskIDs` is required when calling `searchTasks`.");let n={method:"POST",path:"/2/tasks/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchTasksV1(e,r){if(!e)throw new Error("Parameter `taskSearch` is required when calling `searchTasksV1`.");if(!e.taskIDs)throw new Error("Parameter `taskSearch.taskIDs` is required when calling `searchTasksV1`.");let n={method:"POST",path:"/1/tasks/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},searchTransformations(e,r){if(!e)throw new Error("Parameter `transformationSearch` is required when calling `searchTransformations`.");if(!e.transformationIDs)throw new Error("Parameter `transformationSearch.transformationIDs` is required when calling `searchTransformations`.");let n={method:"POST",path:"/1/transformations/search",queryParameters:{},headers:{},data:e};return t.request(n,r)},triggerDockerSourceDiscover({sourceID:e},r){if(!e)throw new Error("Parameter `sourceID` is required when calling `triggerDockerSourceDiscover`.");let n={method:"POST",path:"/1/sources/{sourceID}/discover".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{}};return r={timeouts:{connect:18e4,read:18e4,write:18e4,...r?.timeouts}},t.request(n,r)},tryTransformation(e,r){if(!e)throw new Error("Parameter `transformationTry` is required when calling `tryTransformation`.");if(!e.sampleRecord)throw new Error("Parameter `transformationTry.sampleRecord` is required when calling `tryTransformation`.");let n={method:"POST",path:"/1/transformations/try",queryParameters:{},headers:{},data:e};return t.request(n,r)},tryTransformationBeforeUpdate({transformationID:e,transformationTry:r},a){if(!e)throw new Error("Parameter `transformationID` is required when calling `tryTransformationBeforeUpdate`.");if(!r)throw new Error("Parameter `transformationTry` is required when calling `tryTransformationBeforeUpdate`.");if(!r.sampleRecord)throw new Error("Parameter `transformationTry.sampleRecord` is required when calling `tryTransformationBeforeUpdate`.");let i={method:"POST",path:"/1/transformations/{transformationID}/try".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateAuthentication({authenticationID:e,authenticationUpdate:r},a){if(!e)throw new Error("Parameter `authenticationID` is required when calling `updateAuthentication`.");if(!r)throw new Error("Parameter `authenticationUpdate` is required when calling `updateAuthentication`.");let i={method:"PATCH",path:"/1/authentications/{authenticationID}".replace("{authenticationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateDestination({destinationID:e,destinationUpdate:r},a){if(!e)throw new Error("Parameter `destinationID` is required when calling `updateDestination`.");if(!r)throw new Error("Parameter `destinationUpdate` is required when calling `updateDestination`.");let i={method:"PATCH",path:"/1/destinations/{destinationID}".replace("{destinationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateSource({sourceID:e,sourceUpdate:r},a){if(!e)throw new Error("Parameter `sourceID` is required when calling `updateSource`.");if(!r)throw new Error("Parameter `sourceUpdate` is required when calling `updateSource`.");let i={method:"PATCH",path:"/1/sources/{sourceID}".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateTask({taskID:e,taskUpdate:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `updateTask`.");if(!r)throw new Error("Parameter `taskUpdate` is required when calling `updateTask`.");let i={method:"PATCH",path:"/2/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateTaskV1({taskID:e,taskUpdate:r},a){if(!e)throw new Error("Parameter `taskID` is required when calling `updateTaskV1`.");if(!r)throw new Error("Parameter `taskUpdate` is required when calling `updateTaskV1`.");let i={method:"PATCH",path:"/1/tasks/{taskID}".replace("{taskID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},updateTransformation({transformationID:e,transformationCreate:r},a){if(!e)throw new Error("Parameter `transformationID` is required when calling `updateTransformation`.");if(!r)throw new Error("Parameter `transformationCreate` is required when calling `updateTransformation`.");if(!r.name)throw new Error("Parameter `transformationCreate.name` is required when calling `updateTransformation`.");let i={method:"PUT",path:"/1/transformations/{transformationID}".replace("{transformationID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return t.request(i,a)},validateSource(e,r=void 0){let n={method:"POST",path:"/1/sources/validate",queryParameters:{},headers:{},data:e||{}};return r={timeouts:{connect:18e4,read:18e4,write:18e4,...r?.timeouts}},t.request(n,r)},validateSourceBeforeUpdate({sourceID:e,sourceUpdate:r},a){if(!e)throw new Error("Parameter `sourceID` is required when calling `validateSourceBeforeUpdate`.");if(!r)throw new Error("Parameter `sourceUpdate` is required when calling `validateSourceBeforeUpdate`.");let i={method:"POST",path:"/1/sources/{sourceID}/validate".replace("{sourceID}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r};return a={timeouts:{connect:18e4,read:18e4,write:18e4,...a?.timeouts}},t.request(i,a)}}}function Q(c,h,d,q){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");if(!d||d&&(typeof d!="string"||!pe.includes(d)))throw new Error(`\`region\` is required and must be one of the following: ${pe.join(", ")}`);return Ze({appId:c,apiKey:h,region:d,timeouts:{connect:25e3,read:25e3,write:25e3},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${we}-${c}`}),E()]}),...q})}var fe="1.48.1";function er(){return [{url:"status.algolia.com",accept:"readWrite",protocol:"https"}]}function rr({appId:c,apiKey:h,authMode:d,algoliaAgents:q,...p}){let m=I(c,h,d),l=b({hosts:er(),...p,algoliaAgent:C({algoliaAgents:q,client:"Monitoring",version:fe}),baseHeaders:{"content-type":"text/plain",...m.headers(),...p.baseHeaders},baseQueryParameters:{...m.queryParameters(),...p.baseQueryParameters}});return {transporter:l,appId:c,apiKey:h,clearCache(){return Promise.all([l.requestsCache.clear(),l.responsesCache.clear()]).then(()=>{})},get _ua(){return l.algoliaAgent.value},addAlgoliaAgent(t,e){l.algoliaAgent.add({segment:t,version:e});},setClientApiKey({apiKey:t}){!d||d==="WithinHeaders"?l.baseHeaders["x-algolia-api-key"]=t:l.baseQueryParameters["x-algolia-api-key"]=t;},customDelete({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customDelete`.");let n={method:"DELETE",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customGet({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customGet`.");let n={method:"GET",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customPost({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPost`.");let i={method:"POST",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},customPut({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPut`.");let i={method:"PUT",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},getClusterIncidents({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getClusterIncidents`.");let o={method:"GET",path:"/1/incidents/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getClusterStatus({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getClusterStatus`.");let o={method:"GET",path:"/1/status/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getIncidents(t){let s={method:"GET",path:"/1/incidents",queryParameters:{},headers:{}};return l.request(s,t)},getIndexingTime({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getIndexingTime`.");let o={method:"GET",path:"/1/indexing/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getLatency({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getLatency`.");let o={method:"GET",path:"/1/latency/{clusters}".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getMetrics({metric:t,period:e},r){if(!t)throw new Error("Parameter `metric` is required when calling `getMetrics`.");if(!e)throw new Error("Parameter `period` is required when calling `getMetrics`.");let n={method:"GET",path:"/1/infrastructure/{metric}/period/{period}".replace("{metric}",encodeURIComponent(t)).replace("{period}",encodeURIComponent(e)),queryParameters:{},headers:{}};return l.request(n,r)},getReachability({clusters:t},e){if(!t)throw new Error("Parameter `clusters` is required when calling `getReachability`.");let o={method:"GET",path:"/1/reachability/{clusters}/probes".replace("{clusters}",encodeURIComponent(t)),queryParameters:{},headers:{}};return l.request(o,e)},getServers(t){let s={method:"GET",path:"/1/inventory/servers",queryParameters:{},headers:{}};return l.request(s,t)},getStatus(t){let s={method:"GET",path:"/1/status",queryParameters:{},headers:{}};return l.request(s,t)}}}function ye(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");return rr({appId:c,apiKey:h,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${fe}-${c}`}),E()]}),...d})}var Ee="5.48.1";function tr(c){return [{url:`${c}-dsn.algolia.net`,accept:"read",protocol:"https"},{url:`${c}.algolia.net`,accept:"write",protocol:"https"}].concat(j([{url:`${c}-1.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-2.algolianet.com`,accept:"readWrite",protocol:"https"},{url:`${c}-3.algolianet.com`,accept:"readWrite",protocol:"https"}]))}function ar({appId:c,apiKey:h,authMode:d,algoliaAgents:q,...p}){let m=I(c,h,d),l=b({hosts:tr(c),...p,algoliaAgent:C({algoliaAgents:q,client:"Recommend",version:Ee}),baseHeaders:{"content-type":"text/plain",...m.headers(),...p.baseHeaders},baseQueryParameters:{...m.queryParameters(),...p.baseQueryParameters}});return {transporter:l,appId:c,apiKey:h,clearCache(){return Promise.all([l.requestsCache.clear(),l.responsesCache.clear()]).then(()=>{})},get _ua(){return l.algoliaAgent.value},addAlgoliaAgent(t,e){l.algoliaAgent.add({segment:t,version:e});},setClientApiKey({apiKey:t}){!d||d==="WithinHeaders"?l.baseHeaders["x-algolia-api-key"]=t:l.baseQueryParameters["x-algolia-api-key"]=t;},batchRecommendRules({indexName:t,model:e,recommendRule:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `batchRecommendRules`.");if(!e)throw new Error("Parameter `model` is required when calling `batchRecommendRules`.");let i={method:"POST",path:"/1/indexes/{indexName}/{model}/recommend/rules/batch".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{}};return l.request(i,a)},customDelete({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customDelete`.");let n={method:"DELETE",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customGet({path:t,parameters:e},r){if(!t)throw new Error("Parameter `path` is required when calling `customGet`.");let n={method:"GET",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{}};return l.request(n,r)},customPost({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPost`.");let i={method:"POST",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},customPut({path:t,parameters:e,body:r},a){if(!t)throw new Error("Parameter `path` is required when calling `customPut`.");let i={method:"PUT",path:"/{path}".replace("{path}",t),queryParameters:e||{},headers:{},data:r||{}};return l.request(i,a)},deleteRecommendRule({indexName:t,model:e,objectID:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `deleteRecommendRule`.");if(!e)throw new Error("Parameter `model` is required when calling `deleteRecommendRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `deleteRecommendRule`.");let i={method:"DELETE",path:"/1/indexes/{indexName}/{model}/recommend/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return l.request(i,a)},getRecommendRule({indexName:t,model:e,objectID:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `getRecommendRule`.");if(!e)throw new Error("Parameter `model` is required when calling `getRecommendRule`.");if(!r)throw new Error("Parameter `objectID` is required when calling `getRecommendRule`.");let i={method:"GET",path:"/1/indexes/{indexName}/{model}/recommend/rules/{objectID}".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)).replace("{objectID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return l.request(i,a)},getRecommendStatus({indexName:t,model:e,taskID:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `getRecommendStatus`.");if(!e)throw new Error("Parameter `model` is required when calling `getRecommendStatus`.");if(!r)throw new Error("Parameter `taskID` is required when calling `getRecommendStatus`.");let i={method:"GET",path:"/1/indexes/{indexName}/{model}/task/{taskID}".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)).replace("{taskID}",encodeURIComponent(r)),queryParameters:{},headers:{}};return l.request(i,a)},getRecommendations(t,e){if(t&&Array.isArray(t)&&(t={requests:t}),!t)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!t.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");let o={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:t,useReadTransporter:true,cacheable:true};return l.request(o,e)},searchRecommendRules({indexName:t,model:e,searchRecommendRulesParams:r},a){if(!t)throw new Error("Parameter `indexName` is required when calling `searchRecommendRules`.");if(!e)throw new Error("Parameter `model` is required when calling `searchRecommendRules`.");let i={method:"POST",path:"/1/indexes/{indexName}/{model}/recommend/rules/search".replace("{indexName}",encodeURIComponent(t)).replace("{model}",encodeURIComponent(e)),queryParameters:{},headers:{},data:r||{},useReadTransporter:true,cacheable:true};return l.request(i,a)}}}function Te(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");return ar({appId:c,apiKey:h,timeouts:{connect:1e3,read:2e3,write:3e4},logger:A(),requester:D(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:E(),requestsCache:E({serializable:false}),hostsCache:S({caches:[R({key:`${Ee}-${c}`}),E()]}),...d})}function St(c,h,d){if(!c||typeof c!="string")throw new Error("`appId` is missing.");if(!h||typeof h!="string")throw new Error("`apiKey` is missing.");let q=Pe(c,h,d),p;if(d?.transformation){if(!d.transformation.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");p=Q(c,h,d.transformation.region,d);}return {...q,async saveObjectsWithTransformation({indexName:m,objects:l,waitForTasks:t},e){if(!p)throw new Error("`transformation.region` must be provided at client instantiation before calling this method.");if(!d?.transformation?.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");return p.chunkedPush({indexName:m,objects:l,action:"addObject",waitForTasks:t},e)},async partialUpdateObjectsWithTransformation({indexName:m,objects:l,createIfNotExists:t,waitForTasks:e},r){if(!p)throw new Error("`transformation.region` must be provided at client instantiation before calling this method.");if(!d?.transformation?.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");return p.chunkedPush({indexName:m,objects:l,action:t?"partialUpdateObject":"partialUpdateObjectNoCreate",waitForTasks:e},r)},async replaceAllObjectsWithTransformation({indexName:m,objects:l,batchSize:t,scopes:e},r){if(!p)throw new Error("`transformation.region` must be provided at client instantiation before calling this method.");if(!d?.transformation?.region)throw new Error("`region` must be provided when leveraging the transformation pipeline");let a=Math.floor(Math.random()*1e6)+1e5,s=`${m}_tmp_${a}`;e===void 0&&(e=["settings","rules","synonyms"]);try{let o=await this.operationIndex({indexName:m,operationIndexParams:{operation:"copy",destination:s,scope:e}},r),n=await p.chunkedPush({indexName:s,objects:l,waitForTasks:!0,batchSize:t,referenceIndexName:m},r);await this.waitForTask({indexName:s,taskID:o.taskID}),o=await this.operationIndex({indexName:m,operationIndexParams:{operation:"copy",destination:s,scope:e}},r),await this.waitForTask({indexName:s,taskID:o.taskID});let i=await this.operationIndex({indexName:s,operationIndexParams:{operation:"move",destination:m}},r);return await this.waitForTask({indexName:s,taskID:i.taskID}),{copyOperationResponse:o,watchResponses:n,moveOperationResponse:i}}catch(o){throw await this.deleteIndex({indexName:s}),o}},get _ua(){return q.transporter.algoliaAgent.value},initAbtesting:m=>ae(m.appId||c,m.apiKey||h,m.region,m.options),initAbtestingV3:m=>ee(m.appId||c,m.apiKey||h,m.region,m.options),initAnalytics:m=>oe(m.appId||c,m.apiKey||h,m.region,m.options),initIngestion:m=>Q(m.appId||c,m.apiKey||h,m.region,m.options),initInsights:m=>ue(m.appId||c,m.apiKey||h,m.region,m.options),initMonitoring:(m={})=>ye(m.appId||c,m.apiKey||h,m.options),initPersonalization:m=>le(m.appId||c,m.apiKey||h,m.region,m.options),initQuerySuggestions:m=>ge(m.appId||c,m.apiKey||h,m.region,m.options),initRecommend:(m={})=>Te(m.appId||c,m.apiKey||h,m.options)}} exports.abtestingClient = ae; exports.abtestingV3Client = ee; diff --git a/node_modules/algoliasearch/package.json b/node_modules/algoliasearch/package.json index d26e77e..d8fbe7a 100644 --- a/node_modules/algoliasearch/package.json +++ b/node_modules/algoliasearch/package.json @@ -1,5 +1,5 @@ { - "version": "5.48.0", + "version": "5.48.1", "repository": { "type": "git", "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" @@ -74,25 +74,25 @@ "lite.d.ts" ], "dependencies": { - "@algolia/abtesting": "1.14.0", - "@algolia/client-abtesting": "5.48.0", - "@algolia/client-analytics": "5.48.0", - "@algolia/client-common": "5.48.0", - "@algolia/client-insights": "5.48.0", - "@algolia/client-personalization": "5.48.0", - "@algolia/client-query-suggestions": "5.48.0", - "@algolia/client-search": "5.48.0", - "@algolia/ingestion": "1.48.0", - "@algolia/monitoring": "1.48.0", - "@algolia/recommend": "5.48.0", - "@algolia/requester-browser-xhr": "5.48.0", - "@algolia/requester-fetch": "5.48.0", - "@algolia/requester-node-http": "5.48.0" + "@algolia/abtesting": "1.14.1", + "@algolia/client-abtesting": "5.48.1", + "@algolia/client-analytics": "5.48.1", + "@algolia/client-common": "5.48.1", + "@algolia/client-insights": "5.48.1", + "@algolia/client-personalization": "5.48.1", + "@algolia/client-query-suggestions": "5.48.1", + "@algolia/client-search": "5.48.1", + "@algolia/ingestion": "1.48.1", + "@algolia/monitoring": "1.48.1", + "@algolia/recommend": "5.48.1", + "@algolia/requester-browser-xhr": "5.48.1", + "@algolia/requester-fetch": "5.48.1", + "@algolia/requester-node-http": "5.48.1" }, "devDependencies": { - "@algolia/requester-testing": "5.48.0", + "@algolia/requester-testing": "5.48.1", "@arethetypeswrong/cli": "0.18.2", - "@cloudflare/vitest-pool-workers": "0.12.8", + "@cloudflare/vitest-pool-workers": "0.12.10", "@cloudflare/workers-types": "4.20251115.0", "@types/node": "25.1.0", "jsdom": "27.4.0", @@ -105,5 +105,5 @@ "engines": { "node": ">= 14.0.0" }, - "gitHead": "b39976bd859ef66e65d2db182d69853a91a71139" + "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" } diff --git a/node_modules/preact/README.md b/node_modules/preact/README.md index e27535a..65e9e0d 100644 --- a/node_modules/preact/README.md +++ b/node_modules/preact/README.md @@ -23,19 +23,14 @@ -[![npm](https://img.shields.io/npm/v/preact.svg)](http://npm.im/preact) +[![npm](https://img.shields.io/npm/v/preact.svg)](https://www.npmjs.com/package/preact) [![Preact Slack Community](https://img.shields.io/badge/Slack%20Community-preact.slack.com-blue)](https://chat.preactjs.com) [![OpenCollective Backers](https://opencollective.com/preact/backers/badge.svg)](#backers) [![OpenCollective Sponsors](https://opencollective.com/preact/sponsors/badge.svg)](#sponsors) [![coveralls](https://img.shields.io/coveralls/preactjs/preact/main.svg)](https://coveralls.io/github/preactjs/preact) -[![gzip size](http://img.badgesize.io/https://unpkg.com/preact/dist/preact.min.js?compression=gzip&label=gzip)](https://unpkg.com/preact/dist/preact.min.js) -[![brotli size](http://img.badgesize.io/https://unpkg.com/preact/dist/preact.min.js?compression=brotli&label=brotli)](https://unpkg.com/preact/dist/preact.min.js) - - - - - +[![gzip size](https://img.badgesize.io/https://unpkg.com/preact/dist/preact.min.js?compression=gzip&label=gzip)](https://unpkg.com/preact/dist/preact.min.js) +[![brotli size](https://img.badgesize.io/https://unpkg.com/preact/dist/preact.min.js?compression=brotli&label=brotli)](https://unpkg.com/preact/dist/preact.min.js) diff --git a/node_modules/preact/compat/LICENSE b/node_modules/preact/compat/LICENSE deleted file mode 100644 index da5389a..0000000 --- a/node_modules/preact/compat/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2015-present Jason Miller - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/node_modules/preact/compat/client.js b/node_modules/preact/compat/client.js index cc3a60d..bc48c21 100644 --- a/node_modules/preact/compat/client.js +++ b/node_modules/preact/compat/client.js @@ -2,10 +2,12 @@ const { render, hydrate, unmountComponentAtNode } = require('preact/compat'); function createRoot(container) { return { - render(children) { + // eslint-disable-next-line + render: function (children) { render(children, container); }, - unmount() { + // eslint-disable-next-line + unmount: function () { unmountComponentAtNode(container); } }; diff --git a/node_modules/preact/compat/client.mjs b/node_modules/preact/compat/client.mjs index f262a14..f9d1814 100644 --- a/node_modules/preact/compat/client.mjs +++ b/node_modules/preact/compat/client.mjs @@ -2,10 +2,12 @@ import { render, hydrate, unmountComponentAtNode } from 'preact/compat'; export function createRoot(container) { return { - render(children) { + // eslint-disable-next-line + render: function (children) { render(children, container); }, - unmount() { + // eslint-disable-next-line + unmount: function () { unmountComponentAtNode(container); } }; diff --git a/node_modules/preact/compat/dist/compat.js b/node_modules/preact/compat/dist/compat.js index ad5b12e..05ca016 100644 --- a/node_modules/preact/compat/dist/compat.js +++ b/node_modules/preact/compat/dist/compat.js @@ -1,2 +1,2 @@ -var n=require("preact"),t=require("preact/hooks");function e(n,t){for(var e in t)n[e]=t[e];return n}function r(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function u(n){this.props=n}function o(t,e){function u(n){var t=this.props.ref,u=t==n.ref;return!u&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!u:r(this.props,n)}function o(e){return this.shouldComponentUpdate=u,n.createElement(t,e)}return o.displayName="Memo("+(t.displayName||t.name)+")",o.prototype.isReactComponent=!0,o.__f=!0,o}(u.prototype=new n.Component).isPureReactComponent=!0,u.prototype.shouldComponentUpdate=function(n,t){return r(this.props,n)||r(this.state,t)};var i=n.options.__b;n.options.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),i&&i(n)};var c="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function l(n){function t(t){var r=e({},t);return delete r.ref,n(r,t.ref||null)}return t.$$typeof=c,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var f=function(t,e){return null==t?null:n.toChildArray(n.toChildArray(t).map(e))},a={map:f,forEach:f,count:function(t){return t?n.toChildArray(t).length:0},only:function(t){var e=n.toChildArray(t);if(1!==e.length)throw"Children.only";return e[0]},toArray:n.toChildArray},s=n.options.__e;n.options.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);s(n,t,e,r)};var p=n.options.unmount;function h(n,t,r){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=e({},n)).__c&&(n.__c.__P===r&&(n.__c.__P=t),n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return h(n,t,r)})),n}function v(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return v(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function d(){this.__u=0,this.t=null,this.__b=null}function m(n){var t=n.__.__c;return t&&t.__a&&t.__a(n)}function x(t){var e,r,u;function o(o){if(e||(e=t()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return n.createElement(r,o)}return o.displayName="Lazy",o.__f=!0,o}function b(){this.u=null,this.o=null}n.options.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),p&&p(n)},(d.prototype=new n.Component).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=m(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=v(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.t.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},d.prototype.componentWillUnmount=function(){this.t=[]},d.prototype.render=function(t,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),u=this.__v.__k[0].__c;this.__v.__k[0]=h(this.__b,r,u.__O=u.__P)}this.__b=null}var o=e.__a&&n.createElement(n.Fragment,null,t.fallback);return o&&(o.__u&=-33),[n.createElement(n.Fragment,null,e.__a?null:t.children),o]};var y=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]>>1,1),e.i.removeChild(n)}}),n.render(n.createElement(_,{context:e.context},t.__v),e.l)}function S(t,e){var r=n.createElement(g,{__v:t,i:e});return r.containerInfo=e,r}(b.prototype=new n.Component).__a=function(n){var t=this,e=m(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),y(t,n,r)):u()};e?e(o):o()}},b.prototype.render=function(t){this.u=null,this.o=new Map;var e=n.toChildArray(t.children);t.revealOrder&&"b"===t.revealOrder[0]&&e.reverse();for(var r=e.length;r--;)this.o.set(e[r],this.u=[1,0,this.u]);return t.children},b.prototype.componentDidUpdate=b.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){y(n,e,t)})};var C="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,E=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,O=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,w=/[A-Z0-9]/g,R="undefined"!=typeof document,j=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function N(t,e,r){return null==e.__k&&(e.textContent=""),n.render(t,e),"function"==typeof r&&r(),t?t.__c:null}function k(t,e,r){return n.hydrate(t,e),"function"==typeof r&&r(),t?t.__c:null}n.Component.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(n.Component.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var A=n.options.event;function T(){}function F(){return this.cancelBubble}function I(){return this.defaultPrevented}n.options.event=function(n){return A&&(n=A(n)),n.persist=T,n.isPropagationStopped=F,n.isDefaultPrevented=I,n.nativeEvent=n};var L,U={enumerable:!1,configurable:!0,get:function(){return this.class}},D=n.options.vnode;n.options.vnode=function(t){"string"==typeof t.type&&function(t){var e=t.props,r=t.type,u={};for(var o in e){var i=e[o];if(!("value"===o&&"defaultValue"in e&&null==i||R&&"children"===o&&"noscript"===r||"class"===o||"className"===o)){var c=o.toLowerCase();"defaultValue"===o&&"value"in e&&null==e.value?o="value":"download"===o&&!0===i?i="":"ondoubleclick"===c?o="ondblclick":"onchange"!==c||"input"!==r&&"textarea"!==r||j(e.type)?"onfocus"===c?o="onfocusin":"onblur"===c?o="onfocusout":O.test(o)?o=c:-1===r.indexOf("-")&&E.test(o)?o=o.replace(w,"-$&").toLowerCase():null===i&&(i=void 0):c=o="oninput","oninput"===c&&u[o=c]&&(o="oninputCapture"),u[o]=i}}"select"==r&&u.multiple&&Array.isArray(u.value)&&(u.value=n.toChildArray(e.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==r&&null!=u.defaultValue&&(u.value=n.toChildArray(e.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),e.class&&!e.className?(u.class=e.class,Object.defineProperty(u,"className",U)):(e.className&&!e.class||e.class&&e.className)&&(u.class=u.className=e.className),t.props=u}(t),t.$$typeof=C,D&&D(t)};var M=n.options.__r;n.options.__r=function(n){M&&M(n),L=n.__c};var V=n.options.diffed;n.options.diffed=function(n){V&&V(n);var t=n.props,e=n.__e;null!=e&&"textarea"===n.type&&"value"in t&&t.value!==e.value&&(e.value=null==t.value?"":t.value),L=null};var W={ReactCurrentDispatcher:{current:{readContext:function(n){return L.__n[n.__c].props.value}}}};function P(t){return n.createElement.bind(null,t)}function z(n){return!!n&&n.$$typeof===C}function B(t){return z(t)&&t.type===n.Fragment}function q(t){return z(t)?n.cloneElement.apply(null,arguments):t}function H(t){return!!t.__k&&(n.render(null,t),!0)}function Z(n){return n&&(n.base||1===n.nodeType&&n)||null}var Y=function(n,t){return n(t)},$=function(n,t){return n(t)},G=n.Fragment;function J(n){n()}function K(n){return n}function Q(){return[!1,J]}var X=t.useLayoutEffect,nn=z;function tn(n,e){var r=e(),u=t.useState({p:{__:r,h:e}}),o=u[0].p,i=u[1];return t.useLayoutEffect(function(){o.__=r,o.h=e,en(o)&&i({p:o})},[n,r,e]),t.useEffect(function(){return en(o)&&i({p:o}),n(function(){en(o)&&i({p:o})})},[n]),r}function en(n){var t,e,r=n.h,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}var rn={useState:t.useState,useId:t.useId,useReducer:t.useReducer,useEffect:t.useEffect,useLayoutEffect:t.useLayoutEffect,useInsertionEffect:X,useTransition:Q,useDeferredValue:K,useSyncExternalStore:tn,startTransition:J,useRef:t.useRef,useImperativeHandle:t.useImperativeHandle,useMemo:t.useMemo,useCallback:t.useCallback,useContext:t.useContext,useDebugValue:t.useDebugValue,version:"17.0.2",Children:a,render:N,hydrate:k,unmountComponentAtNode:H,createPortal:S,createElement:n.createElement,createContext:n.createContext,createFactory:P,cloneElement:q,createRef:n.createRef,Fragment:n.Fragment,isValidElement:z,isElement:nn,isFragment:B,findDOMNode:Z,Component:n.Component,PureComponent:u,memo:o,forwardRef:l,flushSync:$,unstable_batchedUpdates:Y,StrictMode:G,Suspense:d,SuspenseList:b,lazy:x,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:W};Object.defineProperty(exports,"Component",{enumerable:!0,get:function(){return n.Component}}),Object.defineProperty(exports,"Fragment",{enumerable:!0,get:function(){return n.Fragment}}),Object.defineProperty(exports,"createContext",{enumerable:!0,get:function(){return n.createContext}}),Object.defineProperty(exports,"createElement",{enumerable:!0,get:function(){return n.createElement}}),Object.defineProperty(exports,"createRef",{enumerable:!0,get:function(){return n.createRef}}),exports.Children=a,exports.PureComponent=u,exports.StrictMode=G,exports.Suspense=d,exports.SuspenseList=b,exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W,exports.cloneElement=q,exports.createFactory=P,exports.createPortal=S,exports.default=rn,exports.findDOMNode=Z,exports.flushSync=$,exports.forwardRef=l,exports.hydrate=k,exports.isElement=nn,exports.isFragment=B,exports.isValidElement=z,exports.lazy=x,exports.memo=o,exports.render=N,exports.startTransition=J,exports.unmountComponentAtNode=H,exports.unstable_batchedUpdates=Y,exports.useDeferredValue=K,exports.useInsertionEffect=X,exports.useSyncExternalStore=tn,exports.useTransition=Q,exports.version="17.0.2",Object.keys(t).forEach(function(n){"default"===n||exports.hasOwnProperty(n)||Object.defineProperty(exports,n,{enumerable:!0,get:function(){return t[n]}})}); +var n=require("preact"),t=require("preact/hooks");function e(n,t){for(var e in t)n[e]=t[e];return n}function r(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function u(n,e){var r=e(),u=t.useState({t:{__:r,u:e}}),i=u[0].t,l=u[1];return t.useLayoutEffect(function(){i.__=r,i.u=e,o(i)&&l({t:i})},[n,r,e]),t.useEffect(function(){return o(i)&&l({t:i}),n(function(){o(i)&&l({t:i})})},[n]),r}function o(n){var t,e,r=n.u,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}function i(n){n()}function l(n){return n}function c(){return[!1,i]}var f=t.useLayoutEffect;function a(n,t){this.props=n,this.context=t}function s(t,e){function u(n){var t=this.props.ref,u=t==n.ref;return!u&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!u:r(this.props,n)}function o(e){return this.shouldComponentUpdate=u,n.createElement(t,e)}return o.displayName="Memo("+(t.displayName||t.name)+")",o.prototype.isReactComponent=!0,o.__f=!0,o.type=t,o}(a.prototype=new n.Component).isPureReactComponent=!0,a.prototype.shouldComponentUpdate=function(n,t){return r(this.props,n)||r(this.state,t)};var p=n.options.__b;n.options.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),p&&p(n)};var h="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function v(n){function t(t){var r=e({},t);return delete r.ref,n(r,t.ref||null)}return t.$$typeof=h,t.render=n,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var d=function(t,e){return null==t?null:n.toChildArray(n.toChildArray(t).map(e))},m={map:d,forEach:d,count:function(t){return t?n.toChildArray(t).length:0},only:function(t){var e=n.toChildArray(t);if(1!==e.length)throw"Children.only";return e[0]},toArray:n.toChildArray},x=n.options.__e;n.options.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);x(n,t,e,r)};var b=n.options.unmount;function _(n,t,r){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=e({},n)).__c&&(n.__c.__P===r&&(n.__c.__P=t),n.__c.__e=!0,n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return _(n,t,r)})),n}function y(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return y(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function g(){this.__u=0,this.o=null,this.__b=null}function S(n){if(!n.__)return null;var t=n.__.__c;return t&&t.__a&&t.__a(n)}function E(t){var e,r,u,o=null;function i(i){if(e||(e=t()).then(function(n){n&&(o=n.default||n),u=!0},function(n){r=n,u=!0}),r)throw r;if(!u)throw e;return o?n.createElement(o,i):null}return i.displayName="Lazy",i.__f=!0,i}function C(){this.i=null,this.l=null}n.options.unmount=function(n){var t=n.__c;t&&(t.__z=!0),t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),b&&b(n)},(g.prototype=new n.Component).__c=function(n,t){var e=t.__c,r=this;null==r.o&&(r.o=[]),r.o.push(e);var u=S(r.__v),o=!1,i=function(){o||r.__z||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var l=e.__P;e.__P=null;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=y(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.__P=l,t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},g.prototype.componentWillUnmount=function(){this.o=[]},g.prototype.render=function(t,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),u=this.__v.__k[0].__c;this.__v.__k[0]=_(this.__b,r,u.__O=u.__P)}this.__b=null}var o=e.__a&&n.createElement(n.Fragment,null,t.fallback);return o&&(o.__u&=-33),[n.createElement(n.Fragment,null,e.__a?null:t.children),o]};var R=function(n,t,e){if(++e[1]===e[0]&&n.l.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.l.size))for(e=n.i;e;){for(;e.length>3;)e.pop()();if(e[1]>>1,1),e.p.removeChild(n)}}}n.render(n.createElement(O,{context:e.context},t.__v),e.h)}function I(t,e){var r=n.createElement(w,{__v:t,p:e});return r.containerInfo=e,r}(C.prototype=new n.Component).__a=function(n){var t=this,e=S(t.__v),r=t.l.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),R(t,n,r)):u()};e?e(o):o()}},C.prototype.render=function(t){this.i=null,this.l=new Map;var e=n.toChildArray(t.children);t.revealOrder&&"b"===t.revealOrder[0]&&e.reverse();for(var r=e.length;r--;)this.l.set(e[r],this.i=[1,0,this.i]);return t.children},C.prototype.componentDidUpdate=C.prototype.componentDidMount=function(){var n=this;this.l.forEach(function(t,e){R(n,e,t)})};var j="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,k=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,N=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,M=/[A-Z0-9]/g,T="undefined"!=typeof document,A=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function D(t,e,r){return null==e.__k&&(e.textContent=""),n.render(t,e),"function"==typeof r&&r(),t?t.__c:null}function L(t,e,r){return n.hydrate(t,e),"function"==typeof r&&r(),t?t.__c:null}n.Component.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(n.Component.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var U=n.options.event;function F(){}function V(){return this.cancelBubble}function W(){return this.defaultPrevented}n.options.event=function(n){return U&&(n=U(n)),n.persist=F,n.isPropagationStopped=V,n.isDefaultPrevented=W,n.nativeEvent=n};var P,z={enumerable:!1,configurable:!0,get:function(){return this.class}},B=n.options.vnode;n.options.vnode=function(t){"string"==typeof t.type&&function(t){var e=t.props,r=t.type,u={},o=-1===r.indexOf("-");for(var i in e){var l=e[i];if(!("value"===i&&"defaultValue"in e&&null==l||T&&"children"===i&&"noscript"===r||"class"===i||"className"===i)){var c=i.toLowerCase();"defaultValue"===i&&"value"in e&&null==e.value?i="value":"download"===i&&!0===l?l="":"translate"===c&&"no"===l?l=!1:"o"===c[0]&&"n"===c[1]?"ondoubleclick"===c?i="ondblclick":"onchange"!==c||"input"!==r&&"textarea"!==r||A(e.type)?"onfocus"===c?i="onfocusin":"onblur"===c?i="onfocusout":N.test(i)&&(i=c):c=i="oninput":o&&k.test(i)?i=i.replace(M,"-$&").toLowerCase():null===l&&(l=void 0),"oninput"===c&&u[i=c]&&(i="oninputCapture"),u[i]=l}}"select"==r&&u.multiple&&Array.isArray(u.value)&&(u.value=n.toChildArray(e.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==r&&null!=u.defaultValue&&(u.value=n.toChildArray(e.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),e.class&&!e.className?(u.class=e.class,Object.defineProperty(u,"className",z)):(e.className&&!e.class||e.class&&e.className)&&(u.class=u.className=e.className),t.props=u}(t),t.$$typeof=j,B&&B(t)};var H=n.options.__r;n.options.__r=function(n){H&&H(n),P=n.__c};var q=n.options.diffed;n.options.diffed=function(n){q&&q(n);var t=n.props,e=n.__e;null!=e&&"textarea"===n.type&&"value"in t&&t.value!==e.value&&(e.value=null==t.value?"":t.value),P=null};var Z={ReactCurrentDispatcher:{current:{readContext:function(n){return P.__n[n.__c].props.value},useCallback:t.useCallback,useContext:t.useContext,useDebugValue:t.useDebugValue,useDeferredValue:l,useEffect:t.useEffect,useId:t.useId,useImperativeHandle:t.useImperativeHandle,useInsertionEffect:f,useLayoutEffect:t.useLayoutEffect,useMemo:t.useMemo,useReducer:t.useReducer,useRef:t.useRef,useState:t.useState,useSyncExternalStore:u,useTransition:c}}};function Y(t){return n.createElement.bind(null,t)}function $(n){return!!n&&n.$$typeof===j}function G(t){return $(t)&&t.type===n.Fragment}function J(n){return!!n&&!!n.displayName&&("string"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith("Memo(")}function K(t){return $(t)?n.cloneElement.apply(null,arguments):t}function Q(t){return!!t.__k&&(n.render(null,t),!0)}function X(n){return n&&(n.base||1===n.nodeType&&n)||null}var nn=function(n,t){return n(t)},tn=function(n,t){return n(t)},en=n.Fragment,rn=$,un={useState:t.useState,useId:t.useId,useReducer:t.useReducer,useEffect:t.useEffect,useLayoutEffect:t.useLayoutEffect,useInsertionEffect:f,useTransition:c,useDeferredValue:l,useSyncExternalStore:u,startTransition:i,useRef:t.useRef,useImperativeHandle:t.useImperativeHandle,useMemo:t.useMemo,useCallback:t.useCallback,useContext:t.useContext,useDebugValue:t.useDebugValue,version:"18.3.1",Children:m,render:D,hydrate:L,unmountComponentAtNode:Q,createPortal:I,createElement:n.createElement,createContext:n.createContext,createFactory:Y,cloneElement:K,createRef:n.createRef,Fragment:n.Fragment,isValidElement:$,isElement:rn,isFragment:G,isMemo:J,findDOMNode:X,Component:n.Component,PureComponent:a,memo:s,forwardRef:v,flushSync:tn,unstable_batchedUpdates:nn,StrictMode:en,Suspense:g,SuspenseList:C,lazy:E,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Z};Object.defineProperty(exports,"Component",{enumerable:!0,get:function(){return n.Component}}),Object.defineProperty(exports,"Fragment",{enumerable:!0,get:function(){return n.Fragment}}),Object.defineProperty(exports,"createContext",{enumerable:!0,get:function(){return n.createContext}}),Object.defineProperty(exports,"createElement",{enumerable:!0,get:function(){return n.createElement}}),Object.defineProperty(exports,"createRef",{enumerable:!0,get:function(){return n.createRef}}),exports.Children=m,exports.PureComponent=a,exports.StrictMode=en,exports.Suspense=g,exports.SuspenseList=C,exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Z,exports.cloneElement=K,exports.createFactory=Y,exports.createPortal=I,exports.default=un,exports.findDOMNode=X,exports.flushSync=tn,exports.forwardRef=v,exports.hydrate=L,exports.isElement=rn,exports.isFragment=G,exports.isMemo=J,exports.isValidElement=$,exports.lazy=E,exports.memo=s,exports.render=D,exports.startTransition=i,exports.unmountComponentAtNode=Q,exports.unstable_batchedUpdates=nn,exports.useDeferredValue=l,exports.useInsertionEffect=f,exports.useSyncExternalStore=u,exports.useTransition=c,exports.version="18.3.1",Object.keys(t).forEach(function(n){"default"===n||exports.hasOwnProperty(n)||Object.defineProperty(exports,n,{enumerable:!0,get:function(){return t[n]}})}); //# sourceMappingURL=compat.js.map diff --git a/node_modules/preact/compat/dist/compat.js.map b/node_modules/preact/compat/dist/compat.js.map index 0ba11c3..35ac68a 100644 --- a/node_modules/preact/compat/dist/compat.js.map +++ b/node_modules/preact/compat/dist/compat.js.map @@ -1 +1 @@ -{"version":3,"file":"compat.js","sources":["../src/util.js","../src/PureComponent.js","../src/memo.js","../src/forwardRef.js","../src/Children.js","../src/suspense.js","../src/suspense-list.js","../../src/constants.js","../src/portals.js","../src/render.js","../src/index.js"],"sourcesContent":["/**\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Check if two objects have a different shape\n * @param {object} a\n * @param {object} b\n * @returns {boolean}\n */\nexport function shallowDiffers(a, b) {\n\tfor (let i in a) if (i !== '__source' && !(i in b)) return true;\n\tfor (let i in b) if (i !== '__source' && a[i] !== b[i]) return true;\n\treturn false;\n}\n\n/**\n * Check if two values are the same value\n * @param {*} x\n * @param {*} y\n * @returns {boolean}\n */\nexport function is(x, y) {\n\treturn (x === y && (x !== 0 || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\n","import { Component } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Component class with a predefined `shouldComponentUpdate` implementation\n */\nexport function PureComponent(p) {\n\tthis.props = p;\n}\nPureComponent.prototype = new Component();\n// Some third-party libraries check if this property is present\nPureComponent.prototype.isPureReactComponent = true;\nPureComponent.prototype.shouldComponentUpdate = function (props, state) {\n\treturn shallowDiffers(this.props, props) || shallowDiffers(this.state, state);\n};\n","import { createElement } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Memoize a component, so that it only updates when the props actually have\n * changed. This was previously known as `React.pure`.\n * @param {import('./internal').FunctionComponent} c functional component\n * @param {(prev: object, next: object) => boolean} [comparer] Custom equality function\n * @returns {import('./internal').FunctionComponent}\n */\nexport function memo(c, comparer) {\n\tfunction shouldUpdate(nextProps) {\n\t\tlet ref = this.props.ref;\n\t\tlet updateRef = ref == nextProps.ref;\n\t\tif (!updateRef && ref) {\n\t\t\tref.call ? ref(null) : (ref.current = null);\n\t\t}\n\n\t\tif (!comparer) {\n\t\t\treturn shallowDiffers(this.props, nextProps);\n\t\t}\n\n\t\treturn !comparer(this.props, nextProps) || !updateRef;\n\t}\n\n\tfunction Memoed(props) {\n\t\tthis.shouldComponentUpdate = shouldUpdate;\n\t\treturn createElement(c, props);\n\t}\n\tMemoed.displayName = 'Memo(' + (c.displayName || c.name) + ')';\n\tMemoed.prototype.isReactComponent = true;\n\tMemoed._forwarded = true;\n\treturn Memoed;\n}\n","import { options } from 'preact';\nimport { assign } from './util';\n\nlet oldDiffHook = options._diff;\noptions._diff = vnode => {\n\tif (vnode.type && vnode.type._forwarded && vnode.ref) {\n\t\tvnode.props.ref = vnode.ref;\n\t\tvnode.ref = null;\n\t}\n\tif (oldDiffHook) oldDiffHook(vnode);\n};\n\nexport const REACT_FORWARD_SYMBOL =\n\t(typeof Symbol != 'undefined' &&\n\t\tSymbol.for &&\n\t\tSymbol.for('react.forward_ref')) ||\n\t0xf47;\n\n/**\n * Pass ref down to a child. This is mainly used in libraries with HOCs that\n * wrap components. Using `forwardRef` there is an easy way to get a reference\n * of the wrapped component instead of one of the wrapper itself.\n * @param {import('./index').ForwardFn} fn\n * @returns {import('./internal').FunctionComponent}\n */\nexport function forwardRef(fn) {\n\tfunction Forwarded(props) {\n\t\tlet clone = assign({}, props);\n\t\tdelete clone.ref;\n\t\treturn fn(clone, props.ref || null);\n\t}\n\n\t// mobx-react checks for this being present\n\tForwarded.$$typeof = REACT_FORWARD_SYMBOL;\n\t// mobx-react heavily relies on implementation details.\n\t// It expects an object here with a `render` property,\n\t// and prototype.render will fail. Without this\n\t// mobx-react throws.\n\tForwarded.render = Forwarded;\n\n\tForwarded.prototype.isReactComponent = Forwarded._forwarded = true;\n\tForwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')';\n\treturn Forwarded;\n}\n","import { toChildArray } from 'preact';\n\nconst mapFn = (children, fn) => {\n\tif (children == null) return null;\n\treturn toChildArray(toChildArray(children).map(fn));\n};\n\n// This API is completely unnecessary for Preact, so it's basically passthrough.\nexport const Children = {\n\tmap: mapFn,\n\tforEach: mapFn,\n\tcount(children) {\n\t\treturn children ? toChildArray(children).length : 0;\n\t},\n\tonly(children) {\n\t\tconst normalized = toChildArray(children);\n\t\tif (normalized.length !== 1) throw 'Children.only';\n\t\treturn normalized[0];\n\t},\n\ttoArray: toChildArray\n};\n","import { Component, createElement, options, Fragment } from 'preact';\nimport { MODE_HYDRATE } from '../../src/constants';\nimport { assign } from './util';\n\nconst oldCatchError = options._catchError;\noptions._catchError = function (error, newVNode, oldVNode, errorInfo) {\n\tif (error.then) {\n\t\t/** @type {import('./internal').Component} */\n\t\tlet component;\n\t\tlet vnode = newVNode;\n\n\t\tfor (; (vnode = vnode._parent); ) {\n\t\t\tif ((component = vnode._component) && component._childDidSuspend) {\n\t\t\t\tif (newVNode._dom == null) {\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t}\n\t\t\t\t// Don't call oldCatchError if we found a Suspense\n\t\t\t\treturn component._childDidSuspend(error, newVNode);\n\t\t\t}\n\t\t}\n\t}\n\toldCatchError(error, newVNode, oldVNode, errorInfo);\n};\n\nconst oldUnmount = options.unmount;\noptions.unmount = function (vnode) {\n\t/** @type {import('./internal').Component} */\n\tconst component = vnode._component;\n\tif (component && component._onResolve) {\n\t\tcomponent._onResolve();\n\t}\n\n\t// if the component is still hydrating\n\t// most likely it is because the component is suspended\n\t// we set the vnode.type as `null` so that it is not a typeof function\n\t// so the unmount will remove the vnode._dom\n\tif (component && vnode._flags & MODE_HYDRATE) {\n\t\tvnode.type = null;\n\t}\n\n\tif (oldUnmount) oldUnmount(vnode);\n};\n\nfunction detachedClone(vnode, detachedParent, parentDom) {\n\tif (vnode) {\n\t\tif (vnode._component && vnode._component.__hooks) {\n\t\t\tvnode._component.__hooks._list.forEach(effect => {\n\t\t\t\tif (typeof effect._cleanup == 'function') effect._cleanup();\n\t\t\t});\n\n\t\t\tvnode._component.__hooks = null;\n\t\t}\n\n\t\tvnode = assign({}, vnode);\n\t\tif (vnode._component != null) {\n\t\t\tif (vnode._component._parentDom === parentDom) {\n\t\t\t\tvnode._component._parentDom = detachedParent;\n\t\t\t}\n\t\t\tvnode._component = null;\n\t\t}\n\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tdetachedClone(child, detachedParent, parentDom)\n\t\t\t);\n\t}\n\n\treturn vnode;\n}\n\nfunction removeOriginal(vnode, detachedParent, originalParent) {\n\tif (vnode && originalParent) {\n\t\tvnode._original = null;\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tremoveOriginal(child, detachedParent, originalParent)\n\t\t\t);\n\n\t\tif (vnode._component) {\n\t\t\tif (vnode._component._parentDom === detachedParent) {\n\t\t\t\tif (vnode._dom) {\n\t\t\t\t\toriginalParent.appendChild(vnode._dom);\n\t\t\t\t}\n\t\t\t\tvnode._component._force = true;\n\t\t\t\tvnode._component._parentDom = originalParent;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn vnode;\n}\n\n// having custom inheritance instead of a class here saves a lot of bytes\nexport function Suspense() {\n\t// we do not call super here to golf some bytes...\n\tthis._pendingSuspensionCount = 0;\n\tthis._suspenders = null;\n\tthis._detachOnNextRender = null;\n}\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspense.prototype = new Component();\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {Promise} promise The thrown promise\n * @param {import('./internal').VNode} suspendingVNode The suspending component\n */\nSuspense.prototype._childDidSuspend = function (promise, suspendingVNode) {\n\tconst suspendingComponent = suspendingVNode._component;\n\n\t/** @type {import('./internal').SuspenseComponent} */\n\tconst c = this;\n\n\tif (c._suspenders == null) {\n\t\tc._suspenders = [];\n\t}\n\tc._suspenders.push(suspendingComponent);\n\n\tconst resolve = suspended(c._vnode);\n\n\tlet resolved = false;\n\tconst onResolved = () => {\n\t\tif (resolved) return;\n\n\t\tresolved = true;\n\t\tsuspendingComponent._onResolve = null;\n\n\t\tif (resolve) {\n\t\t\tresolve(onSuspensionComplete);\n\t\t} else {\n\t\t\tonSuspensionComplete();\n\t\t}\n\t};\n\n\tsuspendingComponent._onResolve = onResolved;\n\n\tconst onSuspensionComplete = () => {\n\t\tif (!--c._pendingSuspensionCount) {\n\t\t\t// If the suspension was during hydration we don't need to restore the\n\t\t\t// suspended children into the _children array\n\t\t\tif (c.state._suspended) {\n\t\t\t\tconst suspendedVNode = c.state._suspended;\n\t\t\t\tc._vnode._children[0] = removeOriginal(\n\t\t\t\t\tsuspendedVNode,\n\t\t\t\t\tsuspendedVNode._component._parentDom,\n\t\t\t\t\tsuspendedVNode._component._originalParentDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tc.setState({ _suspended: (c._detachOnNextRender = null) });\n\n\t\t\tlet suspended;\n\t\t\twhile ((suspended = c._suspenders.pop())) {\n\t\t\t\tsuspended.forceUpdate();\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * We do not set `suspended: true` during hydration because we want the actual markup\n\t * to remain on screen and hydrate it when the suspense actually gets resolved.\n\t * While in non-hydration cases the usual fallback -> component flow would occour.\n\t */\n\tif (\n\t\t!c._pendingSuspensionCount++ &&\n\t\t!(suspendingVNode._flags & MODE_HYDRATE)\n\t) {\n\t\tc.setState({ _suspended: (c._detachOnNextRender = c._vnode._children[0]) });\n\t}\n\tpromise.then(onResolved, onResolved);\n};\n\nSuspense.prototype.componentWillUnmount = function () {\n\tthis._suspenders = [];\n};\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {import('./internal').SuspenseComponent[\"props\"]} props\n * @param {import('./internal').SuspenseState} state\n */\nSuspense.prototype.render = function (props, state) {\n\tif (this._detachOnNextRender) {\n\t\t// When the Suspense's _vnode was created by a call to createVNode\n\t\t// (i.e. due to a setState further up in the tree)\n\t\t// it's _children prop is null, in this case we \"forget\" about the parked vnodes to detach\n\t\tif (this._vnode._children) {\n\t\t\tconst detachedParent = document.createElement('div');\n\t\t\tconst detachedComponent = this._vnode._children[0]._component;\n\t\t\tthis._vnode._children[0] = detachedClone(\n\t\t\t\tthis._detachOnNextRender,\n\t\t\t\tdetachedParent,\n\t\t\t\t(detachedComponent._originalParentDom = detachedComponent._parentDom)\n\t\t\t);\n\t\t}\n\n\t\tthis._detachOnNextRender = null;\n\t}\n\n\t// Wrap fallback tree in a VNode that prevents itself from being marked as aborting mid-hydration:\n\t/** @type {import('./internal').VNode} */\n\tconst fallback =\n\t\tstate._suspended && createElement(Fragment, null, props.fallback);\n\tif (fallback) fallback._flags &= ~MODE_HYDRATE;\n\n\treturn [\n\t\tcreateElement(Fragment, null, state._suspended ? null : props.children),\n\t\tfallback\n\t];\n};\n\n/**\n * Checks and calls the parent component's _suspended method, passing in the\n * suspended vnode. This is a way for a parent (e.g. SuspenseList) to get notified\n * that one of its children/descendants suspended.\n *\n * The parent MAY return a callback. The callback will get called when the\n * suspension resolves, notifying the parent of the fact.\n * Moreover, the callback gets function `unsuspend` as a parameter. The resolved\n * child descendant will not actually get unsuspended until `unsuspend` gets called.\n * This is a way for the parent to delay unsuspending.\n *\n * If the parent does not return a callback then the resolved vnode\n * gets unsuspended immediately when it resolves.\n *\n * @param {import('./internal').VNode} vnode\n * @returns {((unsuspend: () => void) => void)?}\n */\nexport function suspended(vnode) {\n\t/** @type {import('./internal').Component} */\n\tlet component = vnode._parent._component;\n\treturn component && component._suspended && component._suspended(vnode);\n}\n\nexport function lazy(loader) {\n\tlet prom;\n\tlet component;\n\tlet error;\n\n\tfunction Lazy(props) {\n\t\tif (!prom) {\n\t\t\tprom = loader();\n\t\t\tprom.then(\n\t\t\t\texports => {\n\t\t\t\t\tcomponent = exports.default || exports;\n\t\t\t\t},\n\t\t\t\te => {\n\t\t\t\t\terror = e;\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif (error) {\n\t\t\tthrow error;\n\t\t}\n\n\t\tif (!component) {\n\t\t\tthrow prom;\n\t\t}\n\n\t\treturn createElement(component, props);\n\t}\n\n\tLazy.displayName = 'Lazy';\n\tLazy._forwarded = true;\n\treturn Lazy;\n}\n","import { Component, toChildArray } from 'preact';\nimport { suspended } from './suspense.js';\n\n// Indexes to linked list nodes (nodes are stored as arrays to save bytes).\nconst SUSPENDED_COUNT = 0;\nconst RESOLVED_COUNT = 1;\nconst NEXT_NODE = 2;\n\n// Having custom inheritance instead of a class here saves a lot of bytes.\nexport function SuspenseList() {\n\tthis._next = null;\n\tthis._map = null;\n}\n\n// Mark one of child's earlier suspensions as resolved.\n// Some pending callbacks may become callable due to this\n// (e.g. the last suspended descendant gets resolved when\n// revealOrder === 'together'). Process those callbacks as well.\nconst resolve = (list, child, node) => {\n\tif (++node[RESOLVED_COUNT] === node[SUSPENDED_COUNT]) {\n\t\t// The number a child (or any of its descendants) has been suspended\n\t\t// matches the number of times it's been resolved. Therefore we\n\t\t// mark the child as completely resolved by deleting it from ._map.\n\t\t// This is used to figure out when *all* children have been completely\n\t\t// resolved when revealOrder is 'together'.\n\t\tlist._map.delete(child);\n\t}\n\n\t// If revealOrder is falsy then we can do an early exit, as the\n\t// callbacks won't get queued in the node anyway.\n\t// If revealOrder is 'together' then also do an early exit\n\t// if all suspended descendants have not yet been resolved.\n\tif (\n\t\t!list.props.revealOrder ||\n\t\t(list.props.revealOrder[0] === 't' && list._map.size)\n\t) {\n\t\treturn;\n\t}\n\n\t// Walk the currently suspended children in order, calling their\n\t// stored callbacks on the way. Stop if we encounter a child that\n\t// has not been completely resolved yet.\n\tnode = list._next;\n\twhile (node) {\n\t\twhile (node.length > 3) {\n\t\t\tnode.pop()();\n\t\t}\n\t\tif (node[RESOLVED_COUNT] < node[SUSPENDED_COUNT]) {\n\t\t\tbreak;\n\t\t}\n\t\tlist._next = node = node[NEXT_NODE];\n\t}\n};\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspenseList.prototype = new Component();\n\nSuspenseList.prototype._suspended = function (child) {\n\tconst list = this;\n\tconst delegated = suspended(list._vnode);\n\n\tlet node = list._map.get(child);\n\tnode[SUSPENDED_COUNT]++;\n\n\treturn unsuspend => {\n\t\tconst wrappedUnsuspend = () => {\n\t\t\tif (!list.props.revealOrder) {\n\t\t\t\t// Special case the undefined (falsy) revealOrder, as there\n\t\t\t\t// is no need to coordinate a specific order or unsuspends.\n\t\t\t\tunsuspend();\n\t\t\t} else {\n\t\t\t\tnode.push(unsuspend);\n\t\t\t\tresolve(list, child, node);\n\t\t\t}\n\t\t};\n\t\tif (delegated) {\n\t\t\tdelegated(wrappedUnsuspend);\n\t\t} else {\n\t\t\twrappedUnsuspend();\n\t\t}\n\t};\n};\n\nSuspenseList.prototype.render = function (props) {\n\tthis._next = null;\n\tthis._map = new Map();\n\n\tconst children = toChildArray(props.children);\n\tif (props.revealOrder && props.revealOrder[0] === 'b') {\n\t\t// If order === 'backwards' (or, well, anything starting with a 'b')\n\t\t// then flip the child list around so that the last child will be\n\t\t// the first in the linked list.\n\t\tchildren.reverse();\n\t}\n\t// Build the linked list. Iterate through the children in reverse order\n\t// so that `_next` points to the first linked list node to be resolved.\n\tfor (let i = children.length; i--; ) {\n\t\t// Create a new linked list node as an array of form:\n\t\t// \t[suspended_count, resolved_count, next_node]\n\t\t// where suspended_count and resolved_count are numeric counters for\n\t\t// keeping track how many times a node has been suspended and resolved.\n\t\t//\n\t\t// Note that suspended_count starts from 1 instead of 0, so we can block\n\t\t// processing callbacks until componentDidMount has been called. In a sense\n\t\t// node is suspended at least until componentDidMount gets called!\n\t\t//\n\t\t// Pending callbacks are added to the end of the node:\n\t\t// \t[suspended_count, resolved_count, next_node, callback_0, callback_1, ...]\n\t\tthis._map.set(children[i], (this._next = [1, 0, this._next]));\n\t}\n\treturn props.children;\n};\n\nSuspenseList.prototype.componentDidUpdate =\n\tSuspenseList.prototype.componentDidMount = function () {\n\t\t// Iterate through all children after mounting for two reasons:\n\t\t// 1. As each node[SUSPENDED_COUNT] starts from 1, this iteration increases\n\t\t// each node[RELEASED_COUNT] by 1, therefore balancing the counters.\n\t\t// The nodes can now be completely consumed from the linked list.\n\t\t// 2. Handle nodes that might have gotten resolved between render and\n\t\t// componentDidMount.\n\t\tthis._map.forEach((node, child) => {\n\t\t\tresolve(this, child, node);\n\t\t});\n\t};\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { createElement, render } from 'preact';\n\n/**\n * @param {import('../../src/index').RenderableProps<{ context: any }>} props\n */\nfunction ContextProvider(props) {\n\tthis.getChildContext = () => props.context;\n\treturn props.children;\n}\n\n/**\n * Portal component\n * @this {import('./internal').Component}\n * @param {object | null | undefined} props\n *\n * TODO: use createRoot() instead of fake root\n */\nfunction Portal(props) {\n\tconst _this = this;\n\tlet container = props._container;\n\n\t_this.componentWillUnmount = function () {\n\t\trender(null, _this._temp);\n\t\t_this._temp = null;\n\t\t_this._container = null;\n\t};\n\n\t// When we change container we should clear our old container and\n\t// indicate a new mount.\n\tif (_this._container && _this._container !== container) {\n\t\t_this.componentWillUnmount();\n\t}\n\n\tif (!_this._temp) {\n\t\t_this._container = container;\n\n\t\t// Create a fake DOM parent node that manages a subset of `container`'s children:\n\t\t_this._temp = {\n\t\t\tnodeType: 1,\n\t\t\tparentNode: container,\n\t\t\tchildNodes: [],\n\t\t\tappendChild(child) {\n\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t_this._container.appendChild(child);\n\t\t\t},\n\t\t\tinsertBefore(child, before) {\n\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t_this._container.appendChild(child);\n\t\t\t},\n\t\t\tremoveChild(child) {\n\t\t\t\tthis.childNodes.splice(this.childNodes.indexOf(child) >>> 1, 1);\n\t\t\t\t_this._container.removeChild(child);\n\t\t\t}\n\t\t};\n\t}\n\n\t// Render our wrapping element into temp.\n\trender(\n\t\tcreateElement(ContextProvider, { context: _this.context }, props._vnode),\n\t\t_this._temp\n\t);\n}\n\n/**\n * Create a `Portal` to continue rendering the vnode tree at a different DOM node\n * @param {import('./internal').VNode} vnode The vnode to render\n * @param {import('./internal').PreactElement} container The DOM node to continue rendering in to.\n */\nexport function createPortal(vnode, container) {\n\tconst el = createElement(Portal, { _vnode: vnode, _container: container });\n\tel.containerInfo = container;\n\treturn el;\n}\n","import {\n\trender as preactRender,\n\thydrate as preactHydrate,\n\toptions,\n\ttoChildArray,\n\tComponent\n} from 'preact';\n\nexport const REACT_ELEMENT_TYPE =\n\t(typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||\n\t0xeac7;\n\nconst CAMEL_PROPS =\n\t/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;\nconst ON_ANI = /^on(Ani|Tra|Tou|BeforeInp|Compo)/;\nconst CAMEL_REPLACE = /[A-Z0-9]/g;\n\nconst IS_DOM = typeof document !== 'undefined';\n\n// Input types for which onchange should not be converted to oninput.\n// type=\"file|checkbox|radio\", plus \"range\" in IE11.\n// (IE11 doesn't support Symbol, which we use here to turn `rad` into `ra` which matches \"range\")\nconst onChangeInputType = type =>\n\t(typeof Symbol != 'undefined' && typeof Symbol() == 'symbol'\n\t\t? /fil|che|rad/\n\t\t: /fil|che|ra/\n\t).test(type);\n\n// Some libraries like `react-virtualized` explicitly check for this.\nComponent.prototype.isReactComponent = {};\n\n// `UNSAFE_*` lifecycle hooks\n// Preact only ever invokes the unprefixed methods.\n// Here we provide a base \"fallback\" implementation that calls any defined UNSAFE_ prefixed method.\n// - If a component defines its own `componentDidMount()` (including via defineProperty), use that.\n// - If a component defines `UNSAFE_componentDidMount()`, `componentDidMount` is the alias getter/setter.\n// - If anything assigns to an `UNSAFE_*` property, the assignment is forwarded to the unprefixed property.\n// See https://github.com/preactjs/preact/issues/1941\n[\n\t'componentWillMount',\n\t'componentWillReceiveProps',\n\t'componentWillUpdate'\n].forEach(key => {\n\tObject.defineProperty(Component.prototype, key, {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn this['UNSAFE_' + key];\n\t\t},\n\t\tset(v) {\n\t\t\tObject.defineProperty(this, key, {\n\t\t\t\tconfigurable: true,\n\t\t\t\twritable: true,\n\t\t\t\tvalue: v\n\t\t\t});\n\t\t}\n\t});\n});\n\n/**\n * Proxy render() since React returns a Component reference.\n * @param {import('./internal').VNode} vnode VNode tree to render\n * @param {import('./internal').PreactElement} parent DOM node to render vnode tree into\n * @param {() => void} [callback] Optional callback that will be called after rendering\n * @returns {import('./internal').Component | null} The root component reference or null\n */\nexport function render(vnode, parent, callback) {\n\t// React destroys any existing DOM nodes, see #1727\n\t// ...but only on the first render, see #1828\n\tif (parent._children == null) {\n\t\tparent.textContent = '';\n\t}\n\n\tpreactRender(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nexport function hydrate(vnode, parent, callback) {\n\tpreactHydrate(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nlet oldEventHook = options.event;\noptions.event = e => {\n\tif (oldEventHook) e = oldEventHook(e);\n\n\te.persist = empty;\n\te.isPropagationStopped = isPropagationStopped;\n\te.isDefaultPrevented = isDefaultPrevented;\n\treturn (e.nativeEvent = e);\n};\n\nfunction empty() {}\n\nfunction isPropagationStopped() {\n\treturn this.cancelBubble;\n}\n\nfunction isDefaultPrevented() {\n\treturn this.defaultPrevented;\n}\n\nconst classNameDescriptorNonEnumberable = {\n\tenumerable: false,\n\tconfigurable: true,\n\tget() {\n\t\treturn this.class;\n\t}\n};\n\nfunction handleDomVNode(vnode) {\n\tlet props = vnode.props,\n\t\ttype = vnode.type,\n\t\tnormalizedProps = {};\n\n\tfor (let i in props) {\n\t\tlet value = props[i];\n\n\t\tif (\n\t\t\t(i === 'value' && 'defaultValue' in props && value == null) ||\n\t\t\t// Emulate React's behavior of not rendering the contents of noscript tags on the client.\n\t\t\t(IS_DOM && i === 'children' && type === 'noscript') ||\n\t\t\ti === 'class' ||\n\t\t\ti === 'className'\n\t\t) {\n\t\t\t// Skip applying value if it is null/undefined and we already set\n\t\t\t// a default value\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet lowerCased = i.toLowerCase();\n\t\tif (i === 'defaultValue' && 'value' in props && props.value == null) {\n\t\t\t// `defaultValue` is treated as a fallback `value` when a value prop is present but null/undefined.\n\t\t\t// `defaultValue` for Elements with no value prop is the same as the DOM defaultValue property.\n\t\t\ti = 'value';\n\t\t} else if (i === 'download' && value === true) {\n\t\t\t// Calling `setAttribute` with a truthy value will lead to it being\n\t\t\t// passed as a stringified value, e.g. `download=\"true\"`. React\n\t\t\t// converts it to an empty string instead, otherwise the attribute\n\t\t\t// value will be used as the file name and the file will be called\n\t\t\t// \"true\" upon downloading it.\n\t\t\tvalue = '';\n\t\t} else if (lowerCased === 'ondoubleclick') {\n\t\t\ti = 'ondblclick';\n\t\t} else if (\n\t\t\tlowerCased === 'onchange' &&\n\t\t\t(type === 'input' || type === 'textarea') &&\n\t\t\t!onChangeInputType(props.type)\n\t\t) {\n\t\t\tlowerCased = i = 'oninput';\n\t\t} else if (lowerCased === 'onfocus') {\n\t\t\ti = 'onfocusin';\n\t\t} else if (lowerCased === 'onblur') {\n\t\t\ti = 'onfocusout';\n\t\t} else if (ON_ANI.test(i)) {\n\t\t\ti = lowerCased;\n\t\t} else if (type.indexOf('-') === -1 && CAMEL_PROPS.test(i)) {\n\t\t\ti = i.replace(CAMEL_REPLACE, '-$&').toLowerCase();\n\t\t} else if (value === null) {\n\t\t\tvalue = undefined;\n\t\t}\n\n\t\t// Add support for onInput and onChange, see #3561\n\t\t// if we have an oninput prop already change it to oninputCapture\n\t\tif (lowerCased === 'oninput') {\n\t\t\ti = lowerCased;\n\t\t\tif (normalizedProps[i]) {\n\t\t\t\ti = 'oninputCapture';\n\t\t\t}\n\t\t}\n\n\t\tnormalizedProps[i] = value;\n\t}\n\n\t// Add support for array select values: \n\tif (\n\t\ttype == 'select' &&\n\t\tnormalizedProps.multiple &&\n\t\tArray.isArray(normalizedProps.value)\n\t) {\n\t\t// forEach() always returns undefined, which we abuse here to unset the value prop.\n\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\tchild.props.selected =\n\t\t\t\tnormalizedProps.value.indexOf(child.props.value) != -1;\n\t\t});\n\t}\n\n\t// Adding support for defaultValue in select tag\n\tif (type == 'select' && normalizedProps.defaultValue != null) {\n\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\tif (normalizedProps.multiple) {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.defaultValue.indexOf(child.props.value) != -1;\n\t\t\t} else {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.defaultValue == child.props.value;\n\t\t\t}\n\t\t});\n\t}\n\n\tif (props.class && !props.className) {\n\t\tnormalizedProps.class = props.class;\n\t\tObject.defineProperty(\n\t\t\tnormalizedProps,\n\t\t\t'className',\n\t\t\tclassNameDescriptorNonEnumberable\n\t\t);\n\t} else if (props.className && !props.class) {\n\t\tnormalizedProps.class = normalizedProps.className = props.className;\n\t} else if (props.class && props.className) {\n\t\tnormalizedProps.class = normalizedProps.className = props.className;\n\t}\n\n\tvnode.props = normalizedProps;\n}\n\nlet oldVNodeHook = options.vnode;\noptions.vnode = vnode => {\n\t// only normalize props on Element nodes\n\tif (typeof vnode.type === 'string') {\n\t\thandleDomVNode(vnode);\n\t}\n\n\tvnode.$$typeof = REACT_ELEMENT_TYPE;\n\n\tif (oldVNodeHook) oldVNodeHook(vnode);\n};\n\n// Only needed for react-relay\nlet currentComponent;\nconst oldBeforeRender = options._render;\noptions._render = function (vnode) {\n\tif (oldBeforeRender) {\n\t\toldBeforeRender(vnode);\n\t}\n\tcurrentComponent = vnode._component;\n};\n\nconst oldDiffed = options.diffed;\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.diffed = function (vnode) {\n\tif (oldDiffed) {\n\t\toldDiffed(vnode);\n\t}\n\n\tconst props = vnode.props;\n\tconst dom = vnode._dom;\n\n\tif (\n\t\tdom != null &&\n\t\tvnode.type === 'textarea' &&\n\t\t'value' in props &&\n\t\tprops.value !== dom.value\n\t) {\n\t\tdom.value = props.value == null ? '' : props.value;\n\t}\n\n\tcurrentComponent = null;\n};\n\n// This is a very very private internal function for React it\n// is used to sort-of do runtime dependency injection.\nexport const __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = {\n\tReactCurrentDispatcher: {\n\t\tcurrent: {\n\t\t\treadContext(context) {\n\t\t\t\treturn currentComponent._globalContext[context._id].props.value;\n\t\t\t},\n\t\t\tuseCallback,\n\t\t\tuseContext,\n\t\t\tuseDebugValue,\n\t\t\tuseDeferredValue,\n\t\t\tuseEffect,\n\t\t\tuseId,\n\t\t\tuseImperativeHandle,\n\t\t\tuseInsertionEffect,\n\t\t\tuseLayoutEffect,\n\t\t\tuseMemo,\n\t\t\t// useMutableSource, // experimental-only and replaced by uSES, likely not worth supporting\n\t\t\tuseReducer,\n\t\t\tuseRef,\n\t\t\tuseState,\n\t\t\tuseSyncExternalStore,\n\t\t\tuseTransition\n\t\t}\n\t}\n};\n","import {\n\tcreateElement,\n\trender as preactRender,\n\tcloneElement as preactCloneElement,\n\tcreateRef,\n\tComponent,\n\tcreateContext,\n\tFragment\n} from 'preact';\nimport {\n\tuseState,\n\tuseId,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue\n} from 'preact/hooks';\nimport {\n\tuseInsertionEffect,\n\tstartTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tuseTransition\n} from './hooks';\nimport { PureComponent } from './PureComponent';\nimport { memo } from './memo';\nimport { forwardRef } from './forwardRef';\nimport { Children } from './Children';\nimport { Suspense, lazy } from './suspense';\nimport { SuspenseList } from './suspense-list';\nimport { createPortal } from './portals';\nimport {\n\thydrate,\n\trender,\n\tREACT_ELEMENT_TYPE,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n} from './render';\n\nconst version = '18.3.1'; // trick libraries to think we are react\n\n/**\n * Legacy version of createElement.\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component constructor\n */\nfunction createFactory(type) {\n\treturn createElement.bind(null, type);\n}\n\n/**\n * Check if the passed element is a valid (p)react node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isValidElement(element) {\n\treturn !!element && element.$$typeof === REACT_ELEMENT_TYPE;\n}\n\n/**\n * Check if the passed element is a Fragment node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isFragment(element) {\n\treturn isValidElement(element) && element.type === Fragment;\n}\n\n/**\n * Check if the passed element is a Memo node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isMemo(element) {\n\treturn (\n\t\t!!element &&\n\t\t!!element.displayName &&\n\t\t(typeof element.displayName === 'string' ||\n\t\t\telement.displayName instanceof String) &&\n\t\telement.displayName.startsWith('Memo(')\n\t);\n}\n\n/**\n * Wrap `cloneElement` to abort if the passed element is not a valid element and apply\n * all vnode normalizations.\n * @param {import('./internal').VNode} element The vnode to clone\n * @param {object} props Props to add when cloning\n * @param {Array} rest Optional component children\n */\nfunction cloneElement(element) {\n\tif (!isValidElement(element)) return element;\n\treturn preactCloneElement.apply(null, arguments);\n}\n\n/**\n * Remove a component tree from the DOM, including state and event handlers.\n * @param {import('./internal').PreactElement} container\n * @returns {boolean}\n */\nfunction unmountComponentAtNode(container) {\n\tif (container._children) {\n\t\tpreactRender(null, container);\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n/**\n * Get the matching DOM node for a component\n * @param {import('./internal').Component} component\n * @returns {import('./internal').PreactElement | null}\n */\nfunction findDOMNode(component) {\n\treturn (\n\t\t(component &&\n\t\t\t(component.base || (component.nodeType === 1 && component))) ||\n\t\tnull\n\t);\n}\n\n/**\n * Deprecated way to control batched rendering inside the reconciler, but we\n * already schedule in batches inside our rendering code\n * @template Arg\n * @param {(arg: Arg) => void} callback function that triggers the updated\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n */\n// eslint-disable-next-line camelcase\nconst unstable_batchedUpdates = (callback, arg) => callback(arg);\n\n/**\n * In React, `flushSync` flushes the entire tree and forces a rerender. It's\n * implmented here as a no-op.\n * @template Arg\n * @template Result\n * @param {(arg: Arg) => Result} callback function that runs before the flush\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n * @returns\n */\nconst flushSync = (callback, arg) => callback(arg);\n\n/**\n * Strict Mode is not implemented in Preact, so we provide a stand-in for it\n * that just renders its children without imposing any restrictions.\n */\nconst StrictMode = Fragment;\n\n// compat to react-is\nexport const isElement = isValidElement;\n\nexport * from 'preact/hooks';\nexport {\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tisFragment,\n\tisMemo,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tuseInsertionEffect,\n\tstartTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tuseTransition,\n\t// eslint-disable-next-line camelcase\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n\n// React copies the named exports to the default one.\nexport default {\n\tuseState,\n\tuseId,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseInsertionEffect,\n\tuseTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tstartTransition,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue,\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tisElement,\n\tisFragment,\n\tisMemo,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n"],"names":["assign","obj","props","i","shallowDiffers","a","b","useSyncExternalStore","subscribe","getSnapshot","value","_useState","useState","_instance","__","_getSnapshot","forceUpdate","useLayoutEffect","didSnapshotChange","useEffect","inst","x","y","latestGetSnapshot","prevValue","nextValue","error","startTransition","cb","useDeferredValue","val","useTransition","useInsertionEffect","PureComponent","p","c","this","context","memo","comparer","shouldUpdate","nextProps","ref","updateRef","call","current","Memoed","shouldComponentUpdate","createElement","displayName","name","prototype","isReactComponent","__f","type","Component","isPureReactComponent","state","oldDiffHook","options","__b","vnode","REACT_FORWARD_SYMBOL","Symbol","for","forwardRef","fn","Forwarded","clone","$$typeof","render","mapFn","children","toChildArray","map","Children","forEach","count","length","only","normalized","toArray","oldCatchError","__e","newVNode","oldVNode","errorInfo","then","component","__c","__k","oldUnmount","unmount","detachedClone","detachedParent","parentDom","__H","effect","__P","child","removeOriginal","originalParent","__v","appendChild","Suspense","__u","_suspenders","suspended","__a","lazy","loader","prom","resolved","Lazy","exports","default","e","SuspenseList","_next","_map","__z","__R","promise","suspendingVNode","suspendingComponent","push","resolve","onResolved","onSuspensionComplete","originalParentDom","suspendedVNode","__O","setState","pop","componentWillUnmount","document","detachedComponent","fallback","Fragment","list","node","delete","revealOrder","size","ContextProvider","getChildContext","Portal","_this","container","_container","_temp","root","__m","nodeType","parentNode","childNodes","contains","namespaceURI","insertBefore","before","removeChild","splice","indexOf","createPortal","el","containerInfo","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","componentDidUpdate","componentDidMount","REACT_ELEMENT_TYPE","CAMEL_PROPS","ON_ANI","CAMEL_REPLACE","IS_DOM","onChangeInputType","test","parent","callback","textContent","preactRender","hydrate","preactHydrate","key","Object","defineProperty","configurable","v","writable","oldEventHook","event","empty","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","persist","nativeEvent","currentComponent","classNameDescriptorNonEnumberable","enumerable","class","oldVNodeHook","normalizedProps","isNonDashedType","lowerCased","toLowerCase","replace","undefined","multiple","Array","isArray","selected","defaultValue","className","handleDomVNode","oldBeforeRender","__r","oldDiffed","diffed","dom","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentDispatcher","readContext","__n","useCallback","useContext","useDebugValue","useId","useImperativeHandle","useMemo","useReducer","useRef","createFactory","bind","isValidElement","element","isFragment","isMemo","String","startsWith","cloneElement","preactCloneElement","apply","arguments","unmountComponentAtNode","findDOMNode","base","unstable_batchedUpdates","arg","flushSync","StrictMode","isElement","index","version","createContext","createRef"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/compat/dist/compat.mjs b/node_modules/preact/compat/dist/compat.mjs index 6b848d7..40a0d06 100644 --- a/node_modules/preact/compat/dist/compat.mjs +++ b/node_modules/preact/compat/dist/compat.mjs @@ -1,2 +1,2 @@ -import{Component as n,createElement as t,options as e,toChildArray as r,Fragment as u,render as o,hydrate as i,createContext as l,createRef as c,cloneElement as f}from"preact";export{Component,Fragment,createContext,createElement,createRef}from"preact";import{useState as a,useId as s,useReducer as h,useEffect as v,useLayoutEffect as d,useRef as p,useImperativeHandle as m,useMemo as y,useCallback as _,useContext as b,useDebugValue as S}from"preact/hooks";export*from"preact/hooks";function g(n,t){for(var e in t)n[e]=t[e];return n}function C(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function E(n){this.props=n}function w(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:C(this.props,n)}function u(e){return this.shouldComponentUpdate=r,t(n,e)}return u.displayName="Memo("+(n.displayName||n.name)+")",u.prototype.isReactComponent=!0,u.__f=!0,u}(E.prototype=new n).isPureReactComponent=!0,E.prototype.shouldComponentUpdate=function(n,t){return C(this.props,n)||C(this.state,t)};var x=e.__b;e.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),x&&x(n)};var R="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function N(n){function t(t){var e=g({},t);return delete e.ref,n(e,t.ref||null)}return t.$$typeof=R,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var k=function(n,t){return null==n?null:r(r(n).map(t))},A={map:k,forEach:k,count:function(n){return n?r(n).length:0},only:function(n){var t=r(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:r},O=e.__e;e.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);O(n,t,e,r)};var T=e.unmount;function F(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=g({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return F(n,t,e)})),n}function I(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return I(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function L(){this.__u=0,this.t=null,this.__b=null}function U(n){var t=n.__.__c;return t&&t.__a&&t.__a(n)}function D(n){var e,r,u;function o(o){if(e||(e=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return t(r,o)}return o.displayName="Lazy",o.__f=!0,o}function M(){this.u=null,this.o=null}e.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),T&&T(n)},(L.prototype=new n).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=U(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(l):l())};e.__R=i;var l=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=I(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.t.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},L.prototype.componentWillUnmount=function(){this.t=[]},L.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),o=this.__v.__k[0].__c;this.__v.__k[0]=F(this.__b,r,o.__O=o.__P)}this.__b=null}var i=e.__a&&t(u,null,n.fallback);return i&&(i.__u&=-33),[t(u,null,e.__a?null:n.children),i]};var V=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]>>1,1),e.i.removeChild(n)}}),o(t(W,{context:e.context},n.__v),e.l)}function j(n,e){var r=t(P,{__v:n,i:e});return r.containerInfo=e,r}(M.prototype=new n).__a=function(n){var t=this,e=U(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),V(t,n,r)):u()};e?e(o):o()}},M.prototype.render=function(n){this.u=null,this.o=new Map;var t=r(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.o.set(t[e],this.u=[1,0,this.u]);return n.children},M.prototype.componentDidUpdate=M.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){V(n,e,t)})};var z="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,B=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,H=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,Z=/[A-Z0-9]/g,Y="undefined"!=typeof document,$=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function q(n,t,e){return null==t.__k&&(t.textContent=""),o(n,t),"function"==typeof e&&e(),n?n.__c:null}function G(n,t,e){return i(n,t),"function"==typeof e&&e(),n?n.__c:null}n.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(n.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var J=e.event;function K(){}function Q(){return this.cancelBubble}function X(){return this.defaultPrevented}e.event=function(n){return J&&(n=J(n)),n.persist=K,n.isPropagationStopped=Q,n.isDefaultPrevented=X,n.nativeEvent=n};var nn,tn={enumerable:!1,configurable:!0,get:function(){return this.class}},en=e.vnode;e.vnode=function(n){"string"==typeof n.type&&function(n){var t=n.props,e=n.type,u={};for(var o in t){var i=t[o];if(!("value"===o&&"defaultValue"in t&&null==i||Y&&"children"===o&&"noscript"===e||"class"===o||"className"===o)){var l=o.toLowerCase();"defaultValue"===o&&"value"in t&&null==t.value?o="value":"download"===o&&!0===i?i="":"ondoubleclick"===l?o="ondblclick":"onchange"!==l||"input"!==e&&"textarea"!==e||$(t.type)?"onfocus"===l?o="onfocusin":"onblur"===l?o="onfocusout":H.test(o)?o=l:-1===e.indexOf("-")&&B.test(o)?o=o.replace(Z,"-$&").toLowerCase():null===i&&(i=void 0):l=o="oninput","oninput"===l&&u[o=l]&&(o="oninputCapture"),u[o]=i}}"select"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=r(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==e&&null!=u.defaultValue&&(u.value=r(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,"className",tn)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=z,en&&en(n)};var rn=e.__r;e.__r=function(n){rn&&rn(n),nn=n.__c};var un=e.diffed;e.diffed=function(n){un&&un(n);var t=n.props,e=n.__e;null!=e&&"textarea"===n.type&&"value"in t&&t.value!==e.value&&(e.value=null==t.value?"":t.value),nn=null};var on={ReactCurrentDispatcher:{current:{readContext:function(n){return nn.__n[n.__c].props.value}}}},ln="17.0.2";function cn(n){return t.bind(null,n)}function fn(n){return!!n&&n.$$typeof===z}function an(n){return fn(n)&&n.type===u}function sn(n){return fn(n)?f.apply(null,arguments):n}function hn(n){return!!n.__k&&(o(null,n),!0)}function vn(n){return n&&(n.base||1===n.nodeType&&n)||null}var dn=function(n,t){return n(t)},pn=function(n,t){return n(t)},mn=u;function yn(n){n()}function _n(n){return n}function bn(){return[!1,yn]}var Sn=d,gn=fn;function Cn(n,t){var e=t(),r=a({h:{__:e,v:t}}),u=r[0].h,o=r[1];return d(function(){u.__=e,u.v=t,En(u)&&o({h:u})},[n,e,t]),v(function(){return En(u)&&o({h:u}),n(function(){En(u)&&o({h:u})})},[n]),e}function En(n){var t,e,r=n.v,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}var wn={useState:a,useId:s,useReducer:h,useEffect:v,useLayoutEffect:d,useInsertionEffect:Sn,useTransition:bn,useDeferredValue:_n,useSyncExternalStore:Cn,startTransition:yn,useRef:p,useImperativeHandle:m,useMemo:y,useCallback:_,useContext:b,useDebugValue:S,version:"17.0.2",Children:A,render:q,hydrate:G,unmountComponentAtNode:hn,createPortal:j,createElement:t,createContext:l,createFactory:cn,cloneElement:sn,createRef:c,Fragment:u,isValidElement:fn,isElement:gn,isFragment:an,findDOMNode:vn,Component:n,PureComponent:E,memo:w,forwardRef:N,flushSync:pn,unstable_batchedUpdates:dn,StrictMode:mn,Suspense:L,SuspenseList:M,lazy:D,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:on};export{A as Children,E as PureComponent,mn as StrictMode,L as Suspense,M as SuspenseList,on as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,sn as cloneElement,cn as createFactory,j as createPortal,wn as default,vn as findDOMNode,pn as flushSync,N as forwardRef,G as hydrate,gn as isElement,an as isFragment,fn as isValidElement,D as lazy,w as memo,q as render,yn as startTransition,hn as unmountComponentAtNode,dn as unstable_batchedUpdates,_n as useDeferredValue,Sn as useInsertionEffect,Cn as useSyncExternalStore,bn as useTransition,ln as version}; +import{Component as n,createElement as t,options as e,toChildArray as r,Fragment as u,render as o,hydrate as i,createContext as l,createRef as c,cloneElement as f}from"preact";export{Component,Fragment,createContext,createElement,createRef}from"preact";import{useState as a,useLayoutEffect as s,useEffect as h,useCallback as v,useContext as d,useDebugValue as m,useId as p,useImperativeHandle as y,useMemo as _,useReducer as b,useRef as S}from"preact/hooks";export*from"preact/hooks";function g(n,t){for(var e in t)n[e]=t[e];return n}function E(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function C(n,t){var e=t(),r=a({t:{__:e,u:t}}),u=r[0].t,o=r[1];return s(function(){u.__=e,u.u=t,R(u)&&o({t:u})},[n,e,t]),h(function(){return R(u)&&o({t:u}),n(function(){R(u)&&o({t:u})})},[n]),e}function R(n){var t,e,r=n.u,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}function x(n){n()}function w(n){return n}function k(){return[!1,x]}var I=s;function N(n,t){this.props=n,this.context=t}function M(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:E(this.props,n)}function u(e){return this.shouldComponentUpdate=r,t(n,e)}return u.displayName="Memo("+(n.displayName||n.name)+")",u.prototype.isReactComponent=!0,u.__f=!0,u.type=n,u}(N.prototype=new n).isPureReactComponent=!0,N.prototype.shouldComponentUpdate=function(n,t){return E(this.props,n)||E(this.state,t)};var T=e.__b;e.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),T&&T(n)};var A="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function D(n){function t(t){var e=g({},t);return delete e.ref,n(e,t.ref||null)}return t.$$typeof=A,t.render=n,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var L=function(n,t){return null==n?null:r(r(n).map(t))},O={map:L,forEach:L,count:function(n){return n?r(n).length:0},only:function(n){var t=r(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:r},U=e.__e;e.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);U(n,t,e,r)};var F=e.unmount;function V(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=g({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c.__e=!0,n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return V(n,t,e)})),n}function W(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return W(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function P(){this.__u=0,this.o=null,this.__b=null}function j(n){if(!n.__)return null;var t=n.__.__c;return t&&t.__a&&t.__a(n)}function z(n){var e,r,u,o=null;function i(i){if(e||(e=n()).then(function(n){n&&(o=n.default||n),u=!0},function(n){r=n,u=!0}),r)throw r;if(!u)throw e;return o?t(o,i):null}return i.displayName="Lazy",i.__f=!0,i}function B(){this.i=null,this.l=null}e.unmount=function(n){var t=n.__c;t&&(t.__z=!0),t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),F&&F(n)},(P.prototype=new n).__c=function(n,t){var e=t.__c,r=this;null==r.o&&(r.o=[]),r.o.push(e);var u=j(r.__v),o=!1,i=function(){o||r.__z||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var l=e.__P;e.__P=null;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=W(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.__P=l,t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},P.prototype.componentWillUnmount=function(){this.o=[]},P.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),o=this.__v.__k[0].__c;this.__v.__k[0]=V(this.__b,r,o.__O=o.__P)}this.__b=null}var i=e.__a&&t(u,null,n.fallback);return i&&(i.__u&=-33),[t(u,null,e.__a?null:n.children),i]};var H=function(n,t,e){if(++e[1]===e[0]&&n.l.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.l.size))for(e=n.i;e;){for(;e.length>3;)e.pop()();if(e[1]>>1,1),e.h.removeChild(n)}}}o(t(Z,{context:e.context},n.__v),e.v)}function $(n,e){var r=t(Y,{__v:n,h:e});return r.containerInfo=e,r}(B.prototype=new n).__a=function(n){var t=this,e=j(t.__v),r=t.l.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),H(t,n,r)):u()};e?e(o):o()}},B.prototype.render=function(n){this.i=null,this.l=new Map;var t=r(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.l.set(t[e],this.i=[1,0,this.i]);return n.children},B.prototype.componentDidUpdate=B.prototype.componentDidMount=function(){var n=this;this.l.forEach(function(t,e){H(n,e,t)})};var q="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,G=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,J=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,K=/[A-Z0-9]/g,Q="undefined"!=typeof document,X=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function nn(n,t,e){return null==t.__k&&(t.textContent=""),o(n,t),"function"==typeof e&&e(),n?n.__c:null}function tn(n,t,e){return i(n,t),"function"==typeof e&&e(),n?n.__c:null}n.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(n.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var en=e.event;function rn(){}function un(){return this.cancelBubble}function on(){return this.defaultPrevented}e.event=function(n){return en&&(n=en(n)),n.persist=rn,n.isPropagationStopped=un,n.isDefaultPrevented=on,n.nativeEvent=n};var ln,cn={enumerable:!1,configurable:!0,get:function(){return this.class}},fn=e.vnode;e.vnode=function(n){"string"==typeof n.type&&function(n){var t=n.props,e=n.type,u={},o=-1===e.indexOf("-");for(var i in t){var l=t[i];if(!("value"===i&&"defaultValue"in t&&null==l||Q&&"children"===i&&"noscript"===e||"class"===i||"className"===i)){var c=i.toLowerCase();"defaultValue"===i&&"value"in t&&null==t.value?i="value":"download"===i&&!0===l?l="":"translate"===c&&"no"===l?l=!1:"o"===c[0]&&"n"===c[1]?"ondoubleclick"===c?i="ondblclick":"onchange"!==c||"input"!==e&&"textarea"!==e||X(t.type)?"onfocus"===c?i="onfocusin":"onblur"===c?i="onfocusout":J.test(i)&&(i=c):c=i="oninput":o&&G.test(i)?i=i.replace(K,"-$&").toLowerCase():null===l&&(l=void 0),"oninput"===c&&u[i=c]&&(i="oninputCapture"),u[i]=l}}"select"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=r(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==e&&null!=u.defaultValue&&(u.value=r(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,"className",cn)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=q,fn&&fn(n)};var an=e.__r;e.__r=function(n){an&&an(n),ln=n.__c};var sn=e.diffed;e.diffed=function(n){sn&&sn(n);var t=n.props,e=n.__e;null!=e&&"textarea"===n.type&&"value"in t&&t.value!==e.value&&(e.value=null==t.value?"":t.value),ln=null};var hn={ReactCurrentDispatcher:{current:{readContext:function(n){return ln.__n[n.__c].props.value},useCallback:v,useContext:d,useDebugValue:m,useDeferredValue:w,useEffect:h,useId:p,useImperativeHandle:y,useInsertionEffect:I,useLayoutEffect:s,useMemo:_,useReducer:b,useRef:S,useState:a,useSyncExternalStore:C,useTransition:k}}},vn="18.3.1";function dn(n){return t.bind(null,n)}function mn(n){return!!n&&n.$$typeof===q}function pn(n){return mn(n)&&n.type===u}function yn(n){return!!n&&!!n.displayName&&("string"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith("Memo(")}function _n(n){return mn(n)?f.apply(null,arguments):n}function bn(n){return!!n.__k&&(o(null,n),!0)}function Sn(n){return n&&(n.base||1===n.nodeType&&n)||null}var gn=function(n,t){return n(t)},En=function(n,t){return n(t)},Cn=u,Rn=mn,xn={useState:a,useId:p,useReducer:b,useEffect:h,useLayoutEffect:s,useInsertionEffect:I,useTransition:k,useDeferredValue:w,useSyncExternalStore:C,startTransition:x,useRef:S,useImperativeHandle:y,useMemo:_,useCallback:v,useContext:d,useDebugValue:m,version:"18.3.1",Children:O,render:nn,hydrate:tn,unmountComponentAtNode:bn,createPortal:$,createElement:t,createContext:l,createFactory:dn,cloneElement:_n,createRef:c,Fragment:u,isValidElement:mn,isElement:Rn,isFragment:pn,isMemo:yn,findDOMNode:Sn,Component:n,PureComponent:N,memo:M,forwardRef:D,flushSync:En,unstable_batchedUpdates:gn,StrictMode:Cn,Suspense:P,SuspenseList:B,lazy:z,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:hn};export{O as Children,N as PureComponent,Cn as StrictMode,P as Suspense,B as SuspenseList,hn as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,_n as cloneElement,dn as createFactory,$ as createPortal,xn as default,Sn as findDOMNode,En as flushSync,D as forwardRef,tn as hydrate,Rn as isElement,pn as isFragment,yn as isMemo,mn as isValidElement,z as lazy,M as memo,nn as render,x as startTransition,bn as unmountComponentAtNode,gn as unstable_batchedUpdates,w as useDeferredValue,I as useInsertionEffect,C as useSyncExternalStore,k as useTransition,vn as version}; //# sourceMappingURL=compat.module.js.map diff --git a/node_modules/preact/compat/dist/compat.module.js b/node_modules/preact/compat/dist/compat.module.js index 6b848d7..40a0d06 100644 --- a/node_modules/preact/compat/dist/compat.module.js +++ b/node_modules/preact/compat/dist/compat.module.js @@ -1,2 +1,2 @@ -import{Component as n,createElement as t,options as e,toChildArray as r,Fragment as u,render as o,hydrate as i,createContext as l,createRef as c,cloneElement as f}from"preact";export{Component,Fragment,createContext,createElement,createRef}from"preact";import{useState as a,useId as s,useReducer as h,useEffect as v,useLayoutEffect as d,useRef as p,useImperativeHandle as m,useMemo as y,useCallback as _,useContext as b,useDebugValue as S}from"preact/hooks";export*from"preact/hooks";function g(n,t){for(var e in t)n[e]=t[e];return n}function C(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function E(n){this.props=n}function w(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:C(this.props,n)}function u(e){return this.shouldComponentUpdate=r,t(n,e)}return u.displayName="Memo("+(n.displayName||n.name)+")",u.prototype.isReactComponent=!0,u.__f=!0,u}(E.prototype=new n).isPureReactComponent=!0,E.prototype.shouldComponentUpdate=function(n,t){return C(this.props,n)||C(this.state,t)};var x=e.__b;e.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),x&&x(n)};var R="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function N(n){function t(t){var e=g({},t);return delete e.ref,n(e,t.ref||null)}return t.$$typeof=R,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var k=function(n,t){return null==n?null:r(r(n).map(t))},A={map:k,forEach:k,count:function(n){return n?r(n).length:0},only:function(n){var t=r(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:r},O=e.__e;e.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);O(n,t,e,r)};var T=e.unmount;function F(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=g({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return F(n,t,e)})),n}function I(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return I(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function L(){this.__u=0,this.t=null,this.__b=null}function U(n){var t=n.__.__c;return t&&t.__a&&t.__a(n)}function D(n){var e,r,u;function o(o){if(e||(e=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return t(r,o)}return o.displayName="Lazy",o.__f=!0,o}function M(){this.u=null,this.o=null}e.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),T&&T(n)},(L.prototype=new n).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=U(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(l):l())};e.__R=i;var l=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=I(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.t.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},L.prototype.componentWillUnmount=function(){this.t=[]},L.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),o=this.__v.__k[0].__c;this.__v.__k[0]=F(this.__b,r,o.__O=o.__P)}this.__b=null}var i=e.__a&&t(u,null,n.fallback);return i&&(i.__u&=-33),[t(u,null,e.__a?null:n.children),i]};var V=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]>>1,1),e.i.removeChild(n)}}),o(t(W,{context:e.context},n.__v),e.l)}function j(n,e){var r=t(P,{__v:n,i:e});return r.containerInfo=e,r}(M.prototype=new n).__a=function(n){var t=this,e=U(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),V(t,n,r)):u()};e?e(o):o()}},M.prototype.render=function(n){this.u=null,this.o=new Map;var t=r(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.o.set(t[e],this.u=[1,0,this.u]);return n.children},M.prototype.componentDidUpdate=M.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){V(n,e,t)})};var z="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,B=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,H=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,Z=/[A-Z0-9]/g,Y="undefined"!=typeof document,$=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function q(n,t,e){return null==t.__k&&(t.textContent=""),o(n,t),"function"==typeof e&&e(),n?n.__c:null}function G(n,t,e){return i(n,t),"function"==typeof e&&e(),n?n.__c:null}n.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(n.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var J=e.event;function K(){}function Q(){return this.cancelBubble}function X(){return this.defaultPrevented}e.event=function(n){return J&&(n=J(n)),n.persist=K,n.isPropagationStopped=Q,n.isDefaultPrevented=X,n.nativeEvent=n};var nn,tn={enumerable:!1,configurable:!0,get:function(){return this.class}},en=e.vnode;e.vnode=function(n){"string"==typeof n.type&&function(n){var t=n.props,e=n.type,u={};for(var o in t){var i=t[o];if(!("value"===o&&"defaultValue"in t&&null==i||Y&&"children"===o&&"noscript"===e||"class"===o||"className"===o)){var l=o.toLowerCase();"defaultValue"===o&&"value"in t&&null==t.value?o="value":"download"===o&&!0===i?i="":"ondoubleclick"===l?o="ondblclick":"onchange"!==l||"input"!==e&&"textarea"!==e||$(t.type)?"onfocus"===l?o="onfocusin":"onblur"===l?o="onfocusout":H.test(o)?o=l:-1===e.indexOf("-")&&B.test(o)?o=o.replace(Z,"-$&").toLowerCase():null===i&&(i=void 0):l=o="oninput","oninput"===l&&u[o=l]&&(o="oninputCapture"),u[o]=i}}"select"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=r(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==e&&null!=u.defaultValue&&(u.value=r(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,"className",tn)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=z,en&&en(n)};var rn=e.__r;e.__r=function(n){rn&&rn(n),nn=n.__c};var un=e.diffed;e.diffed=function(n){un&&un(n);var t=n.props,e=n.__e;null!=e&&"textarea"===n.type&&"value"in t&&t.value!==e.value&&(e.value=null==t.value?"":t.value),nn=null};var on={ReactCurrentDispatcher:{current:{readContext:function(n){return nn.__n[n.__c].props.value}}}},ln="17.0.2";function cn(n){return t.bind(null,n)}function fn(n){return!!n&&n.$$typeof===z}function an(n){return fn(n)&&n.type===u}function sn(n){return fn(n)?f.apply(null,arguments):n}function hn(n){return!!n.__k&&(o(null,n),!0)}function vn(n){return n&&(n.base||1===n.nodeType&&n)||null}var dn=function(n,t){return n(t)},pn=function(n,t){return n(t)},mn=u;function yn(n){n()}function _n(n){return n}function bn(){return[!1,yn]}var Sn=d,gn=fn;function Cn(n,t){var e=t(),r=a({h:{__:e,v:t}}),u=r[0].h,o=r[1];return d(function(){u.__=e,u.v=t,En(u)&&o({h:u})},[n,e,t]),v(function(){return En(u)&&o({h:u}),n(function(){En(u)&&o({h:u})})},[n]),e}function En(n){var t,e,r=n.v,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}var wn={useState:a,useId:s,useReducer:h,useEffect:v,useLayoutEffect:d,useInsertionEffect:Sn,useTransition:bn,useDeferredValue:_n,useSyncExternalStore:Cn,startTransition:yn,useRef:p,useImperativeHandle:m,useMemo:y,useCallback:_,useContext:b,useDebugValue:S,version:"17.0.2",Children:A,render:q,hydrate:G,unmountComponentAtNode:hn,createPortal:j,createElement:t,createContext:l,createFactory:cn,cloneElement:sn,createRef:c,Fragment:u,isValidElement:fn,isElement:gn,isFragment:an,findDOMNode:vn,Component:n,PureComponent:E,memo:w,forwardRef:N,flushSync:pn,unstable_batchedUpdates:dn,StrictMode:mn,Suspense:L,SuspenseList:M,lazy:D,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:on};export{A as Children,E as PureComponent,mn as StrictMode,L as Suspense,M as SuspenseList,on as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,sn as cloneElement,cn as createFactory,j as createPortal,wn as default,vn as findDOMNode,pn as flushSync,N as forwardRef,G as hydrate,gn as isElement,an as isFragment,fn as isValidElement,D as lazy,w as memo,q as render,yn as startTransition,hn as unmountComponentAtNode,dn as unstable_batchedUpdates,_n as useDeferredValue,Sn as useInsertionEffect,Cn as useSyncExternalStore,bn as useTransition,ln as version}; +import{Component as n,createElement as t,options as e,toChildArray as r,Fragment as u,render as o,hydrate as i,createContext as l,createRef as c,cloneElement as f}from"preact";export{Component,Fragment,createContext,createElement,createRef}from"preact";import{useState as a,useLayoutEffect as s,useEffect as h,useCallback as v,useContext as d,useDebugValue as m,useId as p,useImperativeHandle as y,useMemo as _,useReducer as b,useRef as S}from"preact/hooks";export*from"preact/hooks";function g(n,t){for(var e in t)n[e]=t[e];return n}function E(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function C(n,t){var e=t(),r=a({t:{__:e,u:t}}),u=r[0].t,o=r[1];return s(function(){u.__=e,u.u=t,R(u)&&o({t:u})},[n,e,t]),h(function(){return R(u)&&o({t:u}),n(function(){R(u)&&o({t:u})})},[n]),e}function R(n){var t,e,r=n.u,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}function x(n){n()}function w(n){return n}function k(){return[!1,x]}var I=s;function N(n,t){this.props=n,this.context=t}function M(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:E(this.props,n)}function u(e){return this.shouldComponentUpdate=r,t(n,e)}return u.displayName="Memo("+(n.displayName||n.name)+")",u.prototype.isReactComponent=!0,u.__f=!0,u.type=n,u}(N.prototype=new n).isPureReactComponent=!0,N.prototype.shouldComponentUpdate=function(n,t){return E(this.props,n)||E(this.state,t)};var T=e.__b;e.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),T&&T(n)};var A="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function D(n){function t(t){var e=g({},t);return delete e.ref,n(e,t.ref||null)}return t.$$typeof=A,t.render=n,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var L=function(n,t){return null==n?null:r(r(n).map(t))},O={map:L,forEach:L,count:function(n){return n?r(n).length:0},only:function(n){var t=r(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:r},U=e.__e;e.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);U(n,t,e,r)};var F=e.unmount;function V(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=g({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c.__e=!0,n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return V(n,t,e)})),n}function W(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return W(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function P(){this.__u=0,this.o=null,this.__b=null}function j(n){if(!n.__)return null;var t=n.__.__c;return t&&t.__a&&t.__a(n)}function z(n){var e,r,u,o=null;function i(i){if(e||(e=n()).then(function(n){n&&(o=n.default||n),u=!0},function(n){r=n,u=!0}),r)throw r;if(!u)throw e;return o?t(o,i):null}return i.displayName="Lazy",i.__f=!0,i}function B(){this.i=null,this.l=null}e.unmount=function(n){var t=n.__c;t&&(t.__z=!0),t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),F&&F(n)},(P.prototype=new n).__c=function(n,t){var e=t.__c,r=this;null==r.o&&(r.o=[]),r.o.push(e);var u=j(r.__v),o=!1,i=function(){o||r.__z||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var l=e.__P;e.__P=null;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=W(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.__P=l,t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},P.prototype.componentWillUnmount=function(){this.o=[]},P.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),o=this.__v.__k[0].__c;this.__v.__k[0]=V(this.__b,r,o.__O=o.__P)}this.__b=null}var i=e.__a&&t(u,null,n.fallback);return i&&(i.__u&=-33),[t(u,null,e.__a?null:n.children),i]};var H=function(n,t,e){if(++e[1]===e[0]&&n.l.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.l.size))for(e=n.i;e;){for(;e.length>3;)e.pop()();if(e[1]>>1,1),e.h.removeChild(n)}}}o(t(Z,{context:e.context},n.__v),e.v)}function $(n,e){var r=t(Y,{__v:n,h:e});return r.containerInfo=e,r}(B.prototype=new n).__a=function(n){var t=this,e=j(t.__v),r=t.l.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),H(t,n,r)):u()};e?e(o):o()}},B.prototype.render=function(n){this.i=null,this.l=new Map;var t=r(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.l.set(t[e],this.i=[1,0,this.i]);return n.children},B.prototype.componentDidUpdate=B.prototype.componentDidMount=function(){var n=this;this.l.forEach(function(t,e){H(n,e,t)})};var q="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,G=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,J=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,K=/[A-Z0-9]/g,Q="undefined"!=typeof document,X=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function nn(n,t,e){return null==t.__k&&(t.textContent=""),o(n,t),"function"==typeof e&&e(),n?n.__c:null}function tn(n,t,e){return i(n,t),"function"==typeof e&&e(),n?n.__c:null}n.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(n.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(n){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:n})}})});var en=e.event;function rn(){}function un(){return this.cancelBubble}function on(){return this.defaultPrevented}e.event=function(n){return en&&(n=en(n)),n.persist=rn,n.isPropagationStopped=un,n.isDefaultPrevented=on,n.nativeEvent=n};var ln,cn={enumerable:!1,configurable:!0,get:function(){return this.class}},fn=e.vnode;e.vnode=function(n){"string"==typeof n.type&&function(n){var t=n.props,e=n.type,u={},o=-1===e.indexOf("-");for(var i in t){var l=t[i];if(!("value"===i&&"defaultValue"in t&&null==l||Q&&"children"===i&&"noscript"===e||"class"===i||"className"===i)){var c=i.toLowerCase();"defaultValue"===i&&"value"in t&&null==t.value?i="value":"download"===i&&!0===l?l="":"translate"===c&&"no"===l?l=!1:"o"===c[0]&&"n"===c[1]?"ondoubleclick"===c?i="ondblclick":"onchange"!==c||"input"!==e&&"textarea"!==e||X(t.type)?"onfocus"===c?i="onfocusin":"onblur"===c?i="onfocusout":J.test(i)&&(i=c):c=i="oninput":o&&G.test(i)?i=i.replace(K,"-$&").toLowerCase():null===l&&(l=void 0),"oninput"===c&&u[i=c]&&(i="oninputCapture"),u[i]=l}}"select"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=r(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==e&&null!=u.defaultValue&&(u.value=r(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,"className",cn)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=q,fn&&fn(n)};var an=e.__r;e.__r=function(n){an&&an(n),ln=n.__c};var sn=e.diffed;e.diffed=function(n){sn&&sn(n);var t=n.props,e=n.__e;null!=e&&"textarea"===n.type&&"value"in t&&t.value!==e.value&&(e.value=null==t.value?"":t.value),ln=null};var hn={ReactCurrentDispatcher:{current:{readContext:function(n){return ln.__n[n.__c].props.value},useCallback:v,useContext:d,useDebugValue:m,useDeferredValue:w,useEffect:h,useId:p,useImperativeHandle:y,useInsertionEffect:I,useLayoutEffect:s,useMemo:_,useReducer:b,useRef:S,useState:a,useSyncExternalStore:C,useTransition:k}}},vn="18.3.1";function dn(n){return t.bind(null,n)}function mn(n){return!!n&&n.$$typeof===q}function pn(n){return mn(n)&&n.type===u}function yn(n){return!!n&&!!n.displayName&&("string"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith("Memo(")}function _n(n){return mn(n)?f.apply(null,arguments):n}function bn(n){return!!n.__k&&(o(null,n),!0)}function Sn(n){return n&&(n.base||1===n.nodeType&&n)||null}var gn=function(n,t){return n(t)},En=function(n,t){return n(t)},Cn=u,Rn=mn,xn={useState:a,useId:p,useReducer:b,useEffect:h,useLayoutEffect:s,useInsertionEffect:I,useTransition:k,useDeferredValue:w,useSyncExternalStore:C,startTransition:x,useRef:S,useImperativeHandle:y,useMemo:_,useCallback:v,useContext:d,useDebugValue:m,version:"18.3.1",Children:O,render:nn,hydrate:tn,unmountComponentAtNode:bn,createPortal:$,createElement:t,createContext:l,createFactory:dn,cloneElement:_n,createRef:c,Fragment:u,isValidElement:mn,isElement:Rn,isFragment:pn,isMemo:yn,findDOMNode:Sn,Component:n,PureComponent:N,memo:M,forwardRef:D,flushSync:En,unstable_batchedUpdates:gn,StrictMode:Cn,Suspense:P,SuspenseList:B,lazy:z,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:hn};export{O as Children,N as PureComponent,Cn as StrictMode,P as Suspense,B as SuspenseList,hn as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,_n as cloneElement,dn as createFactory,$ as createPortal,xn as default,Sn as findDOMNode,En as flushSync,D as forwardRef,tn as hydrate,Rn as isElement,pn as isFragment,yn as isMemo,mn as isValidElement,z as lazy,M as memo,nn as render,x as startTransition,bn as unmountComponentAtNode,gn as unstable_batchedUpdates,w as useDeferredValue,I as useInsertionEffect,C as useSyncExternalStore,k as useTransition,vn as version}; //# sourceMappingURL=compat.module.js.map diff --git a/node_modules/preact/compat/dist/compat.module.js.map b/node_modules/preact/compat/dist/compat.module.js.map index 1dfb05b..b066aa4 100644 --- a/node_modules/preact/compat/dist/compat.module.js.map +++ b/node_modules/preact/compat/dist/compat.module.js.map @@ -1 +1 @@ -{"version":3,"file":"compat.module.js","sources":["../src/util.js","../src/PureComponent.js","../src/memo.js","../src/forwardRef.js","../src/Children.js","../src/suspense.js","../src/suspense-list.js","../../src/constants.js","../src/portals.js","../src/render.js","../src/index.js"],"sourcesContent":["/**\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Check if two objects have a different shape\n * @param {object} a\n * @param {object} b\n * @returns {boolean}\n */\nexport function shallowDiffers(a, b) {\n\tfor (let i in a) if (i !== '__source' && !(i in b)) return true;\n\tfor (let i in b) if (i !== '__source' && a[i] !== b[i]) return true;\n\treturn false;\n}\n\n/**\n * Check if two values are the same value\n * @param {*} x\n * @param {*} y\n * @returns {boolean}\n */\nexport function is(x, y) {\n\treturn (x === y && (x !== 0 || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\n","import { Component } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Component class with a predefined `shouldComponentUpdate` implementation\n */\nexport function PureComponent(p) {\n\tthis.props = p;\n}\nPureComponent.prototype = new Component();\n// Some third-party libraries check if this property is present\nPureComponent.prototype.isPureReactComponent = true;\nPureComponent.prototype.shouldComponentUpdate = function (props, state) {\n\treturn shallowDiffers(this.props, props) || shallowDiffers(this.state, state);\n};\n","import { createElement } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Memoize a component, so that it only updates when the props actually have\n * changed. This was previously known as `React.pure`.\n * @param {import('./internal').FunctionComponent} c functional component\n * @param {(prev: object, next: object) => boolean} [comparer] Custom equality function\n * @returns {import('./internal').FunctionComponent}\n */\nexport function memo(c, comparer) {\n\tfunction shouldUpdate(nextProps) {\n\t\tlet ref = this.props.ref;\n\t\tlet updateRef = ref == nextProps.ref;\n\t\tif (!updateRef && ref) {\n\t\t\tref.call ? ref(null) : (ref.current = null);\n\t\t}\n\n\t\tif (!comparer) {\n\t\t\treturn shallowDiffers(this.props, nextProps);\n\t\t}\n\n\t\treturn !comparer(this.props, nextProps) || !updateRef;\n\t}\n\n\tfunction Memoed(props) {\n\t\tthis.shouldComponentUpdate = shouldUpdate;\n\t\treturn createElement(c, props);\n\t}\n\tMemoed.displayName = 'Memo(' + (c.displayName || c.name) + ')';\n\tMemoed.prototype.isReactComponent = true;\n\tMemoed._forwarded = true;\n\treturn Memoed;\n}\n","import { options } from 'preact';\nimport { assign } from './util';\n\nlet oldDiffHook = options._diff;\noptions._diff = vnode => {\n\tif (vnode.type && vnode.type._forwarded && vnode.ref) {\n\t\tvnode.props.ref = vnode.ref;\n\t\tvnode.ref = null;\n\t}\n\tif (oldDiffHook) oldDiffHook(vnode);\n};\n\nexport const REACT_FORWARD_SYMBOL =\n\t(typeof Symbol != 'undefined' &&\n\t\tSymbol.for &&\n\t\tSymbol.for('react.forward_ref')) ||\n\t0xf47;\n\n/**\n * Pass ref down to a child. This is mainly used in libraries with HOCs that\n * wrap components. Using `forwardRef` there is an easy way to get a reference\n * of the wrapped component instead of one of the wrapper itself.\n * @param {import('./index').ForwardFn} fn\n * @returns {import('./internal').FunctionComponent}\n */\nexport function forwardRef(fn) {\n\tfunction Forwarded(props) {\n\t\tlet clone = assign({}, props);\n\t\tdelete clone.ref;\n\t\treturn fn(clone, props.ref || null);\n\t}\n\n\t// mobx-react checks for this being present\n\tForwarded.$$typeof = REACT_FORWARD_SYMBOL;\n\t// mobx-react heavily relies on implementation details.\n\t// It expects an object here with a `render` property,\n\t// and prototype.render will fail. Without this\n\t// mobx-react throws.\n\tForwarded.render = Forwarded;\n\n\tForwarded.prototype.isReactComponent = Forwarded._forwarded = true;\n\tForwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')';\n\treturn Forwarded;\n}\n","import { toChildArray } from 'preact';\n\nconst mapFn = (children, fn) => {\n\tif (children == null) return null;\n\treturn toChildArray(toChildArray(children).map(fn));\n};\n\n// This API is completely unnecessary for Preact, so it's basically passthrough.\nexport const Children = {\n\tmap: mapFn,\n\tforEach: mapFn,\n\tcount(children) {\n\t\treturn children ? toChildArray(children).length : 0;\n\t},\n\tonly(children) {\n\t\tconst normalized = toChildArray(children);\n\t\tif (normalized.length !== 1) throw 'Children.only';\n\t\treturn normalized[0];\n\t},\n\ttoArray: toChildArray\n};\n","import { Component, createElement, options, Fragment } from 'preact';\nimport { MODE_HYDRATE } from '../../src/constants';\nimport { assign } from './util';\n\nconst oldCatchError = options._catchError;\noptions._catchError = function (error, newVNode, oldVNode, errorInfo) {\n\tif (error.then) {\n\t\t/** @type {import('./internal').Component} */\n\t\tlet component;\n\t\tlet vnode = newVNode;\n\n\t\tfor (; (vnode = vnode._parent); ) {\n\t\t\tif ((component = vnode._component) && component._childDidSuspend) {\n\t\t\t\tif (newVNode._dom == null) {\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t}\n\t\t\t\t// Don't call oldCatchError if we found a Suspense\n\t\t\t\treturn component._childDidSuspend(error, newVNode);\n\t\t\t}\n\t\t}\n\t}\n\toldCatchError(error, newVNode, oldVNode, errorInfo);\n};\n\nconst oldUnmount = options.unmount;\noptions.unmount = function (vnode) {\n\t/** @type {import('./internal').Component} */\n\tconst component = vnode._component;\n\tif (component && component._onResolve) {\n\t\tcomponent._onResolve();\n\t}\n\n\t// if the component is still hydrating\n\t// most likely it is because the component is suspended\n\t// we set the vnode.type as `null` so that it is not a typeof function\n\t// so the unmount will remove the vnode._dom\n\tif (component && vnode._flags & MODE_HYDRATE) {\n\t\tvnode.type = null;\n\t}\n\n\tif (oldUnmount) oldUnmount(vnode);\n};\n\nfunction detachedClone(vnode, detachedParent, parentDom) {\n\tif (vnode) {\n\t\tif (vnode._component && vnode._component.__hooks) {\n\t\t\tvnode._component.__hooks._list.forEach(effect => {\n\t\t\t\tif (typeof effect._cleanup == 'function') effect._cleanup();\n\t\t\t});\n\n\t\t\tvnode._component.__hooks = null;\n\t\t}\n\n\t\tvnode = assign({}, vnode);\n\t\tif (vnode._component != null) {\n\t\t\tif (vnode._component._parentDom === parentDom) {\n\t\t\t\tvnode._component._parentDom = detachedParent;\n\t\t\t}\n\t\t\tvnode._component = null;\n\t\t}\n\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tdetachedClone(child, detachedParent, parentDom)\n\t\t\t);\n\t}\n\n\treturn vnode;\n}\n\nfunction removeOriginal(vnode, detachedParent, originalParent) {\n\tif (vnode && originalParent) {\n\t\tvnode._original = null;\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tremoveOriginal(child, detachedParent, originalParent)\n\t\t\t);\n\n\t\tif (vnode._component) {\n\t\t\tif (vnode._component._parentDom === detachedParent) {\n\t\t\t\tif (vnode._dom) {\n\t\t\t\t\toriginalParent.appendChild(vnode._dom);\n\t\t\t\t}\n\t\t\t\tvnode._component._force = true;\n\t\t\t\tvnode._component._parentDom = originalParent;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn vnode;\n}\n\n// having custom inheritance instead of a class here saves a lot of bytes\nexport function Suspense() {\n\t// we do not call super here to golf some bytes...\n\tthis._pendingSuspensionCount = 0;\n\tthis._suspenders = null;\n\tthis._detachOnNextRender = null;\n}\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspense.prototype = new Component();\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {Promise} promise The thrown promise\n * @param {import('./internal').VNode} suspendingVNode The suspending component\n */\nSuspense.prototype._childDidSuspend = function (promise, suspendingVNode) {\n\tconst suspendingComponent = suspendingVNode._component;\n\n\t/** @type {import('./internal').SuspenseComponent} */\n\tconst c = this;\n\n\tif (c._suspenders == null) {\n\t\tc._suspenders = [];\n\t}\n\tc._suspenders.push(suspendingComponent);\n\n\tconst resolve = suspended(c._vnode);\n\n\tlet resolved = false;\n\tconst onResolved = () => {\n\t\tif (resolved) return;\n\n\t\tresolved = true;\n\t\tsuspendingComponent._onResolve = null;\n\n\t\tif (resolve) {\n\t\t\tresolve(onSuspensionComplete);\n\t\t} else {\n\t\t\tonSuspensionComplete();\n\t\t}\n\t};\n\n\tsuspendingComponent._onResolve = onResolved;\n\n\tconst onSuspensionComplete = () => {\n\t\tif (!--c._pendingSuspensionCount) {\n\t\t\t// If the suspension was during hydration we don't need to restore the\n\t\t\t// suspended children into the _children array\n\t\t\tif (c.state._suspended) {\n\t\t\t\tconst suspendedVNode = c.state._suspended;\n\t\t\t\tc._vnode._children[0] = removeOriginal(\n\t\t\t\t\tsuspendedVNode,\n\t\t\t\t\tsuspendedVNode._component._parentDom,\n\t\t\t\t\tsuspendedVNode._component._originalParentDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tc.setState({ _suspended: (c._detachOnNextRender = null) });\n\n\t\t\tlet suspended;\n\t\t\twhile ((suspended = c._suspenders.pop())) {\n\t\t\t\tsuspended.forceUpdate();\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * We do not set `suspended: true` during hydration because we want the actual markup\n\t * to remain on screen and hydrate it when the suspense actually gets resolved.\n\t * While in non-hydration cases the usual fallback -> component flow would occour.\n\t */\n\tif (\n\t\t!c._pendingSuspensionCount++ &&\n\t\t!(suspendingVNode._flags & MODE_HYDRATE)\n\t) {\n\t\tc.setState({ _suspended: (c._detachOnNextRender = c._vnode._children[0]) });\n\t}\n\tpromise.then(onResolved, onResolved);\n};\n\nSuspense.prototype.componentWillUnmount = function () {\n\tthis._suspenders = [];\n};\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {import('./internal').SuspenseComponent[\"props\"]} props\n * @param {import('./internal').SuspenseState} state\n */\nSuspense.prototype.render = function (props, state) {\n\tif (this._detachOnNextRender) {\n\t\t// When the Suspense's _vnode was created by a call to createVNode\n\t\t// (i.e. due to a setState further up in the tree)\n\t\t// it's _children prop is null, in this case we \"forget\" about the parked vnodes to detach\n\t\tif (this._vnode._children) {\n\t\t\tconst detachedParent = document.createElement('div');\n\t\t\tconst detachedComponent = this._vnode._children[0]._component;\n\t\t\tthis._vnode._children[0] = detachedClone(\n\t\t\t\tthis._detachOnNextRender,\n\t\t\t\tdetachedParent,\n\t\t\t\t(detachedComponent._originalParentDom = detachedComponent._parentDom)\n\t\t\t);\n\t\t}\n\n\t\tthis._detachOnNextRender = null;\n\t}\n\n\t// Wrap fallback tree in a VNode that prevents itself from being marked as aborting mid-hydration:\n\t/** @type {import('./internal').VNode} */\n\tconst fallback =\n\t\tstate._suspended && createElement(Fragment, null, props.fallback);\n\tif (fallback) fallback._flags &= ~MODE_HYDRATE;\n\n\treturn [\n\t\tcreateElement(Fragment, null, state._suspended ? null : props.children),\n\t\tfallback\n\t];\n};\n\n/**\n * Checks and calls the parent component's _suspended method, passing in the\n * suspended vnode. This is a way for a parent (e.g. SuspenseList) to get notified\n * that one of its children/descendants suspended.\n *\n * The parent MAY return a callback. The callback will get called when the\n * suspension resolves, notifying the parent of the fact.\n * Moreover, the callback gets function `unsuspend` as a parameter. The resolved\n * child descendant will not actually get unsuspended until `unsuspend` gets called.\n * This is a way for the parent to delay unsuspending.\n *\n * If the parent does not return a callback then the resolved vnode\n * gets unsuspended immediately when it resolves.\n *\n * @param {import('./internal').VNode} vnode\n * @returns {((unsuspend: () => void) => void)?}\n */\nexport function suspended(vnode) {\n\t/** @type {import('./internal').Component} */\n\tlet component = vnode._parent._component;\n\treturn component && component._suspended && component._suspended(vnode);\n}\n\nexport function lazy(loader) {\n\tlet prom;\n\tlet component;\n\tlet error;\n\n\tfunction Lazy(props) {\n\t\tif (!prom) {\n\t\t\tprom = loader();\n\t\t\tprom.then(\n\t\t\t\texports => {\n\t\t\t\t\tcomponent = exports.default || exports;\n\t\t\t\t},\n\t\t\t\te => {\n\t\t\t\t\terror = e;\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif (error) {\n\t\t\tthrow error;\n\t\t}\n\n\t\tif (!component) {\n\t\t\tthrow prom;\n\t\t}\n\n\t\treturn createElement(component, props);\n\t}\n\n\tLazy.displayName = 'Lazy';\n\tLazy._forwarded = true;\n\treturn Lazy;\n}\n","import { Component, toChildArray } from 'preact';\nimport { suspended } from './suspense.js';\n\n// Indexes to linked list nodes (nodes are stored as arrays to save bytes).\nconst SUSPENDED_COUNT = 0;\nconst RESOLVED_COUNT = 1;\nconst NEXT_NODE = 2;\n\n// Having custom inheritance instead of a class here saves a lot of bytes.\nexport function SuspenseList() {\n\tthis._next = null;\n\tthis._map = null;\n}\n\n// Mark one of child's earlier suspensions as resolved.\n// Some pending callbacks may become callable due to this\n// (e.g. the last suspended descendant gets resolved when\n// revealOrder === 'together'). Process those callbacks as well.\nconst resolve = (list, child, node) => {\n\tif (++node[RESOLVED_COUNT] === node[SUSPENDED_COUNT]) {\n\t\t// The number a child (or any of its descendants) has been suspended\n\t\t// matches the number of times it's been resolved. Therefore we\n\t\t// mark the child as completely resolved by deleting it from ._map.\n\t\t// This is used to figure out when *all* children have been completely\n\t\t// resolved when revealOrder is 'together'.\n\t\tlist._map.delete(child);\n\t}\n\n\t// If revealOrder is falsy then we can do an early exit, as the\n\t// callbacks won't get queued in the node anyway.\n\t// If revealOrder is 'together' then also do an early exit\n\t// if all suspended descendants have not yet been resolved.\n\tif (\n\t\t!list.props.revealOrder ||\n\t\t(list.props.revealOrder[0] === 't' && list._map.size)\n\t) {\n\t\treturn;\n\t}\n\n\t// Walk the currently suspended children in order, calling their\n\t// stored callbacks on the way. Stop if we encounter a child that\n\t// has not been completely resolved yet.\n\tnode = list._next;\n\twhile (node) {\n\t\twhile (node.length > 3) {\n\t\t\tnode.pop()();\n\t\t}\n\t\tif (node[RESOLVED_COUNT] < node[SUSPENDED_COUNT]) {\n\t\t\tbreak;\n\t\t}\n\t\tlist._next = node = node[NEXT_NODE];\n\t}\n};\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspenseList.prototype = new Component();\n\nSuspenseList.prototype._suspended = function (child) {\n\tconst list = this;\n\tconst delegated = suspended(list._vnode);\n\n\tlet node = list._map.get(child);\n\tnode[SUSPENDED_COUNT]++;\n\n\treturn unsuspend => {\n\t\tconst wrappedUnsuspend = () => {\n\t\t\tif (!list.props.revealOrder) {\n\t\t\t\t// Special case the undefined (falsy) revealOrder, as there\n\t\t\t\t// is no need to coordinate a specific order or unsuspends.\n\t\t\t\tunsuspend();\n\t\t\t} else {\n\t\t\t\tnode.push(unsuspend);\n\t\t\t\tresolve(list, child, node);\n\t\t\t}\n\t\t};\n\t\tif (delegated) {\n\t\t\tdelegated(wrappedUnsuspend);\n\t\t} else {\n\t\t\twrappedUnsuspend();\n\t\t}\n\t};\n};\n\nSuspenseList.prototype.render = function (props) {\n\tthis._next = null;\n\tthis._map = new Map();\n\n\tconst children = toChildArray(props.children);\n\tif (props.revealOrder && props.revealOrder[0] === 'b') {\n\t\t// If order === 'backwards' (or, well, anything starting with a 'b')\n\t\t// then flip the child list around so that the last child will be\n\t\t// the first in the linked list.\n\t\tchildren.reverse();\n\t}\n\t// Build the linked list. Iterate through the children in reverse order\n\t// so that `_next` points to the first linked list node to be resolved.\n\tfor (let i = children.length; i--; ) {\n\t\t// Create a new linked list node as an array of form:\n\t\t// \t[suspended_count, resolved_count, next_node]\n\t\t// where suspended_count and resolved_count are numeric counters for\n\t\t// keeping track how many times a node has been suspended and resolved.\n\t\t//\n\t\t// Note that suspended_count starts from 1 instead of 0, so we can block\n\t\t// processing callbacks until componentDidMount has been called. In a sense\n\t\t// node is suspended at least until componentDidMount gets called!\n\t\t//\n\t\t// Pending callbacks are added to the end of the node:\n\t\t// \t[suspended_count, resolved_count, next_node, callback_0, callback_1, ...]\n\t\tthis._map.set(children[i], (this._next = [1, 0, this._next]));\n\t}\n\treturn props.children;\n};\n\nSuspenseList.prototype.componentDidUpdate =\n\tSuspenseList.prototype.componentDidMount = function () {\n\t\t// Iterate through all children after mounting for two reasons:\n\t\t// 1. As each node[SUSPENDED_COUNT] starts from 1, this iteration increases\n\t\t// each node[RELEASED_COUNT] by 1, therefore balancing the counters.\n\t\t// The nodes can now be completely consumed from the linked list.\n\t\t// 2. Handle nodes that might have gotten resolved between render and\n\t\t// componentDidMount.\n\t\tthis._map.forEach((node, child) => {\n\t\t\tresolve(this, child, node);\n\t\t});\n\t};\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { createElement, render } from 'preact';\n\n/**\n * @param {import('../../src/index').RenderableProps<{ context: any }>} props\n */\nfunction ContextProvider(props) {\n\tthis.getChildContext = () => props.context;\n\treturn props.children;\n}\n\n/**\n * Portal component\n * @this {import('./internal').Component}\n * @param {object | null | undefined} props\n *\n * TODO: use createRoot() instead of fake root\n */\nfunction Portal(props) {\n\tconst _this = this;\n\tlet container = props._container;\n\n\t_this.componentWillUnmount = function () {\n\t\trender(null, _this._temp);\n\t\t_this._temp = null;\n\t\t_this._container = null;\n\t};\n\n\t// When we change container we should clear our old container and\n\t// indicate a new mount.\n\tif (_this._container && _this._container !== container) {\n\t\t_this.componentWillUnmount();\n\t}\n\n\tif (!_this._temp) {\n\t\t_this._container = container;\n\n\t\t// Create a fake DOM parent node that manages a subset of `container`'s children:\n\t\t_this._temp = {\n\t\t\tnodeType: 1,\n\t\t\tparentNode: container,\n\t\t\tchildNodes: [],\n\t\t\tappendChild(child) {\n\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t_this._container.appendChild(child);\n\t\t\t},\n\t\t\tinsertBefore(child, before) {\n\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t_this._container.appendChild(child);\n\t\t\t},\n\t\t\tremoveChild(child) {\n\t\t\t\tthis.childNodes.splice(this.childNodes.indexOf(child) >>> 1, 1);\n\t\t\t\t_this._container.removeChild(child);\n\t\t\t}\n\t\t};\n\t}\n\n\t// Render our wrapping element into temp.\n\trender(\n\t\tcreateElement(ContextProvider, { context: _this.context }, props._vnode),\n\t\t_this._temp\n\t);\n}\n\n/**\n * Create a `Portal` to continue rendering the vnode tree at a different DOM node\n * @param {import('./internal').VNode} vnode The vnode to render\n * @param {import('./internal').PreactElement} container The DOM node to continue rendering in to.\n */\nexport function createPortal(vnode, container) {\n\tconst el = createElement(Portal, { _vnode: vnode, _container: container });\n\tel.containerInfo = container;\n\treturn el;\n}\n","import {\n\trender as preactRender,\n\thydrate as preactHydrate,\n\toptions,\n\ttoChildArray,\n\tComponent\n} from 'preact';\n\nexport const REACT_ELEMENT_TYPE =\n\t(typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||\n\t0xeac7;\n\nconst CAMEL_PROPS =\n\t/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;\nconst ON_ANI = /^on(Ani|Tra|Tou|BeforeInp|Compo)/;\nconst CAMEL_REPLACE = /[A-Z0-9]/g;\n\nconst IS_DOM = typeof document !== 'undefined';\n\n// Input types for which onchange should not be converted to oninput.\n// type=\"file|checkbox|radio\", plus \"range\" in IE11.\n// (IE11 doesn't support Symbol, which we use here to turn `rad` into `ra` which matches \"range\")\nconst onChangeInputType = type =>\n\t(typeof Symbol != 'undefined' && typeof Symbol() == 'symbol'\n\t\t? /fil|che|rad/\n\t\t: /fil|che|ra/\n\t).test(type);\n\n// Some libraries like `react-virtualized` explicitly check for this.\nComponent.prototype.isReactComponent = {};\n\n// `UNSAFE_*` lifecycle hooks\n// Preact only ever invokes the unprefixed methods.\n// Here we provide a base \"fallback\" implementation that calls any defined UNSAFE_ prefixed method.\n// - If a component defines its own `componentDidMount()` (including via defineProperty), use that.\n// - If a component defines `UNSAFE_componentDidMount()`, `componentDidMount` is the alias getter/setter.\n// - If anything assigns to an `UNSAFE_*` property, the assignment is forwarded to the unprefixed property.\n// See https://github.com/preactjs/preact/issues/1941\n[\n\t'componentWillMount',\n\t'componentWillReceiveProps',\n\t'componentWillUpdate'\n].forEach(key => {\n\tObject.defineProperty(Component.prototype, key, {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn this['UNSAFE_' + key];\n\t\t},\n\t\tset(v) {\n\t\t\tObject.defineProperty(this, key, {\n\t\t\t\tconfigurable: true,\n\t\t\t\twritable: true,\n\t\t\t\tvalue: v\n\t\t\t});\n\t\t}\n\t});\n});\n\n/**\n * Proxy render() since React returns a Component reference.\n * @param {import('./internal').VNode} vnode VNode tree to render\n * @param {import('./internal').PreactElement} parent DOM node to render vnode tree into\n * @param {() => void} [callback] Optional callback that will be called after rendering\n * @returns {import('./internal').Component | null} The root component reference or null\n */\nexport function render(vnode, parent, callback) {\n\t// React destroys any existing DOM nodes, see #1727\n\t// ...but only on the first render, see #1828\n\tif (parent._children == null) {\n\t\tparent.textContent = '';\n\t}\n\n\tpreactRender(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nexport function hydrate(vnode, parent, callback) {\n\tpreactHydrate(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nlet oldEventHook = options.event;\noptions.event = e => {\n\tif (oldEventHook) e = oldEventHook(e);\n\n\te.persist = empty;\n\te.isPropagationStopped = isPropagationStopped;\n\te.isDefaultPrevented = isDefaultPrevented;\n\treturn (e.nativeEvent = e);\n};\n\nfunction empty() {}\n\nfunction isPropagationStopped() {\n\treturn this.cancelBubble;\n}\n\nfunction isDefaultPrevented() {\n\treturn this.defaultPrevented;\n}\n\nconst classNameDescriptorNonEnumberable = {\n\tenumerable: false,\n\tconfigurable: true,\n\tget() {\n\t\treturn this.class;\n\t}\n};\n\nfunction handleDomVNode(vnode) {\n\tlet props = vnode.props,\n\t\ttype = vnode.type,\n\t\tnormalizedProps = {};\n\n\tfor (let i in props) {\n\t\tlet value = props[i];\n\n\t\tif (\n\t\t\t(i === 'value' && 'defaultValue' in props && value == null) ||\n\t\t\t// Emulate React's behavior of not rendering the contents of noscript tags on the client.\n\t\t\t(IS_DOM && i === 'children' && type === 'noscript') ||\n\t\t\ti === 'class' ||\n\t\t\ti === 'className'\n\t\t) {\n\t\t\t// Skip applying value if it is null/undefined and we already set\n\t\t\t// a default value\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet lowerCased = i.toLowerCase();\n\t\tif (i === 'defaultValue' && 'value' in props && props.value == null) {\n\t\t\t// `defaultValue` is treated as a fallback `value` when a value prop is present but null/undefined.\n\t\t\t// `defaultValue` for Elements with no value prop is the same as the DOM defaultValue property.\n\t\t\ti = 'value';\n\t\t} else if (i === 'download' && value === true) {\n\t\t\t// Calling `setAttribute` with a truthy value will lead to it being\n\t\t\t// passed as a stringified value, e.g. `download=\"true\"`. React\n\t\t\t// converts it to an empty string instead, otherwise the attribute\n\t\t\t// value will be used as the file name and the file will be called\n\t\t\t// \"true\" upon downloading it.\n\t\t\tvalue = '';\n\t\t} else if (lowerCased === 'ondoubleclick') {\n\t\t\ti = 'ondblclick';\n\t\t} else if (\n\t\t\tlowerCased === 'onchange' &&\n\t\t\t(type === 'input' || type === 'textarea') &&\n\t\t\t!onChangeInputType(props.type)\n\t\t) {\n\t\t\tlowerCased = i = 'oninput';\n\t\t} else if (lowerCased === 'onfocus') {\n\t\t\ti = 'onfocusin';\n\t\t} else if (lowerCased === 'onblur') {\n\t\t\ti = 'onfocusout';\n\t\t} else if (ON_ANI.test(i)) {\n\t\t\ti = lowerCased;\n\t\t} else if (type.indexOf('-') === -1 && CAMEL_PROPS.test(i)) {\n\t\t\ti = i.replace(CAMEL_REPLACE, '-$&').toLowerCase();\n\t\t} else if (value === null) {\n\t\t\tvalue = undefined;\n\t\t}\n\n\t\t// Add support for onInput and onChange, see #3561\n\t\t// if we have an oninput prop already change it to oninputCapture\n\t\tif (lowerCased === 'oninput') {\n\t\t\ti = lowerCased;\n\t\t\tif (normalizedProps[i]) {\n\t\t\t\ti = 'oninputCapture';\n\t\t\t}\n\t\t}\n\n\t\tnormalizedProps[i] = value;\n\t}\n\n\t// Add support for array select values: \n\tif (\n\t\ttype == 'select' &&\n\t\tnormalizedProps.multiple &&\n\t\tArray.isArray(normalizedProps.value)\n\t) {\n\t\t// forEach() always returns undefined, which we abuse here to unset the value prop.\n\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\tchild.props.selected =\n\t\t\t\tnormalizedProps.value.indexOf(child.props.value) != -1;\n\t\t});\n\t}\n\n\t// Adding support for defaultValue in select tag\n\tif (type == 'select' && normalizedProps.defaultValue != null) {\n\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\tif (normalizedProps.multiple) {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.defaultValue.indexOf(child.props.value) != -1;\n\t\t\t} else {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.defaultValue == child.props.value;\n\t\t\t}\n\t\t});\n\t}\n\n\tif (props.class && !props.className) {\n\t\tnormalizedProps.class = props.class;\n\t\tObject.defineProperty(\n\t\t\tnormalizedProps,\n\t\t\t'className',\n\t\t\tclassNameDescriptorNonEnumberable\n\t\t);\n\t} else if (props.className && !props.class) {\n\t\tnormalizedProps.class = normalizedProps.className = props.className;\n\t} else if (props.class && props.className) {\n\t\tnormalizedProps.class = normalizedProps.className = props.className;\n\t}\n\n\tvnode.props = normalizedProps;\n}\n\nlet oldVNodeHook = options.vnode;\noptions.vnode = vnode => {\n\t// only normalize props on Element nodes\n\tif (typeof vnode.type === 'string') {\n\t\thandleDomVNode(vnode);\n\t}\n\n\tvnode.$$typeof = REACT_ELEMENT_TYPE;\n\n\tif (oldVNodeHook) oldVNodeHook(vnode);\n};\n\n// Only needed for react-relay\nlet currentComponent;\nconst oldBeforeRender = options._render;\noptions._render = function (vnode) {\n\tif (oldBeforeRender) {\n\t\toldBeforeRender(vnode);\n\t}\n\tcurrentComponent = vnode._component;\n};\n\nconst oldDiffed = options.diffed;\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.diffed = function (vnode) {\n\tif (oldDiffed) {\n\t\toldDiffed(vnode);\n\t}\n\n\tconst props = vnode.props;\n\tconst dom = vnode._dom;\n\n\tif (\n\t\tdom != null &&\n\t\tvnode.type === 'textarea' &&\n\t\t'value' in props &&\n\t\tprops.value !== dom.value\n\t) {\n\t\tdom.value = props.value == null ? '' : props.value;\n\t}\n\n\tcurrentComponent = null;\n};\n\n// This is a very very private internal function for React it\n// is used to sort-of do runtime dependency injection.\nexport const __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = {\n\tReactCurrentDispatcher: {\n\t\tcurrent: {\n\t\t\treadContext(context) {\n\t\t\t\treturn currentComponent._globalContext[context._id].props.value;\n\t\t\t},\n\t\t\tuseCallback,\n\t\t\tuseContext,\n\t\t\tuseDebugValue,\n\t\t\tuseDeferredValue,\n\t\t\tuseEffect,\n\t\t\tuseId,\n\t\t\tuseImperativeHandle,\n\t\t\tuseInsertionEffect,\n\t\t\tuseLayoutEffect,\n\t\t\tuseMemo,\n\t\t\t// useMutableSource, // experimental-only and replaced by uSES, likely not worth supporting\n\t\t\tuseReducer,\n\t\t\tuseRef,\n\t\t\tuseState,\n\t\t\tuseSyncExternalStore,\n\t\t\tuseTransition\n\t\t}\n\t}\n};\n","import {\n\tcreateElement,\n\trender as preactRender,\n\tcloneElement as preactCloneElement,\n\tcreateRef,\n\tComponent,\n\tcreateContext,\n\tFragment\n} from 'preact';\nimport {\n\tuseState,\n\tuseId,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue\n} from 'preact/hooks';\nimport {\n\tuseInsertionEffect,\n\tstartTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tuseTransition\n} from './hooks';\nimport { PureComponent } from './PureComponent';\nimport { memo } from './memo';\nimport { forwardRef } from './forwardRef';\nimport { Children } from './Children';\nimport { Suspense, lazy } from './suspense';\nimport { SuspenseList } from './suspense-list';\nimport { createPortal } from './portals';\nimport {\n\thydrate,\n\trender,\n\tREACT_ELEMENT_TYPE,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n} from './render';\n\nconst version = '18.3.1'; // trick libraries to think we are react\n\n/**\n * Legacy version of createElement.\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component constructor\n */\nfunction createFactory(type) {\n\treturn createElement.bind(null, type);\n}\n\n/**\n * Check if the passed element is a valid (p)react node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isValidElement(element) {\n\treturn !!element && element.$$typeof === REACT_ELEMENT_TYPE;\n}\n\n/**\n * Check if the passed element is a Fragment node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isFragment(element) {\n\treturn isValidElement(element) && element.type === Fragment;\n}\n\n/**\n * Check if the passed element is a Memo node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isMemo(element) {\n\treturn (\n\t\t!!element &&\n\t\t!!element.displayName &&\n\t\t(typeof element.displayName === 'string' ||\n\t\t\telement.displayName instanceof String) &&\n\t\telement.displayName.startsWith('Memo(')\n\t);\n}\n\n/**\n * Wrap `cloneElement` to abort if the passed element is not a valid element and apply\n * all vnode normalizations.\n * @param {import('./internal').VNode} element The vnode to clone\n * @param {object} props Props to add when cloning\n * @param {Array} rest Optional component children\n */\nfunction cloneElement(element) {\n\tif (!isValidElement(element)) return element;\n\treturn preactCloneElement.apply(null, arguments);\n}\n\n/**\n * Remove a component tree from the DOM, including state and event handlers.\n * @param {import('./internal').PreactElement} container\n * @returns {boolean}\n */\nfunction unmountComponentAtNode(container) {\n\tif (container._children) {\n\t\tpreactRender(null, container);\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n/**\n * Get the matching DOM node for a component\n * @param {import('./internal').Component} component\n * @returns {import('./internal').PreactElement | null}\n */\nfunction findDOMNode(component) {\n\treturn (\n\t\t(component &&\n\t\t\t(component.base || (component.nodeType === 1 && component))) ||\n\t\tnull\n\t);\n}\n\n/**\n * Deprecated way to control batched rendering inside the reconciler, but we\n * already schedule in batches inside our rendering code\n * @template Arg\n * @param {(arg: Arg) => void} callback function that triggers the updated\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n */\n// eslint-disable-next-line camelcase\nconst unstable_batchedUpdates = (callback, arg) => callback(arg);\n\n/**\n * In React, `flushSync` flushes the entire tree and forces a rerender. It's\n * implmented here as a no-op.\n * @template Arg\n * @template Result\n * @param {(arg: Arg) => Result} callback function that runs before the flush\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n * @returns\n */\nconst flushSync = (callback, arg) => callback(arg);\n\n/**\n * Strict Mode is not implemented in Preact, so we provide a stand-in for it\n * that just renders its children without imposing any restrictions.\n */\nconst StrictMode = Fragment;\n\n// compat to react-is\nexport const isElement = isValidElement;\n\nexport * from 'preact/hooks';\nexport {\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tisFragment,\n\tisMemo,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tuseInsertionEffect,\n\tstartTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tuseTransition,\n\t// eslint-disable-next-line camelcase\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n\n// React copies the named exports to the default one.\nexport default {\n\tuseState,\n\tuseId,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseInsertionEffect,\n\tuseTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tstartTransition,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue,\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tisElement,\n\tisFragment,\n\tisMemo,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n"],"names":["assign","obj","props","i","shallowDiffers","a","b","useSyncExternalStore","subscribe","getSnapshot","value","_useState","useState","_instance","__","_getSnapshot","forceUpdate","useLayoutEffect","didSnapshotChange","useEffect","inst","x","y","latestGetSnapshot","prevValue","nextValue","error","startTransition","cb","useDeferredValue","val","useTransition","useInsertionEffect","PureComponent","p","c","this","context","memo","comparer","shouldUpdate","nextProps","ref","updateRef","call","current","Memoed","shouldComponentUpdate","createElement","displayName","name","prototype","isReactComponent","__f","type","Component","isPureReactComponent","state","oldDiffHook","options","__b","vnode","REACT_FORWARD_SYMBOL","Symbol","for","forwardRef","fn","Forwarded","clone","$$typeof","render","mapFn","children","toChildArray","map","Children","forEach","count","length","only","normalized","toArray","oldCatchError","__e","newVNode","oldVNode","errorInfo","then","component","__c","__k","oldUnmount","unmount","detachedClone","detachedParent","parentDom","__H","effect","__P","child","removeOriginal","originalParent","__v","appendChild","Suspense","__u","_suspenders","suspended","__a","lazy","loader","prom","resolved","Lazy","exports","default","e","SuspenseList","_next","_map","__z","__R","promise","suspendingVNode","suspendingComponent","push","resolve","onResolved","onSuspensionComplete","originalParentDom","suspendedVNode","__O","setState","pop","componentWillUnmount","document","detachedComponent","fallback","Fragment","list","node","delete","revealOrder","size","ContextProvider","getChildContext","Portal","_this","container","_container","_temp","root","__m","nodeType","parentNode","childNodes","contains","namespaceURI","insertBefore","before","removeChild","splice","indexOf","createPortal","el","containerInfo","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","componentDidUpdate","componentDidMount","REACT_ELEMENT_TYPE","CAMEL_PROPS","ON_ANI","CAMEL_REPLACE","IS_DOM","onChangeInputType","test","parent","callback","textContent","preactRender","hydrate","preactHydrate","key","Object","defineProperty","configurable","v","writable","oldEventHook","event","empty","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","persist","nativeEvent","currentComponent","classNameDescriptorNonEnumberable","enumerable","class","oldVNodeHook","normalizedProps","isNonDashedType","lowerCased","toLowerCase","replace","undefined","multiple","Array","isArray","selected","defaultValue","className","handleDomVNode","oldBeforeRender","__r","oldDiffed","diffed","dom","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentDispatcher","readContext","__n","useCallback","useContext","useDebugValue","useId","useImperativeHandle","useMemo","useReducer","useRef","version","createFactory","bind","isValidElement","element","isFragment","isMemo","String","startsWith","cloneElement","preactCloneElement","apply","arguments","unmountComponentAtNode","findDOMNode","base","unstable_batchedUpdates","arg","flushSync","StrictMode","isElement","index","createContext","createRef"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/compat/dist/compat.umd.js b/node_modules/preact/compat/dist/compat.umd.js index 6080d12..35f4193 100644 --- a/node_modules/preact/compat/dist/compat.umd.js +++ b/node_modules/preact/compat/dist/compat.umd.js @@ -1,2 +1,2 @@ -!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("preact"),require("preact/hooks")):"function"==typeof define&&define.amd?define(["exports","preact","preact/hooks"],t):t((n||self).preactCompat={},n.preact,n.preactHooks)}(this,function(n,t,e){function r(n,t){for(var e in t)n[e]=t[e];return n}function u(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function o(n){this.props=n}function i(n,e){function r(n){var t=this.props.ref,r=t==n.ref;return!r&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!r:u(this.props,n)}function o(e){return this.shouldComponentUpdate=r,t.createElement(n,e)}return o.displayName="Memo("+(n.displayName||n.name)+")",o.prototype.isReactComponent=!0,o.__f=!0,o}(o.prototype=new t.Component).isPureReactComponent=!0,o.prototype.shouldComponentUpdate=function(n,t){return u(this.props,n)||u(this.state,t)};var c=t.options.__b;t.options.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),c&&c(n)};var l="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function f(n){function t(t){var e=r({},t);return delete e.ref,n(e,t.ref||null)}return t.$$typeof=l,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var a=function(n,e){return null==n?null:t.toChildArray(t.toChildArray(n).map(e))},s={map:a,forEach:a,count:function(n){return n?t.toChildArray(n).length:0},only:function(n){var e=t.toChildArray(n);if(1!==e.length)throw"Children.only";return e[0]},toArray:t.toChildArray},h=t.options.__e;t.options.__e=function(n,t,e,r){if(n.then)for(var u,o=t;o=o.__;)if((u=o.__c)&&u.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),u.__c(n,t);h(n,t,e,r)};var d=t.options.unmount;function v(n,t,e){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=r({},n)).__c&&(n.__c.__P===e&&(n.__c.__P=t),n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return v(n,t,e)})),n}function p(n,t,e){return n&&e&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return p(n,t,e)}),n.__c&&n.__c.__P===t&&(n.__e&&e.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=e)),n}function m(){this.__u=0,this.t=null,this.__b=null}function b(n){var t=n.__.__c;return t&&t.__a&&t.__a(n)}function y(n){var e,r,u;function o(o){if(e||(e=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return t.createElement(r,o)}return o.displayName="Lazy",o.__f=!0,o}function _(){this.u=null,this.o=null}t.options.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&32&n.__u&&(n.type=null),d&&d(n)},(m.prototype=new t.Component).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=b(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(c):c())};e.__R=i;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=p(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.t.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},m.prototype.componentWillUnmount=function(){this.t=[]},m.prototype.render=function(n,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),u=this.__v.__k[0].__c;this.__v.__k[0]=v(this.__b,r,u.__O=u.__P)}this.__b=null}var o=e.__a&&t.createElement(t.Fragment,null,n.fallback);return o&&(o.__u&=-33),[t.createElement(t.Fragment,null,e.__a?null:n.children),o]};var g=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]>>1,1),e.i.removeChild(n)}}),t.render(t.createElement(S,{context:e.context},n.__v),e.l)}function E(n,e){var r=t.createElement(C,{__v:n,i:e});return r.containerInfo=e,r}(_.prototype=new t.Component).__a=function(n){var t=this,e=b(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),g(t,n,r)):u()};e?e(o):o()}},_.prototype.render=function(n){this.u=null,this.o=new Map;var e=t.toChildArray(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&e.reverse();for(var r=e.length;r--;)this.o.set(e[r],this.u=[1,0,this.u]);return n.children},_.prototype.componentDidUpdate=_.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){g(n,e,t)})};var O="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,w=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,x=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,R=/[A-Z0-9]/g,j="undefined"!=typeof document,N=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function T(n,e,r){return null==e.__k&&(e.textContent=""),t.render(n,e),"function"==typeof r&&r(),n?n.__c:null}function k(n,e,r){return t.hydrate(n,e),"function"==typeof r&&r(),n?n.__c:null}t.Component.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(n){Object.defineProperty(t.Component.prototype,n,{configurable:!0,get:function(){return this["UNSAFE_"+n]},set:function(t){Object.defineProperty(this,n,{configurable:!0,writable:!0,value:t})}})});var A=t.options.event;function F(){}function I(){return this.cancelBubble}function L(){return this.defaultPrevented}t.options.event=function(n){return A&&(n=A(n)),n.persist=F,n.isPropagationStopped=I,n.isDefaultPrevented=L,n.nativeEvent=n};var U,D={enumerable:!1,configurable:!0,get:function(){return this.class}},M=t.options.vnode;t.options.vnode=function(n){"string"==typeof n.type&&function(n){var e=n.props,r=n.type,u={};for(var o in e){var i=e[o];if(!("value"===o&&"defaultValue"in e&&null==i||j&&"children"===o&&"noscript"===r||"class"===o||"className"===o)){var c=o.toLowerCase();"defaultValue"===o&&"value"in e&&null==e.value?o="value":"download"===o&&!0===i?i="":"ondoubleclick"===c?o="ondblclick":"onchange"!==c||"input"!==r&&"textarea"!==r||N(e.type)?"onfocus"===c?o="onfocusin":"onblur"===c?o="onfocusout":x.test(o)?o=c:-1===r.indexOf("-")&&w.test(o)?o=o.replace(R,"-$&").toLowerCase():null===i&&(i=void 0):c=o="oninput","oninput"===c&&u[o=c]&&(o="oninputCapture"),u[o]=i}}"select"==r&&u.multiple&&Array.isArray(u.value)&&(u.value=t.toChildArray(e.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==r&&null!=u.defaultValue&&(u.value=t.toChildArray(e.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),e.class&&!e.className?(u.class=e.class,Object.defineProperty(u,"className",D)):(e.className&&!e.class||e.class&&e.className)&&(u.class=u.className=e.className),n.props=u}(n),n.$$typeof=O,M&&M(n)};var V=t.options.__r;t.options.__r=function(n){V&&V(n),U=n.__c};var W=t.options.diffed;t.options.diffed=function(n){W&&W(n);var t=n.props,e=n.__e;null!=e&&"textarea"===n.type&&"value"in t&&t.value!==e.value&&(e.value=null==t.value?"":t.value),U=null};var P={ReactCurrentDispatcher:{current:{readContext:function(n){return U.__n[n.__c].props.value}}}},z="17.0.2";function B(n){return t.createElement.bind(null,n)}function q(n){return!!n&&n.$$typeof===O}function H(n){return q(n)&&n.type===t.Fragment}function Z(n){return q(n)?t.cloneElement.apply(null,arguments):n}function Y(n){return!!n.__k&&(t.render(null,n),!0)}function $(n){return n&&(n.base||1===n.nodeType&&n)||null}var G=function(n,t){return n(t)},J=function(n,t){return n(t)},K=t.Fragment;function Q(n){n()}function X(n){return n}function nn(){return[!1,Q]}var tn=e.useLayoutEffect,en=q;function rn(n,t){var r=t(),u=e.useState({h:{__:r,v:t}}),o=u[0].h,i=u[1];return e.useLayoutEffect(function(){o.__=r,o.v=t,un(o)&&i({h:o})},[n,r,t]),e.useEffect(function(){return un(o)&&i({h:o}),n(function(){un(o)&&i({h:o})})},[n]),r}function un(n){var t,e,r=n.v,u=n.__;try{var o=r();return!((t=u)===(e=o)&&(0!==t||1/t==1/e)||t!=t&&e!=e)}catch(n){return!0}}var on={useState:e.useState,useId:e.useId,useReducer:e.useReducer,useEffect:e.useEffect,useLayoutEffect:e.useLayoutEffect,useInsertionEffect:tn,useTransition:nn,useDeferredValue:X,useSyncExternalStore:rn,startTransition:Q,useRef:e.useRef,useImperativeHandle:e.useImperativeHandle,useMemo:e.useMemo,useCallback:e.useCallback,useContext:e.useContext,useDebugValue:e.useDebugValue,version:z,Children:s,render:T,hydrate:k,unmountComponentAtNode:Y,createPortal:E,createElement:t.createElement,createContext:t.createContext,createFactory:B,cloneElement:Z,createRef:t.createRef,Fragment:t.Fragment,isValidElement:q,isElement:en,isFragment:H,findDOMNode:$,Component:t.Component,PureComponent:o,memo:i,forwardRef:f,flushSync:J,unstable_batchedUpdates:G,StrictMode:K,Suspense:m,SuspenseList:_,lazy:y,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:P};Object.defineProperty(n,"Component",{enumerable:!0,get:function(){return t.Component}}),Object.defineProperty(n,"Fragment",{enumerable:!0,get:function(){return t.Fragment}}),Object.defineProperty(n,"createContext",{enumerable:!0,get:function(){return t.createContext}}),Object.defineProperty(n,"createElement",{enumerable:!0,get:function(){return t.createElement}}),Object.defineProperty(n,"createRef",{enumerable:!0,get:function(){return t.createRef}}),n.Children=s,n.PureComponent=o,n.StrictMode=K,n.Suspense=m,n.SuspenseList=_,n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=P,n.cloneElement=Z,n.createFactory=B,n.createPortal=E,n.default=on,n.findDOMNode=$,n.flushSync=J,n.forwardRef=f,n.hydrate=k,n.isElement=en,n.isFragment=H,n.isValidElement=q,n.lazy=y,n.memo=i,n.render=T,n.startTransition=Q,n.unmountComponentAtNode=Y,n.unstable_batchedUpdates=G,n.useDeferredValue=X,n.useInsertionEffect=tn,n.useSyncExternalStore=rn,n.useTransition=nn,n.version=z,Object.keys(e).forEach(function(t){"default"===t||n.hasOwnProperty(t)||Object.defineProperty(n,t,{enumerable:!0,get:function(){return e[t]}})})}); +!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("preact"),require("preact/hooks")):"function"==typeof define&&define.amd?define(["exports","preact","preact/hooks"],e):e((n||self).preactCompat={},n.preact,n.preactHooks)}(this,function(n,e,t){function r(n,e){for(var t in e)n[t]=e[t];return n}function u(n,e){for(var t in n)if("__source"!==t&&!(t in e))return!0;for(var r in e)if("__source"!==r&&n[r]!==e[r])return!0;return!1}function o(n,e){var r=e(),u=t.useState({t:{__:r,u:e}}),o=u[0].t,l=u[1];return t.useLayoutEffect(function(){o.__=r,o.u=e,i(o)&&l({t:o})},[n,r,e]),t.useEffect(function(){return i(o)&&l({t:o}),n(function(){i(o)&&l({t:o})})},[n]),r}function i(n){var e,t,r=n.u,u=n.__;try{var o=r();return!((e=u)===(t=o)&&(0!==e||1/e==1/t)||e!=e&&t!=t)}catch(n){return!0}}function l(n){n()}function c(n){return n}function f(){return[!1,l]}var a=t.useLayoutEffect;function s(n,e){this.props=n,this.context=e}function h(n,t){function r(n){var e=this.props.ref,r=e==n.ref;return!r&&e&&(e.call?e(null):e.current=null),t?!t(this.props,n)||!r:u(this.props,n)}function o(t){return this.shouldComponentUpdate=r,e.createElement(n,t)}return o.displayName="Memo("+(n.displayName||n.name)+")",o.prototype.isReactComponent=!0,o.__f=!0,o.type=n,o}(s.prototype=new e.Component).isPureReactComponent=!0,s.prototype.shouldComponentUpdate=function(n,e){return u(this.props,n)||u(this.state,e)};var d=e.options.__b;e.options.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),d&&d(n)};var v="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function m(n){function e(e){var t=r({},e);return delete t.ref,n(t,e.ref||null)}return e.$$typeof=v,e.render=n,e.prototype.isReactComponent=e.__f=!0,e.displayName="ForwardRef("+(n.displayName||n.name)+")",e}var p=function(n,t){return null==n?null:e.toChildArray(e.toChildArray(n).map(t))},b={map:p,forEach:p,count:function(n){return n?e.toChildArray(n).length:0},only:function(n){var t=e.toChildArray(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:e.toChildArray},y=e.options.__e;e.options.__e=function(n,e,t,r){if(n.then)for(var u,o=e;o=o.__;)if((u=o.__c)&&u.__c)return null==e.__e&&(e.__e=t.__e,e.__k=t.__k),u.__c(n,e);y(n,e,t,r)};var _=e.options.unmount;function g(n,e,t){return n&&(n.__c&&n.__c.__H&&(n.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),n.__c.__H=null),null!=(n=r({},n)).__c&&(n.__c.__P===t&&(n.__c.__P=e),n.__c.__e=!0,n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return g(n,e,t)})),n}function S(n,e,t){return n&&t&&(n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return S(n,e,t)}),n.__c&&n.__c.__P===e&&(n.__e&&t.appendChild(n.__e),n.__c.__e=!0,n.__c.__P=t)),n}function E(){this.__u=0,this.o=null,this.__b=null}function C(n){if(!n.__)return null;var e=n.__.__c;return e&&e.__a&&e.__a(n)}function R(n){var t,r,u,o=null;function i(i){if(t||(t=n()).then(function(n){n&&(o=n.default||n),u=!0},function(n){r=n,u=!0}),r)throw r;if(!u)throw t;return o?e.createElement(o,i):null}return i.displayName="Lazy",i.__f=!0,i}function x(){this.i=null,this.l=null}e.options.unmount=function(n){var e=n.__c;e&&(e.__z=!0),e&&e.__R&&e.__R(),e&&32&n.__u&&(n.type=null),_&&_(n)},(E.prototype=new e.Component).__c=function(n,e){var t=e.__c,r=this;null==r.o&&(r.o=[]),r.o.push(t);var u=C(r.__v),o=!1,i=function(){o||r.__z||(o=!0,t.__R=null,u?u(c):c())};t.__R=i;var l=t.__P;t.__P=null;var c=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=S(n,n.__c.__P,n.__c.__O)}var e;for(r.setState({__a:r.__b=null});e=r.o.pop();)e.__P=l,e.forceUpdate()}};r.__u++||32&e.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(i,i)},E.prototype.componentWillUnmount=function(){this.o=[]},E.prototype.render=function(n,t){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),u=this.__v.__k[0].__c;this.__v.__k[0]=g(this.__b,r,u.__O=u.__P)}this.__b=null}var o=t.__a&&e.createElement(e.Fragment,null,n.fallback);return o&&(o.__u&=-33),[e.createElement(e.Fragment,null,t.__a?null:n.children),o]};var O=function(n,e,t){if(++t[1]===t[0]&&n.l.delete(e),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.l.size))for(t=n.i;t;){for(;t.length>3;)t.pop()();if(t[1]>>1,1),t.h.removeChild(n)}}}e.render(e.createElement(w,{context:t.context},n.__v),t.v)}function k(n,t){var r=e.createElement(j,{__v:n,h:t});return r.containerInfo=t,r}(x.prototype=new e.Component).__a=function(n){var e=this,t=C(e.__v),r=e.l.get(n);return r[0]++,function(u){var o=function(){e.props.revealOrder?(r.push(u),O(e,n,r)):u()};t?t(o):o()}},x.prototype.render=function(n){this.i=null,this.l=new Map;var t=e.toChildArray(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var r=t.length;r--;)this.l.set(t[r],this.i=[1,0,this.i]);return n.children},x.prototype.componentDidUpdate=x.prototype.componentDidMount=function(){var n=this;this.l.forEach(function(e,t){O(n,t,e)})};var I="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,T=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,N=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,M=/[A-Z0-9]/g,A="undefined"!=typeof document,D=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/:/fil|che|ra/).test(n)};function L(n,t,r){return null==t.__k&&(t.textContent=""),e.render(n,t),"function"==typeof r&&r(),n?n.__c:null}function U(n,t,r){return e.hydrate(n,t),"function"==typeof r&&r(),n?n.__c:null}e.Component.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(n){Object.defineProperty(e.Component.prototype,n,{configurable:!0,get:function(){return this["UNSAFE_"+n]},set:function(e){Object.defineProperty(this,n,{configurable:!0,writable:!0,value:e})}})});var F=e.options.event;function V(){}function W(){return this.cancelBubble}function P(){return this.defaultPrevented}e.options.event=function(n){return F&&(n=F(n)),n.persist=V,n.isPropagationStopped=W,n.isDefaultPrevented=P,n.nativeEvent=n};var z,B={enumerable:!1,configurable:!0,get:function(){return this.class}},H=e.options.vnode;e.options.vnode=function(n){"string"==typeof n.type&&function(n){var t=n.props,r=n.type,u={},o=-1===r.indexOf("-");for(var i in t){var l=t[i];if(!("value"===i&&"defaultValue"in t&&null==l||A&&"children"===i&&"noscript"===r||"class"===i||"className"===i)){var c=i.toLowerCase();"defaultValue"===i&&"value"in t&&null==t.value?i="value":"download"===i&&!0===l?l="":"translate"===c&&"no"===l?l=!1:"o"===c[0]&&"n"===c[1]?"ondoubleclick"===c?i="ondblclick":"onchange"!==c||"input"!==r&&"textarea"!==r||D(t.type)?"onfocus"===c?i="onfocusin":"onblur"===c?i="onfocusout":N.test(i)&&(i=c):c=i="oninput":o&&T.test(i)?i=i.replace(M,"-$&").toLowerCase():null===l&&(l=void 0),"oninput"===c&&u[i=c]&&(i="oninputCapture"),u[i]=l}}"select"==r&&u.multiple&&Array.isArray(u.value)&&(u.value=e.toChildArray(t.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==r&&null!=u.defaultValue&&(u.value=e.toChildArray(t.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),t.class&&!t.className?(u.class=t.class,Object.defineProperty(u,"className",B)):(t.className&&!t.class||t.class&&t.className)&&(u.class=u.className=t.className),n.props=u}(n),n.$$typeof=I,H&&H(n)};var q=e.options.__r;e.options.__r=function(n){q&&q(n),z=n.__c};var Z=e.options.diffed;e.options.diffed=function(n){Z&&Z(n);var e=n.props,t=n.__e;null!=t&&"textarea"===n.type&&"value"in e&&e.value!==t.value&&(t.value=null==e.value?"":e.value),z=null};var Y={ReactCurrentDispatcher:{current:{readContext:function(n){return z.__n[n.__c].props.value},useCallback:t.useCallback,useContext:t.useContext,useDebugValue:t.useDebugValue,useDeferredValue:c,useEffect:t.useEffect,useId:t.useId,useImperativeHandle:t.useImperativeHandle,useInsertionEffect:a,useLayoutEffect:t.useLayoutEffect,useMemo:t.useMemo,useReducer:t.useReducer,useRef:t.useRef,useState:t.useState,useSyncExternalStore:o,useTransition:f}}},$="18.3.1";function G(n){return e.createElement.bind(null,n)}function J(n){return!!n&&n.$$typeof===I}function K(n){return J(n)&&n.type===e.Fragment}function Q(n){return!!n&&!!n.displayName&&("string"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith("Memo(")}function X(n){return J(n)?e.cloneElement.apply(null,arguments):n}function nn(n){return!!n.__k&&(e.render(null,n),!0)}function en(n){return n&&(n.base||1===n.nodeType&&n)||null}var tn=function(n,e){return n(e)},rn=function(n,e){return n(e)},un=e.Fragment,on=J,ln={useState:t.useState,useId:t.useId,useReducer:t.useReducer,useEffect:t.useEffect,useLayoutEffect:t.useLayoutEffect,useInsertionEffect:a,useTransition:f,useDeferredValue:c,useSyncExternalStore:o,startTransition:l,useRef:t.useRef,useImperativeHandle:t.useImperativeHandle,useMemo:t.useMemo,useCallback:t.useCallback,useContext:t.useContext,useDebugValue:t.useDebugValue,version:$,Children:b,render:L,hydrate:U,unmountComponentAtNode:nn,createPortal:k,createElement:e.createElement,createContext:e.createContext,createFactory:G,cloneElement:X,createRef:e.createRef,Fragment:e.Fragment,isValidElement:J,isElement:on,isFragment:K,isMemo:Q,findDOMNode:en,Component:e.Component,PureComponent:s,memo:h,forwardRef:m,flushSync:rn,unstable_batchedUpdates:tn,StrictMode:un,Suspense:E,SuspenseList:x,lazy:R,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Y};Object.defineProperty(n,"Component",{enumerable:!0,get:function(){return e.Component}}),Object.defineProperty(n,"Fragment",{enumerable:!0,get:function(){return e.Fragment}}),Object.defineProperty(n,"createContext",{enumerable:!0,get:function(){return e.createContext}}),Object.defineProperty(n,"createElement",{enumerable:!0,get:function(){return e.createElement}}),Object.defineProperty(n,"createRef",{enumerable:!0,get:function(){return e.createRef}}),n.Children=b,n.PureComponent=s,n.StrictMode=un,n.Suspense=E,n.SuspenseList=x,n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Y,n.cloneElement=X,n.createFactory=G,n.createPortal=k,n.default=ln,n.findDOMNode=en,n.flushSync=rn,n.forwardRef=m,n.hydrate=U,n.isElement=on,n.isFragment=K,n.isMemo=Q,n.isValidElement=J,n.lazy=R,n.memo=h,n.render=L,n.startTransition=l,n.unmountComponentAtNode=nn,n.unstable_batchedUpdates=tn,n.useDeferredValue=c,n.useInsertionEffect=a,n.useSyncExternalStore=o,n.useTransition=f,n.version=$,Object.keys(t).forEach(function(e){"default"===e||n.hasOwnProperty(e)||Object.defineProperty(n,e,{enumerable:!0,get:function(){return t[e]}})})}); //# sourceMappingURL=compat.umd.js.map diff --git a/node_modules/preact/compat/dist/compat.umd.js.map b/node_modules/preact/compat/dist/compat.umd.js.map index ccf0494..d2457c5 100644 --- a/node_modules/preact/compat/dist/compat.umd.js.map +++ b/node_modules/preact/compat/dist/compat.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"compat.umd.js","sources":["../src/util.js","../src/PureComponent.js","../src/memo.js","../src/forwardRef.js","../src/Children.js","../src/suspense.js","../src/suspense-list.js","../../src/constants.js","../src/portals.js","../src/render.js","../src/index.js"],"sourcesContent":["/**\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Check if two objects have a different shape\n * @param {object} a\n * @param {object} b\n * @returns {boolean}\n */\nexport function shallowDiffers(a, b) {\n\tfor (let i in a) if (i !== '__source' && !(i in b)) return true;\n\tfor (let i in b) if (i !== '__source' && a[i] !== b[i]) return true;\n\treturn false;\n}\n\n/**\n * Check if two values are the same value\n * @param {*} x\n * @param {*} y\n * @returns {boolean}\n */\nexport function is(x, y) {\n\treturn (x === y && (x !== 0 || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\n","import { Component } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Component class with a predefined `shouldComponentUpdate` implementation\n */\nexport function PureComponent(p) {\n\tthis.props = p;\n}\nPureComponent.prototype = new Component();\n// Some third-party libraries check if this property is present\nPureComponent.prototype.isPureReactComponent = true;\nPureComponent.prototype.shouldComponentUpdate = function (props, state) {\n\treturn shallowDiffers(this.props, props) || shallowDiffers(this.state, state);\n};\n","import { createElement } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Memoize a component, so that it only updates when the props actually have\n * changed. This was previously known as `React.pure`.\n * @param {import('./internal').FunctionComponent} c functional component\n * @param {(prev: object, next: object) => boolean} [comparer] Custom equality function\n * @returns {import('./internal').FunctionComponent}\n */\nexport function memo(c, comparer) {\n\tfunction shouldUpdate(nextProps) {\n\t\tlet ref = this.props.ref;\n\t\tlet updateRef = ref == nextProps.ref;\n\t\tif (!updateRef && ref) {\n\t\t\tref.call ? ref(null) : (ref.current = null);\n\t\t}\n\n\t\tif (!comparer) {\n\t\t\treturn shallowDiffers(this.props, nextProps);\n\t\t}\n\n\t\treturn !comparer(this.props, nextProps) || !updateRef;\n\t}\n\n\tfunction Memoed(props) {\n\t\tthis.shouldComponentUpdate = shouldUpdate;\n\t\treturn createElement(c, props);\n\t}\n\tMemoed.displayName = 'Memo(' + (c.displayName || c.name) + ')';\n\tMemoed.prototype.isReactComponent = true;\n\tMemoed._forwarded = true;\n\treturn Memoed;\n}\n","import { options } from 'preact';\nimport { assign } from './util';\n\nlet oldDiffHook = options._diff;\noptions._diff = vnode => {\n\tif (vnode.type && vnode.type._forwarded && vnode.ref) {\n\t\tvnode.props.ref = vnode.ref;\n\t\tvnode.ref = null;\n\t}\n\tif (oldDiffHook) oldDiffHook(vnode);\n};\n\nexport const REACT_FORWARD_SYMBOL =\n\t(typeof Symbol != 'undefined' &&\n\t\tSymbol.for &&\n\t\tSymbol.for('react.forward_ref')) ||\n\t0xf47;\n\n/**\n * Pass ref down to a child. This is mainly used in libraries with HOCs that\n * wrap components. Using `forwardRef` there is an easy way to get a reference\n * of the wrapped component instead of one of the wrapper itself.\n * @param {import('./index').ForwardFn} fn\n * @returns {import('./internal').FunctionComponent}\n */\nexport function forwardRef(fn) {\n\tfunction Forwarded(props) {\n\t\tlet clone = assign({}, props);\n\t\tdelete clone.ref;\n\t\treturn fn(clone, props.ref || null);\n\t}\n\n\t// mobx-react checks for this being present\n\tForwarded.$$typeof = REACT_FORWARD_SYMBOL;\n\t// mobx-react heavily relies on implementation details.\n\t// It expects an object here with a `render` property,\n\t// and prototype.render will fail. Without this\n\t// mobx-react throws.\n\tForwarded.render = Forwarded;\n\n\tForwarded.prototype.isReactComponent = Forwarded._forwarded = true;\n\tForwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')';\n\treturn Forwarded;\n}\n","import { toChildArray } from 'preact';\n\nconst mapFn = (children, fn) => {\n\tif (children == null) return null;\n\treturn toChildArray(toChildArray(children).map(fn));\n};\n\n// This API is completely unnecessary for Preact, so it's basically passthrough.\nexport const Children = {\n\tmap: mapFn,\n\tforEach: mapFn,\n\tcount(children) {\n\t\treturn children ? toChildArray(children).length : 0;\n\t},\n\tonly(children) {\n\t\tconst normalized = toChildArray(children);\n\t\tif (normalized.length !== 1) throw 'Children.only';\n\t\treturn normalized[0];\n\t},\n\ttoArray: toChildArray\n};\n","import { Component, createElement, options, Fragment } from 'preact';\nimport { MODE_HYDRATE } from '../../src/constants';\nimport { assign } from './util';\n\nconst oldCatchError = options._catchError;\noptions._catchError = function (error, newVNode, oldVNode, errorInfo) {\n\tif (error.then) {\n\t\t/** @type {import('./internal').Component} */\n\t\tlet component;\n\t\tlet vnode = newVNode;\n\n\t\tfor (; (vnode = vnode._parent); ) {\n\t\t\tif ((component = vnode._component) && component._childDidSuspend) {\n\t\t\t\tif (newVNode._dom == null) {\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t}\n\t\t\t\t// Don't call oldCatchError if we found a Suspense\n\t\t\t\treturn component._childDidSuspend(error, newVNode);\n\t\t\t}\n\t\t}\n\t}\n\toldCatchError(error, newVNode, oldVNode, errorInfo);\n};\n\nconst oldUnmount = options.unmount;\noptions.unmount = function (vnode) {\n\t/** @type {import('./internal').Component} */\n\tconst component = vnode._component;\n\tif (component && component._onResolve) {\n\t\tcomponent._onResolve();\n\t}\n\n\t// if the component is still hydrating\n\t// most likely it is because the component is suspended\n\t// we set the vnode.type as `null` so that it is not a typeof function\n\t// so the unmount will remove the vnode._dom\n\tif (component && vnode._flags & MODE_HYDRATE) {\n\t\tvnode.type = null;\n\t}\n\n\tif (oldUnmount) oldUnmount(vnode);\n};\n\nfunction detachedClone(vnode, detachedParent, parentDom) {\n\tif (vnode) {\n\t\tif (vnode._component && vnode._component.__hooks) {\n\t\t\tvnode._component.__hooks._list.forEach(effect => {\n\t\t\t\tif (typeof effect._cleanup == 'function') effect._cleanup();\n\t\t\t});\n\n\t\t\tvnode._component.__hooks = null;\n\t\t}\n\n\t\tvnode = assign({}, vnode);\n\t\tif (vnode._component != null) {\n\t\t\tif (vnode._component._parentDom === parentDom) {\n\t\t\t\tvnode._component._parentDom = detachedParent;\n\t\t\t}\n\t\t\tvnode._component = null;\n\t\t}\n\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tdetachedClone(child, detachedParent, parentDom)\n\t\t\t);\n\t}\n\n\treturn vnode;\n}\n\nfunction removeOriginal(vnode, detachedParent, originalParent) {\n\tif (vnode && originalParent) {\n\t\tvnode._original = null;\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tremoveOriginal(child, detachedParent, originalParent)\n\t\t\t);\n\n\t\tif (vnode._component) {\n\t\t\tif (vnode._component._parentDom === detachedParent) {\n\t\t\t\tif (vnode._dom) {\n\t\t\t\t\toriginalParent.appendChild(vnode._dom);\n\t\t\t\t}\n\t\t\t\tvnode._component._force = true;\n\t\t\t\tvnode._component._parentDom = originalParent;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn vnode;\n}\n\n// having custom inheritance instead of a class here saves a lot of bytes\nexport function Suspense() {\n\t// we do not call super here to golf some bytes...\n\tthis._pendingSuspensionCount = 0;\n\tthis._suspenders = null;\n\tthis._detachOnNextRender = null;\n}\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspense.prototype = new Component();\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {Promise} promise The thrown promise\n * @param {import('./internal').VNode} suspendingVNode The suspending component\n */\nSuspense.prototype._childDidSuspend = function (promise, suspendingVNode) {\n\tconst suspendingComponent = suspendingVNode._component;\n\n\t/** @type {import('./internal').SuspenseComponent} */\n\tconst c = this;\n\n\tif (c._suspenders == null) {\n\t\tc._suspenders = [];\n\t}\n\tc._suspenders.push(suspendingComponent);\n\n\tconst resolve = suspended(c._vnode);\n\n\tlet resolved = false;\n\tconst onResolved = () => {\n\t\tif (resolved) return;\n\n\t\tresolved = true;\n\t\tsuspendingComponent._onResolve = null;\n\n\t\tif (resolve) {\n\t\t\tresolve(onSuspensionComplete);\n\t\t} else {\n\t\t\tonSuspensionComplete();\n\t\t}\n\t};\n\n\tsuspendingComponent._onResolve = onResolved;\n\n\tconst onSuspensionComplete = () => {\n\t\tif (!--c._pendingSuspensionCount) {\n\t\t\t// If the suspension was during hydration we don't need to restore the\n\t\t\t// suspended children into the _children array\n\t\t\tif (c.state._suspended) {\n\t\t\t\tconst suspendedVNode = c.state._suspended;\n\t\t\t\tc._vnode._children[0] = removeOriginal(\n\t\t\t\t\tsuspendedVNode,\n\t\t\t\t\tsuspendedVNode._component._parentDom,\n\t\t\t\t\tsuspendedVNode._component._originalParentDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tc.setState({ _suspended: (c._detachOnNextRender = null) });\n\n\t\t\tlet suspended;\n\t\t\twhile ((suspended = c._suspenders.pop())) {\n\t\t\t\tsuspended.forceUpdate();\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * We do not set `suspended: true` during hydration because we want the actual markup\n\t * to remain on screen and hydrate it when the suspense actually gets resolved.\n\t * While in non-hydration cases the usual fallback -> component flow would occour.\n\t */\n\tif (\n\t\t!c._pendingSuspensionCount++ &&\n\t\t!(suspendingVNode._flags & MODE_HYDRATE)\n\t) {\n\t\tc.setState({ _suspended: (c._detachOnNextRender = c._vnode._children[0]) });\n\t}\n\tpromise.then(onResolved, onResolved);\n};\n\nSuspense.prototype.componentWillUnmount = function () {\n\tthis._suspenders = [];\n};\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {import('./internal').SuspenseComponent[\"props\"]} props\n * @param {import('./internal').SuspenseState} state\n */\nSuspense.prototype.render = function (props, state) {\n\tif (this._detachOnNextRender) {\n\t\t// When the Suspense's _vnode was created by a call to createVNode\n\t\t// (i.e. due to a setState further up in the tree)\n\t\t// it's _children prop is null, in this case we \"forget\" about the parked vnodes to detach\n\t\tif (this._vnode._children) {\n\t\t\tconst detachedParent = document.createElement('div');\n\t\t\tconst detachedComponent = this._vnode._children[0]._component;\n\t\t\tthis._vnode._children[0] = detachedClone(\n\t\t\t\tthis._detachOnNextRender,\n\t\t\t\tdetachedParent,\n\t\t\t\t(detachedComponent._originalParentDom = detachedComponent._parentDom)\n\t\t\t);\n\t\t}\n\n\t\tthis._detachOnNextRender = null;\n\t}\n\n\t// Wrap fallback tree in a VNode that prevents itself from being marked as aborting mid-hydration:\n\t/** @type {import('./internal').VNode} */\n\tconst fallback =\n\t\tstate._suspended && createElement(Fragment, null, props.fallback);\n\tif (fallback) fallback._flags &= ~MODE_HYDRATE;\n\n\treturn [\n\t\tcreateElement(Fragment, null, state._suspended ? null : props.children),\n\t\tfallback\n\t];\n};\n\n/**\n * Checks and calls the parent component's _suspended method, passing in the\n * suspended vnode. This is a way for a parent (e.g. SuspenseList) to get notified\n * that one of its children/descendants suspended.\n *\n * The parent MAY return a callback. The callback will get called when the\n * suspension resolves, notifying the parent of the fact.\n * Moreover, the callback gets function `unsuspend` as a parameter. The resolved\n * child descendant will not actually get unsuspended until `unsuspend` gets called.\n * This is a way for the parent to delay unsuspending.\n *\n * If the parent does not return a callback then the resolved vnode\n * gets unsuspended immediately when it resolves.\n *\n * @param {import('./internal').VNode} vnode\n * @returns {((unsuspend: () => void) => void)?}\n */\nexport function suspended(vnode) {\n\t/** @type {import('./internal').Component} */\n\tlet component = vnode._parent._component;\n\treturn component && component._suspended && component._suspended(vnode);\n}\n\nexport function lazy(loader) {\n\tlet prom;\n\tlet component;\n\tlet error;\n\n\tfunction Lazy(props) {\n\t\tif (!prom) {\n\t\t\tprom = loader();\n\t\t\tprom.then(\n\t\t\t\texports => {\n\t\t\t\t\tcomponent = exports.default || exports;\n\t\t\t\t},\n\t\t\t\te => {\n\t\t\t\t\terror = e;\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif (error) {\n\t\t\tthrow error;\n\t\t}\n\n\t\tif (!component) {\n\t\t\tthrow prom;\n\t\t}\n\n\t\treturn createElement(component, props);\n\t}\n\n\tLazy.displayName = 'Lazy';\n\tLazy._forwarded = true;\n\treturn Lazy;\n}\n","import { Component, toChildArray } from 'preact';\nimport { suspended } from './suspense.js';\n\n// Indexes to linked list nodes (nodes are stored as arrays to save bytes).\nconst SUSPENDED_COUNT = 0;\nconst RESOLVED_COUNT = 1;\nconst NEXT_NODE = 2;\n\n// Having custom inheritance instead of a class here saves a lot of bytes.\nexport function SuspenseList() {\n\tthis._next = null;\n\tthis._map = null;\n}\n\n// Mark one of child's earlier suspensions as resolved.\n// Some pending callbacks may become callable due to this\n// (e.g. the last suspended descendant gets resolved when\n// revealOrder === 'together'). Process those callbacks as well.\nconst resolve = (list, child, node) => {\n\tif (++node[RESOLVED_COUNT] === node[SUSPENDED_COUNT]) {\n\t\t// The number a child (or any of its descendants) has been suspended\n\t\t// matches the number of times it's been resolved. Therefore we\n\t\t// mark the child as completely resolved by deleting it from ._map.\n\t\t// This is used to figure out when *all* children have been completely\n\t\t// resolved when revealOrder is 'together'.\n\t\tlist._map.delete(child);\n\t}\n\n\t// If revealOrder is falsy then we can do an early exit, as the\n\t// callbacks won't get queued in the node anyway.\n\t// If revealOrder is 'together' then also do an early exit\n\t// if all suspended descendants have not yet been resolved.\n\tif (\n\t\t!list.props.revealOrder ||\n\t\t(list.props.revealOrder[0] === 't' && list._map.size)\n\t) {\n\t\treturn;\n\t}\n\n\t// Walk the currently suspended children in order, calling their\n\t// stored callbacks on the way. Stop if we encounter a child that\n\t// has not been completely resolved yet.\n\tnode = list._next;\n\twhile (node) {\n\t\twhile (node.length > 3) {\n\t\t\tnode.pop()();\n\t\t}\n\t\tif (node[RESOLVED_COUNT] < node[SUSPENDED_COUNT]) {\n\t\t\tbreak;\n\t\t}\n\t\tlist._next = node = node[NEXT_NODE];\n\t}\n};\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspenseList.prototype = new Component();\n\nSuspenseList.prototype._suspended = function (child) {\n\tconst list = this;\n\tconst delegated = suspended(list._vnode);\n\n\tlet node = list._map.get(child);\n\tnode[SUSPENDED_COUNT]++;\n\n\treturn unsuspend => {\n\t\tconst wrappedUnsuspend = () => {\n\t\t\tif (!list.props.revealOrder) {\n\t\t\t\t// Special case the undefined (falsy) revealOrder, as there\n\t\t\t\t// is no need to coordinate a specific order or unsuspends.\n\t\t\t\tunsuspend();\n\t\t\t} else {\n\t\t\t\tnode.push(unsuspend);\n\t\t\t\tresolve(list, child, node);\n\t\t\t}\n\t\t};\n\t\tif (delegated) {\n\t\t\tdelegated(wrappedUnsuspend);\n\t\t} else {\n\t\t\twrappedUnsuspend();\n\t\t}\n\t};\n};\n\nSuspenseList.prototype.render = function (props) {\n\tthis._next = null;\n\tthis._map = new Map();\n\n\tconst children = toChildArray(props.children);\n\tif (props.revealOrder && props.revealOrder[0] === 'b') {\n\t\t// If order === 'backwards' (or, well, anything starting with a 'b')\n\t\t// then flip the child list around so that the last child will be\n\t\t// the first in the linked list.\n\t\tchildren.reverse();\n\t}\n\t// Build the linked list. Iterate through the children in reverse order\n\t// so that `_next` points to the first linked list node to be resolved.\n\tfor (let i = children.length; i--; ) {\n\t\t// Create a new linked list node as an array of form:\n\t\t// \t[suspended_count, resolved_count, next_node]\n\t\t// where suspended_count and resolved_count are numeric counters for\n\t\t// keeping track how many times a node has been suspended and resolved.\n\t\t//\n\t\t// Note that suspended_count starts from 1 instead of 0, so we can block\n\t\t// processing callbacks until componentDidMount has been called. In a sense\n\t\t// node is suspended at least until componentDidMount gets called!\n\t\t//\n\t\t// Pending callbacks are added to the end of the node:\n\t\t// \t[suspended_count, resolved_count, next_node, callback_0, callback_1, ...]\n\t\tthis._map.set(children[i], (this._next = [1, 0, this._next]));\n\t}\n\treturn props.children;\n};\n\nSuspenseList.prototype.componentDidUpdate =\n\tSuspenseList.prototype.componentDidMount = function () {\n\t\t// Iterate through all children after mounting for two reasons:\n\t\t// 1. As each node[SUSPENDED_COUNT] starts from 1, this iteration increases\n\t\t// each node[RELEASED_COUNT] by 1, therefore balancing the counters.\n\t\t// The nodes can now be completely consumed from the linked list.\n\t\t// 2. Handle nodes that might have gotten resolved between render and\n\t\t// componentDidMount.\n\t\tthis._map.forEach((node, child) => {\n\t\t\tresolve(this, child, node);\n\t\t});\n\t};\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { createElement, render } from 'preact';\n\n/**\n * @param {import('../../src/index').RenderableProps<{ context: any }>} props\n */\nfunction ContextProvider(props) {\n\tthis.getChildContext = () => props.context;\n\treturn props.children;\n}\n\n/**\n * Portal component\n * @this {import('./internal').Component}\n * @param {object | null | undefined} props\n *\n * TODO: use createRoot() instead of fake root\n */\nfunction Portal(props) {\n\tconst _this = this;\n\tlet container = props._container;\n\n\t_this.componentWillUnmount = function () {\n\t\trender(null, _this._temp);\n\t\t_this._temp = null;\n\t\t_this._container = null;\n\t};\n\n\t// When we change container we should clear our old container and\n\t// indicate a new mount.\n\tif (_this._container && _this._container !== container) {\n\t\t_this.componentWillUnmount();\n\t}\n\n\tif (!_this._temp) {\n\t\t_this._container = container;\n\n\t\t// Create a fake DOM parent node that manages a subset of `container`'s children:\n\t\t_this._temp = {\n\t\t\tnodeType: 1,\n\t\t\tparentNode: container,\n\t\t\tchildNodes: [],\n\t\t\tappendChild(child) {\n\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t_this._container.appendChild(child);\n\t\t\t},\n\t\t\tinsertBefore(child, before) {\n\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t_this._container.appendChild(child);\n\t\t\t},\n\t\t\tremoveChild(child) {\n\t\t\t\tthis.childNodes.splice(this.childNodes.indexOf(child) >>> 1, 1);\n\t\t\t\t_this._container.removeChild(child);\n\t\t\t}\n\t\t};\n\t}\n\n\t// Render our wrapping element into temp.\n\trender(\n\t\tcreateElement(ContextProvider, { context: _this.context }, props._vnode),\n\t\t_this._temp\n\t);\n}\n\n/**\n * Create a `Portal` to continue rendering the vnode tree at a different DOM node\n * @param {import('./internal').VNode} vnode The vnode to render\n * @param {import('./internal').PreactElement} container The DOM node to continue rendering in to.\n */\nexport function createPortal(vnode, container) {\n\tconst el = createElement(Portal, { _vnode: vnode, _container: container });\n\tel.containerInfo = container;\n\treturn el;\n}\n","import {\n\trender as preactRender,\n\thydrate as preactHydrate,\n\toptions,\n\ttoChildArray,\n\tComponent\n} from 'preact';\n\nexport const REACT_ELEMENT_TYPE =\n\t(typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||\n\t0xeac7;\n\nconst CAMEL_PROPS =\n\t/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;\nconst ON_ANI = /^on(Ani|Tra|Tou|BeforeInp|Compo)/;\nconst CAMEL_REPLACE = /[A-Z0-9]/g;\n\nconst IS_DOM = typeof document !== 'undefined';\n\n// Input types for which onchange should not be converted to oninput.\n// type=\"file|checkbox|radio\", plus \"range\" in IE11.\n// (IE11 doesn't support Symbol, which we use here to turn `rad` into `ra` which matches \"range\")\nconst onChangeInputType = type =>\n\t(typeof Symbol != 'undefined' && typeof Symbol() == 'symbol'\n\t\t? /fil|che|rad/\n\t\t: /fil|che|ra/\n\t).test(type);\n\n// Some libraries like `react-virtualized` explicitly check for this.\nComponent.prototype.isReactComponent = {};\n\n// `UNSAFE_*` lifecycle hooks\n// Preact only ever invokes the unprefixed methods.\n// Here we provide a base \"fallback\" implementation that calls any defined UNSAFE_ prefixed method.\n// - If a component defines its own `componentDidMount()` (including via defineProperty), use that.\n// - If a component defines `UNSAFE_componentDidMount()`, `componentDidMount` is the alias getter/setter.\n// - If anything assigns to an `UNSAFE_*` property, the assignment is forwarded to the unprefixed property.\n// See https://github.com/preactjs/preact/issues/1941\n[\n\t'componentWillMount',\n\t'componentWillReceiveProps',\n\t'componentWillUpdate'\n].forEach(key => {\n\tObject.defineProperty(Component.prototype, key, {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn this['UNSAFE_' + key];\n\t\t},\n\t\tset(v) {\n\t\t\tObject.defineProperty(this, key, {\n\t\t\t\tconfigurable: true,\n\t\t\t\twritable: true,\n\t\t\t\tvalue: v\n\t\t\t});\n\t\t}\n\t});\n});\n\n/**\n * Proxy render() since React returns a Component reference.\n * @param {import('./internal').VNode} vnode VNode tree to render\n * @param {import('./internal').PreactElement} parent DOM node to render vnode tree into\n * @param {() => void} [callback] Optional callback that will be called after rendering\n * @returns {import('./internal').Component | null} The root component reference or null\n */\nexport function render(vnode, parent, callback) {\n\t// React destroys any existing DOM nodes, see #1727\n\t// ...but only on the first render, see #1828\n\tif (parent._children == null) {\n\t\tparent.textContent = '';\n\t}\n\n\tpreactRender(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nexport function hydrate(vnode, parent, callback) {\n\tpreactHydrate(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nlet oldEventHook = options.event;\noptions.event = e => {\n\tif (oldEventHook) e = oldEventHook(e);\n\n\te.persist = empty;\n\te.isPropagationStopped = isPropagationStopped;\n\te.isDefaultPrevented = isDefaultPrevented;\n\treturn (e.nativeEvent = e);\n};\n\nfunction empty() {}\n\nfunction isPropagationStopped() {\n\treturn this.cancelBubble;\n}\n\nfunction isDefaultPrevented() {\n\treturn this.defaultPrevented;\n}\n\nconst classNameDescriptorNonEnumberable = {\n\tenumerable: false,\n\tconfigurable: true,\n\tget() {\n\t\treturn this.class;\n\t}\n};\n\nfunction handleDomVNode(vnode) {\n\tlet props = vnode.props,\n\t\ttype = vnode.type,\n\t\tnormalizedProps = {};\n\n\tfor (let i in props) {\n\t\tlet value = props[i];\n\n\t\tif (\n\t\t\t(i === 'value' && 'defaultValue' in props && value == null) ||\n\t\t\t// Emulate React's behavior of not rendering the contents of noscript tags on the client.\n\t\t\t(IS_DOM && i === 'children' && type === 'noscript') ||\n\t\t\ti === 'class' ||\n\t\t\ti === 'className'\n\t\t) {\n\t\t\t// Skip applying value if it is null/undefined and we already set\n\t\t\t// a default value\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet lowerCased = i.toLowerCase();\n\t\tif (i === 'defaultValue' && 'value' in props && props.value == null) {\n\t\t\t// `defaultValue` is treated as a fallback `value` when a value prop is present but null/undefined.\n\t\t\t// `defaultValue` for Elements with no value prop is the same as the DOM defaultValue property.\n\t\t\ti = 'value';\n\t\t} else if (i === 'download' && value === true) {\n\t\t\t// Calling `setAttribute` with a truthy value will lead to it being\n\t\t\t// passed as a stringified value, e.g. `download=\"true\"`. React\n\t\t\t// converts it to an empty string instead, otherwise the attribute\n\t\t\t// value will be used as the file name and the file will be called\n\t\t\t// \"true\" upon downloading it.\n\t\t\tvalue = '';\n\t\t} else if (lowerCased === 'ondoubleclick') {\n\t\t\ti = 'ondblclick';\n\t\t} else if (\n\t\t\tlowerCased === 'onchange' &&\n\t\t\t(type === 'input' || type === 'textarea') &&\n\t\t\t!onChangeInputType(props.type)\n\t\t) {\n\t\t\tlowerCased = i = 'oninput';\n\t\t} else if (lowerCased === 'onfocus') {\n\t\t\ti = 'onfocusin';\n\t\t} else if (lowerCased === 'onblur') {\n\t\t\ti = 'onfocusout';\n\t\t} else if (ON_ANI.test(i)) {\n\t\t\ti = lowerCased;\n\t\t} else if (type.indexOf('-') === -1 && CAMEL_PROPS.test(i)) {\n\t\t\ti = i.replace(CAMEL_REPLACE, '-$&').toLowerCase();\n\t\t} else if (value === null) {\n\t\t\tvalue = undefined;\n\t\t}\n\n\t\t// Add support for onInput and onChange, see #3561\n\t\t// if we have an oninput prop already change it to oninputCapture\n\t\tif (lowerCased === 'oninput') {\n\t\t\ti = lowerCased;\n\t\t\tif (normalizedProps[i]) {\n\t\t\t\ti = 'oninputCapture';\n\t\t\t}\n\t\t}\n\n\t\tnormalizedProps[i] = value;\n\t}\n\n\t// Add support for array select values: \n\tif (\n\t\ttype == 'select' &&\n\t\tnormalizedProps.multiple &&\n\t\tArray.isArray(normalizedProps.value)\n\t) {\n\t\t// forEach() always returns undefined, which we abuse here to unset the value prop.\n\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\tchild.props.selected =\n\t\t\t\tnormalizedProps.value.indexOf(child.props.value) != -1;\n\t\t});\n\t}\n\n\t// Adding support for defaultValue in select tag\n\tif (type == 'select' && normalizedProps.defaultValue != null) {\n\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\tif (normalizedProps.multiple) {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.defaultValue.indexOf(child.props.value) != -1;\n\t\t\t} else {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.defaultValue == child.props.value;\n\t\t\t}\n\t\t});\n\t}\n\n\tif (props.class && !props.className) {\n\t\tnormalizedProps.class = props.class;\n\t\tObject.defineProperty(\n\t\t\tnormalizedProps,\n\t\t\t'className',\n\t\t\tclassNameDescriptorNonEnumberable\n\t\t);\n\t} else if (props.className && !props.class) {\n\t\tnormalizedProps.class = normalizedProps.className = props.className;\n\t} else if (props.class && props.className) {\n\t\tnormalizedProps.class = normalizedProps.className = props.className;\n\t}\n\n\tvnode.props = normalizedProps;\n}\n\nlet oldVNodeHook = options.vnode;\noptions.vnode = vnode => {\n\t// only normalize props on Element nodes\n\tif (typeof vnode.type === 'string') {\n\t\thandleDomVNode(vnode);\n\t}\n\n\tvnode.$$typeof = REACT_ELEMENT_TYPE;\n\n\tif (oldVNodeHook) oldVNodeHook(vnode);\n};\n\n// Only needed for react-relay\nlet currentComponent;\nconst oldBeforeRender = options._render;\noptions._render = function (vnode) {\n\tif (oldBeforeRender) {\n\t\toldBeforeRender(vnode);\n\t}\n\tcurrentComponent = vnode._component;\n};\n\nconst oldDiffed = options.diffed;\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.diffed = function (vnode) {\n\tif (oldDiffed) {\n\t\toldDiffed(vnode);\n\t}\n\n\tconst props = vnode.props;\n\tconst dom = vnode._dom;\n\n\tif (\n\t\tdom != null &&\n\t\tvnode.type === 'textarea' &&\n\t\t'value' in props &&\n\t\tprops.value !== dom.value\n\t) {\n\t\tdom.value = props.value == null ? '' : props.value;\n\t}\n\n\tcurrentComponent = null;\n};\n\n// This is a very very private internal function for React it\n// is used to sort-of do runtime dependency injection.\nexport const __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = {\n\tReactCurrentDispatcher: {\n\t\tcurrent: {\n\t\t\treadContext(context) {\n\t\t\t\treturn currentComponent._globalContext[context._id].props.value;\n\t\t\t},\n\t\t\tuseCallback,\n\t\t\tuseContext,\n\t\t\tuseDebugValue,\n\t\t\tuseDeferredValue,\n\t\t\tuseEffect,\n\t\t\tuseId,\n\t\t\tuseImperativeHandle,\n\t\t\tuseInsertionEffect,\n\t\t\tuseLayoutEffect,\n\t\t\tuseMemo,\n\t\t\t// useMutableSource, // experimental-only and replaced by uSES, likely not worth supporting\n\t\t\tuseReducer,\n\t\t\tuseRef,\n\t\t\tuseState,\n\t\t\tuseSyncExternalStore,\n\t\t\tuseTransition\n\t\t}\n\t}\n};\n","import {\n\tcreateElement,\n\trender as preactRender,\n\tcloneElement as preactCloneElement,\n\tcreateRef,\n\tComponent,\n\tcreateContext,\n\tFragment\n} from 'preact';\nimport {\n\tuseState,\n\tuseId,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue\n} from 'preact/hooks';\nimport {\n\tuseInsertionEffect,\n\tstartTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tuseTransition\n} from './hooks';\nimport { PureComponent } from './PureComponent';\nimport { memo } from './memo';\nimport { forwardRef } from './forwardRef';\nimport { Children } from './Children';\nimport { Suspense, lazy } from './suspense';\nimport { SuspenseList } from './suspense-list';\nimport { createPortal } from './portals';\nimport {\n\thydrate,\n\trender,\n\tREACT_ELEMENT_TYPE,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n} from './render';\n\nconst version = '18.3.1'; // trick libraries to think we are react\n\n/**\n * Legacy version of createElement.\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component constructor\n */\nfunction createFactory(type) {\n\treturn createElement.bind(null, type);\n}\n\n/**\n * Check if the passed element is a valid (p)react node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isValidElement(element) {\n\treturn !!element && element.$$typeof === REACT_ELEMENT_TYPE;\n}\n\n/**\n * Check if the passed element is a Fragment node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isFragment(element) {\n\treturn isValidElement(element) && element.type === Fragment;\n}\n\n/**\n * Check if the passed element is a Memo node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isMemo(element) {\n\treturn (\n\t\t!!element &&\n\t\t!!element.displayName &&\n\t\t(typeof element.displayName === 'string' ||\n\t\t\telement.displayName instanceof String) &&\n\t\telement.displayName.startsWith('Memo(')\n\t);\n}\n\n/**\n * Wrap `cloneElement` to abort if the passed element is not a valid element and apply\n * all vnode normalizations.\n * @param {import('./internal').VNode} element The vnode to clone\n * @param {object} props Props to add when cloning\n * @param {Array} rest Optional component children\n */\nfunction cloneElement(element) {\n\tif (!isValidElement(element)) return element;\n\treturn preactCloneElement.apply(null, arguments);\n}\n\n/**\n * Remove a component tree from the DOM, including state and event handlers.\n * @param {import('./internal').PreactElement} container\n * @returns {boolean}\n */\nfunction unmountComponentAtNode(container) {\n\tif (container._children) {\n\t\tpreactRender(null, container);\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n/**\n * Get the matching DOM node for a component\n * @param {import('./internal').Component} component\n * @returns {import('./internal').PreactElement | null}\n */\nfunction findDOMNode(component) {\n\treturn (\n\t\t(component &&\n\t\t\t(component.base || (component.nodeType === 1 && component))) ||\n\t\tnull\n\t);\n}\n\n/**\n * Deprecated way to control batched rendering inside the reconciler, but we\n * already schedule in batches inside our rendering code\n * @template Arg\n * @param {(arg: Arg) => void} callback function that triggers the updated\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n */\n// eslint-disable-next-line camelcase\nconst unstable_batchedUpdates = (callback, arg) => callback(arg);\n\n/**\n * In React, `flushSync` flushes the entire tree and forces a rerender. It's\n * implmented here as a no-op.\n * @template Arg\n * @template Result\n * @param {(arg: Arg) => Result} callback function that runs before the flush\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n * @returns\n */\nconst flushSync = (callback, arg) => callback(arg);\n\n/**\n * Strict Mode is not implemented in Preact, so we provide a stand-in for it\n * that just renders its children without imposing any restrictions.\n */\nconst StrictMode = Fragment;\n\n// compat to react-is\nexport const isElement = isValidElement;\n\nexport * from 'preact/hooks';\nexport {\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tisFragment,\n\tisMemo,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tuseInsertionEffect,\n\tstartTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tuseTransition,\n\t// eslint-disable-next-line camelcase\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n\n// React copies the named exports to the default one.\nexport default {\n\tuseState,\n\tuseId,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseInsertionEffect,\n\tuseTransition,\n\tuseDeferredValue,\n\tuseSyncExternalStore,\n\tstartTransition,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue,\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tisElement,\n\tisFragment,\n\tisMemo,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n"],"names":["assign","obj","props","i","shallowDiffers","a","b","useSyncExternalStore","subscribe","getSnapshot","value","_useState","useState","_instance","__","_getSnapshot","forceUpdate","useLayoutEffect","didSnapshotChange","useEffect","inst","x","y","latestGetSnapshot","prevValue","nextValue","error","startTransition","cb","useDeferredValue","val","useTransition","useInsertionEffect","PureComponent","p","c","this","context","memo","comparer","shouldUpdate","nextProps","ref","updateRef","call","current","Memoed","shouldComponentUpdate","createElement","displayName","name","prototype","isReactComponent","__f","type","Component","isPureReactComponent","state","oldDiffHook","options","__b","vnode","REACT_FORWARD_SYMBOL","Symbol","for","forwardRef","fn","Forwarded","clone","$$typeof","render","mapFn","children","toChildArray","map","Children","forEach","count","length","only","normalized","toArray","oldCatchError","__e","newVNode","oldVNode","errorInfo","then","component","__c","__k","oldUnmount","unmount","detachedClone","detachedParent","parentDom","__H","effect","__P","child","removeOriginal","originalParent","__v","appendChild","Suspense","__u","_suspenders","suspended","__a","lazy","loader","prom","resolved","Lazy","exports","default","e","SuspenseList","_next","_map","__z","__R","promise","suspendingVNode","suspendingComponent","push","resolve","onResolved","onSuspensionComplete","originalParentDom","suspendedVNode","__O","setState","pop","componentWillUnmount","document","detachedComponent","fallback","Fragment","list","node","delete","revealOrder","size","ContextProvider","getChildContext","Portal","_this","container","_container","_temp","root","__m","nodeType","parentNode","childNodes","contains","namespaceURI","insertBefore","before","removeChild","splice","indexOf","createPortal","el","containerInfo","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","componentDidUpdate","componentDidMount","REACT_ELEMENT_TYPE","CAMEL_PROPS","ON_ANI","CAMEL_REPLACE","IS_DOM","onChangeInputType","test","parent","callback","textContent","preactRender","hydrate","preactHydrate","key","Object","defineProperty","configurable","v","writable","oldEventHook","event","empty","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","persist","nativeEvent","currentComponent","classNameDescriptorNonEnumberable","enumerable","class","oldVNodeHook","normalizedProps","isNonDashedType","lowerCased","toLowerCase","replace","undefined","multiple","Array","isArray","selected","defaultValue","className","handleDomVNode","oldBeforeRender","__r","oldDiffed","diffed","dom","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentDispatcher","readContext","__n","useCallback","useContext","useDebugValue","useId","useImperativeHandle","useMemo","useReducer","useRef","version","createFactory","bind","isValidElement","element","isFragment","isMemo","String","startsWith","cloneElement","preactCloneElement","apply","arguments","unmountComponentAtNode","findDOMNode","base","unstable_batchedUpdates","arg","flushSync","StrictMode","isElement","index","createContext","createRef"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/compat/package.json b/node_modules/preact/compat/package.json index 07b4669..81dd954 100644 --- a/node_modules/preact/compat/package.json +++ b/node_modules/preact/compat/package.json @@ -25,6 +25,7 @@ "require": "./dist/compat.js" }, "./client": { + "types": "./client.d.ts", "import": "./client.mjs", "require": "./client.js" }, @@ -45,6 +46,10 @@ "import": "./scheduler.mjs", "require": "./scheduler.js" }, + "./test-utils": { + "import": "./test-utils.mjs", + "require": "./test-utils.js" + }, "./package.json": "./package.json" } } diff --git a/node_modules/preact/compat/server.js b/node_modules/preact/compat/server.js index 7156872..ad24ef4 100644 --- a/node_modules/preact/compat/server.js +++ b/node_modules/preact/compat/server.js @@ -9,7 +9,28 @@ try { ); } +var renderToReadableStream; +try { + const mod = require('preact-render-to-string/stream'); + renderToReadableStream = mod.default || mod.renderToReadableStream || mod; +} catch (e) { + throw Error( + 'renderToReadableStream() error: update "preact-render-to-string" dependency to at least 6.5.0.' + ); +} +var renderToPipeableStream; +try { + const mod = require('preact-render-to-string/stream-node'); + renderToPipeableStream = mod.default || mod.renderToPipeableStream || mod; +} catch (e) { + throw Error( + 'renderToPipeableStream() error: update "preact-render-to-string" dependency to at least 6.5.0.' + ); +} + module.exports = { renderToString: renderToString, - renderToStaticMarkup: renderToString + renderToStaticMarkup: renderToString, + renderToPipeableStream: renderToPipeableStream, + renderToReadableStream: renderToReadableStream }; diff --git a/node_modules/preact/compat/server.mjs b/node_modules/preact/compat/server.mjs index 51c7a5d..9a3995a 100644 --- a/node_modules/preact/compat/server.mjs +++ b/node_modules/preact/compat/server.mjs @@ -1,11 +1,17 @@ import { renderToString } from 'preact-render-to-string'; +import { renderToPipeableStream } from 'preact-render-to-string/stream-node'; +import { renderToReadableStream } from 'preact-render-to-string/stream'; export { renderToString, renderToString as renderToStaticMarkup } from 'preact-render-to-string'; +export { renderToPipeableStream } from 'preact-render-to-string/stream-node'; +export { renderToReadableStream } from 'preact-render-to-string/stream'; export default { renderToString, - renderToStaticMarkup: renderToString + renderToStaticMarkup: renderToString, + renderToPipeableStream, + renderToReadableStream }; diff --git a/node_modules/preact/compat/src/PureComponent.js b/node_modules/preact/compat/src/PureComponent.js index 0d08f7a..380aeb0 100644 --- a/node_modules/preact/compat/src/PureComponent.js +++ b/node_modules/preact/compat/src/PureComponent.js @@ -4,8 +4,9 @@ import { shallowDiffers } from './util'; /** * Component class with a predefined `shouldComponentUpdate` implementation */ -export function PureComponent(p) { +export function PureComponent(p, c) { this.props = p; + this.context = c; } PureComponent.prototype = new Component(); // Some third-party libraries check if this property is present diff --git a/node_modules/preact/compat/src/forwardRef.js b/node_modules/preact/compat/src/forwardRef.js index 2579128..bb2c837 100644 --- a/node_modules/preact/compat/src/forwardRef.js +++ b/node_modules/preact/compat/src/forwardRef.js @@ -36,7 +36,7 @@ export function forwardRef(fn) { // It expects an object here with a `render` property, // and prototype.render will fail. Without this // mobx-react throws. - Forwarded.render = Forwarded; + Forwarded.render = fn; Forwarded.prototype.isReactComponent = Forwarded._forwarded = true; Forwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')'; diff --git a/node_modules/preact/compat/src/index.d.ts b/node_modules/preact/compat/src/index.d.ts index 6cbf585..e38b606 100644 --- a/node_modules/preact/compat/src/index.d.ts +++ b/node_modules/preact/compat/src/index.d.ts @@ -1,5 +1,7 @@ import * as _hooks from '../../hooks'; -import * as preact from '../../src'; +// Intentionally not using a relative path to take advantage of +// the TS version resolution mechanism +import * as preact from 'preact'; import { JSXInternal } from '../../src/jsx'; import * as _Suspense from './suspense'; import * as _SuspenseList from './suspense-list'; @@ -18,7 +20,6 @@ declare namespace React { export import PropRef = _hooks.PropRef; export import Reducer = _hooks.Reducer; export import Dispatch = _hooks.Dispatch; - export import Ref = _hooks.Ref; export import SetStateAction = _hooks.StateUpdater; export import useCallback = _hooks.useCallback; export import useContext = _hooks.useContext; @@ -46,14 +47,21 @@ declare namespace React { export import RefObject = preact.RefObject; export import Component = preact.Component; export import FunctionComponent = preact.FunctionComponent; + export import ComponentType = preact.ComponentType; + export import ComponentClass = preact.ComponentClass; export import FC = preact.FunctionComponent; export import createContext = preact.createContext; + export import Ref = preact.Ref; export import createRef = preact.createRef; export import Fragment = preact.Fragment; export import createElement = preact.createElement; export import cloneElement = preact.cloneElement; export import ComponentProps = preact.ComponentProps; export import ReactNode = preact.ComponentChild; + export import ReactElement = preact.VNode; + export import Consumer = preact.Consumer; + export import ErrorInfo = preact.ErrorInfo; + export import Key = preact.Key; // Suspense export import Suspense = _Suspense.Suspense; @@ -69,32 +77,126 @@ declare namespace React { export interface HTMLAttributes extends JSXInternal.HTMLAttributes {} export interface HTMLProps - extends JSXInternal.HTMLAttributes, + extends JSXInternal.AllHTMLAttributes, preact.ClassAttributes {} + export interface AllHTMLAttributes + extends JSXInternal.AllHTMLAttributes {} export import DetailedHTMLProps = JSXInternal.DetailedHTMLProps; export import CSSProperties = JSXInternal.CSSProperties; + export interface SVGProps extends JSXInternal.SVGAttributes, preact.ClassAttributes {} + interface SVGAttributes + extends JSXInternal.SVGAttributes {} + + interface ReactSVG extends JSXInternal.IntrinsicSVGElements {} + + export import AriaAttributes = JSXInternal.AriaAttributes; + + export import HTMLAttributeReferrerPolicy = JSXInternal.HTMLAttributeReferrerPolicy; + export import HTMLAttributeAnchorTarget = JSXInternal.HTMLAttributeAnchorTarget; + export import HTMLInputTypeAttribute = JSXInternal.HTMLInputTypeAttribute; + export import HTMLAttributeCrossOrigin = JSXInternal.HTMLAttributeCrossOrigin; + + export import AnchorHTMLAttributes = JSXInternal.AnchorHTMLAttributes; + export import AudioHTMLAttributes = JSXInternal.AudioHTMLAttributes; + export import AreaHTMLAttributes = JSXInternal.AreaHTMLAttributes; + export import BaseHTMLAttributes = JSXInternal.BaseHTMLAttributes; + export import BlockquoteHTMLAttributes = JSXInternal.BlockquoteHTMLAttributes; + export import ButtonHTMLAttributes = JSXInternal.ButtonHTMLAttributes; + export import CanvasHTMLAttributes = JSXInternal.CanvasHTMLAttributes; + export import ColHTMLAttributes = JSXInternal.ColHTMLAttributes; + export import ColgroupHTMLAttributes = JSXInternal.ColgroupHTMLAttributes; + export import DataHTMLAttributes = JSXInternal.DataHTMLAttributes; + export import DetailsHTMLAttributes = JSXInternal.DetailsHTMLAttributes; + export import DelHTMLAttributes = JSXInternal.DelHTMLAttributes; + export import DialogHTMLAttributes = JSXInternal.DialogHTMLAttributes; + export import EmbedHTMLAttributes = JSXInternal.EmbedHTMLAttributes; + export import FieldsetHTMLAttributes = JSXInternal.FieldsetHTMLAttributes; + export import FormHTMLAttributes = JSXInternal.FormHTMLAttributes; + export import IframeHTMLAttributes = JSXInternal.IframeHTMLAttributes; + export import ImgHTMLAttributes = JSXInternal.ImgHTMLAttributes; + export import InsHTMLAttributes = JSXInternal.InsHTMLAttributes; + export import InputHTMLAttributes = JSXInternal.InputHTMLAttributes; + export import KeygenHTMLAttributes = JSXInternal.KeygenHTMLAttributes; + export import LabelHTMLAttributes = JSXInternal.LabelHTMLAttributes; + export import LiHTMLAttributes = JSXInternal.LiHTMLAttributes; + export import LinkHTMLAttributes = JSXInternal.LinkHTMLAttributes; + export import MapHTMLAttributes = JSXInternal.MapHTMLAttributes; + export import MenuHTMLAttributes = JSXInternal.MenuHTMLAttributes; + export import MediaHTMLAttributes = JSXInternal.MediaHTMLAttributes; + export import MetaHTMLAttributes = JSXInternal.MetaHTMLAttributes; + export import MeterHTMLAttributes = JSXInternal.MeterHTMLAttributes; + export import QuoteHTMLAttributes = JSXInternal.QuoteHTMLAttributes; + export import ObjectHTMLAttributes = JSXInternal.ObjectHTMLAttributes; + export import OlHTMLAttributes = JSXInternal.OlHTMLAttributes; + export import OptgroupHTMLAttributes = JSXInternal.OptgroupHTMLAttributes; + export import OptionHTMLAttributes = JSXInternal.OptionHTMLAttributes; + export import OutputHTMLAttributes = JSXInternal.OutputHTMLAttributes; + export import ParamHTMLAttributes = JSXInternal.ParamHTMLAttributes; + export import ProgressHTMLAttributes = JSXInternal.ProgressHTMLAttributes; + export import SlotHTMLAttributes = JSXInternal.SlotHTMLAttributes; + export import ScriptHTMLAttributes = JSXInternal.ScriptHTMLAttributes; + export import SelectHTMLAttributes = JSXInternal.SelectHTMLAttributes; + export import SourceHTMLAttributes = JSXInternal.SourceHTMLAttributes; + export import StyleHTMLAttributes = JSXInternal.StyleHTMLAttributes; + export import TableHTMLAttributes = JSXInternal.TableHTMLAttributes; + export import TextareaHTMLAttributes = JSXInternal.TextareaHTMLAttributes; + export import TdHTMLAttributes = JSXInternal.TdHTMLAttributes; + export import ThHTMLAttributes = JSXInternal.ThHTMLAttributes; + export import TimeHTMLAttributes = JSXInternal.TimeHTMLAttributes; + export import TrackHTMLAttributes = JSXInternal.TrackHTMLAttributes; + export import VideoHTMLAttributes = JSXInternal.VideoHTMLAttributes; + // Events export import TargetedEvent = JSXInternal.TargetedEvent; export import ChangeEvent = JSXInternal.TargetedEvent; + export import ClipboardEvent = JSXInternal.TargetedClipboardEvent; + export import CompositionEvent = JSXInternal.TargetedCompositionEvent; + export import DragEvent = JSXInternal.TargetedDragEvent; + export import PointerEvent = JSXInternal.TargetedPointerEvent; + export import FocusEvent = JSXInternal.TargetedFocusEvent; + export import FormEvent = JSXInternal.TargetedEvent; + export import InvalidEvent = JSXInternal.TargetedEvent; + export import KeyboardEvent = JSXInternal.TargetedKeyboardEvent; + export import MouseEvent = JSXInternal.TargetedMouseEvent; + export import TouchEvent = JSXInternal.TargetedTouchEvent; + export import UIEvent = JSXInternal.TargetedUIEvent; + export import AnimationEvent = JSXInternal.TargetedAnimationEvent; + export import TransitionEvent = JSXInternal.TargetedTransitionEvent; + + // Event Handler Types + export import EventHandler = JSXInternal.EventHandler; export import ChangeEventHandler = JSXInternal.GenericEventHandler; + export import ClipboardEventHandler = JSXInternal.ClipboardEventHandler; + export import CompositionEventHandler = JSXInternal.CompositionEventHandler; + export import DragEventHandler = JSXInternal.DragEventHandler; + export import PointerEventHandler = JSXInternal.PointerEventHandler; + export import FocusEventHandler = JSXInternal.FocusEventHandler; + export import FormEventHandler = JSXInternal.GenericEventHandler; + export import InvalidEventHandler = JSXInternal.GenericEventHandler; + export import KeyboardEventHandler = JSXInternal.KeyboardEventHandler; + export import MouseEventHandler = JSXInternal.MouseEventHandler; + export import TouchEventHandler = JSXInternal.TouchEventHandler; + export import UIEventHandler = JSXInternal.UIEventHandler; + export import AnimationEventHandler = JSXInternal.AnimationEventHandler; + export import TransitionEventHandler = JSXInternal.TransitionEventHandler; export function createPortal( - vnode: preact.VNode, + vnode: preact.ComponentChildren, container: preact.ContainerNode ): preact.VNode; export function render( - vnode: preact.VNode, + vnode: preact.ComponentChild, parent: preact.ContainerNode, callback?: () => void ): Component | null; export function hydrate( - vnode: preact.VNode, + vnode: preact.ComponentChild, parent: preact.ContainerNode, callback?: () => void ): Component | null; @@ -111,14 +213,16 @@ declare namespace React { ) => preact.VNode; export function isValidElement(element: any): boolean; export function isFragment(element: any): boolean; + export function isMemo(element: any): boolean; export function findDOMNode( component: preact.Component | Element ): Element | null; - export abstract class PureComponent

extends preact.Component< - P, - S - > { + export abstract class PureComponent< + P = {}, + S = {}, + SS = any + > extends preact.Component { isPureReactComponent: boolean; } @@ -143,18 +247,26 @@ declare namespace React { ref?: preact.Ref | undefined; } + /** + * @deprecated Please use `ForwardRefRenderFunction` instead. + */ export interface ForwardFn

{ (props: P, ref: ForwardedRef): preact.ComponentChild; displayName?: string; } + export interface ForwardRefRenderFunction { + (props: P, ref: ForwardedRef): preact.ComponentChild; + displayName?: string; + } + export interface ForwardRefExoticComponent

extends preact.FunctionComponent

{ defaultProps?: Partial

| undefined; } export function forwardRef( - fn: ForwardFn + fn: ForwardRefRenderFunction ): preact.FunctionalComponent & { ref?: preact.Ref }>; export type PropsWithoutRef

= Omit; @@ -168,6 +280,37 @@ declare namespace React { | MutableRefObject | null; + export type ElementType< + P = any, + Tag extends keyof JSX.IntrinsicElements = keyof JSX.IntrinsicElements + > = + | { [K in Tag]: P extends JSX.IntrinsicElements[K] ? K : never }[Tag] + | ComponentType

; + + export type ComponentPropsWithoutRef = PropsWithoutRef< + ComponentProps + >; + + export type ComponentPropsWithRef = C extends new ( + props: infer P + ) => Component + ? PropsWithoutRef

& RefAttributes> + : ComponentProps; + + export type ElementRef< + C extends + | ForwardRefExoticComponent + | { new (props: any): Component } + | ((props: any) => ReactNode) + | keyof JSXInternal.IntrinsicElements + > = 'ref' extends keyof ComponentPropsWithRef + ? NonNullable['ref']> extends RefAttributes< + infer Instance + >['ref'] + ? Instance + : never + : never; + export function flushSync(fn: () => R): R; export function flushSync(fn: (a: A) => R, a: A): R; @@ -177,7 +320,7 @@ declare namespace React { ): void; export type PropsWithChildren

= P & { - children?: preact.ComponentChild | undefined; + children?: preact.ComponentChildren | undefined; }; export const Children: { diff --git a/node_modules/preact/compat/src/index.js b/node_modules/preact/compat/src/index.js index 830d34d..61fd2f3 100644 --- a/node_modules/preact/compat/src/index.js +++ b/node_modules/preact/compat/src/index.js @@ -20,6 +20,13 @@ import { useContext, useDebugValue } from 'preact/hooks'; +import { + useInsertionEffect, + startTransition, + useDeferredValue, + useSyncExternalStore, + useTransition +} from './hooks'; import { PureComponent } from './PureComponent'; import { memo } from './memo'; import { forwardRef } from './forwardRef'; @@ -27,7 +34,6 @@ import { Children } from './Children'; import { Suspense, lazy } from './suspense'; import { SuspenseList } from './suspense-list'; import { createPortal } from './portals'; -import { is } from './util'; import { hydrate, render, @@ -35,7 +41,7 @@ import { __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED } from './render'; -const version = '17.0.2'; // trick libraries to think we are react +const version = '18.3.1'; // trick libraries to think we are react /** * Legacy version of createElement. @@ -63,6 +69,21 @@ function isFragment(element) { return isValidElement(element) && element.type === Fragment; } +/** + * Check if the passed element is a Memo node. + * @param {*} element The element to check + * @returns {boolean} + */ +function isMemo(element) { + return ( + !!element && + !!element.displayName && + (typeof element.displayName === 'string' || + element.displayName instanceof String) && + element.displayName.startsWith('Memo(') + ); +} + /** * Wrap `cloneElement` to abort if the passed element is not a valid element and apply * all vnode normalizations. @@ -128,77 +149,9 @@ const flushSync = (callback, arg) => callback(arg); */ const StrictMode = Fragment; -export function startTransition(cb) { - cb(); -} - -export function useDeferredValue(val) { - return val; -} - -export function useTransition() { - return [false, startTransition]; -} - -// TODO: in theory this should be done after a VNode is diffed as we want to insert -// styles/... before it attaches -export const useInsertionEffect = useLayoutEffect; - // compat to react-is export const isElement = isValidElement; -/** - * This is taken from https://github.com/facebook/react/blob/main/packages/use-sync-external-store/src/useSyncExternalStoreShimClient.js#L84 - * on a high level this cuts out the warnings, ... and attempts a smaller implementation - * @typedef {{ _value: any; _getSnapshot: () => any }} Store - */ -export function useSyncExternalStore(subscribe, getSnapshot) { - const value = getSnapshot(); - - /** - * @typedef {{ _instance: Store }} StoreRef - * @type {[StoreRef, (store: StoreRef) => void]} - */ - const [{ _instance }, forceUpdate] = useState({ - _instance: { _value: value, _getSnapshot: getSnapshot } - }); - - useLayoutEffect(() => { - _instance._value = value; - _instance._getSnapshot = getSnapshot; - - if (didSnapshotChange(_instance)) { - forceUpdate({ _instance }); - } - }, [subscribe, value, getSnapshot]); - - useEffect(() => { - if (didSnapshotChange(_instance)) { - forceUpdate({ _instance }); - } - - return subscribe(() => { - if (didSnapshotChange(_instance)) { - forceUpdate({ _instance }); - } - }); - }, [subscribe]); - - return value; -} - -/** @type {(inst: Store) => boolean} */ -function didSnapshotChange(inst) { - const latestGetSnapshot = inst._getSnapshot; - const prevValue = inst._value; - try { - const nextValue = latestGetSnapshot(); - return !is(prevValue, nextValue); - } catch (error) { - return true; - } -} - export * from 'preact/hooks'; export { version, @@ -215,12 +168,18 @@ export { Fragment, isValidElement, isFragment, + isMemo, findDOMNode, Component, PureComponent, memo, forwardRef, flushSync, + useInsertionEffect, + startTransition, + useDeferredValue, + useSyncExternalStore, + useTransition, // eslint-disable-next-line camelcase unstable_batchedUpdates, StrictMode, @@ -263,6 +222,7 @@ export default { isValidElement, isElement, isFragment, + isMemo, findDOMNode, Component, PureComponent, diff --git a/node_modules/preact/compat/src/internal.d.ts b/node_modules/preact/compat/src/internal.d.ts index cb68ffa..efc5287 100644 --- a/node_modules/preact/compat/src/internal.d.ts +++ b/node_modules/preact/compat/src/internal.d.ts @@ -1,13 +1,14 @@ import { Component as PreactComponent, VNode as PreactVNode, - FunctionComponent as PreactFunctionComponent + FunctionComponent as PreactFunctionComponent, + PreactElement } from '../../src/internal'; import { SuspenseProps } from './suspense'; export { ComponentChildren } from '../..'; -export { PreactElement } from '../../src/internal'; +export { PreactElement }; export interface Component

extends PreactComponent { isReactComponent?: object; diff --git a/node_modules/preact/compat/src/memo.js b/node_modules/preact/compat/src/memo.js index e743199..84bc01e 100644 --- a/node_modules/preact/compat/src/memo.js +++ b/node_modules/preact/compat/src/memo.js @@ -30,5 +30,6 @@ export function memo(c, comparer) { Memoed.displayName = 'Memo(' + (c.displayName || c.name) + ')'; Memoed.prototype.isReactComponent = true; Memoed._forwarded = true; + Memoed.type = c; return Memoed; } diff --git a/node_modules/preact/compat/src/portals.js b/node_modules/preact/compat/src/portals.js index 521174c..f62b232 100644 --- a/node_modules/preact/compat/src/portals.js +++ b/node_modules/preact/compat/src/portals.js @@ -32,6 +32,12 @@ function Portal(props) { } if (!_this._temp) { + // Ensure the element has a mask for useId invocations + let root = _this._vnode; + while (root !== null && !root._mask && root._parent !== null) { + root = root._parent; + } + _this._container = container; // Create a fake DOM parent node that manages a subset of `container`'s children: @@ -39,13 +45,12 @@ function Portal(props) { nodeType: 1, parentNode: container, childNodes: [], - appendChild(child) { - this.childNodes.push(child); - _this._container.appendChild(child); - }, + _children: { _mask: root._mask }, + contains: () => true, + namespaceURI: container.namespaceURI, insertBefore(child, before) { this.childNodes.push(child); - _this._container.appendChild(child); + _this._container.insertBefore(child, before); }, removeChild(child) { this.childNodes.splice(this.childNodes.indexOf(child) >>> 1, 1); diff --git a/node_modules/preact/compat/src/render.js b/node_modules/preact/compat/src/render.js index b215c60..f18cbd8 100644 --- a/node_modules/preact/compat/src/render.js +++ b/node_modules/preact/compat/src/render.js @@ -5,6 +5,25 @@ import { toChildArray, Component } from 'preact'; +import { + useCallback, + useContext, + useDebugValue, + useEffect, + useId, + useImperativeHandle, + useLayoutEffect, + useMemo, + useReducer, + useRef, + useState +} from 'preact/hooks'; +import { + useDeferredValue, + useInsertionEffect, + useSyncExternalStore, + useTransition +} from './index'; export const REACT_ELEMENT_TYPE = (typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) || @@ -14,7 +33,6 @@ const CAMEL_PROPS = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/; const ON_ANI = /^on(Ani|Tra|Tou|BeforeInp|Compo)/; const CAMEL_REPLACE = /[A-Z0-9]/g; - const IS_DOM = typeof document !== 'undefined'; // Input types for which onchange should not be converted to oninput. @@ -116,6 +134,7 @@ function handleDomVNode(vnode) { type = vnode.type, normalizedProps = {}; + let isNonDashedType = type.indexOf('-') === -1; for (let i in props) { let value = props[i]; @@ -143,21 +162,25 @@ function handleDomVNode(vnode) { // value will be used as the file name and the file will be called // "true" upon downloading it. value = ''; - } else if (lowerCased === 'ondoubleclick') { - i = 'ondblclick'; - } else if ( - lowerCased === 'onchange' && - (type === 'input' || type === 'textarea') && - !onChangeInputType(props.type) - ) { - lowerCased = i = 'oninput'; - } else if (lowerCased === 'onfocus') { - i = 'onfocusin'; - } else if (lowerCased === 'onblur') { - i = 'onfocusout'; - } else if (ON_ANI.test(i)) { - i = lowerCased; - } else if (type.indexOf('-') === -1 && CAMEL_PROPS.test(i)) { + } else if (lowerCased === 'translate' && value === 'no') { + value = false; + } else if (lowerCased[0] === 'o' && lowerCased[1] === 'n') { + if (lowerCased === 'ondoubleclick') { + i = 'ondblclick'; + } else if ( + lowerCased === 'onchange' && + (type === 'input' || type === 'textarea') && + !onChangeInputType(props.type) + ) { + lowerCased = i = 'oninput'; + } else if (lowerCased === 'onfocus') { + i = 'onfocusin'; + } else if (lowerCased === 'onblur') { + i = 'onfocusout'; + } else if (ON_ANI.test(i)) { + i = lowerCased; + } + } else if (isNonDashedType && CAMEL_PROPS.test(i)) { i = i.replace(CAMEL_REPLACE, '-$&').toLowerCase(); } else if (value === null) { value = undefined; @@ -262,15 +285,29 @@ options.diffed = function (vnode) { }; // This is a very very private internal function for React it -// is used to sort-of do runtime dependency injection. So far -// only `react-relay` makes use of it. It uses it to read the -// context value. +// is used to sort-of do runtime dependency injection. export const __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = { ReactCurrentDispatcher: { current: { readContext(context) { return currentComponent._globalContext[context._id].props.value; - } + }, + useCallback, + useContext, + useDebugValue, + useDeferredValue, + useEffect, + useId, + useImperativeHandle, + useInsertionEffect, + useLayoutEffect, + useMemo, + // useMutableSource, // experimental-only and replaced by uSES, likely not worth supporting + useReducer, + useRef, + useState, + useSyncExternalStore, + useTransition } } }; diff --git a/node_modules/preact/compat/src/suspense-list.d.ts b/node_modules/preact/compat/src/suspense-list.d.ts index caa1eb6..0a3be0a 100644 --- a/node_modules/preact/compat/src/suspense-list.d.ts +++ b/node_modules/preact/compat/src/suspense-list.d.ts @@ -1,4 +1,6 @@ -import { Component, ComponentChild, ComponentChildren } from '../../src'; +// Intentionally not using a relative path to take advantage of +// the TS version resolution mechanism +import { Component, ComponentChild, ComponentChildren } from 'preact'; // // SuspenseList diff --git a/node_modules/preact/compat/src/suspense.d.ts b/node_modules/preact/compat/src/suspense.d.ts index 9bd0e74..65c2a93 100644 --- a/node_modules/preact/compat/src/suspense.d.ts +++ b/node_modules/preact/compat/src/suspense.d.ts @@ -1,9 +1,13 @@ -import { Component, ComponentChild, ComponentChildren } from '../../src'; +// Intentionally not using a relative path to take advantage of +// the TS version resolution mechanism +import { Component, ComponentChild, ComponentChildren } from 'preact'; // // Suspense/lazy // ----------------------------------- -export function lazy(loader: () => Promise<{ default: T } | T>): T; +export function lazy( + loader: () => Promise<{ default: T } | T> +): T extends { default: infer U } ? U : T; export interface SuspenseProps { children?: ComponentChildren; diff --git a/node_modules/preact/compat/src/suspense.js b/node_modules/preact/compat/src/suspense.js index 32cc3df..a962821 100644 --- a/node_modules/preact/compat/src/suspense.js +++ b/node_modules/preact/compat/src/suspense.js @@ -27,6 +27,7 @@ const oldUnmount = options.unmount; options.unmount = function (vnode) { /** @type {import('./internal').Component} */ const component = vnode._component; + if (component) component._unmounted = true; if (component && component._onResolve) { component._onResolve(); } @@ -57,6 +58,9 @@ function detachedClone(vnode, detachedParent, parentDom) { if (vnode._component._parentDom === parentDom) { vnode._component._parentDom = detachedParent; } + + vnode._component._force = true; + vnode._component = null; } @@ -126,7 +130,7 @@ Suspense.prototype._childDidSuspend = function (promise, suspendingVNode) { let resolved = false; const onResolved = () => { - if (resolved) return; + if (resolved || c._unmounted) return; resolved = true; suspendingComponent._onResolve = null; @@ -140,6 +144,12 @@ Suspense.prototype._childDidSuspend = function (promise, suspendingVNode) { suspendingComponent._onResolve = onResolved; + // Store and null _parentDom to prevent setState/forceUpdate from + // scheduling renders while suspended. Render would be a no-op anyway + // since renderComponent checks _parentDom, but this avoids queue churn. + const originalParentDom = suspendingComponent._parentDom; + suspendingComponent._parentDom = null; + const onSuspensionComplete = () => { if (!--c._pendingSuspensionCount) { // If the suspension was during hydration we don't need to restore the @@ -157,6 +167,8 @@ Suspense.prototype._childDidSuspend = function (promise, suspendingVNode) { let suspended; while ((suspended = c._suspenders.pop())) { + // Restore _parentDom before forceUpdate so render can proceed + suspended._parentDom = originalParentDom; suspended.forceUpdate(); } } @@ -233,6 +245,7 @@ Suspense.prototype.render = function (props, state) { * @returns {((unsuspend: () => void) => void)?} */ export function suspended(vnode) { + if (!vnode._parent) return null; /** @type {import('./internal').Component} */ let component = vnode._parent._component; return component && component._suspended && component._suspended(vnode); @@ -240,18 +253,23 @@ export function suspended(vnode) { export function lazy(loader) { let prom; - let component; + let component = null; let error; + let resolved; function Lazy(props) { if (!prom) { prom = loader(); prom.then( exports => { - component = exports.default || exports; + if (exports) { + component = exports.default || exports; + } + resolved = true; }, e => { error = e; + resolved = true; } ); } @@ -260,11 +278,11 @@ export function lazy(loader) { throw error; } - if (!component) { + if (!resolved) { throw prom; } - return createElement(component, props); + return component ? createElement(component, props) : null; } Lazy.displayName = 'Lazy'; diff --git a/node_modules/preact/debug/LICENSE b/node_modules/preact/debug/LICENSE deleted file mode 100644 index da5389a..0000000 --- a/node_modules/preact/debug/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2015-present Jason Miller - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/node_modules/preact/debug/dist/debug.js b/node_modules/preact/debug/dist/debug.js index 6effa84..125c3c4 100644 --- a/node_modules/preact/debug/dist/debug.js +++ b/node_modules/preact/debug/dist/debug.js @@ -1,2 +1,2 @@ -var n=require("preact");require("preact/devtools");var e={};function t(e){return e.type===n.Fragment?"Fragment":"function"==typeof e.type?e.type.displayName||e.type.name:"string"==typeof e.type?e.type:"#text"}var o=[],r=[];function a(){return o.length>0?o[o.length-1]:null}var i=!1;function s(e){return"function"==typeof e.type&&e.type!=n.Fragment}function c(n){for(var e=[n],o=n;null!=o.__o;)e.push(o.__o),o=o.__o;return e.reduce(function(n,e){n+=" in "+t(e);var o=e.__source;return o?n+=" (at "+o.fileName+":"+o.lineNumber+")":i||(i=!0,console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.")),n+"\n"},"")}var l="function"==typeof WeakMap;function u(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,u(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function f(n){return n?"function"==typeof n.type?null===n.__?null!==n.__e&&null!==n.__e.parentNode?n.__e.parentNode.localName:"":f(n.__):n.type:""}var p=n.Component.prototype.setState;function d(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}n.Component.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+c(a())),p.call(this,n,e)};var h=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,v=n.Component.prototype.forceUpdate;function y(n){var e=n.props,o=t(n),r="";for(var a in e)if(e.hasOwnProperty(a)&&"children"!==a){var i=e[a];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),r+=" "+a+"="+JSON.stringify(i)}var s=e.children;return"<"+o+r+(s&&s.length?">..":" />")}n.Component.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+c(a())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+c(this.__v)),v.call(this,n)},function(){!function(){var e=n.options.__b,t=n.options.diffed,a=n.options.__,i=n.options.vnode,c=n.options.__r;n.options.diffed=function(n){s(n)&&r.pop(),o.pop(),t&&t(n)},n.options.__b=function(n){s(n)&&o.push(n),e&&e(n)},n.options.__=function(n,e){r=[],a&&a(n,e)},n.options.vnode=function(n){n.__o=r.length>0?r[r.length-1]:null,i&&i(n)},n.options.__r=function(n){s(n)&&r.push(n),c&&c(n)}}();var a=!1,i=n.options.__b,p=n.options.diffed,v=n.options.vnode,m=n.options.__r,b=n.options.__e,w=n.options.__,g=n.options.__h,E=l?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];n.options.__e=function(n,e,o,r){if(e&&e.__c&&"function"==typeof n.then){var a=n;n=new Error("Missing Suspense. The throwing component was: "+t(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=a;break}if(n instanceof Error)throw n}try{(r=r||{}).componentStack=c(e),b(n,e,o,r),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},n.options.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var o;switch(e.nodeType){case 1:case 11:case 9:o=!0;break;default:o=!1}if(!o){var r=t(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+r+" />, "+e+");")}w&&w(n,e)},n.options.__b=function(n){var o=n.type;if(a=!0,void 0===o)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+y(n)+"\n\n"+c(n));if(null!=o&&"object"==typeof o){if(void 0!==o.__k&&void 0!==o.__e)throw new Error("Invalid type passed to createElement(): "+o+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+t(n)+" = "+y(o)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+c(n));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(o)?"array":o))}if(void 0!==n.ref&&"function"!=typeof n.ref&&"object"!=typeof n.ref&&!("$$typeof"in n))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof n.ref+"] instead\n"+y(n)+"\n\n"+c(n));if("string"==typeof n.type)for(var r in n.props)if("o"===r[0]&&"n"===r[1]&&"function"!=typeof n.props[r]&&null!=n.props[r])throw new Error("Component's \""+r+'" property should be a function, but got ['+typeof n.props[r]+"] instead\n"+y(n)+"\n\n"+c(n));if("function"==typeof n.type&&n.type.propTypes){if("Lazy"===n.type.displayName&&E&&!E.lazyPropTypes.has(n.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var l=n.type();E.lazyPropTypes.set(n.type,!0),console.warn(s+"Component wrapped in lazy() is "+t(l))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var u=n.props;n.type.__f&&delete(u=function(n,e){for(var t in e)n[t]=e[t];return n}({},u)).ref,function(n,t,o,r,a){Object.keys(n).forEach(function(o){var i;try{i=n[o](t,o,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in e)&&(e[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(n.type.propTypes,u,0,t(n),function(){return c(n)})}i&&i(n)},n.options.__r=function(n){m&&m(n),a=!0},n.options.__h=function(n,e,t){if(!n||!a)throw new Error("Hook can only be invoked from render methods.");g&&g(n,e,t)};var _=function(n,e){return{get:function(){var t="get"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var t="set"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:_("nodeName","use vnode.type"),attributes:_("attributes","use vnode.props"),children:_("children","use vnode.props.children")},T=Object.create({},I);n.options.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var t=n.props={};for(var o in e){var r=e[o];"__source"===o?n.__source=r:"__self"===o?n.__self=r:t[o]=r}}n.__proto__=T,v&&v(n)},n.options.diffed=function(n){var e,o=n.type,r=n.__;if(n.__k&&n.__k.forEach(function(e){if("object"==typeof e&&e&&void 0===e.type){var t=Object.keys(e).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+t+"}.\n\n"+c(n))}}),"string"==typeof o&&(d(o)||"p"===o)){var i=f(r);if(""!==i)"table"===o&&"td"!==i&&d(i)?(console.log(i,r.__e),console.error("Improper nesting of table. Your should not have a table-node parent."+y(n)+"\n\n"+c(n))):"thead"!==o&&"tfoot"!==o&&"tbody"!==o||"table"===i?"tr"===o&&"thead"!==i&&"tfoot"!==i&&"tbody"!==i&&"table"!==i?console.error("Improper nesting of table. Your should have a parent."+y(n)+"\n\n"+c(n)):"td"===o&&"tr"!==i?console.error("Improper nesting of table. Your parent."+y(n)+"\n\n"+c(n)):"th"===o&&"tr"!==i&&console.error("Improper nesting of table. Your ."+y(n)+"\n\n"+c(n)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+y(n)+"\n\n"+c(n));else if("p"===o){var s=u(n).filter(function(n){return h.test(n)});s.length&&console.error("Improper nesting of paragraph. Your

should not have "+s.join(", ")+"as child-elements."+y(n)+"\n\n"+c(n))}}if(a=!1,p&&p(n),null!=n.__k)for(var l=[],v=0;v0?o[o.length-1]:null}var i=!0;function s(e){return"function"==typeof e.type&&e.type!=n.Fragment}function c(n){for(var e=[n],o=n;null!=o.__o;)e.push(o.__o),o=o.__o;return e.reduce(function(n,e){n+=" in "+t(e);var o=e.__source;return o?n+=" (at "+o.fileName+":"+o.lineNumber+")":i&&console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons."),i=!1,n+"\n"},"")}var l="function"==typeof WeakMap;function u(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,u(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function f(n){return n?"function"==typeof n.type?null==n.__?null!=n.__e&&null!=n.__e.parentNode?n.__e.parentNode.localName:"":f(n.__):n.type:""}var d=n.Component.prototype.setState;function p(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}n.Component.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+c(a())),d.call(this,n,e)};var h=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,v=n.Component.prototype.forceUpdate;function y(n){var e=n.props,o=t(n),r="";for(var a in e)if(e.hasOwnProperty(a)&&"children"!==a){var i=e[a];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),r+=" "+a+"="+JSON.stringify(i)}var s=e.children;return"<"+o+r+(s&&s.length?">..":" />")}n.Component.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+c(a())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+c(this.__v)),v.call(this,n)},n.options.__m=function(n,e){var t=n.type,o=e.map(function(n){return n&&n.localName}).filter(Boolean);console.error('Expected a DOM node of type "'+t+'" but found "'+o.join(", ")+"\" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\n\n"+c(n))},function(){!function(){var e=n.options.__b,t=n.options.diffed,a=n.options.__,i=n.options.vnode,c=n.options.__r;n.options.diffed=function(n){s(n)&&r.pop(),o.pop(),t&&t(n)},n.options.__b=function(n){s(n)&&o.push(n),e&&e(n)},n.options.__=function(n,e){r=[],a&&a(n,e)},n.options.vnode=function(n){n.__o=r.length>0?r[r.length-1]:null,i&&i(n)},n.options.__r=function(n){s(n)&&r.push(n),c&&c(n)}}();var a=!1,i=n.options.__b,d=n.options.diffed,v=n.options.vnode,m=n.options.__r,b=n.options.__e,w=n.options.__,g=n.options.__h,E=l?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];n.options.__e=function(n,e,o,r){if(e&&e.__c&&"function"==typeof n.then){var a=n;n=new Error("Missing Suspense. The throwing component was: "+t(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=a;break}if(n instanceof Error)throw n}try{(r=r||{}).componentStack=c(e),b(n,e,o,r),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},n.options.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var o;switch(e.nodeType){case 1:case 11:case 9:o=!0;break;default:o=!1}if(!o){var r=t(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+r+" />, "+e+");")}w&&w(n,e)},n.options.__b=function(n){var o=n.type;if(a=!0,void 0===o)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+y(n)+"\n\n"+c(n));if(null!=o&&"object"==typeof o){if(void 0!==o.__k&&void 0!==o.__e)throw new Error("Invalid type passed to createElement(): "+o+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+t(n)+" = "+y(o)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+c(n));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(o)?"array":o))}if(void 0!==n.ref&&"function"!=typeof n.ref&&"object"!=typeof n.ref&&!("$$typeof"in n))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof n.ref+"] instead\n"+y(n)+"\n\n"+c(n));if("string"==typeof n.type)for(var r in n.props)if("o"===r[0]&&"n"===r[1]&&"function"!=typeof n.props[r]&&null!=n.props[r])throw new Error("Component's \""+r+'" property should be a function, but got ['+typeof n.props[r]+"] instead\n"+y(n)+"\n\n"+c(n));if("function"==typeof n.type&&n.type.propTypes){if("Lazy"===n.type.displayName&&E&&!E.lazyPropTypes.has(n.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var l=n.type();E.lazyPropTypes.set(n.type,!0),console.warn(s+"Component wrapped in lazy() is "+t(l))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var u=n.props;n.type.__f&&delete(u=function(n,e){for(var t in e)n[t]=e[t];return n}({},u)).ref,function(n,t,o,r,a){Object.keys(n).forEach(function(o){var i;try{i=n[o](t,o,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in e)&&(e[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(n.type.propTypes,u,0,t(n),function(){return c(n)})}i&&i(n)};var T,_=0;n.options.__r=function(n){m&&m(n),a=!0;var e=n.__c;if(e===T?_++:_=1,_>=25)throw new Error("Too many re-renders. This is limited to prevent an infinite loop which may lock up your browser. The component causing this is: "+t(n));T=e},n.options.__h=function(n,e,t){if(!n||!a)throw new Error("Hook can only be invoked from render methods.");g&&g(n,e,t)};var O=function(n,e){return{get:function(){var t="get"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var t="set"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:O("nodeName","use vnode.type"),attributes:O("attributes","use vnode.props"),children:O("children","use vnode.props.children")},x=Object.create({},I);n.options.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var t=n.props={};for(var o in e){var r=e[o];"__source"===o?n.__source=r:"__self"===o?n.__self=r:t[o]=r}}n.__proto__=x,v&&v(n)},n.options.diffed=function(n){var e,o=n.type,r=n.__;if(n.__k&&n.__k.forEach(function(e){if("object"==typeof e&&e&&void 0===e.type){var t=Object.keys(e).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+t+"}.\n\n"+c(n))}}),n.__c===T&&(_=0),"string"==typeof o&&(p(o)||"p"===o||"a"===o||"button"===o)){var i=f(r);if(""!==i&&p(o))"table"===o&&"td"!==i&&p(i)?console.error("Improper nesting of table. Your

should not have a table-node parent."+y(n)+"\n\n"+c(n)):"thead"!==o&&"tfoot"!==o&&"tbody"!==o||"table"===i?"tr"===o&&"thead"!==i&&"tfoot"!==i&&"tbody"!==i?console.error("Improper nesting of table. Your should have a parent."+y(n)+"\n\n"+c(n)):"td"===o&&"tr"!==i?console.error("Improper nesting of table. Your parent."+y(n)+"\n\n"+c(n)):"th"===o&&"tr"!==i&&console.error("Improper nesting of table. Your ."+y(n)+"\n\n"+c(n)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+y(n)+"\n\n"+c(n));else if("p"===o){var s=u(n).filter(function(n){return h.test(n)});s.length&&console.error("Improper nesting of paragraph. Your

should not have "+s.join(", ")+" as child-elements."+y(n)+"\n\n"+c(n))}else"a"!==o&&"button"!==o||-1!==u(n).indexOf(o)&&console.error("Improper nesting of interactive content. Your <"+o+"> should not have other "+("a"===o?"anchor":"button")+" tags as child-elements."+y(n)+"\n\n"+c(n))}if(a=!1,d&&d(n),null!=n.__k)for(var l=[],v=0;v {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${\n\t\t\t\t\t(getStack && `\\n${getStack()}`) || ''\n\t\t\t\t}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props =>

{props.children}
// div's owner is Foo\n * const Bar = props => {\n * return (\n * // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet hasBabelPlugin = false;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (!hasBabelPlugin) {\n\t\t\thasBabelPlugin = true;\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign, isNaN } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\n/**\n * @param {import('./internal').VNode} vnode\n * @returns {Array}\n */\nfunction getDomChildren(vnode) {\n\tlet domChildren = [];\n\n\tif (!vnode._children) return domChildren;\n\n\tvnode._children.forEach(child => {\n\t\tif (child && typeof child.type === 'function') {\n\t\t\tdomChildren.push.apply(domChildren, getDomChildren(child));\n\t\t} else if (child && typeof child.type === 'string') {\n\t\t\tdomChildren.push(child.type);\n\t\t}\n\t});\n\n\treturn domChildren;\n}\n\n/**\n * @param {import('./internal').VNode} parent\n * @returns {string}\n */\nfunction getClosestDomNodeParentName(parent) {\n\tif (!parent) return '';\n\tif (typeof parent.type == 'function') {\n\t\tif (parent._parent === null) {\n\t\t\tif (parent._dom !== null && parent._dom.parentNode !== null) {\n\t\t\t\treturn parent._dom.parentNode.localName;\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\t\treturn getClosestDomNodeParentName(parent._parent);\n\t}\n\treturn /** @type {string} */ (parent.type);\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldRender = options._render;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t };\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode, errorInfo) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\terrorInfo = errorInfo || {};\n\t\t\terrorInfo.componentStack = getOwnerStack(vnode);\n\t\t\toldCatchError(error, vnode, oldVNode, errorInfo);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nonetheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type } = vnode;\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = ;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (oldRender) {\n\t\t\toldRender(vnode);\n\t\t}\n\t\thooksAllowed = true;\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\tconst { type, _parent: parent } = vnode;\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `{{ foo: 123, bar: \"abc\" }}`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (typeof child === 'object' && child && child.type === undefined) {\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (typeof type === 'string' && (isTableElement(type) || type === 'p')) {\n\t\t\t// Avoid false positives when Preact only partially rendered the\n\t\t\t// HTML tree. Whilst we attempt to include the outer DOM in our\n\t\t\t// validation, this wouldn't work on the server for\n\t\t\t// `preact-render-to-string`. There we'd otherwise flood the terminal\n\t\t\t// with false positives, which we'd like to avoid.\n\t\t\tlet domParentName = getClosestDomNodeParentName(parent);\n\t\t\tif (domParentName !== '') {\n\t\t\t\tif (\n\t\t\t\t\ttype === 'table' &&\n\t\t\t\t\t// Tables can be nested inside each other if it's inside a cell.\n\t\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Learn/HTML/Tables/Advanced#nesting_tables\n\t\t\t\t\tdomParentName !== 'td' &&\n\t\t\t\t\tisTableElement(domParentName)\n\t\t\t\t) {\n\t\t\t\t\tconsole.log(domParentName, parent._dom);\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your
should not have a table-node parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a
parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\ttype === 'tr' &&\n\t\t\t\t\tdomParentName !== 'thead' &&\n\t\t\t\t\tdomParentName !== 'tfoot' &&\n\t\t\t\t\tdomParentName !== 'tbody' &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'td' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'th' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your .' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'p') {\n\t\t\t\tlet illegalDomChildrenTypes = getDomChildren(vnode).filter(childType =>\n\t\t\t\t\tILLEGAL_PARAGRAPH_CHILD_ELEMENTS.test(childType)\n\t\t\t\t);\n\t\t\t\tif (illegalDomChildrenTypes.length) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of paragraph. Your

should not have ' +\n\t\t\t\t\t\t\tillegalDomChildrenTypes.join(', ') +\n\t\t\t\t\t\t\t'as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\n\t\tif (vnode._component != null && vnode._component.__hooks != null) {\n\t\t\t// Validate that none of the hooks in this component contain arguments that are NaN.\n\t\t\t// This is a common mistake that can be hard to debug, so we want to catch it early.\n\t\t\tconst hooks = vnode._component.__hooks._list;\n\t\t\tif (hooks) {\n\t\t\t\tfor (let i = 0; i < hooks.length; i += 1) {\n\t\t\t\t\tconst hook = hooks[i];\n\t\t\t\t\tif (hook._args) {\n\t\t\t\t\t\tfor (let j = 0; j < hook._args.length; j++) {\n\t\t\t\t\t\t\tconst arg = hook._args[j];\n\t\t\t\t\t\t\tif (isNaN(arg)) {\n\t\t\t\t\t\t\t\tconst componentName = getDisplayName(vnode);\n\t\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\t`Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index ${i} in component ${componentName} was called with NaN.`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function (update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nfunction isTableElement(type) {\n\treturn (\n\t\ttype === 'table' ||\n\t\ttype === 'tfoot' ||\n\t\ttype === 'tbody' ||\n\t\ttype === 'thead' ||\n\t\ttype === 'td' ||\n\t\ttype === 'tr' ||\n\t\ttype === 'th'\n\t);\n}\n\nconst ILLEGAL_PARAGRAPH_CHILD_ELEMENTS =\n\t/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/;\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function (callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..' : ' />'\n\t}`;\n}\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\nexport function isNaN(value) {\n\treturn value !== value;\n}\n","import { initDebug } from './debug';\nimport 'preact/devtools';\n\ninitDebug();\n\nexport { resetPropWarnings } from './check-props';\n"],"names":["loggedTypeFailures","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","hasBabelPlugin","isPossibleOwner","getOwnerStack","stack","next","__o","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","getDomChildren","domChildren","__k","forEach","child","apply","getClosestDomNodeParentName","parent","__","__e","parentNode","localName","setState","Component","prototype","isTableElement","update","callback","this","__v","state","call","ILLEGAL_PARAGRAPH_CHILD_ELEMENTS","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","oldDiff","options","__b","oldDiffed","diffed","oldRoot","oldVNode","oldRender","__r","pop","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","__h","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","error","errorInfo","__c","then","promise","Error","componentStack","setTimeout","e","isValid","nodeType","componentName","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","obj","i","assign","checkPropTypes","typeSpecs","location","getStack","keys","typeSpecName","message","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","join","domParentName","log","illegalDomChildrenTypes","filter","childType","test","__H","hooks","hook","j","initDebug","resetPropWarnings"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"debug.js","sources":["../src/check-props.js","../src/component-stack.js","../src/debug.js","../src/constants.js","../src/util.js","../src/index.js"],"sourcesContent":["const ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nlet loggedTypeFailures = {};\n\n/**\n * Reset the history of which prop type warnings have been logged.\n */\nexport function resetPropWarnings() {\n\tloggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * Adapted from https://github.com/facebook/prop-types/blob/master/checkPropTypes.js\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n */\nexport function checkPropTypes(\n\ttypeSpecs,\n\tvalues,\n\tlocation,\n\tcomponentName,\n\tgetStack\n) {\n\tObject.keys(typeSpecs).forEach(typeSpecName => {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${\n\t\t\t\t\t(getStack && `\\n${getStack()}`) || ''\n\t\t\t\t}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props =>

{props.children}
// div's owner is Foo\n * const Bar = props => {\n * return (\n * // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet showJsxSourcePluginWarning = true;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (showJsxSourcePluginWarning) {\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\t\tshowJsxSourcePluginWarning = false;\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign, isNaN } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\n/**\n * @param {import('./internal').VNode} vnode\n * @returns {Array}\n */\nfunction getDomChildren(vnode) {\n\tlet domChildren = [];\n\n\tif (!vnode._children) return domChildren;\n\n\tvnode._children.forEach(child => {\n\t\tif (child && typeof child.type === 'function') {\n\t\t\tdomChildren.push.apply(domChildren, getDomChildren(child));\n\t\t} else if (child && typeof child.type === 'string') {\n\t\t\tdomChildren.push(child.type);\n\t\t}\n\t});\n\n\treturn domChildren;\n}\n\n/**\n * @param {import('./internal').VNode} parent\n * @returns {string}\n */\nfunction getClosestDomNodeParentName(parent) {\n\tif (!parent) return '';\n\tif (typeof parent.type == 'function') {\n\t\tif (parent._parent == null) {\n\t\t\tif (parent._dom != null && parent._dom.parentNode != null) {\n\t\t\t\treturn parent._dom.parentNode.localName;\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\t\treturn getClosestDomNodeParentName(parent._parent);\n\t}\n\treturn /** @type {string} */ (parent.type);\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldRender = options._render;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t\t};\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode, errorInfo) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\terrorInfo = errorInfo || {};\n\t\t\terrorInfo.componentStack = getOwnerStack(vnode);\n\t\t\toldCatchError(error, vnode, oldVNode, errorInfo);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nonetheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type } = vnode;\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = ;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\tlet renderCount = 0;\n\tlet currentComponent;\n\toptions._render = vnode => {\n\t\tif (oldRender) {\n\t\t\toldRender(vnode);\n\t\t}\n\t\thooksAllowed = true;\n\n\t\tconst nextComponent = vnode._component;\n\t\tif (nextComponent === currentComponent) {\n\t\t\trenderCount++;\n\t\t} else {\n\t\t\trenderCount = 1;\n\t\t}\n\n\t\tif (renderCount >= 25) {\n\t\t\tthrow new Error(\n\t\t\t\t`Too many re-renders. This is limited to prevent an infinite loop ` +\n\t\t\t\t\t`which may lock up your browser. The component causing this is: ${getDisplayName(\n\t\t\t\t\t\tvnode\n\t\t\t\t\t)}`\n\t\t\t);\n\t\t}\n\n\t\tcurrentComponent = nextComponent;\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\tconst { type, _parent: parent } = vnode;\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `{{ foo: 123, bar: \"abc\" }}`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (typeof child === 'object' && child && child.type === undefined) {\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (vnode._component === currentComponent) {\n\t\t\trenderCount = 0;\n\t\t}\n\n\t\tif (\n\t\t\ttypeof type === 'string' &&\n\t\t\t(isTableElement(type) ||\n\t\t\t\ttype === 'p' ||\n\t\t\t\ttype === 'a' ||\n\t\t\t\ttype === 'button')\n\t\t) {\n\t\t\t// Avoid false positives when Preact only partially rendered the\n\t\t\t// HTML tree. Whilst we attempt to include the outer DOM in our\n\t\t\t// validation, this wouldn't work on the server for\n\t\t\t// `preact-render-to-string`. There we'd otherwise flood the terminal\n\t\t\t// with false positives, which we'd like to avoid.\n\t\t\tlet domParentName = getClosestDomNodeParentName(parent);\n\t\t\tif (domParentName !== '' && isTableElement(type)) {\n\t\t\t\tif (\n\t\t\t\t\ttype === 'table' &&\n\t\t\t\t\t// Tables can be nested inside each other if it's inside a cell.\n\t\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Learn/HTML/Tables/Advanced#nesting_tables\n\t\t\t\t\tdomParentName !== 'td' &&\n\t\t\t\t\tisTableElement(domParentName)\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your
should have a
should have a
should not have a table-node parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a
parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\ttype === 'tr' &&\n\t\t\t\t\tdomParentName !== 'thead' &&\n\t\t\t\t\tdomParentName !== 'tfoot' &&\n\t\t\t\t\tdomParentName !== 'tbody'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'td' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'th' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your .' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'p') {\n\t\t\t\tlet illegalDomChildrenTypes = getDomChildren(vnode).filter(childType =>\n\t\t\t\t\tILLEGAL_PARAGRAPH_CHILD_ELEMENTS.test(childType)\n\t\t\t\t);\n\t\t\t\tif (illegalDomChildrenTypes.length) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of paragraph. Your

should not have ' +\n\t\t\t\t\t\t\tillegalDomChildrenTypes.join(', ') +\n\t\t\t\t\t\t\t' as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'a' || type === 'button') {\n\t\t\t\tif (getDomChildren(vnode).indexOf(type) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t`Improper nesting of interactive content. Your <${type}>` +\n\t\t\t\t\t\t\t` should not have other ${type === 'a' ? 'anchor' : 'button'}` +\n\t\t\t\t\t\t\t' tags as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\n\t\tif (vnode._component != null && vnode._component.__hooks != null) {\n\t\t\t// Validate that none of the hooks in this component contain arguments that are NaN.\n\t\t\t// This is a common mistake that can be hard to debug, so we want to catch it early.\n\t\t\tconst hooks = vnode._component.__hooks._list;\n\t\t\tif (hooks) {\n\t\t\t\tfor (let i = 0; i < hooks.length; i += 1) {\n\t\t\t\t\tconst hook = hooks[i];\n\t\t\t\t\tif (hook._args) {\n\t\t\t\t\t\tfor (let j = 0; j < hook._args.length; j++) {\n\t\t\t\t\t\t\tconst arg = hook._args[j];\n\t\t\t\t\t\t\tif (isNaN(arg)) {\n\t\t\t\t\t\t\t\tconst componentName = getDisplayName(vnode);\n\t\t\t\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\t\t\t\t`Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index ${i} in component ${componentName} was called with NaN.`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function (update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nfunction isTableElement(type) {\n\treturn (\n\t\ttype === 'table' ||\n\t\ttype === 'tfoot' ||\n\t\ttype === 'tbody' ||\n\t\ttype === 'thead' ||\n\t\ttype === 'td' ||\n\t\ttype === 'tr' ||\n\t\ttype === 'th'\n\t);\n}\n\nconst ILLEGAL_PARAGRAPH_CHILD_ELEMENTS =\n\t/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/;\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function (callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..' : ' />'\n\t}`;\n}\n\noptions._hydrationMismatch = (newVNode, excessDomChildren) => {\n\tconst { type } = newVNode;\n\tconst availableTypes = excessDomChildren\n\t\t.map(child => child && child.localName)\n\t\t.filter(Boolean);\n\tconsole.error(\n\t\t`Expected a DOM node of type \"${type}\" but found \"${availableTypes.join(', ')}\" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\\n\\n${getOwnerStack(newVNode)}`\n\t);\n};\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\nexport function isNaN(value) {\n\treturn value !== value;\n}\n","import { initDebug } from './debug';\nimport 'preact/devtools';\n\ninitDebug();\n\nexport { resetPropWarnings } from './check-props';\n\nexport {\n\tgetCurrentVNode,\n\tgetDisplayName,\n\tgetOwnerStack\n} from './component-stack';\n"],"names":["loggedTypeFailures","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","showJsxSourcePluginWarning","isPossibleOwner","getOwnerStack","stack","next","__o","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","getDomChildren","domChildren","__k","forEach","child","apply","getClosestDomNodeParentName","parent","__","__e","parentNode","localName","setState","Component","prototype","isTableElement","update","callback","this","__v","state","call","ILLEGAL_PARAGRAPH_CHILD_ELEMENTS","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","__P","options","__m","newVNode","excessDomChildren","availableTypes","map","filter","Boolean","error","join","oldDiff","__b","oldDiffed","diffed","oldRoot","oldVNode","oldRender","__r","pop","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","__h","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","errorInfo","__c","then","promise","Error","componentStack","setTimeout","e","isValid","nodeType","componentName","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","__f","obj","i","assign","typeSpecs","location","getStack","keys","typeSpecName","message","checkPropTypes","currentComponent","renderCount","nextComponent","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","domParentName","illegalDomChildrenTypes","childType","test","__H","hooks","hook","j","initDebug"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/debug/dist/debug.mjs b/node_modules/preact/debug/dist/debug.mjs index 3913e6e..8c3c2df 100644 --- a/node_modules/preact/debug/dist/debug.mjs +++ b/node_modules/preact/debug/dist/debug.mjs @@ -1,2 +1,2 @@ -import{Fragment as n,options as e,Component as t}from"preact";import"preact/devtools";var o={};function r(){o={}}function a(e){return e.type===n?"Fragment":"function"==typeof e.type?e.type.displayName||e.type.name:"string"==typeof e.type?e.type:"#text"}var i=[],s=[];function c(){return i.length>0?i[i.length-1]:null}var l=!1;function u(e){return"function"==typeof e.type&&e.type!=n}function f(n){for(var e=[n],t=n;null!=t.__o;)e.push(t.__o),t=t.__o;return e.reduce(function(n,e){n+=" in "+a(e);var t=e.__source;return t?n+=" (at "+t.fileName+":"+t.lineNumber+")":l||(l=!0,console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.")),n+"\n"},"")}var p="function"==typeof WeakMap;function d(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,d(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function h(n){return n?"function"==typeof n.type?null===n.__?null!==n.__e&&null!==n.__e.parentNode?n.__e.parentNode.localName:"":h(n.__):n.type:""}var v=t.prototype.setState;function y(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}t.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+f(c())),v.call(this,n,e)};var m=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,b=t.prototype.forceUpdate;function w(n){var e=n.props,t=a(n),o="";for(var r in e)if(e.hasOwnProperty(r)&&"children"!==r){var i=e[r];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),o+=" "+r+"="+JSON.stringify(i)}var s=e.children;return"<"+t+o+(s&&s.length?">..":" />")}t.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+f(c())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+f(this.__v)),b.call(this,n)},function(){!function(){var n=e.__b,t=e.diffed,o=e.__,r=e.vnode,a=e.__r;e.diffed=function(n){u(n)&&s.pop(),i.pop(),t&&t(n)},e.__b=function(e){u(e)&&i.push(e),n&&n(e)},e.__=function(n,e){s=[],o&&o(n,e)},e.vnode=function(n){n.__o=s.length>0?s[s.length-1]:null,r&&r(n)},e.__r=function(n){u(n)&&s.push(n),a&&a(n)}}();var n=!1,t=e.__b,r=e.diffed,c=e.vnode,l=e.__r,v=e.__e,b=e.__,g=e.__h,E=p?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];e.__e=function(n,e,t,o){if(e&&e.__c&&"function"==typeof n.then){var r=n;n=new Error("Missing Suspense. The throwing component was: "+a(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=r;break}if(n instanceof Error)throw n}try{(o=o||{}).componentStack=f(e),v(n,e,t,o),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},e.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var t;switch(e.nodeType){case 1:case 11:case 9:t=!0;break;default:t=!1}if(!t){var o=a(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+o+" />, "+e+");")}b&&b(n,e)},e.__b=function(e){var r=e.type;if(n=!0,void 0===r)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+w(e)+"\n\n"+f(e));if(null!=r&&"object"==typeof r){if(void 0!==r.__k&&void 0!==r.__e)throw new Error("Invalid type passed to createElement(): "+r+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+a(e)+" = "+w(r)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+f(e));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(r)?"array":r))}if(void 0!==e.ref&&"function"!=typeof e.ref&&"object"!=typeof e.ref&&!("$$typeof"in e))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof e.ref+"] instead\n"+w(e)+"\n\n"+f(e));if("string"==typeof e.type)for(var i in e.props)if("o"===i[0]&&"n"===i[1]&&"function"!=typeof e.props[i]&&null!=e.props[i])throw new Error("Component's \""+i+'" property should be a function, but got ['+typeof e.props[i]+"] instead\n"+w(e)+"\n\n"+f(e));if("function"==typeof e.type&&e.type.propTypes){if("Lazy"===e.type.displayName&&E&&!E.lazyPropTypes.has(e.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var c=e.type();E.lazyPropTypes.set(e.type,!0),console.warn(s+"Component wrapped in lazy() is "+a(c))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var l=e.props;e.type.__f&&delete(l=function(n,e){for(var t in e)n[t]=e[t];return n}({},l)).ref,function(n,e,t,r,a){Object.keys(n).forEach(function(t){var i;try{i=n[t](e,t,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in o)&&(o[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(e.type.propTypes,l,0,a(e),function(){return f(e)})}t&&t(e)},e.__r=function(e){l&&l(e),n=!0},e.__h=function(e,t,o){if(!e||!n)throw new Error("Hook can only be invoked from render methods.");g&&g(e,t,o)};var _=function(n,e){return{get:function(){var t="get"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var t="set"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:_("nodeName","use vnode.type"),attributes:_("attributes","use vnode.props"),children:_("children","use vnode.props.children")},T=Object.create({},I);e.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var t=n.props={};for(var o in e){var r=e[o];"__source"===o?n.__source=r:"__self"===o?n.__self=r:t[o]=r}}n.__proto__=T,c&&c(n)},e.diffed=function(e){var t,o=e.type,i=e.__;if(e.__k&&e.__k.forEach(function(n){if("object"==typeof n&&n&&void 0===n.type){var t=Object.keys(n).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+t+"}.\n\n"+f(e))}}),"string"==typeof o&&(y(o)||"p"===o)){var s=h(i);if(""!==s)"table"===o&&"td"!==s&&y(s)?(console.log(s,i.__e),console.error("Improper nesting of table. Your

should have a
should have a
should not have a table-node parent."+w(e)+"\n\n"+f(e))):"thead"!==o&&"tfoot"!==o&&"tbody"!==o||"table"===s?"tr"===o&&"thead"!==s&&"tfoot"!==s&&"tbody"!==s&&"table"!==s?console.error("Improper nesting of table. Your should have a parent."+w(e)+"\n\n"+f(e)):"td"===o&&"tr"!==s?console.error("Improper nesting of table. Your parent."+w(e)+"\n\n"+f(e)):"th"===o&&"tr"!==s&&console.error("Improper nesting of table. Your ."+w(e)+"\n\n"+f(e)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+w(e)+"\n\n"+f(e));else if("p"===o){var c=d(e).filter(function(n){return m.test(n)});c.length&&console.error("Improper nesting of paragraph. Your

should not have "+c.join(", ")+"as child-elements."+w(e)+"\n\n"+f(e))}}if(n=!1,r&&r(e),null!=e.__k)for(var l=[],u=0;u0?i[i.length-1]:null}var l=!0;function u(e){return"function"==typeof e.type&&e.type!=n}function f(n){for(var e=[n],o=n;null!=o.__o;)e.push(o.__o),o=o.__o;return e.reduce(function(n,e){n+=" in "+a(e);var o=e.__source;return o?n+=" (at "+o.fileName+":"+o.lineNumber+")":l&&console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons."),l=!1,n+"\n"},"")}var d="function"==typeof WeakMap;function p(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,p(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function h(n){return n?"function"==typeof n.type?null==n.__?null!=n.__e&&null!=n.__e.parentNode?n.__e.parentNode.localName:"":h(n.__):n.type:""}var v=o.prototype.setState;function y(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}o.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+f(c())),v.call(this,n,e)};var m=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,b=o.prototype.forceUpdate;function w(n){var e=n.props,o=a(n),t="";for(var r in e)if(e.hasOwnProperty(r)&&"children"!==r){var i=e[r];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),t+=" "+r+"="+JSON.stringify(i)}var s=e.children;return"<"+o+t+(s&&s.length?">..":" />")}o.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+f(c())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+f(this.__v)),b.call(this,n)},e.__m=function(n,e){var o=n.type,t=e.map(function(n){return n&&n.localName}).filter(Boolean);console.error('Expected a DOM node of type "'+o+'" but found "'+t.join(", ")+"\" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\n\n"+f(n))},function(){!function(){var n=e.__b,o=e.diffed,t=e.__,r=e.vnode,a=e.__r;e.diffed=function(n){u(n)&&s.pop(),i.pop(),o&&o(n)},e.__b=function(e){u(e)&&i.push(e),n&&n(e)},e.__=function(n,e){s=[],t&&t(n,e)},e.vnode=function(n){n.__o=s.length>0?s[s.length-1]:null,r&&r(n)},e.__r=function(n){u(n)&&s.push(n),a&&a(n)}}();var n=!1,o=e.__b,r=e.diffed,c=e.vnode,l=e.__r,v=e.__e,b=e.__,g=e.__h,E=d?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];e.__e=function(n,e,o,t){if(e&&e.__c&&"function"==typeof n.then){var r=n;n=new Error("Missing Suspense. The throwing component was: "+a(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=r;break}if(n instanceof Error)throw n}try{(t=t||{}).componentStack=f(e),v(n,e,o,t),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},e.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var o;switch(e.nodeType){case 1:case 11:case 9:o=!0;break;default:o=!1}if(!o){var t=a(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+t+" />, "+e+");")}b&&b(n,e)},e.__b=function(e){var r=e.type;if(n=!0,void 0===r)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+w(e)+"\n\n"+f(e));if(null!=r&&"object"==typeof r){if(void 0!==r.__k&&void 0!==r.__e)throw new Error("Invalid type passed to createElement(): "+r+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+a(e)+" = "+w(r)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+f(e));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(r)?"array":r))}if(void 0!==e.ref&&"function"!=typeof e.ref&&"object"!=typeof e.ref&&!("$$typeof"in e))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof e.ref+"] instead\n"+w(e)+"\n\n"+f(e));if("string"==typeof e.type)for(var i in e.props)if("o"===i[0]&&"n"===i[1]&&"function"!=typeof e.props[i]&&null!=e.props[i])throw new Error("Component's \""+i+'" property should be a function, but got ['+typeof e.props[i]+"] instead\n"+w(e)+"\n\n"+f(e));if("function"==typeof e.type&&e.type.propTypes){if("Lazy"===e.type.displayName&&E&&!E.lazyPropTypes.has(e.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var c=e.type();E.lazyPropTypes.set(e.type,!0),console.warn(s+"Component wrapped in lazy() is "+a(c))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var l=e.props;e.type.__f&&delete(l=function(n,e){for(var o in e)n[o]=e[o];return n}({},l)).ref,function(n,e,o,r,a){Object.keys(n).forEach(function(o){var i;try{i=n[o](e,o,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in t)&&(t[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(e.type.propTypes,l,0,a(e),function(){return f(e)})}o&&o(e)};var T,_=0;e.__r=function(e){l&&l(e),n=!0;var o=e.__c;if(o===T?_++:_=1,_>=25)throw new Error("Too many re-renders. This is limited to prevent an infinite loop which may lock up your browser. The component causing this is: "+a(e));T=o},e.__h=function(e,o,t){if(!e||!n)throw new Error("Hook can only be invoked from render methods.");g&&g(e,o,t)};var O=function(n,e){return{get:function(){var o="get"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var o="set"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:O("nodeName","use vnode.type"),attributes:O("attributes","use vnode.props"),children:O("children","use vnode.props.children")},M=Object.create({},I);e.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var o=n.props={};for(var t in e){var r=e[t];"__source"===t?n.__source=r:"__self"===t?n.__self=r:o[t]=r}}n.__proto__=M,c&&c(n)},e.diffed=function(e){var o,t=e.type,i=e.__;if(e.__k&&e.__k.forEach(function(n){if("object"==typeof n&&n&&void 0===n.type){var o=Object.keys(n).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+o+"}.\n\n"+f(e))}}),e.__c===T&&(_=0),"string"==typeof t&&(y(t)||"p"===t||"a"===t||"button"===t)){var s=h(i);if(""!==s&&y(t))"table"===t&&"td"!==s&&y(s)?console.error("Improper nesting of table. Your

should not have a table-node parent."+w(e)+"\n\n"+f(e)):"thead"!==t&&"tfoot"!==t&&"tbody"!==t||"table"===s?"tr"===t&&"thead"!==s&&"tfoot"!==s&&"tbody"!==s?console.error("Improper nesting of table. Your should have a parent."+w(e)+"\n\n"+f(e)):"td"===t&&"tr"!==s?console.error("Improper nesting of table. Your parent."+w(e)+"\n\n"+f(e)):"th"===t&&"tr"!==s&&console.error("Improper nesting of table. Your ."+w(e)+"\n\n"+f(e)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+w(e)+"\n\n"+f(e));else if("p"===t){var c=p(e).filter(function(n){return m.test(n)});c.length&&console.error("Improper nesting of paragraph. Your

should not have "+c.join(", ")+" as child-elements."+w(e)+"\n\n"+f(e))}else"a"!==t&&"button"!==t||-1!==p(e).indexOf(t)&&console.error("Improper nesting of interactive content. Your <"+t+"> should not have other "+("a"===t?"anchor":"button")+" tags as child-elements."+w(e)+"\n\n"+f(e))}if(n=!1,r&&r(e),null!=e.__k)for(var l=[],u=0;u0?i[i.length-1]:null}var l=!1;function u(e){return"function"==typeof e.type&&e.type!=n}function f(n){for(var e=[n],t=n;null!=t.__o;)e.push(t.__o),t=t.__o;return e.reduce(function(n,e){n+=" in "+a(e);var t=e.__source;return t?n+=" (at "+t.fileName+":"+t.lineNumber+")":l||(l=!0,console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.")),n+"\n"},"")}var p="function"==typeof WeakMap;function d(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,d(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function h(n){return n?"function"==typeof n.type?null===n.__?null!==n.__e&&null!==n.__e.parentNode?n.__e.parentNode.localName:"":h(n.__):n.type:""}var v=t.prototype.setState;function y(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}t.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+f(c())),v.call(this,n,e)};var m=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,b=t.prototype.forceUpdate;function w(n){var e=n.props,t=a(n),o="";for(var r in e)if(e.hasOwnProperty(r)&&"children"!==r){var i=e[r];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),o+=" "+r+"="+JSON.stringify(i)}var s=e.children;return"<"+t+o+(s&&s.length?">..":" />")}t.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+f(c())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+f(this.__v)),b.call(this,n)},function(){!function(){var n=e.__b,t=e.diffed,o=e.__,r=e.vnode,a=e.__r;e.diffed=function(n){u(n)&&s.pop(),i.pop(),t&&t(n)},e.__b=function(e){u(e)&&i.push(e),n&&n(e)},e.__=function(n,e){s=[],o&&o(n,e)},e.vnode=function(n){n.__o=s.length>0?s[s.length-1]:null,r&&r(n)},e.__r=function(n){u(n)&&s.push(n),a&&a(n)}}();var n=!1,t=e.__b,r=e.diffed,c=e.vnode,l=e.__r,v=e.__e,b=e.__,g=e.__h,E=p?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];e.__e=function(n,e,t,o){if(e&&e.__c&&"function"==typeof n.then){var r=n;n=new Error("Missing Suspense. The throwing component was: "+a(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=r;break}if(n instanceof Error)throw n}try{(o=o||{}).componentStack=f(e),v(n,e,t,o),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},e.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var t;switch(e.nodeType){case 1:case 11:case 9:t=!0;break;default:t=!1}if(!t){var o=a(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+o+" />, "+e+");")}b&&b(n,e)},e.__b=function(e){var r=e.type;if(n=!0,void 0===r)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+w(e)+"\n\n"+f(e));if(null!=r&&"object"==typeof r){if(void 0!==r.__k&&void 0!==r.__e)throw new Error("Invalid type passed to createElement(): "+r+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+a(e)+" = "+w(r)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+f(e));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(r)?"array":r))}if(void 0!==e.ref&&"function"!=typeof e.ref&&"object"!=typeof e.ref&&!("$$typeof"in e))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof e.ref+"] instead\n"+w(e)+"\n\n"+f(e));if("string"==typeof e.type)for(var i in e.props)if("o"===i[0]&&"n"===i[1]&&"function"!=typeof e.props[i]&&null!=e.props[i])throw new Error("Component's \""+i+'" property should be a function, but got ['+typeof e.props[i]+"] instead\n"+w(e)+"\n\n"+f(e));if("function"==typeof e.type&&e.type.propTypes){if("Lazy"===e.type.displayName&&E&&!E.lazyPropTypes.has(e.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var c=e.type();E.lazyPropTypes.set(e.type,!0),console.warn(s+"Component wrapped in lazy() is "+a(c))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var l=e.props;e.type.__f&&delete(l=function(n,e){for(var t in e)n[t]=e[t];return n}({},l)).ref,function(n,e,t,r,a){Object.keys(n).forEach(function(t){var i;try{i=n[t](e,t,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in o)&&(o[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(e.type.propTypes,l,0,a(e),function(){return f(e)})}t&&t(e)},e.__r=function(e){l&&l(e),n=!0},e.__h=function(e,t,o){if(!e||!n)throw new Error("Hook can only be invoked from render methods.");g&&g(e,t,o)};var _=function(n,e){return{get:function(){var t="get"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var t="set"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:_("nodeName","use vnode.type"),attributes:_("attributes","use vnode.props"),children:_("children","use vnode.props.children")},T=Object.create({},I);e.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var t=n.props={};for(var o in e){var r=e[o];"__source"===o?n.__source=r:"__self"===o?n.__self=r:t[o]=r}}n.__proto__=T,c&&c(n)},e.diffed=function(e){var t,o=e.type,i=e.__;if(e.__k&&e.__k.forEach(function(n){if("object"==typeof n&&n&&void 0===n.type){var t=Object.keys(n).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+t+"}.\n\n"+f(e))}}),"string"==typeof o&&(y(o)||"p"===o)){var s=h(i);if(""!==s)"table"===o&&"td"!==s&&y(s)?(console.log(s,i.__e),console.error("Improper nesting of table. Your

should not have a table-node parent."+w(e)+"\n\n"+f(e))):"thead"!==o&&"tfoot"!==o&&"tbody"!==o||"table"===s?"tr"===o&&"thead"!==s&&"tfoot"!==s&&"tbody"!==s&&"table"!==s?console.error("Improper nesting of table. Your should have a parent."+w(e)+"\n\n"+f(e)):"td"===o&&"tr"!==s?console.error("Improper nesting of table. Your parent."+w(e)+"\n\n"+f(e)):"th"===o&&"tr"!==s&&console.error("Improper nesting of table. Your ."+w(e)+"\n\n"+f(e)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+w(e)+"\n\n"+f(e));else if("p"===o){var c=d(e).filter(function(n){return m.test(n)});c.length&&console.error("Improper nesting of paragraph. Your

should not have "+c.join(", ")+"as child-elements."+w(e)+"\n\n"+f(e))}}if(n=!1,r&&r(e),null!=e.__k)for(var l=[],u=0;u0?i[i.length-1]:null}var l=!0;function u(e){return"function"==typeof e.type&&e.type!=n}function f(n){for(var e=[n],o=n;null!=o.__o;)e.push(o.__o),o=o.__o;return e.reduce(function(n,e){n+=" in "+a(e);var o=e.__source;return o?n+=" (at "+o.fileName+":"+o.lineNumber+")":l&&console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons."),l=!1,n+"\n"},"")}var d="function"==typeof WeakMap;function p(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,p(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function h(n){return n?"function"==typeof n.type?null==n.__?null!=n.__e&&null!=n.__e.parentNode?n.__e.parentNode.localName:"":h(n.__):n.type:""}var v=o.prototype.setState;function y(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}o.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+f(c())),v.call(this,n,e)};var m=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,b=o.prototype.forceUpdate;function w(n){var e=n.props,o=a(n),t="";for(var r in e)if(e.hasOwnProperty(r)&&"children"!==r){var i=e[r];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),t+=" "+r+"="+JSON.stringify(i)}var s=e.children;return"<"+o+t+(s&&s.length?">..":" />")}o.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+f(c())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+f(this.__v)),b.call(this,n)},e.__m=function(n,e){var o=n.type,t=e.map(function(n){return n&&n.localName}).filter(Boolean);console.error('Expected a DOM node of type "'+o+'" but found "'+t.join(", ")+"\" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\n\n"+f(n))},function(){!function(){var n=e.__b,o=e.diffed,t=e.__,r=e.vnode,a=e.__r;e.diffed=function(n){u(n)&&s.pop(),i.pop(),o&&o(n)},e.__b=function(e){u(e)&&i.push(e),n&&n(e)},e.__=function(n,e){s=[],t&&t(n,e)},e.vnode=function(n){n.__o=s.length>0?s[s.length-1]:null,r&&r(n)},e.__r=function(n){u(n)&&s.push(n),a&&a(n)}}();var n=!1,o=e.__b,r=e.diffed,c=e.vnode,l=e.__r,v=e.__e,b=e.__,g=e.__h,E=d?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];e.__e=function(n,e,o,t){if(e&&e.__c&&"function"==typeof n.then){var r=n;n=new Error("Missing Suspense. The throwing component was: "+a(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=r;break}if(n instanceof Error)throw n}try{(t=t||{}).componentStack=f(e),v(n,e,o,t),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},e.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var o;switch(e.nodeType){case 1:case 11:case 9:o=!0;break;default:o=!1}if(!o){var t=a(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+t+" />, "+e+");")}b&&b(n,e)},e.__b=function(e){var r=e.type;if(n=!0,void 0===r)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+w(e)+"\n\n"+f(e));if(null!=r&&"object"==typeof r){if(void 0!==r.__k&&void 0!==r.__e)throw new Error("Invalid type passed to createElement(): "+r+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+a(e)+" = "+w(r)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+f(e));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(r)?"array":r))}if(void 0!==e.ref&&"function"!=typeof e.ref&&"object"!=typeof e.ref&&!("$$typeof"in e))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof e.ref+"] instead\n"+w(e)+"\n\n"+f(e));if("string"==typeof e.type)for(var i in e.props)if("o"===i[0]&&"n"===i[1]&&"function"!=typeof e.props[i]&&null!=e.props[i])throw new Error("Component's \""+i+'" property should be a function, but got ['+typeof e.props[i]+"] instead\n"+w(e)+"\n\n"+f(e));if("function"==typeof e.type&&e.type.propTypes){if("Lazy"===e.type.displayName&&E&&!E.lazyPropTypes.has(e.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var c=e.type();E.lazyPropTypes.set(e.type,!0),console.warn(s+"Component wrapped in lazy() is "+a(c))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var l=e.props;e.type.__f&&delete(l=function(n,e){for(var o in e)n[o]=e[o];return n}({},l)).ref,function(n,e,o,r,a){Object.keys(n).forEach(function(o){var i;try{i=n[o](e,o,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in t)&&(t[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(e.type.propTypes,l,0,a(e),function(){return f(e)})}o&&o(e)};var T,_=0;e.__r=function(e){l&&l(e),n=!0;var o=e.__c;if(o===T?_++:_=1,_>=25)throw new Error("Too many re-renders. This is limited to prevent an infinite loop which may lock up your browser. The component causing this is: "+a(e));T=o},e.__h=function(e,o,t){if(!e||!n)throw new Error("Hook can only be invoked from render methods.");g&&g(e,o,t)};var O=function(n,e){return{get:function(){var o="get"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var o="set"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:O("nodeName","use vnode.type"),attributes:O("attributes","use vnode.props"),children:O("children","use vnode.props.children")},M=Object.create({},I);e.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var o=n.props={};for(var t in e){var r=e[t];"__source"===t?n.__source=r:"__self"===t?n.__self=r:o[t]=r}}n.__proto__=M,c&&c(n)},e.diffed=function(e){var o,t=e.type,i=e.__;if(e.__k&&e.__k.forEach(function(n){if("object"==typeof n&&n&&void 0===n.type){var o=Object.keys(n).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+o+"}.\n\n"+f(e))}}),e.__c===T&&(_=0),"string"==typeof t&&(y(t)||"p"===t||"a"===t||"button"===t)){var s=h(i);if(""!==s&&y(t))"table"===t&&"td"!==s&&y(s)?console.error("Improper nesting of table. Your

should not have a table-node parent."+w(e)+"\n\n"+f(e)):"thead"!==t&&"tfoot"!==t&&"tbody"!==t||"table"===s?"tr"===t&&"thead"!==s&&"tfoot"!==s&&"tbody"!==s?console.error("Improper nesting of table. Your should have a parent."+w(e)+"\n\n"+f(e)):"td"===t&&"tr"!==s?console.error("Improper nesting of table. Your parent."+w(e)+"\n\n"+f(e)):"th"===t&&"tr"!==s&&console.error("Improper nesting of table. Your ."+w(e)+"\n\n"+f(e)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+w(e)+"\n\n"+f(e));else if("p"===t){var c=p(e).filter(function(n){return m.test(n)});c.length&&console.error("Improper nesting of paragraph. Your

should not have "+c.join(", ")+" as child-elements."+w(e)+"\n\n"+f(e))}else"a"!==t&&"button"!==t||-1!==p(e).indexOf(t)&&console.error("Improper nesting of interactive content. Your <"+t+"> should not have other "+("a"===t?"anchor":"button")+" tags as child-elements."+w(e)+"\n\n"+f(e))}if(n=!1,r&&r(e),null!=e.__k)for(var l=[],u=0;u {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${\n\t\t\t\t\t(getStack && `\\n${getStack()}`) || ''\n\t\t\t\t}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props =>

{props.children}
// div's owner is Foo\n * const Bar = props => {\n * return (\n * // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet hasBabelPlugin = false;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (!hasBabelPlugin) {\n\t\t\thasBabelPlugin = true;\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign, isNaN } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\n/**\n * @param {import('./internal').VNode} vnode\n * @returns {Array}\n */\nfunction getDomChildren(vnode) {\n\tlet domChildren = [];\n\n\tif (!vnode._children) return domChildren;\n\n\tvnode._children.forEach(child => {\n\t\tif (child && typeof child.type === 'function') {\n\t\t\tdomChildren.push.apply(domChildren, getDomChildren(child));\n\t\t} else if (child && typeof child.type === 'string') {\n\t\t\tdomChildren.push(child.type);\n\t\t}\n\t});\n\n\treturn domChildren;\n}\n\n/**\n * @param {import('./internal').VNode} parent\n * @returns {string}\n */\nfunction getClosestDomNodeParentName(parent) {\n\tif (!parent) return '';\n\tif (typeof parent.type == 'function') {\n\t\tif (parent._parent === null) {\n\t\t\tif (parent._dom !== null && parent._dom.parentNode !== null) {\n\t\t\t\treturn parent._dom.parentNode.localName;\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\t\treturn getClosestDomNodeParentName(parent._parent);\n\t}\n\treturn /** @type {string} */ (parent.type);\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldRender = options._render;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t };\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode, errorInfo) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\terrorInfo = errorInfo || {};\n\t\t\terrorInfo.componentStack = getOwnerStack(vnode);\n\t\t\toldCatchError(error, vnode, oldVNode, errorInfo);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nonetheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type } = vnode;\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = ;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (oldRender) {\n\t\t\toldRender(vnode);\n\t\t}\n\t\thooksAllowed = true;\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\tconst { type, _parent: parent } = vnode;\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `{{ foo: 123, bar: \"abc\" }}`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (typeof child === 'object' && child && child.type === undefined) {\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (typeof type === 'string' && (isTableElement(type) || type === 'p')) {\n\t\t\t// Avoid false positives when Preact only partially rendered the\n\t\t\t// HTML tree. Whilst we attempt to include the outer DOM in our\n\t\t\t// validation, this wouldn't work on the server for\n\t\t\t// `preact-render-to-string`. There we'd otherwise flood the terminal\n\t\t\t// with false positives, which we'd like to avoid.\n\t\t\tlet domParentName = getClosestDomNodeParentName(parent);\n\t\t\tif (domParentName !== '') {\n\t\t\t\tif (\n\t\t\t\t\ttype === 'table' &&\n\t\t\t\t\t// Tables can be nested inside each other if it's inside a cell.\n\t\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Learn/HTML/Tables/Advanced#nesting_tables\n\t\t\t\t\tdomParentName !== 'td' &&\n\t\t\t\t\tisTableElement(domParentName)\n\t\t\t\t) {\n\t\t\t\t\tconsole.log(domParentName, parent._dom);\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your
should not have a table-node parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a
parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\ttype === 'tr' &&\n\t\t\t\t\tdomParentName !== 'thead' &&\n\t\t\t\t\tdomParentName !== 'tfoot' &&\n\t\t\t\t\tdomParentName !== 'tbody' &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'td' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'th' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your .' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'p') {\n\t\t\t\tlet illegalDomChildrenTypes = getDomChildren(vnode).filter(childType =>\n\t\t\t\t\tILLEGAL_PARAGRAPH_CHILD_ELEMENTS.test(childType)\n\t\t\t\t);\n\t\t\t\tif (illegalDomChildrenTypes.length) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of paragraph. Your

should not have ' +\n\t\t\t\t\t\t\tillegalDomChildrenTypes.join(', ') +\n\t\t\t\t\t\t\t'as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\n\t\tif (vnode._component != null && vnode._component.__hooks != null) {\n\t\t\t// Validate that none of the hooks in this component contain arguments that are NaN.\n\t\t\t// This is a common mistake that can be hard to debug, so we want to catch it early.\n\t\t\tconst hooks = vnode._component.__hooks._list;\n\t\t\tif (hooks) {\n\t\t\t\tfor (let i = 0; i < hooks.length; i += 1) {\n\t\t\t\t\tconst hook = hooks[i];\n\t\t\t\t\tif (hook._args) {\n\t\t\t\t\t\tfor (let j = 0; j < hook._args.length; j++) {\n\t\t\t\t\t\t\tconst arg = hook._args[j];\n\t\t\t\t\t\t\tif (isNaN(arg)) {\n\t\t\t\t\t\t\t\tconst componentName = getDisplayName(vnode);\n\t\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\t`Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index ${i} in component ${componentName} was called with NaN.`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function (update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nfunction isTableElement(type) {\n\treturn (\n\t\ttype === 'table' ||\n\t\ttype === 'tfoot' ||\n\t\ttype === 'tbody' ||\n\t\ttype === 'thead' ||\n\t\ttype === 'td' ||\n\t\ttype === 'tr' ||\n\t\ttype === 'th'\n\t);\n}\n\nconst ILLEGAL_PARAGRAPH_CHILD_ELEMENTS =\n\t/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/;\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function (callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..' : ' />'\n\t}`;\n}\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\nexport function isNaN(value) {\n\treturn value !== value;\n}\n","import { initDebug } from './debug';\nimport 'preact/devtools';\n\ninitDebug();\n\nexport { resetPropWarnings } from './check-props';\n"],"names":["loggedTypeFailures","resetPropWarnings","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","hasBabelPlugin","isPossibleOwner","getOwnerStack","stack","next","__o","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","getDomChildren","domChildren","__k","forEach","child","apply","getClosestDomNodeParentName","parent","__","__e","parentNode","localName","setState","Component","prototype","isTableElement","update","callback","this","__v","state","call","ILLEGAL_PARAGRAPH_CHILD_ELEMENTS","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","oldDiff","options","__b","oldDiffed","diffed","oldRoot","oldVNode","oldRender","__r","pop","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","__h","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","error","errorInfo","__c","then","promise","Error","componentStack","setTimeout","e","isValid","nodeType","componentName","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","obj","i","assign","checkPropTypes","typeSpecs","location","getStack","keys","typeSpecName","message","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","join","domParentName","log","illegalDomChildrenTypes","filter","childType","test","__H","hooks","hook","j","initDebug"],"mappings":"sFAAA,IAEIA,EAAqB,CAAA,EAKTC,SAAAA,IACfD,EAAqB,CAAA,CACrB,CCDeE,SAAAA,EAAeC,GAC9B,OAAIA,EAAMC,OAASC,EACX,WACwB,mBAAdF,EAAMC,KAChBD,EAAMC,KAAKE,aAAeH,EAAMC,KAAKG,KACb,iBAAdJ,EAAMC,KAChBD,EAAMC,KAGP,OACP,CAMD,IAAII,EAAc,GAoBdC,EAAa,GAMDC,SAAAA,IACf,OAAOF,EAAYG,OAAS,EAAIH,EAAYA,EAAYG,OAAS,GAAK,IACtE,CAQD,IAAIC,GAAiB,EAMrB,SAASC,EAAgBV,GACxB,MAA4B,mBAAdA,EAAMC,MAAsBD,EAAMC,MAAQC,CACxD,CAOeS,SAAAA,EAAcX,GAG7B,IAFA,IAAMY,EAAQ,CAACZ,GACXa,EAAOb,EACW,MAAfa,EAAAC,KACNF,EAAMG,KAAKF,EAAXC,KACAD,EAAOA,EACPC,IAED,OAAOF,EAAMI,OAAO,SAACC,EAAKC,GACzBD,GAAG,QAAYlB,EAAemB,GAE9B,IAAMC,EAASD,EAAME,SAUrB,OATID,EACHF,GAAG,QAAYE,EAAOE,SAAnB,IAA+BF,EAAOG,WACzC,IAAWb,IACXA,GAAiB,EACjBc,QAAQC,KACP,mLAIMP,EAAO,IACf,EAAE,GACH,CCnFD,IAAMQ,EAAuC,mBAAXC,QAMlC,SAASC,EAAe3B,GACvB,IAAI4B,EAAc,GAElB,OAAK5B,EAAL6B,KAEA7B,EAAK6B,IAAWC,QAAQ,SAAAC,GACnBA,GAA+B,mBAAfA,EAAM9B,KACzB2B,EAAYb,KAAKiB,MAAMJ,EAAaD,EAAeI,IACzCA,GAA+B,iBAAfA,EAAM9B,MAChC2B,EAAYb,KAAKgB,EAAM9B,KAExB,GAEM2B,GAVsBA,CAW7B,CAMD,SAASK,EAA4BC,GACpC,OAAKA,EACqB,mBAAfA,EAAOjC,KACM,OAAnBiC,EAAMC,GACW,OAAhBD,OAAmD,OAA3BA,EAAAE,IAAYC,WAChCH,EAAAE,IAAYC,WAAWC,UAExB,GAEDL,EAA4BC,EAADC,IAELD,EAAOjC,KAVjB,EAWpB,CAqZD,IAAMsC,EAAWC,EAAUC,UAAUF,SAmBrC,SAASG,EAAezC,GACvB,MACU,UAATA,GACS,UAATA,GACS,UAATA,GACS,UAATA,GACS,OAATA,GACS,OAATA,GACS,OAATA,CAED,CA5BDuC,EAAUC,UAAUF,SAAW,SAAUI,EAAQC,GAehD,OAdmB,MAAfC,KAAeC,KAKA,MAAdD,KAAKE,OACRxB,QAAQC,KACP,gKAEmCb,EAAcJ,MAK7CgC,EAASS,KAAKH,KAAMF,EAAQC,EACnC,EAcD,IAAMK,EACL,+KAEKC,EAAcV,EAAUC,UAAUS,YAyBxBC,SAAAA,EAAenD,GAC9B,IAAMoD,EAAUpD,EAAVoD,MACFhD,EAAOL,EAAeC,GAEtBqD,EAAQ,GACZ,IAAK,IAAIC,KAAQF,EAChB,GAAIA,EAAMG,eAAeD,IAAkB,aAATA,EAAqB,CACtD,IAAIE,EAAQJ,EAAME,GAGE,mBAATE,IACVA,EAAoBA,aAAAA,EAAMrD,aAAeqD,EAAMpD,MAA1C,SAGNoD,EACCC,OAAOD,KAAWA,GAAUA,EAAME,SAE/BF,EAAQ,GADRC,OAAOhB,UAAUiB,SAASV,KAAKQ,GAGnCH,OAAaC,EAAR,IAAgBK,KAAKC,UAAUJ,EACpC,CAGF,IAAIK,EAAWT,EAAMS,SACrB,MAAA,IAAWzD,EAAOiD,GACjBQ,GAAYA,EAASrD,OAAS,QAAUJ,EAAO,IAAM,MAEtD,CAnDDoC,EAAUC,UAAUS,YAAc,SAAUN,GAgB3C,OAfmB,MAAfC,KAAeC,IAClBvB,QAAQC,KACP,0HACqDb,EACnDJ,MAG0B,MAAnBsC,UACVtB,QAAQC,KACP,iOAGQb,EAAckC,KAADC,MAGhBI,EAAYF,KAAKH,KAAMD,EAC9B,EAvcM,YDkDA,WACN,IAAIkB,EAAUC,EAAHC,IACPC,EAAYF,EAAQG,OACpBC,EAAUJ,EAAd5B,GACIiC,EAAWL,EAAQ/D,MACnBqE,EAAYN,EAAHO,IAEbP,EAAQG,OAAS,SAAAlE,GACZU,EAAgBV,IACnBM,EAAWiE,MAEZlE,EAAYkE,MACRN,GAAWA,EAAUjE,EACzB,EAED+D,EAAAC,IAAgB,SAAAhE,GACXU,EAAgBV,IACnBK,EAAYU,KAAKf,GAEd8D,GAASA,EAAQ9D,EACrB,EAED+D,EAAA5B,GAAgB,SAACnC,EAAOkC,GACvB5B,EAAa,GACT6D,GAASA,EAAQnE,EAAOkC,EAC5B,EAED6B,EAAQ/D,MAAQ,SAAAA,GACfA,EAAAc,IACCR,EAAWE,OAAS,EAAIF,EAAWA,EAAWE,OAAS,GAAK,KACzD4D,GAAUA,EAASpE,EACvB,EAED+D,EAAOO,IAAW,SAAAtE,GACbU,EAAgBV,IACnBM,EAAWS,KAAKf,GAGbqE,GAAWA,EAAUrE,EACzB,CACD,CCzFAwE,GAEA,IAAIC,GAAe,EAGfC,EAAgBX,EAApBC,IACIC,EAAYF,EAAQG,OACpBS,EAAWZ,EAAQ/D,MACnBqE,EAAYN,EAAhBO,IACIM,EAAgBb,EAApB3B,IACI+B,EAAUJ,EAAH5B,GACP0C,EAAUd,EAAHe,IACLC,EAAoBtD,EAEvB,CACAuD,UAAW,IAAItD,QACfuD,gBAAiB,IAAIvD,QACrBwD,cAAe,IAAIxD,SAJnB,KAMGyD,EAAe,GAErBpB,EAAA3B,IAAsB,SAACgD,EAAOpF,EAAOoE,EAAUiB,GAE9C,GADgBrF,GAASA,EAAzBsF,KACsC,mBAAdF,EAAMG,KAAoB,CACjD,IAAMC,EAAUJ,EAChBA,EAAQ,IAAIK,MACsC1F,iDAAAA,EAAeC,IAIjE,IADA,IAAIkC,EAASlC,EACNkC,EAAQA,EAASA,EAAxBC,GACC,GAAID,EAAAoD,KAAqBpD,EAArBoD,IAAAA,IAAyD,CAC5DF,EAAQI,EACR,KACA,CAKF,GAAIJ,aAAiBK,MACpB,MAAML,CAEP,CAED,KACCC,EAAYA,GAAa,CAAzB,GACUK,eAAiB/E,EAAcX,GACzC4E,EAAcQ,EAAOpF,EAAOoE,EAAUiB,GAKb,mBAAdD,EAAMG,MAChBI,WAAW,WACV,MAAMP,CACN,EAIF,CAFC,MAAOQ,GACR,MAAMA,CACN,CACD,EAED7B,KAAgB,SAAC/D,EAAOqC,GACvB,IAAKA,EACJ,MAAM,IAAIoD,MACT,uIAKF,IAAII,EACJ,OAAQxD,EAAWyD,UAClB,KChIyB,EDiIzB,KC/HmC,GDgInC,KCjI0B,EDkIzBD,GAAU,EACV,MACD,QACCA,GAAU,EAGZ,IAAKA,EAAS,CACb,IAAIE,EAAgBhG,EAAeC,GACnC,MAAUyF,IAAAA,MAAJ,wEACkEpD,EADlE,qBACiG0D,EADjG,QACsH1D,EAE5H,KAAA,CAEG8B,GAASA,EAAQnE,EAAOqC,EAC5B,EAED0B,EAAOC,IAAS,SAAAhE,GACf,IAAMC,EAASD,EAATC,KAIN,GAFAwE,GAAe,OAEFuB,IAAT/F,EACH,MAAM,IAAIwF,MACT,+IAECtC,EAAenD,GAFhB,OAGQW,EAAcX,OAEL,MAARC,GAA+B,iBAARA,EAAkB,CACnD,QAAuB+F,IAAnB/F,EAAI4B,UAA0CmE,IAAd/F,EAAImC,IACvC,MAAM,IAAIqD,MACT,2CAA2CxF,EAA3C,wEAEYF,EAAeC,GAF3B,MAEuCmD,EAAelD,GAFtD,uBAGqBF,EAAeC,GAHpC,wFAKQW,EAAcX,IAIxB,MAAM,IAAIyF,MACT,4CACEQ,MAAMC,QAAQjG,GAAQ,QAAUA,GAEnC,CAED,QACe+F,IAAdhG,EAAMmG,KACc,mBAAbnG,EAAMmG,KACO,iBAAbnG,EAAMmG,OACX,aAAcnG,GAEhB,MAAM,IAAIyF,MACT,0GACoCzF,EAAMmG,IAD1C,cAEChD,EAAenD,GAFhB,OAGQW,EAAcX,IAIxB,GAAyB,iBAAdA,EAAMC,KAChB,IAAK,IAAMmG,KAAOpG,EAAMoD,MACvB,GACY,MAAXgD,EAAI,IACO,MAAXA,EAAI,IACuB,mBAApBpG,EAAMoD,MAAMgD,IACC,MAApBpG,EAAMoD,MAAMgD,GAEZ,MAAM,IAAIX,MACT,iBAAgBW,EAAhB,oDACoBpG,EAAMoD,MAAMgD,GADhC,cAECjD,EAAenD,GAFhB,OAGQW,EAAcX,IAO1B,GAAyB,mBAAdA,EAAMC,MAAsBD,EAAMC,KAAKoG,UAAW,CAC5D,GAC4B,SAA3BrG,EAAMC,KAAKE,aACX4E,IACCA,EAAiBG,cAAcoB,IAAItG,EAAMC,MACzC,CACD,IAAMsG,EACL,yFACD,IACC,IAAMC,EAAYxG,EAAMC,OACxB8E,EAAiBG,cAAcuB,IAAIzG,EAAMC,MAAM,GAC/CsB,QAAQC,KACP+E,oCAAsCxG,EAAeyG,GAMtD,CAJC,MAAOhB,GACRjE,QAAQC,KACP+E,EAAI,8DAEL,CACD,CAED,IAAIG,EAAS1G,EAAMoD,MACfpD,EAAMC,iBACTyG,WElOmBC,EAAKvD,GAC3B,IAAK,IAAIwD,KAAKxD,EAAOuD,EAAIC,GAAKxD,EAAMwD,GACpC,OAA6BD,CAC7B,CF+NYE,CAAO,CAAD,EAAKH,IACNP,IFnNFW,SACfC,EACAL,EACAM,EACAjB,EACAkB,GAEAxD,OAAOyD,KAAKH,GAAWjF,QAAQ,SAAAqF,GAC9B,IAAI/B,EACJ,IACCA,EAAQ2B,EAAUI,GACjBT,EACAS,EACApB,EE4MA,OF1MA,KAtCyB,+CA2C1B,CAFC,MAAOH,GACRR,EAAQQ,CACR,CACGR,KAAWA,EAAMgC,WAAWvH,KAC/BA,EAAmBuF,EAAMgC,UAAW,EACpC7F,QAAQ6D,MACG4B,qBAAkB5B,EAAMgC,SAChCH,GAAiBA,KAAAA,KAAiB,KAItC,EACD,CEwLEH,CACC9G,EAAMC,KAAKoG,UACXK,EACA,EACA3G,EAAeC,GACf,WAAA,OAAMW,EAAcX,EAApB,EAED,CAEG0E,GAAeA,EAAc1E,EACjC,EAED+D,EAAAO,IAAkB,SAAAtE,GACbqE,GACHA,EAAUrE,GAEXyE,GAAe,CACf,EAEDV,EAAAe,IAAgB,SAACuC,EAAMC,EAAOrH,GAC7B,IAAKoH,IAAS5C,EACb,MAAUgB,IAAAA,MAAM,iDAGbZ,GAASA,EAAQwC,EAAMC,EAAOrH,EAClC,EAMD,IAAMuB,EAAO,SAAC+F,EAAUH,GAAX,MAAwB,CACpCI,IAAM,WACL,IAAMpB,EAAM,MAAQmB,EAAWH,EAC3BjC,GAAgBA,EAAasC,QAAQrB,GAAO,IAC/CjB,EAAapE,KAAKqF,GAClB7E,QAAQC,KAAsB+F,iBAAAA,EAA2BH,mBAAAA,GAE1D,EACDX,IAAM,WACL,IAAML,EAAM,MAAQmB,EAAWH,EAC3BjC,GAAgBA,EAAasC,QAAQrB,GAAO,IAC/CjB,EAAapE,KAAKqF,GAClB7E,QAAQC,KAAsB+F,iBAAAA,EAA4BH,oBAAAA,GAE3D,EAdW,EAiBPM,EAAuB,CAC5BC,SAAUnG,EAAK,WAAY,kBAC3BoG,WAAYpG,EAAK,aAAc,mBAC/BqC,SAAUrC,EAAK,WAAY,6BAGtBqG,EAAkBpE,OAAOqE,OAAO,CAAd,EAAkBJ,GAE1C3D,EAAQ/D,MAAQ,SAAAA,GACf,IAAMoD,EAAQpD,EAAMoD,MACpB,GACgB,OAAfpD,EAAMC,MACG,MAATmD,IACC,aAAcA,GAAS,WAAYA,GACnC,CACD,IAAM2E,EAAY/H,EAAMoD,MAAQ,CAAhC,EACA,IAAK,IAAIwD,KAAKxD,EAAO,CACpB,IAAM4E,EAAI5E,EAAMwD,GACN,aAANA,EAAkB5G,EAAMoB,SAAW4G,EACxB,WAANpB,EAAgB5G,EAAMiI,OAASD,EACnCD,EAASnB,GAAKoB,CACnB,CACD,CAGDhI,EAAMkI,UAAYL,EACdlD,GAAUA,EAAS3E,EACvB,EAED+D,EAAQG,OAAS,SAAAlE,GAChB,IE/SoBwD,EF+SZvD,EAA0BD,EAA1BC,KAAeiC,EAAWlC,EAQlCmC,GAYA,GAZInC,EAAJ6B,KACC7B,MAAgB8B,QAAQ,SAAAC,GACvB,GAAqB,iBAAVA,GAAsBA,QAAwBiE,IAAfjE,EAAM9B,KAAoB,CACnE,IAAMiH,EAAOzD,OAAOyD,KAAKnF,GAAOoG,KAAK,KACrC,MAAM,IAAI1C,MACT,0EAA0EyB,EAA1E,SACQvG,EAAcX,GAEvB,CACD,GAGkB,iBAATC,IAAsByC,EAAezC,IAAkB,MAATA,GAAe,CAMvE,IAAImI,EAAgBnG,EAA4BC,GAChD,GAAsB,KAAlBkG,EAEO,UAATnI,GAGkB,OAAlBmI,GACA1F,EAAe0F,IAEf7G,QAAQ8G,IAAID,EAAelG,EAC3BX,KAAAA,QAAQ6D,MACP,+EACCjC,EAAenD,GADhB,OAEQW,EAAcX,KAGb,UAATC,GAA6B,UAATA,GAA6B,UAATA,GACvB,UAAlBmI,EAQS,OAATnI,GACkB,UAAlBmI,GACkB,UAAlBA,GACkB,UAAlBA,GACkB,UAAlBA,EAEA7G,QAAQ6D,MACP,uFACCjC,EAAenD,GADhB,OAEQW,EAAcX,IAEJ,OAATC,GAAmC,OAAlBmI,EAC3B7G,QAAQ6D,MACP,kEACCjC,EAAenD,GADhB,OAEQW,EAAcX,IAEJ,OAATC,GAAmC,OAAlBmI,GAC3B7G,QAAQ6D,MACP,2DACCjC,EAAenD,GACRW,OAAAA,EAAcX,IA3BvBuB,QAAQ6D,MACP,oFACCjC,EAAenD,GACRW,OAAAA,EAAcX,SA2BlB,GAAa,MAATC,EAAc,CACxB,IAAIqI,EAA0B3G,EAAe3B,GAAOuI,OAAO,SAAAC,GAAS,OACnEvF,EAAiCwF,KAAKD,EAD6B,GAGhEF,EAAwB9H,QAC3Be,QAAQ6D,MACP,2DACCkD,EAAwBH,KAAK,MAC7B,qBACAhF,EAAenD,GAHhB,OAIQW,EAAcX,GAGxB,CACD,CAMD,GAJAyE,GAAe,EAEXR,GAAWA,EAAUjE,GAEF,MAAnBA,MAEH,IADA,IAAMkH,EAAO,GACJN,EAAI,EAAGA,EAAI5G,EAAK6B,IAAWrB,OAAQoG,IAAK,CAChD,IAAM7E,EAAQ/B,MAAgB4G,GAC9B,GAAK7E,GAAsB,MAAbA,EAAMqE,IAApB,CAEA,IAAMA,EAAMrE,EAAMqE,IAClB,IAA2B,IAAvBc,EAAKO,QAAQrB,GAAa,CAC7B7E,QAAQ6D,MACP,8EACyBgB,EADzB,mFAGCjD,EAAenD,GAHhB,OAIQW,EAAcX,IAIvB,KACA,CAEDkH,EAAKnG,KAAKqF,EAdV,CAeA,CAGF,GAAwB,MAApBpG,EAAKsF,KAAmD,MAA5BtF,EAAKsF,IAAuBoD,IAAM,CAGjE,IAAMC,EAAQ3I,EAAdsF,IAAAoD,IAAAvG,GACA,GAAIwG,EACH,IAAK,IAAI/B,EAAI,EAAGA,EAAI+B,EAAMnI,OAAQoG,GAAK,EAAG,CACzC,IAAMgC,EAAOD,EAAM/B,GACnB,GAAIgC,EAAJF,IACC,IAAK,IAAIG,EAAI,EAAGA,EAAID,EAAAF,IAAWlI,OAAQqI,IAEtC,IEhberF,EF+aHoF,EAAAF,IAAWG,KE9aZrF,EF+aK,CACf,IAAMuC,EAAgBhG,EAAeC,GACrC,MAAM,IAAIyF,MACmGmB,4GAAAA,EAAkBb,iBAAAA,0BAE/H,CAGH,CAEF,CACD,CACD,CGrcD+C"} \ No newline at end of file +{"version":3,"file":"debug.module.js","sources":["../src/check-props.js","../src/component-stack.js","../src/debug.js","../src/constants.js","../src/util.js","../src/index.js"],"sourcesContent":["const ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nlet loggedTypeFailures = {};\n\n/**\n * Reset the history of which prop type warnings have been logged.\n */\nexport function resetPropWarnings() {\n\tloggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * Adapted from https://github.com/facebook/prop-types/blob/master/checkPropTypes.js\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n */\nexport function checkPropTypes(\n\ttypeSpecs,\n\tvalues,\n\tlocation,\n\tcomponentName,\n\tgetStack\n) {\n\tObject.keys(typeSpecs).forEach(typeSpecName => {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${\n\t\t\t\t\t(getStack && `\\n${getStack()}`) || ''\n\t\t\t\t}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props =>

{props.children}
// div's owner is Foo\n * const Bar = props => {\n * return (\n * // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet showJsxSourcePluginWarning = true;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (showJsxSourcePluginWarning) {\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\t\tshowJsxSourcePluginWarning = false;\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign, isNaN } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\n/**\n * @param {import('./internal').VNode} vnode\n * @returns {Array}\n */\nfunction getDomChildren(vnode) {\n\tlet domChildren = [];\n\n\tif (!vnode._children) return domChildren;\n\n\tvnode._children.forEach(child => {\n\t\tif (child && typeof child.type === 'function') {\n\t\t\tdomChildren.push.apply(domChildren, getDomChildren(child));\n\t\t} else if (child && typeof child.type === 'string') {\n\t\t\tdomChildren.push(child.type);\n\t\t}\n\t});\n\n\treturn domChildren;\n}\n\n/**\n * @param {import('./internal').VNode} parent\n * @returns {string}\n */\nfunction getClosestDomNodeParentName(parent) {\n\tif (!parent) return '';\n\tif (typeof parent.type == 'function') {\n\t\tif (parent._parent == null) {\n\t\t\tif (parent._dom != null && parent._dom.parentNode != null) {\n\t\t\t\treturn parent._dom.parentNode.localName;\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\t\treturn getClosestDomNodeParentName(parent._parent);\n\t}\n\treturn /** @type {string} */ (parent.type);\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldRender = options._render;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t\t};\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode, errorInfo) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\terrorInfo = errorInfo || {};\n\t\t\terrorInfo.componentStack = getOwnerStack(vnode);\n\t\t\toldCatchError(error, vnode, oldVNode, errorInfo);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nonetheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type } = vnode;\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = ;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\tlet renderCount = 0;\n\tlet currentComponent;\n\toptions._render = vnode => {\n\t\tif (oldRender) {\n\t\t\toldRender(vnode);\n\t\t}\n\t\thooksAllowed = true;\n\n\t\tconst nextComponent = vnode._component;\n\t\tif (nextComponent === currentComponent) {\n\t\t\trenderCount++;\n\t\t} else {\n\t\t\trenderCount = 1;\n\t\t}\n\n\t\tif (renderCount >= 25) {\n\t\t\tthrow new Error(\n\t\t\t\t`Too many re-renders. This is limited to prevent an infinite loop ` +\n\t\t\t\t\t`which may lock up your browser. The component causing this is: ${getDisplayName(\n\t\t\t\t\t\tvnode\n\t\t\t\t\t)}`\n\t\t\t);\n\t\t}\n\n\t\tcurrentComponent = nextComponent;\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\tconst { type, _parent: parent } = vnode;\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `{{ foo: 123, bar: \"abc\" }}`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (typeof child === 'object' && child && child.type === undefined) {\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (vnode._component === currentComponent) {\n\t\t\trenderCount = 0;\n\t\t}\n\n\t\tif (\n\t\t\ttypeof type === 'string' &&\n\t\t\t(isTableElement(type) ||\n\t\t\t\ttype === 'p' ||\n\t\t\t\ttype === 'a' ||\n\t\t\t\ttype === 'button')\n\t\t) {\n\t\t\t// Avoid false positives when Preact only partially rendered the\n\t\t\t// HTML tree. Whilst we attempt to include the outer DOM in our\n\t\t\t// validation, this wouldn't work on the server for\n\t\t\t// `preact-render-to-string`. There we'd otherwise flood the terminal\n\t\t\t// with false positives, which we'd like to avoid.\n\t\t\tlet domParentName = getClosestDomNodeParentName(parent);\n\t\t\tif (domParentName !== '' && isTableElement(type)) {\n\t\t\t\tif (\n\t\t\t\t\ttype === 'table' &&\n\t\t\t\t\t// Tables can be nested inside each other if it's inside a cell.\n\t\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Learn/HTML/Tables/Advanced#nesting_tables\n\t\t\t\t\tdomParentName !== 'td' &&\n\t\t\t\t\tisTableElement(domParentName)\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your
should have a
should have a
should not have a table-node parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a
parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\ttype === 'tr' &&\n\t\t\t\t\tdomParentName !== 'thead' &&\n\t\t\t\t\tdomParentName !== 'tfoot' &&\n\t\t\t\t\tdomParentName !== 'tbody'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'td' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'th' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your .' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'p') {\n\t\t\t\tlet illegalDomChildrenTypes = getDomChildren(vnode).filter(childType =>\n\t\t\t\t\tILLEGAL_PARAGRAPH_CHILD_ELEMENTS.test(childType)\n\t\t\t\t);\n\t\t\t\tif (illegalDomChildrenTypes.length) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of paragraph. Your

should not have ' +\n\t\t\t\t\t\t\tillegalDomChildrenTypes.join(', ') +\n\t\t\t\t\t\t\t' as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'a' || type === 'button') {\n\t\t\t\tif (getDomChildren(vnode).indexOf(type) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t`Improper nesting of interactive content. Your <${type}>` +\n\t\t\t\t\t\t\t` should not have other ${type === 'a' ? 'anchor' : 'button'}` +\n\t\t\t\t\t\t\t' tags as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\n\t\tif (vnode._component != null && vnode._component.__hooks != null) {\n\t\t\t// Validate that none of the hooks in this component contain arguments that are NaN.\n\t\t\t// This is a common mistake that can be hard to debug, so we want to catch it early.\n\t\t\tconst hooks = vnode._component.__hooks._list;\n\t\t\tif (hooks) {\n\t\t\t\tfor (let i = 0; i < hooks.length; i += 1) {\n\t\t\t\t\tconst hook = hooks[i];\n\t\t\t\t\tif (hook._args) {\n\t\t\t\t\t\tfor (let j = 0; j < hook._args.length; j++) {\n\t\t\t\t\t\t\tconst arg = hook._args[j];\n\t\t\t\t\t\t\tif (isNaN(arg)) {\n\t\t\t\t\t\t\t\tconst componentName = getDisplayName(vnode);\n\t\t\t\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\t\t\t\t`Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index ${i} in component ${componentName} was called with NaN.`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function (update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nfunction isTableElement(type) {\n\treturn (\n\t\ttype === 'table' ||\n\t\ttype === 'tfoot' ||\n\t\ttype === 'tbody' ||\n\t\ttype === 'thead' ||\n\t\ttype === 'td' ||\n\t\ttype === 'tr' ||\n\t\ttype === 'th'\n\t);\n}\n\nconst ILLEGAL_PARAGRAPH_CHILD_ELEMENTS =\n\t/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/;\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function (callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..' : ' />'\n\t}`;\n}\n\noptions._hydrationMismatch = (newVNode, excessDomChildren) => {\n\tconst { type } = newVNode;\n\tconst availableTypes = excessDomChildren\n\t\t.map(child => child && child.localName)\n\t\t.filter(Boolean);\n\tconsole.error(\n\t\t`Expected a DOM node of type \"${type}\" but found \"${availableTypes.join(', ')}\" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\\n\\n${getOwnerStack(newVNode)}`\n\t);\n};\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\nexport function isNaN(value) {\n\treturn value !== value;\n}\n","import { initDebug } from './debug';\nimport 'preact/devtools';\n\ninitDebug();\n\nexport { resetPropWarnings } from './check-props';\n\nexport {\n\tgetCurrentVNode,\n\tgetDisplayName,\n\tgetOwnerStack\n} from './component-stack';\n"],"names":["loggedTypeFailures","resetPropWarnings","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","showJsxSourcePluginWarning","isPossibleOwner","getOwnerStack","stack","next","__o","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","getDomChildren","domChildren","__k","forEach","child","apply","getClosestDomNodeParentName","parent","__","__e","parentNode","localName","setState","Component","prototype","isTableElement","update","callback","this","__v","state","call","ILLEGAL_PARAGRAPH_CHILD_ELEMENTS","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","__P","options","__m","newVNode","excessDomChildren","availableTypes","map","filter","Boolean","error","join","oldDiff","__b","oldDiffed","diffed","oldRoot","oldVNode","oldRender","__r","pop","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","__h","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","errorInfo","__c","then","promise","Error","componentStack","setTimeout","e","isValid","nodeType","componentName","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","__f","obj","i","assign","typeSpecs","location","getStack","keys","typeSpecName","message","checkPropTypes","currentComponent","renderCount","nextComponent","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","domParentName","illegalDomChildrenTypes","childType","test","__H","hooks","hook","j","initDebug"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/debug/dist/debug.umd.js b/node_modules/preact/debug/dist/debug.umd.js index 89dab80..363bef3 100644 --- a/node_modules/preact/debug/dist/debug.umd.js +++ b/node_modules/preact/debug/dist/debug.umd.js @@ -1,2 +1,2 @@ -!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("preact"),require("preact/devtools")):"function"==typeof define&&define.amd?define(["exports","preact","preact/devtools"],e):e((n||self).preactDebug={},n.preact)}(this,function(n,e){var t={};function o(n){return n.type===e.Fragment?"Fragment":"function"==typeof n.type?n.type.displayName||n.type.name:"string"==typeof n.type?n.type:"#text"}var r=[],a=[];function i(){return r.length>0?r[r.length-1]:null}var s=!1;function l(n){return"function"==typeof n.type&&n.type!=e.Fragment}function c(n){for(var e=[n],t=n;null!=t.__o;)e.push(t.__o),t=t.__o;return e.reduce(function(n,e){n+=" in "+o(e);var t=e.__source;return t?n+=" (at "+t.fileName+":"+t.lineNumber+")":s||(s=!0,console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.")),n+"\n"},"")}var u="function"==typeof WeakMap;function f(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,f(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function p(n){return n?"function"==typeof n.type?null===n.__?null!==n.__e&&null!==n.__e.parentNode?n.__e.parentNode.localName:"":p(n.__):n.type:""}var d=e.Component.prototype.setState;function h(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}e.Component.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+c(i())),d.call(this,n,e)};var v=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,y=e.Component.prototype.forceUpdate;function b(n){var e=n.props,t=o(n),r="";for(var a in e)if(e.hasOwnProperty(a)&&"children"!==a){var i=e[a];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),r+=" "+a+"="+JSON.stringify(i)}var s=e.children;return"<"+t+r+(s&&s.length?">..":" />")}e.Component.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+c(i())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+c(this.__v)),y.call(this,n)},function(){!function(){var n=e.options.__b,t=e.options.diffed,o=e.options.__,i=e.options.vnode,s=e.options.__r;e.options.diffed=function(n){l(n)&&a.pop(),r.pop(),t&&t(n)},e.options.__b=function(e){l(e)&&r.push(e),n&&n(e)},e.options.__=function(n,e){a=[],o&&o(n,e)},e.options.vnode=function(n){n.__o=a.length>0?a[a.length-1]:null,i&&i(n)},e.options.__r=function(n){l(n)&&a.push(n),s&&s(n)}}();var n=!1,i=e.options.__b,s=e.options.diffed,d=e.options.vnode,y=e.options.__r,m=e.options.__e,w=e.options.__,g=e.options.__h,E=u?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];e.options.__e=function(n,e,t,r){if(e&&e.__c&&"function"==typeof n.then){var a=n;n=new Error("Missing Suspense. The throwing component was: "+o(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=a;break}if(n instanceof Error)throw n}try{(r=r||{}).componentStack=c(e),m(n,e,t,r),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},e.options.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var t;switch(e.nodeType){case 1:case 11:case 9:t=!0;break;default:t=!1}if(!t){var r=o(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+r+" />, "+e+");")}w&&w(n,e)},e.options.__b=function(e){var r=e.type;if(n=!0,void 0===r)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+b(e)+"\n\n"+c(e));if(null!=r&&"object"==typeof r){if(void 0!==r.__k&&void 0!==r.__e)throw new Error("Invalid type passed to createElement(): "+r+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+o(e)+" = "+b(r)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+c(e));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(r)?"array":r))}if(void 0!==e.ref&&"function"!=typeof e.ref&&"object"!=typeof e.ref&&!("$$typeof"in e))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof e.ref+"] instead\n"+b(e)+"\n\n"+c(e));if("string"==typeof e.type)for(var a in e.props)if("o"===a[0]&&"n"===a[1]&&"function"!=typeof e.props[a]&&null!=e.props[a])throw new Error("Component's \""+a+'" property should be a function, but got ['+typeof e.props[a]+"] instead\n"+b(e)+"\n\n"+c(e));if("function"==typeof e.type&&e.type.propTypes){if("Lazy"===e.type.displayName&&E&&!E.lazyPropTypes.has(e.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var l=e.type();E.lazyPropTypes.set(e.type,!0),console.warn(s+"Component wrapped in lazy() is "+o(l))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var u=e.props;e.type.__f&&delete(u=function(n,e){for(var t in e)n[t]=e[t];return n}({},u)).ref,function(n,e,o,r,a){Object.keys(n).forEach(function(o){var i;try{i=n[o](e,o,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in t)&&(t[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(e.type.propTypes,u,0,o(e),function(){return c(e)})}i&&i(e)},e.options.__r=function(e){y&&y(e),n=!0},e.options.__h=function(e,t,o){if(!e||!n)throw new Error("Hook can only be invoked from render methods.");g&&g(e,t,o)};var _=function(n,e){return{get:function(){var t="get"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var t="set"+n+e;k&&k.indexOf(t)<0&&(k.push(t),console.warn("setting vnode."+n+" is not allowed, "+e))}}},T={nodeName:_("nodeName","use vnode.type"),attributes:_("attributes","use vnode.props"),children:_("children","use vnode.props.children")},j=Object.create({},T);e.options.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var t=n.props={};for(var o in e){var r=e[o];"__source"===o?n.__source=r:"__self"===o?n.__self=r:t[o]=r}}n.__proto__=j,d&&d(n)},e.options.diffed=function(e){var t,r=e.type,a=e.__;if(e.__k&&e.__k.forEach(function(n){if("object"==typeof n&&n&&void 0===n.type){var t=Object.keys(n).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+t+"}.\n\n"+c(e))}}),"string"==typeof r&&(h(r)||"p"===r)){var i=p(a);if(""!==i)"table"===r&&"td"!==i&&h(i)?(console.log(i,a.__e),console.error("Improper nesting of table. Your

should have a
should have a
should not have a table-node parent."+b(e)+"\n\n"+c(e))):"thead"!==r&&"tfoot"!==r&&"tbody"!==r||"table"===i?"tr"===r&&"thead"!==i&&"tfoot"!==i&&"tbody"!==i&&"table"!==i?console.error("Improper nesting of table. Your should have a parent."+b(e)+"\n\n"+c(e)):"td"===r&&"tr"!==i?console.error("Improper nesting of table. Your parent."+b(e)+"\n\n"+c(e)):"th"===r&&"tr"!==i&&console.error("Improper nesting of table. Your ."+b(e)+"\n\n"+c(e)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+b(e)+"\n\n"+c(e));else if("p"===r){var l=f(e).filter(function(n){return v.test(n)});l.length&&console.error("Improper nesting of paragraph. Your

should not have "+l.join(", ")+"as child-elements."+b(e)+"\n\n"+c(e))}}if(n=!1,s&&s(e),null!=e.__k)for(var u=[],d=0;d0?r[r.length-1]:null}var s=!0;function c(n){return"function"==typeof n.type&&n.type!=e.Fragment}function l(n){for(var e=[n],o=n;null!=o.__o;)e.push(o.__o),o=o.__o;return e.reduce(function(n,e){n+=" in "+t(e);var o=e.__source;return o?n+=" (at "+o.fileName+":"+o.lineNumber+")":s&&console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons."),s=!1,n+"\n"},"")}var u="function"==typeof WeakMap;function f(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,f(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function d(n){return n?"function"==typeof n.type?null==n.__?null!=n.__e&&null!=n.__e.parentNode?n.__e.parentNode.localName:"":d(n.__):n.type:""}var p=e.Component.prototype.setState;function h(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}e.Component.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+l(i())),p.call(this,n,e)};var v=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,y=e.Component.prototype.forceUpdate;function m(n){var e=n.props,o=t(n),r="";for(var a in e)if(e.hasOwnProperty(a)&&"children"!==a){var i=e[a];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),r+=" "+a+"="+JSON.stringify(i)}var s=e.children;return"<"+o+r+(s&&s.length?">..":" />")}e.Component.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+l(i())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+l(this.__v)),y.call(this,n)},e.options.__m=function(n,e){var o=n.type,t=e.map(function(n){return n&&n.localName}).filter(Boolean);console.error('Expected a DOM node of type "'+o+'" but found "'+t.join(", ")+"\" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\n\n"+l(n))},function(){!function(){var n=e.options.__b,o=e.options.diffed,t=e.options.__,i=e.options.vnode,s=e.options.__r;e.options.diffed=function(n){c(n)&&a.pop(),r.pop(),o&&o(n)},e.options.__b=function(e){c(e)&&r.push(e),n&&n(e)},e.options.__=function(n,e){a=[],t&&t(n,e)},e.options.vnode=function(n){n.__o=a.length>0?a[a.length-1]:null,i&&i(n)},e.options.__r=function(n){c(n)&&a.push(n),s&&s(n)}}();var n=!1,i=e.options.__b,s=e.options.diffed,p=e.options.vnode,y=e.options.__r,b=e.options.__e,g=e.options.__,w=e.options.__h,E=u?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];e.options.__e=function(n,e,o,r){if(e&&e.__c&&"function"==typeof n.then){var a=n;n=new Error("Missing Suspense. The throwing component was: "+t(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=a;break}if(n instanceof Error)throw n}try{(r=r||{}).componentStack=l(e),b(n,e,o,r),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},e.options.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var o;switch(e.nodeType){case 1:case 11:case 9:o=!0;break;default:o=!1}if(!o){var r=t(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+r+" />, "+e+");")}g&&g(n,e)},e.options.__b=function(e){var r=e.type;if(n=!0,void 0===r)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+m(e)+"\n\n"+l(e));if(null!=r&&"object"==typeof r){if(void 0!==r.__k&&void 0!==r.__e)throw new Error("Invalid type passed to createElement(): "+r+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+t(e)+" = "+m(r)+";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+l(e));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(r)?"array":r))}if(void 0!==e.ref&&"function"!=typeof e.ref&&"object"!=typeof e.ref&&!("$$typeof"in e))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof e.ref+"] instead\n"+m(e)+"\n\n"+l(e));if("string"==typeof e.type)for(var a in e.props)if("o"===a[0]&&"n"===a[1]&&"function"!=typeof e.props[a]&&null!=e.props[a])throw new Error("Component's \""+a+'" property should be a function, but got ['+typeof e.props[a]+"] instead\n"+m(e)+"\n\n"+l(e));if("function"==typeof e.type&&e.type.propTypes){if("Lazy"===e.type.displayName&&E&&!E.lazyPropTypes.has(e.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var c=e.type();E.lazyPropTypes.set(e.type,!0),console.warn(s+"Component wrapped in lazy() is "+t(c))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var u=e.props;e.type.__f&&delete(u=function(n,e){for(var o in e)n[o]=e[o];return n}({},u)).ref,function(n,e,t,r,a){Object.keys(n).forEach(function(t){var i;try{i=n[t](e,t,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in o)&&(o[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(e.type.propTypes,u,0,t(e),function(){return l(e)})}i&&i(e)};var T,_=0;e.options.__r=function(e){y&&y(e),n=!0;var o=e.__c;if(o===T?_++:_=1,_>=25)throw new Error("Too many re-renders. This is limited to prevent an infinite loop which may lock up your browser. The component causing this is: "+t(e));T=o},e.options.__h=function(e,o,t){if(!e||!n)throw new Error("Hook can only be invoked from render methods.");w&&w(e,o,t)};var O=function(n,e){return{get:function(){var o="get"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var o="set"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:O("nodeName","use vnode.type"),attributes:O("attributes","use vnode.props"),children:O("children","use vnode.props.children")},j=Object.create({},I);e.options.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var o=n.props={};for(var t in e){var r=e[t];"__source"===t?n.__source=r:"__self"===t?n.__self=r:o[t]=r}}n.__proto__=j,p&&p(n)},e.options.diffed=function(e){var o,r=e.type,a=e.__;if(e.__k&&e.__k.forEach(function(n){if("object"==typeof n&&n&&void 0===n.type){var o=Object.keys(n).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+o+"}.\n\n"+l(e))}}),e.__c===T&&(_=0),"string"==typeof r&&(h(r)||"p"===r||"a"===r||"button"===r)){var i=d(a);if(""!==i&&h(r))"table"===r&&"td"!==i&&h(i)?console.error("Improper nesting of table. Your

should not have a table-node parent."+m(e)+"\n\n"+l(e)):"thead"!==r&&"tfoot"!==r&&"tbody"!==r||"table"===i?"tr"===r&&"thead"!==i&&"tfoot"!==i&&"tbody"!==i?console.error("Improper nesting of table. Your should have a parent."+m(e)+"\n\n"+l(e)):"td"===r&&"tr"!==i?console.error("Improper nesting of table. Your parent."+m(e)+"\n\n"+l(e)):"th"===r&&"tr"!==i&&console.error("Improper nesting of table. Your ."+m(e)+"\n\n"+l(e)):console.error("Improper nesting of table. Your should have a
should have a
should have a
parent."+m(e)+"\n\n"+l(e));else if("p"===r){var c=f(e).filter(function(n){return v.test(n)});c.length&&console.error("Improper nesting of paragraph. Your

should not have "+c.join(", ")+" as child-elements."+m(e)+"\n\n"+l(e))}else"a"!==r&&"button"!==r||-1!==f(e).indexOf(r)&&console.error("Improper nesting of interactive content. Your <"+r+"> should not have other "+("a"===r?"anchor":"button")+" tags as child-elements."+m(e)+"\n\n"+l(e))}if(n=!1,s&&s(e),null!=e.__k)for(var u=[],p=0;p {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${\n\t\t\t\t\t(getStack && `\\n${getStack()}`) || ''\n\t\t\t\t}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props =>

{props.children}
// div's owner is Foo\n * const Bar = props => {\n * return (\n * // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet hasBabelPlugin = false;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (!hasBabelPlugin) {\n\t\t\thasBabelPlugin = true;\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign, isNaN } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\n/**\n * @param {import('./internal').VNode} vnode\n * @returns {Array}\n */\nfunction getDomChildren(vnode) {\n\tlet domChildren = [];\n\n\tif (!vnode._children) return domChildren;\n\n\tvnode._children.forEach(child => {\n\t\tif (child && typeof child.type === 'function') {\n\t\t\tdomChildren.push.apply(domChildren, getDomChildren(child));\n\t\t} else if (child && typeof child.type === 'string') {\n\t\t\tdomChildren.push(child.type);\n\t\t}\n\t});\n\n\treturn domChildren;\n}\n\n/**\n * @param {import('./internal').VNode} parent\n * @returns {string}\n */\nfunction getClosestDomNodeParentName(parent) {\n\tif (!parent) return '';\n\tif (typeof parent.type == 'function') {\n\t\tif (parent._parent === null) {\n\t\t\tif (parent._dom !== null && parent._dom.parentNode !== null) {\n\t\t\t\treturn parent._dom.parentNode.localName;\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\t\treturn getClosestDomNodeParentName(parent._parent);\n\t}\n\treturn /** @type {string} */ (parent.type);\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldRender = options._render;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t };\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode, errorInfo) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\terrorInfo = errorInfo || {};\n\t\t\terrorInfo.componentStack = getOwnerStack(vnode);\n\t\t\toldCatchError(error, vnode, oldVNode, errorInfo);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nonetheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type } = vnode;\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = ;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (oldRender) {\n\t\t\toldRender(vnode);\n\t\t}\n\t\thooksAllowed = true;\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\tconst { type, _parent: parent } = vnode;\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `{{ foo: 123, bar: \"abc\" }}`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (typeof child === 'object' && child && child.type === undefined) {\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (typeof type === 'string' && (isTableElement(type) || type === 'p')) {\n\t\t\t// Avoid false positives when Preact only partially rendered the\n\t\t\t// HTML tree. Whilst we attempt to include the outer DOM in our\n\t\t\t// validation, this wouldn't work on the server for\n\t\t\t// `preact-render-to-string`. There we'd otherwise flood the terminal\n\t\t\t// with false positives, which we'd like to avoid.\n\t\t\tlet domParentName = getClosestDomNodeParentName(parent);\n\t\t\tif (domParentName !== '') {\n\t\t\t\tif (\n\t\t\t\t\ttype === 'table' &&\n\t\t\t\t\t// Tables can be nested inside each other if it's inside a cell.\n\t\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Learn/HTML/Tables/Advanced#nesting_tables\n\t\t\t\t\tdomParentName !== 'td' &&\n\t\t\t\t\tisTableElement(domParentName)\n\t\t\t\t) {\n\t\t\t\t\tconsole.log(domParentName, parent._dom);\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your
should not have a table-node parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a
parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\ttype === 'tr' &&\n\t\t\t\t\tdomParentName !== 'thead' &&\n\t\t\t\t\tdomParentName !== 'tfoot' &&\n\t\t\t\t\tdomParentName !== 'tbody' &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'td' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'th' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your .' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'p') {\n\t\t\t\tlet illegalDomChildrenTypes = getDomChildren(vnode).filter(childType =>\n\t\t\t\t\tILLEGAL_PARAGRAPH_CHILD_ELEMENTS.test(childType)\n\t\t\t\t);\n\t\t\t\tif (illegalDomChildrenTypes.length) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of paragraph. Your

should not have ' +\n\t\t\t\t\t\t\tillegalDomChildrenTypes.join(', ') +\n\t\t\t\t\t\t\t'as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\n\t\tif (vnode._component != null && vnode._component.__hooks != null) {\n\t\t\t// Validate that none of the hooks in this component contain arguments that are NaN.\n\t\t\t// This is a common mistake that can be hard to debug, so we want to catch it early.\n\t\t\tconst hooks = vnode._component.__hooks._list;\n\t\t\tif (hooks) {\n\t\t\t\tfor (let i = 0; i < hooks.length; i += 1) {\n\t\t\t\t\tconst hook = hooks[i];\n\t\t\t\t\tif (hook._args) {\n\t\t\t\t\t\tfor (let j = 0; j < hook._args.length; j++) {\n\t\t\t\t\t\t\tconst arg = hook._args[j];\n\t\t\t\t\t\t\tif (isNaN(arg)) {\n\t\t\t\t\t\t\t\tconst componentName = getDisplayName(vnode);\n\t\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\t`Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index ${i} in component ${componentName} was called with NaN.`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function (update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nfunction isTableElement(type) {\n\treturn (\n\t\ttype === 'table' ||\n\t\ttype === 'tfoot' ||\n\t\ttype === 'tbody' ||\n\t\ttype === 'thead' ||\n\t\ttype === 'td' ||\n\t\ttype === 'tr' ||\n\t\ttype === 'th'\n\t);\n}\n\nconst ILLEGAL_PARAGRAPH_CHILD_ELEMENTS =\n\t/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/;\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function (callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..' : ' />'\n\t}`;\n}\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\nexport function isNaN(value) {\n\treturn value !== value;\n}\n","import { initDebug } from './debug';\nimport 'preact/devtools';\n\ninitDebug();\n\nexport { resetPropWarnings } from './check-props';\n"],"names":["loggedTypeFailures","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","hasBabelPlugin","isPossibleOwner","getOwnerStack","stack","next","__o","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","getDomChildren","domChildren","__k","forEach","child","apply","getClosestDomNodeParentName","parent","__","__e","parentNode","localName","setState","Component","prototype","isTableElement","update","callback","this","__v","state","call","ILLEGAL_PARAGRAPH_CHILD_ELEMENTS","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","oldDiff","options","__b","oldDiffed","diffed","oldRoot","oldVNode","oldRender","__r","pop","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","__h","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","error","errorInfo","__c","then","promise","Error","componentStack","setTimeout","e","isValid","nodeType","componentName","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","obj","i","assign","checkPropTypes","typeSpecs","location","getStack","keys","typeSpecName","message","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","join","domParentName","log","illegalDomChildrenTypes","filter","childType","test","__H","hooks","hook","j","initDebug","resetPropWarnings"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"debug.umd.js","sources":["../src/check-props.js","../src/component-stack.js","../src/debug.js","../src/constants.js","../src/util.js","../src/index.js"],"sourcesContent":["const ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nlet loggedTypeFailures = {};\n\n/**\n * Reset the history of which prop type warnings have been logged.\n */\nexport function resetPropWarnings() {\n\tloggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * Adapted from https://github.com/facebook/prop-types/blob/master/checkPropTypes.js\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n */\nexport function checkPropTypes(\n\ttypeSpecs,\n\tvalues,\n\tlocation,\n\tcomponentName,\n\tgetStack\n) {\n\tObject.keys(typeSpecs).forEach(typeSpecName => {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${\n\t\t\t\t\t(getStack && `\\n${getStack()}`) || ''\n\t\t\t\t}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props =>

{props.children}
// div's owner is Foo\n * const Bar = props => {\n * return (\n * // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet showJsxSourcePluginWarning = true;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (showJsxSourcePluginWarning) {\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\t\tshowJsxSourcePluginWarning = false;\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign, isNaN } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\n/**\n * @param {import('./internal').VNode} vnode\n * @returns {Array}\n */\nfunction getDomChildren(vnode) {\n\tlet domChildren = [];\n\n\tif (!vnode._children) return domChildren;\n\n\tvnode._children.forEach(child => {\n\t\tif (child && typeof child.type === 'function') {\n\t\t\tdomChildren.push.apply(domChildren, getDomChildren(child));\n\t\t} else if (child && typeof child.type === 'string') {\n\t\t\tdomChildren.push(child.type);\n\t\t}\n\t});\n\n\treturn domChildren;\n}\n\n/**\n * @param {import('./internal').VNode} parent\n * @returns {string}\n */\nfunction getClosestDomNodeParentName(parent) {\n\tif (!parent) return '';\n\tif (typeof parent.type == 'function') {\n\t\tif (parent._parent == null) {\n\t\t\tif (parent._dom != null && parent._dom.parentNode != null) {\n\t\t\t\treturn parent._dom.parentNode.localName;\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\t\treturn getClosestDomNodeParentName(parent._parent);\n\t}\n\treturn /** @type {string} */ (parent.type);\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldRender = options._render;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t\t};\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode, errorInfo) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\terrorInfo = errorInfo || {};\n\t\t\terrorInfo.componentStack = getOwnerStack(vnode);\n\t\t\toldCatchError(error, vnode, oldVNode, errorInfo);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nonetheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type } = vnode;\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = ;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\tlet renderCount = 0;\n\tlet currentComponent;\n\toptions._render = vnode => {\n\t\tif (oldRender) {\n\t\t\toldRender(vnode);\n\t\t}\n\t\thooksAllowed = true;\n\n\t\tconst nextComponent = vnode._component;\n\t\tif (nextComponent === currentComponent) {\n\t\t\trenderCount++;\n\t\t} else {\n\t\t\trenderCount = 1;\n\t\t}\n\n\t\tif (renderCount >= 25) {\n\t\t\tthrow new Error(\n\t\t\t\t`Too many re-renders. This is limited to prevent an infinite loop ` +\n\t\t\t\t\t`which may lock up your browser. The component causing this is: ${getDisplayName(\n\t\t\t\t\t\tvnode\n\t\t\t\t\t)}`\n\t\t\t);\n\t\t}\n\n\t\tcurrentComponent = nextComponent;\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\tconst { type, _parent: parent } = vnode;\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `{{ foo: 123, bar: \"abc\" }}`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (typeof child === 'object' && child && child.type === undefined) {\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tif (vnode._component === currentComponent) {\n\t\t\trenderCount = 0;\n\t\t}\n\n\t\tif (\n\t\t\ttypeof type === 'string' &&\n\t\t\t(isTableElement(type) ||\n\t\t\t\ttype === 'p' ||\n\t\t\t\ttype === 'a' ||\n\t\t\t\ttype === 'button')\n\t\t) {\n\t\t\t// Avoid false positives when Preact only partially rendered the\n\t\t\t// HTML tree. Whilst we attempt to include the outer DOM in our\n\t\t\t// validation, this wouldn't work on the server for\n\t\t\t// `preact-render-to-string`. There we'd otherwise flood the terminal\n\t\t\t// with false positives, which we'd like to avoid.\n\t\t\tlet domParentName = getClosestDomNodeParentName(parent);\n\t\t\tif (domParentName !== '' && isTableElement(type)) {\n\t\t\t\tif (\n\t\t\t\t\ttype === 'table' &&\n\t\t\t\t\t// Tables can be nested inside each other if it's inside a cell.\n\t\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Learn/HTML/Tables/Advanced#nesting_tables\n\t\t\t\t\tdomParentName !== 'td' &&\n\t\t\t\t\tisTableElement(domParentName)\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your
should have a
should have a
should not have a table-node parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\t\t\tdomParentName !== 'table'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a
parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\ttype === 'tr' &&\n\t\t\t\t\tdomParentName !== 'thead' &&\n\t\t\t\t\tdomParentName !== 'tfoot' &&\n\t\t\t\t\tdomParentName !== 'tbody'\n\t\t\t\t) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your should have a parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'td' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your parent.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (type === 'th' && domParentName !== 'tr') {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of table. Your .' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'p') {\n\t\t\t\tlet illegalDomChildrenTypes = getDomChildren(vnode).filter(childType =>\n\t\t\t\t\tILLEGAL_PARAGRAPH_CHILD_ELEMENTS.test(childType)\n\t\t\t\t);\n\t\t\t\tif (illegalDomChildrenTypes.length) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Improper nesting of paragraph. Your

should not have ' +\n\t\t\t\t\t\t\tillegalDomChildrenTypes.join(', ') +\n\t\t\t\t\t\t\t' as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} else if (type === 'a' || type === 'button') {\n\t\t\t\tif (getDomChildren(vnode).indexOf(type) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t`Improper nesting of interactive content. Your <${type}>` +\n\t\t\t\t\t\t\t` should not have other ${type === 'a' ? 'anchor' : 'button'}` +\n\t\t\t\t\t\t\t' tags as child-elements.' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\n\t\tif (vnode._component != null && vnode._component.__hooks != null) {\n\t\t\t// Validate that none of the hooks in this component contain arguments that are NaN.\n\t\t\t// This is a common mistake that can be hard to debug, so we want to catch it early.\n\t\t\tconst hooks = vnode._component.__hooks._list;\n\t\t\tif (hooks) {\n\t\t\t\tfor (let i = 0; i < hooks.length; i += 1) {\n\t\t\t\t\tconst hook = hooks[i];\n\t\t\t\t\tif (hook._args) {\n\t\t\t\t\t\tfor (let j = 0; j < hook._args.length; j++) {\n\t\t\t\t\t\t\tconst arg = hook._args[j];\n\t\t\t\t\t\t\tif (isNaN(arg)) {\n\t\t\t\t\t\t\t\tconst componentName = getDisplayName(vnode);\n\t\t\t\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\t\t\t\t`Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index ${i} in component ${componentName} was called with NaN.`\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function (update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nfunction isTableElement(type) {\n\treturn (\n\t\ttype === 'table' ||\n\t\ttype === 'tfoot' ||\n\t\ttype === 'tbody' ||\n\t\ttype === 'thead' ||\n\t\ttype === 'td' ||\n\t\ttype === 'tr' ||\n\t\ttype === 'th'\n\t);\n}\n\nconst ILLEGAL_PARAGRAPH_CHILD_ELEMENTS =\n\t/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/;\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function (callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..' : ' />'\n\t}`;\n}\n\noptions._hydrationMismatch = (newVNode, excessDomChildren) => {\n\tconst { type } = newVNode;\n\tconst availableTypes = excessDomChildren\n\t\t.map(child => child && child.localName)\n\t\t.filter(Boolean);\n\tconsole.error(\n\t\t`Expected a DOM node of type \"${type}\" but found \"${availableTypes.join(', ')}\" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\\n\\n${getOwnerStack(newVNode)}`\n\t);\n};\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\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\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\nexport function isNaN(value) {\n\treturn value !== value;\n}\n","import { initDebug } from './debug';\nimport 'preact/devtools';\n\ninitDebug();\n\nexport { resetPropWarnings } from './check-props';\n\nexport {\n\tgetCurrentVNode,\n\tgetDisplayName,\n\tgetOwnerStack\n} from './component-stack';\n"],"names":["loggedTypeFailures","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","showJsxSourcePluginWarning","isPossibleOwner","getOwnerStack","stack","next","__o","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","getDomChildren","domChildren","__k","forEach","child","apply","getClosestDomNodeParentName","parent","__","__e","parentNode","localName","setState","Component","prototype","isTableElement","update","callback","this","__v","state","call","ILLEGAL_PARAGRAPH_CHILD_ELEMENTS","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","__P","options","__m","newVNode","excessDomChildren","availableTypes","map","filter","Boolean","error","join","oldDiff","__b","oldDiffed","diffed","oldRoot","oldVNode","oldRender","__r","pop","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","__h","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","errorInfo","__c","then","promise","Error","componentStack","setTimeout","e","isValid","nodeType","componentName","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","__f","obj","i","assign","typeSpecs","location","getStack","keys","typeSpecName","message","checkPropTypes","currentComponent","renderCount","nextComponent","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","domParentName","illegalDomChildrenTypes","childType","test","__H","hooks","hook","j","initDebug"],"mappings":"wTAAA,IAEIA,EAAqB,CAAA,ECMlB,SAASC,EAAeC,GAC9B,OAAIA,EAAMC,OAASC,EAAAA,SACX,WACwB,mBAAdF,EAAMC,KAChBD,EAAMC,KAAKE,aAAeH,EAAMC,KAAKG,KACb,iBAAdJ,EAAMC,KAChBD,EAAMC,KAGP,OACR,CAMA,IAAII,EAAc,GAoBdC,EAAa,YAMDC,IACf,OAAOF,EAAYG,OAAS,EAAIH,EAAYA,EAAYG,OAAS,GAAK,IACvE,CAQA,IAAIC,GAA6B,EAMjC,SAASC,EAAgBV,GACxB,MAA4B,mBAAdA,EAAMC,MAAsBD,EAAMC,MAAQC,EAAAA,QACzD,CAOO,SAASS,EAAcX,GAG7B,IAFA,IAAMY,EAAQ,CAACZ,GACXa,EAAOb,EACW,MAAfa,EAAIC,KACVF,EAAMG,KAAKF,EAAIC,KACfD,EAAOA,EAAIC,IAGZ,OAAOF,EAAMI,OAAO,SAACC,EAAKC,GACzBD,GAAelB,QAAAA,EAAemB,GAE9B,IAAMC,EAASD,EAAME,SAUrB,OATID,EACHF,GAAeE,QAAAA,EAAOE,SAAYF,IAAAA,EAAOG,WAC1C,IAAWb,GACVc,QAAQC,KACP,kLAGFf,GAA6B,EAErBQ,EAAO,IAChB,EAAG,GACJ,CCnFA,IAAMQ,EAAuC,mBAAXC,QAMlC,SAASC,EAAe3B,GACvB,IAAI4B,EAAc,GAElB,OAAK5B,EAAK6B,KAEV7B,EAAK6B,IAAWC,QAAQ,SAAAC,GACnBA,GAA+B,mBAAfA,EAAM9B,KACzB2B,EAAYb,KAAKiB,MAAMJ,EAAaD,EAAeI,IACzCA,GAA+B,iBAAfA,EAAM9B,MAChC2B,EAAYb,KAAKgB,EAAM9B,KAEzB,GAEO2B,GAVsBA,CAW9B,CAMA,SAASK,EAA4BC,GACpC,OAAKA,EACqB,mBAAfA,EAAOjC,KACK,MAAlBiC,EAAMC,GACU,MAAfD,EAAME,KAA2C,MAA1BF,EAAME,IAAMC,WAC/BH,EAAME,IAAMC,WAAWC,UAExB,GAEDL,EAA4BC,EAAMC,IAEZD,EAAOjC,KAVjB,EAWrB,CA2bA,IAAMsC,EAAWC,EAASA,UAACC,UAAUF,SAmBrC,SAASG,EAAezC,GACvB,MACU,UAATA,GACS,UAATA,GACS,UAATA,GACS,UAATA,GACS,OAATA,GACS,OAATA,GACS,OAATA,CAEF,CA5BAuC,EAAAA,UAAUC,UAAUF,SAAW,SAAUI,EAAQC,GAehD,OAdmB,MAAfC,KAAIC,KAKW,MAAdD,KAAKE,OACRxB,QAAQC,KACP,gKAEmCb,EAAcJ,MAK7CgC,EAASS,KAAKH,KAAMF,EAAQC,EACpC,EAcA,IAAMK,EACL,+KAEKC,EAAcV,EAAAA,UAAUC,UAAUS,YAyBjC,SAASC,EAAenD,GAC9B,IAAMoD,EAAUpD,EAAVoD,MACFhD,EAAOL,EAAeC,GAEtBqD,EAAQ,GACZ,IAAK,IAAIC,KAAQF,EAChB,GAAIA,EAAMG,eAAeD,IAAkB,aAATA,EAAqB,CACtD,IAAIE,EAAQJ,EAAME,GAGE,mBAATE,IACVA,EAAK,aAAeA,EAAMrD,aAAeqD,EAAMpD,MAAI,SAGpDoD,EACCC,OAAOD,KAAWA,GAAUA,EAAME,SAE/BF,EAAQ,GADRC,OAAOhB,UAAUiB,SAASV,KAAKQ,GAGnCH,OAAaC,EAAI,IAAIK,KAAKC,UAAUJ,EACrC,CAGD,IAAIK,EAAWT,EAAMS,SACrB,MAAA,IAAWzD,EAAOiD,GACjBQ,GAAYA,EAASrD,OAAS,QAAUJ,EAAO,IAAM,MAEvD,CAnDAoC,EAASA,UAACC,UAAUS,YAAc,SAAUN,GAgB3C,OAfmB,MAAfC,KAAIC,IACPvB,QAAQC,KACP,0HACqDb,EACnDJ,MAG0B,MAAnBsC,KAAIiB,KACdvC,QAAQC,KACP,iOAGQb,EAAckC,KAAIC,MAGrBI,EAAYF,KAAKH,KAAMD,EAC/B,EAoCAmB,EAAOA,QAAAC,IAAsB,SAACC,EAAUC,GACvC,IAAQjE,EAASgE,EAAThE,KACFkE,EAAiBD,EACrBE,IAAI,SAAArC,GAAK,OAAIA,GAASA,EAAMO,SAAS,GACrC+B,OAAOC,SACT/C,QAAQgD,MACyBtE,gCAAAA,EAAoBkE,gBAAAA,EAAeK,KAAK,uIAAqI7D,EAAcsD,GAE7N,EAzhBO,YDkDA,WACN,IAAIQ,EAAUV,EAAAA,QAAOW,IACjBC,EAAYZ,EAAOA,QAACa,OACpBC,EAAUd,EAAOA,QAAA5B,GACjB2C,EAAWf,EAAOA,QAAC/D,MACnB+E,EAAYhB,EAAOA,QAAAiB,IAEvBjB,EAAAA,QAAQa,OAAS,SAAA5E,GACZU,EAAgBV,IACnBM,EAAW2E,MAEZ5E,EAAY4E,MACRN,GAAWA,EAAU3E,EAC1B,EAEA+D,EAAOA,QAAAW,IAAS,SAAA1E,GACXU,EAAgBV,IACnBK,EAAYU,KAAKf,GAEdyE,GAASA,EAAQzE,EACtB,EAEA+D,UAAO5B,GAAS,SAACnC,EAAOkC,GACvB5B,EAAa,GACTuE,GAASA,EAAQ7E,EAAOkC,EAC7B,EAEA6B,EAAAA,QAAQ/D,MAAQ,SAAAA,GACfA,EAAKc,IACJR,EAAWE,OAAS,EAAIF,EAAWA,EAAWE,OAAS,GAAK,KACzDsE,GAAUA,EAAS9E,EACxB,EAEA+D,EAAOA,QAAAiB,IAAW,SAAAhF,GACbU,EAAgBV,IACnBM,EAAWS,KAAKf,GAGb+E,GAAWA,EAAU/E,EAC1B,CACD,CCzFCkF,GAEA,IAAIC,GAAe,EAGfC,EAAgBrB,EAAAA,QAAOW,IACvBC,EAAYZ,EAAOA,QAACa,OACpBS,EAAWtB,EAAOA,QAAC/D,MACnB+E,EAAYhB,EAAOA,QAAAiB,IACnBM,EAAgBvB,EAAOA,QAAA3B,IACvByC,EAAUd,EAAOA,QAAA5B,GACjBoD,EAAUxB,EAAOA,QAAAyB,IACfC,EAAoBhE,EAEvB,CACAiE,UAAW,IAAIhE,QACfiE,gBAAiB,IAAIjE,QACrBkE,cAAe,IAAIlE,SAJnB,KAMGmE,EAAe,GAErB9B,EAAAA,QAAO3B,IAAe,SAACmC,EAAOvE,EAAO8E,EAAUgB,GAE9C,GADgB9F,GAASA,EAAK+F,KACQ,mBAAdxB,EAAMyB,KAAoB,CACjD,IAAMC,EAAU1B,EAChBA,EAAQ,IAAI2B,MAAK,iDACiCnG,EAAeC,IAIjE,IADA,IAAIkC,EAASlC,EACNkC,EAAQA,EAASA,EAAMC,GAC7B,GAAID,EAAM6D,KAAe7D,EAAM6D,IAAAA,IAA8B,CAC5DxB,EAAQ0B,EACR,KACD,CAKD,GAAI1B,aAAiB2B,MACpB,MAAM3B,CAER,CAEA,KACCuB,EAAYA,GAAa,IACfK,eAAiBxF,EAAcX,GACzCsF,EAAcf,EAAOvE,EAAO8E,EAAUgB,GAKb,mBAAdvB,EAAMyB,MAChBI,WAAW,WACV,MAAM7B,CACP,EAIF,CAFE,MAAO8B,GACR,MAAMA,CACP,CACD,EAEAtC,EAAOA,QAAA5B,GAAS,SAACnC,EAAOqC,GACvB,IAAKA,EACJ,UAAU6D,MACT,uIAKF,IAAII,EACJ,OAAQjE,EAAWkE,UAClB,KChIyB,EDiIzB,KC/HmC,GDgInC,KCjI0B,EDkIzBD,GAAU,EACV,MACD,QACCA,GAAU,EAGZ,IAAKA,EAAS,CACb,IAAIE,EAAgBzG,EAAeC,GACnC,MAAM,IAAIkG,8EAC8D7D,EAAU,qBAAqBmE,EAAa,QAAQnE,EAC5H,KACD,CAEIwC,GAASA,EAAQ7E,EAAOqC,EAC7B,EAEA0B,EAAOA,QAAAW,IAAS,SAAA1E,GACf,IAAMC,EAASD,EAATC,KAIN,GAFAkF,GAAe,OAEFsB,IAATxG,EACH,MAAU,IAAAiG,MACT,+IAEC/C,EAAenD,UACRW,EAAcX,IAEjB,GAAY,MAARC,GAA+B,iBAARA,EAAkB,CACnD,QAAuBwG,IAAnBxG,EAAI4B,UAA0C4E,IAAdxG,EAAImC,IACvC,MAAM,IAAI8D,MACT,2CAA2CjG,EAA3C,wEAEYF,EAAeC,GAAYmD,MAAAA,EAAelD,GAFtD,uBAGqBF,EAAeC,GAHpC,wFAKQW,EAAcX,IAIxB,MAAM,IAAIkG,MACT,4CACEQ,MAAMC,QAAQ1G,GAAQ,QAAUA,GAEpC,CAEA,QACewG,IAAdzG,EAAM4G,KACc,mBAAb5G,EAAM4G,KACO,iBAAb5G,EAAM4G,OACX,aAAc5G,GAEhB,MAAU,IAAAkG,MACT,0GACoClG,EAAM4G,IAAG,cAC5CzD,EAAenD,GACRW,OAAAA,EAAcX,IAIxB,GAAyB,iBAAdA,EAAMC,KAChB,IAAK,IAAM4G,KAAO7G,EAAMoD,MACvB,GACY,MAAXyD,EAAI,IACO,MAAXA,EAAI,IACuB,mBAApB7G,EAAMoD,MAAMyD,IACC,MAApB7G,EAAMoD,MAAMyD,GAEZ,MAAU,IAAAX,MACT,iBAAgBW,EAAhB,oDACoB7G,EAAMoD,MAAMyD,GAAiB,cAChD1D,EAAenD,GAAM,OACdW,EAAcX,IAO1B,GAAyB,mBAAdA,EAAMC,MAAsBD,EAAMC,KAAK6G,UAAW,CAC5D,GAC4B,SAA3B9G,EAAMC,KAAKE,aACXsF,IACCA,EAAiBG,cAAcmB,IAAI/G,EAAMC,MACzC,CACD,IAAM+G,EACL,yFACD,IACC,IAAMC,EAAYjH,EAAMC,OACxBwF,EAAiBG,cAAcsB,IAAIlH,EAAMC,MAAM,GAC/CsB,QAAQC,KACPwF,oCAAsCjH,EAAekH,GAMvD,CAJE,MAAOhB,GACR1E,QAAQC,KACPwF,EAAI,8DAEN,CACD,CAEA,IAAIG,EAASnH,EAAMoD,MACfpD,EAAMC,KAAImH,YACbD,WElOmBE,EAAKjE,GAC3B,IAAK,IAAIkE,KAAKlE,EAAOiE,EAAIC,GAAKlE,EAAMkE,GACpC,OAA6BD,CAC9B,CF+NaE,CAAO,CAAE,EAAEJ,IACNP,IFnNX,SACNY,EACAL,EACAM,EACAjB,EACAkB,GAEAjE,OAAOkE,KAAKH,GAAW1F,QAAQ,SAAA8F,GAC9B,IAAIrD,EACJ,IACCA,EAAQiD,EAAUI,GACjBT,EACAS,EACApB,EE4MA,OF1MA,KAtCyB,+CA2C3B,CAFE,MAAOH,GACR9B,EAAQ8B,CACT,CACI9B,KAAWA,EAAMsD,WAAW/H,KAC/BA,EAAmByE,EAAMsD,UAAW,EACpCtG,QAAQgD,2BACqBA,EAAMsD,SAChCH,GAAQ,KAASA,KAAiB,KAIvC,EACD,CEwLGI,CACC9H,EAAMC,KAAK6G,UACXK,EACA,EACApH,EAAeC,GACf,WAAM,OAAAW,EAAcX,EAAM,EAE5B,CAEIoF,GAAeA,EAAcpF,EAClC,EAEA,IACI+H,EADAC,EAAc,EAElBjE,EAAOA,QAAAiB,IAAW,SAAAhF,GACb+E,GACHA,EAAU/E,GAEXmF,GAAe,EAEf,IAAM8C,EAAgBjI,EAAK+F,IAO3B,GANIkC,IAAkBF,EACrBC,IAEAA,EAAc,EAGXA,GAAe,GAClB,MAAM,IAAI9B,MACT,mIACmEnG,EACjEC,IAKJ+H,EAAmBE,CACpB,EAEAlE,UAAOyB,IAAS,SAAC0C,EAAMC,EAAOlI,GAC7B,IAAKiI,IAAS/C,EACb,MAAU,IAAAe,MAAM,iDAGbX,GAASA,EAAQ2C,EAAMC,EAAOlI,EACnC,EAMA,IAAMuB,EAAO,SAAC4G,EAAUP,SAAa,CACpCQ,IAAA,WACC,IAAMxB,EAAM,MAAQuB,EAAWP,EAC3BhC,GAAgBA,EAAayC,QAAQzB,GAAO,IAC/ChB,EAAa9E,KAAK8F,GAClBtF,QAAQC,KAAsB4G,iBAAAA,qBAA2BP,GAE3D,EACAX,IAAG,WACF,IAAML,EAAM,MAAQuB,EAAWP,EAC3BhC,GAAgBA,EAAayC,QAAQzB,GAAO,IAC/ChB,EAAa9E,KAAK8F,GAClBtF,QAAQC,KAAI,iBAAkB4G,EAAQ,oBAAoBP,GAE5D,EACA,EAEKU,EAAuB,CAC5BC,SAAUhH,EAAK,WAAY,kBAC3BiH,WAAYjH,EAAK,aAAc,mBAC/BqC,SAAUrC,EAAK,WAAY,6BAGtBkH,EAAkBjF,OAAOkF,OAAO,CAAE,EAAEJ,GAE1CxE,EAAAA,QAAQ/D,MAAQ,SAAAA,GACf,IAAMoD,EAAQpD,EAAMoD,MACpB,GACgB,OAAfpD,EAAMC,MACG,MAATmD,IACC,aAAcA,GAAS,WAAYA,GACnC,CACD,IAAMwF,EAAY5I,EAAMoD,MAAQ,CAAA,EAChC,IAAK,IAAIkE,KAAKlE,EAAO,CACpB,IAAMyF,EAAIzF,EAAMkE,GACN,aAANA,EAAkBtH,EAAMoB,SAAWyH,EACxB,WAANvB,EAAgBtH,EAAM8I,OAASD,EACnCD,EAAStB,GAAKuB,CACpB,CACD,CAGA7I,EAAM+I,UAAYL,EACdrD,GAAUA,EAASrF,EACxB,EAEA+D,EAAAA,QAAQa,OAAS,SAAA5E,GAChB,IEnUoBwD,EFmUZvD,EAA0BD,EAA1BC,KAAeiC,EAAWlC,EAAKmC,GAwBvC,GAhBInC,EAAK6B,KACR7B,EAAK6B,IAAWC,QAAQ,SAAAC,GACvB,GAAqB,iBAAVA,GAAsBA,QAAwB0E,IAAf1E,EAAM9B,KAAoB,CACnE,IAAM0H,EAAOlE,OAAOkE,KAAK5F,GAAOyC,KAAK,KACrC,MAAM,IAAI0B,MACT,0EAA0EyB,EAA1E,SACQhH,EAAcX,GAExB,CACD,GAGGA,EAAK+F,MAAgBgC,IACxBC,EAAc,GAIE,iBAAT/H,IACNyC,EAAezC,IACN,MAATA,GACS,MAATA,GACS,WAATA,GACA,CAMD,IAAI+I,EAAgB/G,EAA4BC,GAChD,GAAsB,KAAlB8G,GAAwBtG,EAAezC,GAEhC,UAATA,GAGkB,OAAlB+I,GACAtG,EAAesG,GAEfzH,QAAQgD,MACP,+EACCpB,EAAenD,UACRW,EAAcX,IAGb,UAATC,GAA6B,UAATA,GAA6B,UAATA,GACvB,UAAlB+I,EAQS,OAAT/I,GACkB,UAAlB+I,GACkB,UAAlBA,GACkB,UAAlBA,EAEAzH,QAAQgD,MACP,iFACCpB,EAAenD,GAAM,OACdW,EAAcX,IAEJ,OAATC,GAAmC,OAAlB+I,EAC3BzH,QAAQgD,MACP,kEACCpB,EAAenD,GAAM,OACdW,EAAcX,IAEJ,OAATC,GAAmC,OAAlB+I,GAC3BzH,QAAQgD,MACP,2DACCpB,EAAenD,GACRW,OAAAA,EAAcX,IA1BvBuB,QAAQgD,MACP,oFACCpB,EAAenD,GAAM,OACdW,EAAcX,SA0BlB,GAAa,MAATC,EAAc,CACxB,IAAIgJ,EAA0BtH,EAAe3B,GAAOqE,OAAO,SAAA6E,GAC1D,OAAAjG,EAAiCkG,KAAKD,EAAU,GAE7CD,EAAwBzI,QAC3Be,QAAQgD,MACP,2DACC0E,EAAwBzE,KAAK,MAC7B,sBACArB,EAAenD,GACRW,OAAAA,EAAcX,GAGzB,KAAoB,MAATC,GAAyB,WAATA,IACmB,IAAzC0B,EAAe3B,GAAOsI,QAAQrI,IACjCsB,QAAQgD,MACP,kDAAkDtE,EAAlD,4BACoC,MAATA,EAAe,SAAW,UACpD,2BACAkD,EAAenD,GAAM,OACdW,EAAcX,GAI1B,CAMA,GAJAmF,GAAe,EAEXR,GAAWA,EAAU3E,GAEF,MAAnBA,EAAK6B,IAER,IADA,IAAM8F,EAAO,GACJL,EAAI,EAAGA,EAAItH,EAAK6B,IAAWrB,OAAQ8G,IAAK,CAChD,IAAMvF,EAAQ/B,EAAK6B,IAAWyF,GAC9B,GAAKvF,GAAsB,MAAbA,EAAM8E,IAApB,CAEA,IAAMA,EAAM9E,EAAM8E,IAClB,IAA2B,IAAvBc,EAAKW,QAAQzB,GAAa,CAC7BtF,QAAQgD,MACP,8EACyBsC,EADzB,mFAGC1D,EAAenD,GACRW,OAAAA,EAAcX,IAIvB,KACD,CAEA2H,EAAK5G,KAAK8F,GACX,CAGD,GAAwB,MAApB7G,EAAK+F,KAAmD,MAA5B/F,EAAK+F,IAAAqD,IAA6B,CAGjE,IAAMC,EAAQrJ,EAAK+F,IAAAqD,IAAAjH,GACnB,GAAIkH,EACH,IAAK,IAAI/B,EAAI,EAAGA,EAAI+B,EAAM7I,OAAQ8G,GAAK,EAAG,CACzC,IAAMgC,EAAOD,EAAM/B,GACnB,GAAIgC,EAAIF,IACP,IAAK,IAAIG,EAAI,EAAGA,EAAID,EAAIF,IAAO5I,OAAQ+I,IAEtC,IEtde/F,EFqdH8F,EAAIF,IAAOG,KEpdZ/F,EFqdK,CACf,IAAMgD,EAAgBzG,EAAeC,GACrCuB,QAAQC,KAAI,4GACiG8F,EAAC,iBAAiBd,EAC/H,wBACD,CAGH,CAEF,CACD,CACD,CG3eAgD,gFLIO,WACN1J,EAAqB,CAAA,CACtB"} \ No newline at end of file diff --git a/node_modules/preact/debug/src/component-stack.js b/node_modules/preact/debug/src/component-stack.js index 58830ed..52a1801 100644 --- a/node_modules/preact/debug/src/component-stack.js +++ b/node_modules/preact/debug/src/component-stack.js @@ -58,7 +58,7 @@ export function getCurrentVNode() { * location of a component. In that case we just omit that, but we'll * print a helpful message to the console, notifying the user of it. */ -let hasBabelPlugin = false; +let showJsxSourcePluginWarning = true; /** * Check if a `vnode` is a possible owner. @@ -87,12 +87,12 @@ export function getOwnerStack(vnode) { const source = owner.__source; if (source) { acc += ` (at ${source.fileName}:${source.lineNumber})`; - } else if (!hasBabelPlugin) { - hasBabelPlugin = true; + } else if (showJsxSourcePluginWarning) { console.warn( 'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.' ); } + showJsxSourcePluginWarning = false; return (acc += '\n'); }, ''); diff --git a/node_modules/preact/debug/src/debug.js b/node_modules/preact/debug/src/debug.js index e06c430..8da0631 100644 --- a/node_modules/preact/debug/src/debug.js +++ b/node_modules/preact/debug/src/debug.js @@ -42,8 +42,8 @@ function getDomChildren(vnode) { function getClosestDomNodeParentName(parent) { if (!parent) return ''; if (typeof parent.type == 'function') { - if (parent._parent === null) { - if (parent._dom !== null && parent._dom.parentNode !== null) { + if (parent._parent == null) { + if (parent._dom != null && parent._dom.parentNode != null) { return parent._dom.parentNode.localName; } return ''; @@ -72,7 +72,7 @@ export function initDebug() { useEffect: new WeakMap(), useLayoutEffect: new WeakMap(), lazyPropTypes: new WeakMap() - }; + }; const deprecations = []; options._catchError = (error, vnode, oldVNode, errorInfo) => { @@ -247,11 +247,31 @@ export function initDebug() { if (oldBeforeDiff) oldBeforeDiff(vnode); }; + let renderCount = 0; + let currentComponent; options._render = vnode => { if (oldRender) { oldRender(vnode); } hooksAllowed = true; + + const nextComponent = vnode._component; + if (nextComponent === currentComponent) { + renderCount++; + } else { + renderCount = 1; + } + + if (renderCount >= 25) { + throw new Error( + `Too many re-renders. This is limited to prevent an infinite loop ` + + `which may lock up your browser. The component causing this is: ${getDisplayName( + vnode + )}` + ); + } + + currentComponent = nextComponent; }; options._hook = (comp, index, type) => { @@ -333,14 +353,24 @@ export function initDebug() { }); } - if (typeof type === 'string' && (isTableElement(type) || type === 'p')) { + if (vnode._component === currentComponent) { + renderCount = 0; + } + + if ( + typeof type === 'string' && + (isTableElement(type) || + type === 'p' || + type === 'a' || + type === 'button') + ) { // Avoid false positives when Preact only partially rendered the // HTML tree. Whilst we attempt to include the outer DOM in our // validation, this wouldn't work on the server for // `preact-render-to-string`. There we'd otherwise flood the terminal // with false positives, which we'd like to avoid. let domParentName = getClosestDomNodeParentName(parent); - if (domParentName !== '') { + if (domParentName !== '' && isTableElement(type)) { if ( type === 'table' && // Tables can be nested inside each other if it's inside a cell. @@ -348,7 +378,6 @@ export function initDebug() { domParentName !== 'td' && isTableElement(domParentName) ) { - console.log(domParentName, parent._dom); console.error( 'Improper nesting of table. Your

should have a
should have a
should not have a table-node parent.' + serializeVNode(vnode) + @@ -367,11 +396,10 @@ export function initDebug() { type === 'tr' && domParentName !== 'thead' && domParentName !== 'tfoot' && - domParentName !== 'tbody' && - domParentName !== 'table' + domParentName !== 'tbody' ) { console.error( - 'Improper nesting of table. Your should have a parent.' + + 'Improper nesting of table. Your should have a parent.' + serializeVNode(vnode) + `\n\n${getOwnerStack(vnode)}` ); @@ -396,7 +424,17 @@ export function initDebug() { console.error( 'Improper nesting of paragraph. Your

should not have ' + illegalDomChildrenTypes.join(', ') + - 'as child-elements.' + + ' as child-elements.' + + serializeVNode(vnode) + + `\n\n${getOwnerStack(vnode)}` + ); + } + } else if (type === 'a' || type === 'button') { + if (getDomChildren(vnode).indexOf(type) !== -1) { + console.error( + `Improper nesting of interactive content. Your <${type}>` + + ` should not have other ${type === 'a' ? 'anchor' : 'button'}` + + ' tags as child-elements.' + serializeVNode(vnode) + `\n\n${getOwnerStack(vnode)}` ); @@ -444,7 +482,7 @@ export function initDebug() { const arg = hook._args[j]; if (isNaN(arg)) { const componentName = getDisplayName(vnode); - throw new Error( + console.warn( `Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index ${i} in component ${componentName} was called with NaN.` ); } @@ -543,3 +581,13 @@ export function serializeVNode(vnode) { children && children.length ? '>..' : ' />' }`; } + +options._hydrationMismatch = (newVNode, excessDomChildren) => { + const { type } = newVNode; + const availableTypes = excessDomChildren + .map(child => child && child.localName) + .filter(Boolean); + console.error( + `Expected a DOM node of type "${type}" but found "${availableTypes.join(', ')}" as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\n\n${getOwnerStack(newVNode)}` + ); +}; diff --git a/node_modules/preact/debug/src/index.d.ts b/node_modules/preact/debug/src/index.d.ts index 3f6ab62..5bb5d22 100644 --- a/node_modules/preact/debug/src/index.d.ts +++ b/node_modules/preact/debug/src/index.d.ts @@ -1,3 +1,22 @@ +import { VNode } from 'preact'; + +/** + * Get the currently rendered `vnode` + */ +export function getCurrentVNode(): VNode | null; + +/** + * Return the component stack that was captured up to this point. + */ +export function getOwnerStack(vnode: VNode): string; + +/** + * Setup code to capture the component trace while rendering. Note that + * we cannot simply traverse `vnode._parent` upwards, because we have some + * debug messages for `this.setState` where the `vnode` is `undefined`. + */ +export function setupComponentStack(): void; + /** * Reset the history of which prop type warnings have been logged. */ diff --git a/node_modules/preact/debug/src/index.js b/node_modules/preact/debug/src/index.js index 37eee3b..adea553 100644 --- a/node_modules/preact/debug/src/index.js +++ b/node_modules/preact/debug/src/index.js @@ -4,3 +4,9 @@ import 'preact/devtools'; initDebug(); export { resetPropWarnings } from './check-props'; + +export { + getCurrentVNode, + getDisplayName, + getOwnerStack +} from './component-stack'; diff --git a/node_modules/preact/devtools/LICENSE b/node_modules/preact/devtools/LICENSE deleted file mode 100644 index da5389a..0000000 --- a/node_modules/preact/devtools/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2015-present Jason Miller - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/node_modules/preact/devtools/dist/devtools.js b/node_modules/preact/devtools/dist/devtools.js index fe3b8ff..6337df6 100644 --- a/node_modules/preact/devtools/dist/devtools.js +++ b/node_modules/preact/devtools/dist/devtools.js @@ -1,2 +1,2 @@ -var n=require("preact");"undefined"!=typeof window&&window.__PREACT_DEVTOOLS__&&window.__PREACT_DEVTOOLS__.attachPreact("10.19.3",n.options,{Fragment:n.Fragment,Component:n.Component}),exports.addHookName=function(e,o){return n.options.__a&&n.options.__a(o),e}; +var e,n=require("preact");null!=(e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0)&&e.__PREACT_DEVTOOLS__&&e.__PREACT_DEVTOOLS__.attachPreact("10.28.3",n.options,{Fragment:n.Fragment,Component:n.Component}),exports.addHookName=function(e,o){return n.options.__a&&n.options.__a(o),e}; //# sourceMappingURL=devtools.js.map diff --git a/node_modules/preact/devtools/dist/devtools.js.map b/node_modules/preact/devtools/dist/devtools.js.map index 64eed54..7c0f81d 100644 --- a/node_modules/preact/devtools/dist/devtools.js.map +++ b/node_modules/preact/devtools/dist/devtools.js.map @@ -1 +1 @@ -{"version":3,"file":"devtools.js","sources":["../src/devtools.js","../src/index.js"],"sourcesContent":["import { options, Fragment, Component } from 'preact';\n\nexport function initDevTools() {\n\tif (typeof window != 'undefined' && window.__PREACT_DEVTOOLS__) {\n\t\twindow.__PREACT_DEVTOOLS__.attachPreact('10.19.3', options, {\n\t\t\tFragment,\n\t\t\tComponent\n\t\t});\n\t}\n}\n","import { options } from 'preact';\nimport { initDevTools } from './devtools';\n\ninitDevTools();\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, name: string) => T}\n */\nexport function addHookName(value, name) {\n\tif (options._addHookName) {\n\t\toptions._addHookName(name);\n\t}\n\treturn value;\n}\n"],"names":["window","__PREACT_DEVTOOLS__","attachPreact","options","Fragment","Component","value","name","__a"],"mappings":"wBAGsB,oBAAVA,QAAyBA,OAAOC,qBAC1CD,OAAOC,oBAAoBC,aAAa,UAAWC,EAAAA,QAAS,CAC3DC,SAAAA,EAAAA,SACAC,UAAAA,EAF2DA,gCCKvD,SAAqBC,EAAOC,GAIlC,OAHIJ,EAAAA,QAAsBK,KACzBL,EAAAA,QAAOK,IAAcD,GAEfD,CACP"} \ No newline at end of file +{"version":3,"file":"devtools.js","sources":["../src/devtools.js","../src/index.js"],"sourcesContent":["import { Component, Fragment, options } from 'preact';\n\nexport function initDevTools() {\n\tconst globalVar =\n\t\ttypeof globalThis !== 'undefined'\n\t\t\t? globalThis\n\t\t\t: typeof window !== 'undefined'\n\t\t\t\t? window\n\t\t\t\t: undefined;\n\n\tif (\n\t\tglobalVar !== null &&\n\t\tglobalVar !== undefined &&\n\t\tglobalVar.__PREACT_DEVTOOLS__\n\t) {\n\t\tglobalVar.__PREACT_DEVTOOLS__.attachPreact('10.28.3', options, {\n\t\t\tFragment,\n\t\t\tComponent\n\t\t});\n\t}\n}\n","import { options } from 'preact';\nimport { initDevTools } from './devtools';\n\ninitDevTools();\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, name: string) => T}\n */\nexport function addHookName(value, name) {\n\tif (options._addHookName) {\n\t\toptions._addHookName(name);\n\t}\n\treturn value;\n}\n"],"names":["globalVar","globalThis","window","undefined","__PREACT_DEVTOOLS__","attachPreact","options","Fragment","Component","value","name","__a"],"mappings":"IAGOA,sBAQLA,OARKA,EACiB,oBAAfC,WACJA,WACkB,oBAAXC,OACNA,YACAC,IAKJH,EAAUI,qBAEVJ,EAAUI,oBAAoBC,aAAa,UAAWC,EAAOA,QAAE,CAC9DC,SAAAA,EAAAA,SACAC,UAAAA,EAAAA,gCCRa,SAAYC,EAAOC,GAIlC,OAHIJ,EAAAA,QAAOK,KACVL,EAAAA,QAAOK,IAAcD,GAEfD,CACR"} \ No newline at end of file diff --git a/node_modules/preact/devtools/dist/devtools.mjs b/node_modules/preact/devtools/dist/devtools.mjs index f8e6d0b..3c02601 100644 --- a/node_modules/preact/devtools/dist/devtools.mjs +++ b/node_modules/preact/devtools/dist/devtools.mjs @@ -1,2 +1,2 @@ -import{options as n,Fragment as o,Component as e}from"preact";function t(o,e){return n.__a&&n.__a(e),o}"undefined"!=typeof window&&window.__PREACT_DEVTOOLS__&&window.__PREACT_DEVTOOLS__.attachPreact("10.19.3",n,{Fragment:o,Component:e});export{t as addHookName}; +import{options as n,Fragment as o,Component as e}from"preact";var i;function t(o,e){return n.__a&&n.__a(e),o}null!=(i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0)&&i.__PREACT_DEVTOOLS__&&i.__PREACT_DEVTOOLS__.attachPreact("10.28.3",n,{Fragment:o,Component:e});export{t as addHookName}; //# sourceMappingURL=devtools.module.js.map diff --git a/node_modules/preact/devtools/dist/devtools.module.js b/node_modules/preact/devtools/dist/devtools.module.js index f8e6d0b..3c02601 100644 --- a/node_modules/preact/devtools/dist/devtools.module.js +++ b/node_modules/preact/devtools/dist/devtools.module.js @@ -1,2 +1,2 @@ -import{options as n,Fragment as o,Component as e}from"preact";function t(o,e){return n.__a&&n.__a(e),o}"undefined"!=typeof window&&window.__PREACT_DEVTOOLS__&&window.__PREACT_DEVTOOLS__.attachPreact("10.19.3",n,{Fragment:o,Component:e});export{t as addHookName}; +import{options as n,Fragment as o,Component as e}from"preact";var i;function t(o,e){return n.__a&&n.__a(e),o}null!=(i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0)&&i.__PREACT_DEVTOOLS__&&i.__PREACT_DEVTOOLS__.attachPreact("10.28.3",n,{Fragment:o,Component:e});export{t as addHookName}; //# sourceMappingURL=devtools.module.js.map diff --git a/node_modules/preact/devtools/dist/devtools.module.js.map b/node_modules/preact/devtools/dist/devtools.module.js.map index 824444e..a555fb7 100644 --- a/node_modules/preact/devtools/dist/devtools.module.js.map +++ b/node_modules/preact/devtools/dist/devtools.module.js.map @@ -1 +1 @@ -{"version":3,"file":"devtools.module.js","sources":["../src/index.js","../src/devtools.js"],"sourcesContent":["import { options } from 'preact';\nimport { initDevTools } from './devtools';\n\ninitDevTools();\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, name: string) => T}\n */\nexport function addHookName(value, name) {\n\tif (options._addHookName) {\n\t\toptions._addHookName(name);\n\t}\n\treturn value;\n}\n","import { options, Fragment, Component } from 'preact';\n\nexport function initDevTools() {\n\tif (typeof window != 'undefined' && window.__PREACT_DEVTOOLS__) {\n\t\twindow.__PREACT_DEVTOOLS__.attachPreact('10.19.3', options, {\n\t\t\tFragment,\n\t\t\tComponent\n\t\t});\n\t}\n}\n"],"names":["addHookName","value","name","options","__a","window","__PREACT_DEVTOOLS__","attachPreact","Fragment","Component"],"mappings":"8DASO,SAASA,EAAYC,EAAOC,GAIlC,OAHIC,EAAsBC,KACzBD,EAAOC,IAAcF,GAEfD,CACP,CCXqB,oBAAVI,QAAyBA,OAAOC,qBAC1CD,OAAOC,oBAAoBC,aAAa,UAAWJ,EAAS,CAC3DK,SAAAA,EACAC,UAAAA"} \ No newline at end of file +{"version":3,"file":"devtools.module.js","sources":["../src/devtools.js","../src/index.js"],"sourcesContent":["import { Component, Fragment, options } from 'preact';\n\nexport function initDevTools() {\n\tconst globalVar =\n\t\ttypeof globalThis !== 'undefined'\n\t\t\t? globalThis\n\t\t\t: typeof window !== 'undefined'\n\t\t\t\t? window\n\t\t\t\t: undefined;\n\n\tif (\n\t\tglobalVar !== null &&\n\t\tglobalVar !== undefined &&\n\t\tglobalVar.__PREACT_DEVTOOLS__\n\t) {\n\t\tglobalVar.__PREACT_DEVTOOLS__.attachPreact('10.28.3', options, {\n\t\t\tFragment,\n\t\t\tComponent\n\t\t});\n\t}\n}\n","import { options } from 'preact';\nimport { initDevTools } from './devtools';\n\ninitDevTools();\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, name: string) => T}\n */\nexport function addHookName(value, name) {\n\tif (options._addHookName) {\n\t\toptions._addHookName(name);\n\t}\n\treturn value;\n}\n"],"names":["globalVar","addHookName","value","name","options","__a","globalThis","window","undefined","__PREACT_DEVTOOLS__","attachPreact","Fragment","Component"],"mappings":"8DAEgB,IACTA,ECMS,SAAAC,EAAYC,EAAOC,GAIlC,OAHIC,EAAOC,KACVD,EAAOC,IAAcF,GAEfD,CACR,CDHEF,OARKA,EACiB,oBAAfM,WACJA,WACkB,oBAAXC,OACNA,YACAC,IAKJR,EAAUS,qBAEVT,EAAUS,oBAAoBC,aAAa,UAAWN,EAAS,CAC9DO,SAAAA,EACAC,UAAAA"} \ No newline at end of file diff --git a/node_modules/preact/devtools/dist/devtools.umd.js b/node_modules/preact/devtools/dist/devtools.umd.js index 66e729a..096727f 100644 --- a/node_modules/preact/devtools/dist/devtools.umd.js +++ b/node_modules/preact/devtools/dist/devtools.umd.js @@ -1,2 +1,2 @@ -!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("preact")):"function"==typeof define&&define.amd?define(["exports","preact"],n):n((e||self).preactDevtools={},e.preact)}(this,function(e,n){"undefined"!=typeof window&&window.__PREACT_DEVTOOLS__&&window.__PREACT_DEVTOOLS__.attachPreact("10.19.3",n.options,{Fragment:n.Fragment,Component:n.Component}),e.addHookName=function(e,o){return n.options.__a&&n.options.__a(o),e}}); +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("preact")):"function"==typeof define&&define.amd?define(["exports","preact"],n):n((e||self).preactDevtools={},e.preact)}(this,function(e,n){var o;null!=(o="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0)&&o.__PREACT_DEVTOOLS__&&o.__PREACT_DEVTOOLS__.attachPreact("10.28.3",n.options,{Fragment:n.Fragment,Component:n.Component}),e.addHookName=function(e,o){return n.options.__a&&n.options.__a(o),e}}); //# sourceMappingURL=devtools.umd.js.map diff --git a/node_modules/preact/devtools/dist/devtools.umd.js.map b/node_modules/preact/devtools/dist/devtools.umd.js.map index 9dd609a..d8f95cc 100644 --- a/node_modules/preact/devtools/dist/devtools.umd.js.map +++ b/node_modules/preact/devtools/dist/devtools.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"devtools.umd.js","sources":["../src/devtools.js","../src/index.js"],"sourcesContent":["import { options, Fragment, Component } from 'preact';\n\nexport function initDevTools() {\n\tif (typeof window != 'undefined' && window.__PREACT_DEVTOOLS__) {\n\t\twindow.__PREACT_DEVTOOLS__.attachPreact('10.19.3', options, {\n\t\t\tFragment,\n\t\t\tComponent\n\t\t});\n\t}\n}\n","import { options } from 'preact';\nimport { initDevTools } from './devtools';\n\ninitDevTools();\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, name: string) => T}\n */\nexport function addHookName(value, name) {\n\tif (options._addHookName) {\n\t\toptions._addHookName(name);\n\t}\n\treturn value;\n}\n"],"names":["window","__PREACT_DEVTOOLS__","attachPreact","options","Fragment","Component","value","name","__a"],"mappings":"8QAGsB,oBAAVA,QAAyBA,OAAOC,qBAC1CD,OAAOC,oBAAoBC,aAAa,UAAWC,EAAAA,QAAS,CAC3DC,SAAAA,EAAAA,SACAC,UAAAA,EAF2DA,0BCKvD,SAAqBC,EAAOC,GAIlC,OAHIJ,EAAAA,QAAsBK,KACzBL,EAAAA,QAAOK,IAAcD,GAEfD,CACP"} \ No newline at end of file +{"version":3,"file":"devtools.umd.js","sources":["../src/devtools.js","../src/index.js"],"sourcesContent":["import { Component, Fragment, options } from 'preact';\n\nexport function initDevTools() {\n\tconst globalVar =\n\t\ttypeof globalThis !== 'undefined'\n\t\t\t? globalThis\n\t\t\t: typeof window !== 'undefined'\n\t\t\t\t? window\n\t\t\t\t: undefined;\n\n\tif (\n\t\tglobalVar !== null &&\n\t\tglobalVar !== undefined &&\n\t\tglobalVar.__PREACT_DEVTOOLS__\n\t) {\n\t\tglobalVar.__PREACT_DEVTOOLS__.attachPreact('10.28.3', options, {\n\t\t\tFragment,\n\t\t\tComponent\n\t\t});\n\t}\n}\n","import { options } from 'preact';\nimport { initDevTools } from './devtools';\n\ninitDevTools();\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, name: string) => T}\n */\nexport function addHookName(value, name) {\n\tif (options._addHookName) {\n\t\toptions._addHookName(name);\n\t}\n\treturn value;\n}\n"],"names":["globalVar","globalThis","window","undefined","__PREACT_DEVTOOLS__","attachPreact","options","Fragment","Component","value","name","__a"],"mappings":"8QAEgB,IACTA,EAQLA,OARKA,EACiB,oBAAfC,WACJA,WACkB,oBAAXC,OACNA,YACAC,IAKJH,EAAUI,qBAEVJ,EAAUI,oBAAoBC,aAAa,UAAWC,EAAOA,QAAE,CAC9DC,SAAAA,EAAAA,SACAC,UAAAA,EAAAA,0BCRa,SAAYC,EAAOC,GAIlC,OAHIJ,EAAAA,QAAOK,KACVL,EAAAA,QAAOK,IAAcD,GAEfD,CACR"} \ No newline at end of file diff --git a/node_modules/preact/devtools/src/devtools.js b/node_modules/preact/devtools/src/devtools.js index a743874..0e6c6a1 100644 --- a/node_modules/preact/devtools/src/devtools.js +++ b/node_modules/preact/devtools/src/devtools.js @@ -1,8 +1,19 @@ -import { options, Fragment, Component } from 'preact'; +import { Component, Fragment, options } from 'preact'; export function initDevTools() { - if (typeof window != 'undefined' && window.__PREACT_DEVTOOLS__) { - window.__PREACT_DEVTOOLS__.attachPreact('10.19.3', options, { + const globalVar = + typeof globalThis !== 'undefined' + ? globalThis + : typeof window !== 'undefined' + ? window + : undefined; + + if ( + globalVar !== null && + globalVar !== undefined && + globalVar.__PREACT_DEVTOOLS__ + ) { + globalVar.__PREACT_DEVTOOLS__.attachPreact('10.28.3', options, { Fragment, Component }); diff --git a/node_modules/preact/dist/preact.js b/node_modules/preact/dist/preact.js index a08d060..b2a8c33 100644 --- a/node_modules/preact/dist/preact.js +++ b/node_modules/preact/dist/preact.js @@ -1,2 +1,2 @@ -var n,l,t,u,i,o,r,e,f,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,p=Array.isArray;function v(n,l){for(var t in l)n[t]=l[t];return n}function h(n){var l=n.parentNode;l&&l.removeChild(n)}function y(l,t,u){var i,o,r,e={};for(r in t)"key"==r?i=t[r]:"ref"==r?o=t[r]:e[r]=t[r];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):u),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===e[r]&&(e[r]=l.defaultProps[r]);return d(l,e,i,o,null)}function d(n,u,i,o,r){var e={type:n,props:u,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++t:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(e),e}function _(n){return n.children}function x(n,l){this.props=n,this.context=l}function g(n,l){if(null==l)return n.__?g(n.__,n.__i+1):null;for(var t;lt&&i.sort(e));m.__r=0}function w(n,l,t,u,i,o,r,e,f,a,p){var v,h,y,d,_,x=u&&u.__k||s,g=l.length;for(t.__d=f,P(t,l,x),f=t.__d,v=0;v0?d(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,e=$(i,t,r=u+a,s),i.__i=e,o=null,-1!==e&&(s--,(o=t[e])&&(o.__u|=131072)),null==o||null===o.__v?(-1==e&&a--,"function"!=typeof i.type&&(i.__u|=65536)):e!==r&&(e===r+1?a++:e>r?s>f-r?a+=e-r:a--:a=e(null!=f&&0==(131072&f.__u)?1:0))for(;r>=0||e=0){if((f=l[r])&&0==(131072&f.__u)&&i==f.key&&o===f.type)return r;r--}if(e2&&(f.children=arguments.length>3?n.call(arguments,2):u),d(l.type,f,i||l.key,o||l.ref,null)},exports.createContext=function(n,l){var t={__c:l="__cC"+f++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var t,u;return this.getChildContext||(t=[],(u={})[l]=this,this.getChildContext=function(){return u},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&t.some(function(n){n.__e=!0,k(n)})},this.sub=function(n){t.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){t.splice(t.indexOf(n),1),l&&l.call(n)}}),n.children}};return t.Provider.__=t.Consumer.contextType=t},exports.createElement=y,exports.createRef=function(){return{current:null}},exports.h=y,exports.hydrate=function n(l,t){N(l,t,n)},exports.isValidElement=u,exports.options=l,exports.render=N,exports.toChildArray=function n(l,t){return t=t||[],null==l||"boolean"==typeof l||(p(l)?l.some(function(l){n(l,t)}):t.push(l)),t}; +var n,l,t,u,i,r,o,e,f,c,s,p,a,h={},v=[],y=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,d=Array.isArray;function w(n,l){for(var t in l)n[t]=l[t];return n}function g(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function _(l,t,u){var i,r,o,e={};for(o in t)"key"==o?i=t[o]:"ref"==o?r=t[o]:e[o]=t[o];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):u),"function"==typeof l&&null!=l.defaultProps)for(o in l.defaultProps)void 0===e[o]&&(e[o]=l.defaultProps[o]);return x(l,e,i,r,null)}function x(n,u,i,r,o){var e={type:n,props:u,key:i,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==o?++t:o,__i:-1,__u:0};return null==o&&null!=l.vnode&&l.vnode(e),e}function m(n){return n.children}function b(n,l){this.props=n,this.context=l}function k(n,l){if(null==l)return n.__?k(n.__,n.__i+1):null;for(var t;ls&&i.sort(e),n=i.shift(),s=i.length,n.__d&&(u=void 0,r=void 0,o=(r=(t=n).__v).__e,f=[],c=[],t.__P&&((u=w({},r)).__v=r.__v+1,l.vnode&&l.vnode(u),j(t.__P,u,r,t.__n,t.__P.namespaceURI,32&r.__u?[o]:null,f,null==o?k(r):o,!!(32&r.__u),c),u.__v=r.__v,u.__.__k[u.__i]=u,O(f,u,c),r.__e=r.__=null,u.__e!=o&&S(u)));$.__r=0}function C(n,l,t,u,i,r,o,e,f,c,s){var p,a,y,d,w,g,_,x=u&&u.__k||v,m=l.length;for(f=I(t,l,x,f,m),p=0;p0?o=n.__k[r]=x(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):n.__k[r]=o,f=r+a,o.__=n,o.__b=n.__b+1,e=null,-1!=(c=o.__i=A(o,t,f,p))&&(p--,(e=t[c])&&(e.__u|=2)),null==e||null==e.__v?(-1==c&&(i>s?a--:if?a--:a++,o.__u|=4))):n.__k[r]=null;if(p)for(r=0;r(s?1:0))for(i=t-1,r=t+1;i>=0||r=0?i--:r++])&&0==(2&c.__u)&&e==c.key&&f==c.type)return o;return-1}function H(n,l,t){"-"==l[0]?n.setProperty(l,null==t?"":t):n[l]=null==t?"":"number"!=typeof t||y.test(l)?t:t+"px"}function L(n,l,t,u,i){var r,o;n:if("style"==l)if("string"==typeof t)n.style.cssText=t;else{if("string"==typeof u&&(n.style.cssText=u=""),u)for(l in u)t&&l in t||H(n.style,l,"");if(t)for(l in t)u&&t[l]==u[l]||H(n.style,l,t[l])}else if("o"==l[0]&&"n"==l[1])r=l!=(l=l.replace(f,"$1")),o=l.toLowerCase(),l=o in n||"onFocusOut"==l||"onFocusIn"==l?o.slice(2):l.slice(2),n.l||(n.l={}),n.l[l+r]=t,t?u?t.t=u.t:(t.t=c,n.addEventListener(l,r?p:s,r)):n.removeEventListener(l,r?p:s,r);else{if("http://www.w3.org/2000/svg"==i)l=l.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=l&&"height"!=l&&"href"!=l&&"list"!=l&&"form"!=l&&"tabIndex"!=l&&"download"!=l&&"rowSpan"!=l&&"colSpan"!=l&&"role"!=l&&"popover"!=l&&l in n)try{n[l]=null==t?"":t;break n}catch(n){}"function"==typeof t||(null==t||!1===t&&"-"!=l[4]?n.removeAttribute(l):n.setAttribute(l,"popover"==l&&1==t?"":t))}}function T(n){return function(t){if(this.l){var u=this.l[t.type+n];if(null==t.u)t.u=c++;else if(t.u0?n:d(n)?n.map(z):w({},n)}function N(t,u,i,r,o,e,f,c,s){var p,a,v,y,w,_,x,m=i.props||h,b=u.props,S=u.type;if("svg"==S?o="http://www.w3.org/2000/svg":"math"==S?o="http://www.w3.org/1998/Math/MathML":o||(o="http://www.w3.org/1999/xhtml"),null!=e)for(p=0;p2&&(f.children=arguments.length>3?n.call(arguments,2):u),x(l.type,f,i||l.key,r||l.ref,null)},exports.createContext=function(n){function l(n){var t,u;return this.getChildContext||(t=new Set,(u={})[l.__c]=this,this.getChildContext=function(){return u},this.componentWillUnmount=function(){t=null},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&t.forEach(function(n){n.__e=!0,M(n)})},this.sub=function(n){t.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){t&&t.delete(n),l&&l.call(n)}}),n.children}return l.__c="__cC"+a++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l},exports.createElement=_,exports.createRef=function(){return{current:null}},exports.h=_,exports.hydrate=function n(l,t){D(l,t,n)},exports.isValidElement=u,exports.options=l,exports.render=D,exports.toChildArray=function n(l,t){return t=t||[],null==l||"boolean"==typeof l||(d(l)?l.some(function(l){n(l,t)}):t.push(l)),t}; //# sourceMappingURL=preact.js.map diff --git a/node_modules/preact/dist/preact.js.map b/node_modules/preact/dist/preact.js.map index 354d62a..ae3c9ca 100644 --- a/node_modules/preact/dist/preact.js.map +++ b/node_modules/preact/dist/preact.js.map @@ -1 +1 @@ -{"version":3,"file":"preact.js","sources":["../src/constants.js","../src/util.js","../src/options.js","../src/create-element.js","../src/component.js","../src/create-context.js","../src/diff/children.js","../src/diff/props.js","../src/diff/index.js","../src/render.js","../src/diff/catch-error.js","../src/clone-element.js"],"sourcesContent":["/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { EMPTY_ARR } from './constants';\n\nexport const isArray = Array.isArray;\n\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-expect-error 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 {preact.ContainerNode} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\nexport const slice = EMPTY_ARR.slice;\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 {Options}\n */\nconst options = {\n\t_catchError\n};\n\nexport default options;\n","import { slice } from './util';\nimport options from './options';\n\nlet vnodeId = 0;\n\n/**\n * Create an virtual node (used for JSX)\n * @param {VNode[\"type\"]} type The node name or Component constructor for this\n * virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the\n * virtual node\n * @returns {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 > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 {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 {VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {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\t/** @type {VNode} */\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\tconstructor: undefined,\n\t\t_original: original == null ? ++vnodeId : original,\n\t\t_index: -1,\n\t\t_flags: 0\n\t};\n\n\t// Only invoke the vnode hook if this was *not* a direct copy:\n\tif (original == null && 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 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';\nimport { MODE_HYDRATE } from './constants';\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 BaseComponent(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {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 */\nBaseComponent.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) {\n\t\t\tthis._stateCallbacks.push(callback);\n\t\t}\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nBaseComponent.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 {ComponentChildren | void}\n */\nBaseComponent.prototype.render = Fragment;\n\n/**\n * @param {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._index + 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 {Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet oldVNode = component._vnode,\n\t\toldDom = oldVNode._dom,\n\t\tparentDom = component._parentDom,\n\t\tcommitQueue = [],\n\t\trefQueue = [];\n\n\tif (parentDom) {\n\t\tconst newVNode = assign({}, oldVNode);\n\t\tnewVNode._original = oldVNode._original + 1;\n\t\tif (options.vnode) options.vnode(newVNode);\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\toldVNode._flags & MODE_HYDRATE ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(oldVNode) : oldDom,\n\t\t\t!!(oldVNode._flags & MODE_HYDRATE),\n\t\t\trefQueue\n\t\t);\n\n\t\tnewVNode._parent._children[newVNode._index] = newVNode;\n\t\tcommitRoot(commitQueue, newVNode, refQueue);\n\n\t\tif (newVNode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(newVNode);\n\t\t}\n\t}\n}\n\n/**\n * @param {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 * 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\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/**\n * Enqueue a rerender of a component\n * @param {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/**\n * @param {Component} a\n * @param {Component} b\n */\nconst depthSort = (a, b) => a._vnode._depth - b._vnode._depth;\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet c;\n\trerenderQueue.sort(depthSort);\n\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t// process() calls from getting scheduled while `queue` is still being consumed.\n\twhile ((c = rerenderQueue.shift())) {\n\t\tif (c._dirty) {\n\t\t\tlet renderQueueLength = rerenderQueue.length;\n\t\t\trenderComponent(c);\n\t\t\tif (rerenderQueue.length > renderQueueLength) {\n\t\t\t\t// When i.e. rerendering a provider additional new items can be injected, we want to\n\t\t\t\t// keep the order from top to bottom with those new items so we can handle them in a\n\t\t\t\t// single pass\n\t\t\t\trerenderQueue.sort(depthSort);\n\t\t\t}\n\t\t}\n\t}\n\tprocess._rerenderCount = 0;\n}\n\nprocess._rerenderCount = 0;\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 {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 {FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\t/** @type {Component[]} */\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(c => {\n\t\t\t\t\t\t\tc._force = true;\n\t\t\t\t\t\t\tenqueueRender(c);\n\t\t\t\t\t\t});\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 =\n\t\tcontext);\n}\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR, INSERT_VNODE, MATCHED } from '../constants';\nimport { isArray } from '../util';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {PreactElement} parentDom The DOM element whose children are being\n * diffed\n * @param {ComponentChildren[]} renderResult\n * @param {VNode} newParentVNode The new virtual node whose children should be\n * diff'ed against oldParentVNode\n * @param {VNode} oldParentVNode The old virtual node whose children should be\n * diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\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\trefQueue\n) {\n\tlet i,\n\t\t/** @type {VNode} */\n\t\toldVNode,\n\t\t/** @type {VNode} */\n\t\tchildVNode,\n\t\t/** @type {PreactElement} */\n\t\tnewDom,\n\t\t/** @type {PreactElement} */\n\t\tfirstChildDom;\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\t/** @type {VNode[]} */\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet newChildrenLength = renderResult.length;\n\n\tnewParentVNode._nextDom = oldDom;\n\tconstructNewChildrenArray(newParentVNode, renderResult, oldChildren);\n\toldDom = newParentVNode._nextDom;\n\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\tchildVNode = newParentVNode._children[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// At this point, constructNewChildrenArray has assigned _index to be the\n\t\t// matchingIndex for this VNode's oldVNode (or -1 if there is no oldVNode).\n\t\tif (childVNode._index === -1) {\n\t\t\toldVNode = EMPTY_OBJ;\n\t\t} else {\n\t\t\toldVNode = oldChildren[childVNode._index] || EMPTY_OBJ;\n\t\t}\n\n\t\t// Update childVNode._index to its final index\n\t\tchildVNode._index = i;\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\trefQueue\n\t\t);\n\n\t\t// Adjust DOM nodes\n\t\tnewDom = childVNode._dom;\n\t\tif (childVNode.ref && oldVNode.ref != childVNode.ref) {\n\t\t\tif (oldVNode.ref) {\n\t\t\t\tapplyRef(oldVNode.ref, null, childVNode);\n\t\t\t}\n\t\t\trefQueue.push(\n\t\t\t\tchildVNode.ref,\n\t\t\t\tchildVNode._component || newDom,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t}\n\n\t\tif (firstChildDom == null && newDom != null) {\n\t\t\tfirstChildDom = newDom;\n\t\t}\n\n\t\tif (\n\t\t\tchildVNode._flags & INSERT_VNODE ||\n\t\t\toldVNode._children === childVNode._children\n\t\t) {\n\t\t\toldDom = insert(childVNode, oldDom, parentDom);\n\t\t} else if (\n\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\tchildVNode._nextDom !== undefined\n\t\t) {\n\t\t\t// Since Fragments or components that return Fragment like VNodes can\n\t\t\t// contain multiple DOM nodes as the same level, continue the diff from\n\t\t\t// the sibling of last DOM child of this child VNode\n\t\t\toldDom = childVNode._nextDom;\n\t\t} else if (newDom) {\n\t\t\toldDom = newDom.nextSibling;\n\t\t}\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because it\n\t\t// is only used by `diffChildren` to determine where to resume the diff\n\t\t// after diffing Components and Fragments. Once we store it the nextDOM\n\t\t// local var, we can clean up the property. Also prevents us hanging on to\n\t\t// DOM nodes that may have been unmounted.\n\t\tchildVNode._nextDom = undefined;\n\n\t\t// Unset diffing flags\n\t\tchildVNode._flags &= ~(INSERT_VNODE | MATCHED);\n\t}\n\n\t// TODO: With new child diffing algo, consider alt ways to diff Fragments.\n\t// Such as dropping oldDom and moving fragments in place\n\t//\n\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t// _nextDom property to the nextSibling of its last child DOM node.\n\t//\n\t// `oldDom` contains the correct value here because if the last child\n\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t// node's nextSibling.\n\tnewParentVNode._nextDom = oldDom;\n\tnewParentVNode._dom = firstChildDom;\n}\n\n/**\n * @param {VNode} newParentVNode\n * @param {ComponentChildren[]} renderResult\n * @param {VNode[]} oldChildren\n */\nfunction constructNewChildrenArray(newParentVNode, renderResult, oldChildren) {\n\t/** @type {number} */\n\tlet i;\n\t/** @type {VNode} */\n\tlet childVNode;\n\t/** @type {VNode} */\n\tlet oldVNode;\n\n\tconst newChildrenLength = renderResult.length;\n\tlet oldChildrenLength = oldChildren.length,\n\t\tremainingOldChildren = oldChildrenLength;\n\n\tlet skew = 0;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\t// @ts-expect-error We are reusing the childVNode variable to hold both the\n\t\t// pre and post normalized childVNode\n\t\tchildVNode = renderResult[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\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\tchildVNode.constructor == String\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 (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.constructor === undefined && 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\tchildVNode.ref ? childVNode.ref : null,\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// Handle unmounting null placeholders, i.e. VNode => null in unkeyed children\n\t\tif (childVNode == null) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode && oldVNode.key == null && oldVNode._dom) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode, false);\n\n\t\t\t\t// Explicitly nullify this position in oldChildren instead of just\n\t\t\t\t// setting `_match=true` to prevent other routines (e.g.\n\t\t\t\t// `findMatchingIndex` or `getDomSibling`) from thinking VNodes or DOM\n\t\t\t\t// nodes in this position are still available to be used in diffing when\n\t\t\t\t// they have actually already been unmounted. For example, by only\n\t\t\t\t// setting `_match=true` here, the unmounting loop later would attempt\n\t\t\t\t// to unmount this VNode again seeing `_match==true`. Further,\n\t\t\t\t// getDomSibling doesn't know about _match and so would incorrectly\n\t\t\t\t// assume DOM nodes in this subtree are mounted and usable.\n\t\t\t\toldChildren[i] = null;\n\t\t\t\tremainingOldChildren--;\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\tconst skewedIndex = i + skew;\n\t\tconst matchingIndex = findMatchingIndex(\n\t\t\tchildVNode,\n\t\t\toldChildren,\n\t\t\tskewedIndex,\n\t\t\tremainingOldChildren\n\t\t);\n\n\t\t// Temporarily store the matchingIndex on the _index property so we can pull\n\t\t// out the oldVNode in diffChildren. We'll override this to the VNode's\n\t\t// final index after using this property to get the oldVNode\n\t\tchildVNode._index = matchingIndex;\n\n\t\toldVNode = null;\n\t\tif (matchingIndex !== -1) {\n\t\t\toldVNode = oldChildren[matchingIndex];\n\t\t\tremainingOldChildren--;\n\t\t\tif (oldVNode) {\n\t\t\t\toldVNode._flags |= MATCHED;\n\t\t\t}\n\t\t}\n\n\t\t// Here, we define isMounting for the purposes of the skew diffing\n\t\t// algorithm. Nodes that are unsuspending are considered mounting and we detect\n\t\t// this by checking if oldVNode._original === null\n\t\tconst isMounting = oldVNode == null || oldVNode._original === null;\n\n\t\tif (isMounting) {\n\t\t\tif (matchingIndex == -1) {\n\t\t\t\tskew--;\n\t\t\t}\n\n\t\t\t// If we are mounting a DOM VNode, mark it for insertion\n\t\t\tif (typeof childVNode.type != 'function') {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t} else if (matchingIndex !== skewedIndex) {\n\t\t\tif (matchingIndex === skewedIndex + 1) {\n\t\t\t\tskew++;\n\t\t\t} else if (matchingIndex > skewedIndex) {\n\t\t\t\tif (remainingOldChildren > newChildrenLength - skewedIndex) {\n\t\t\t\t\tskew += matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// ### Change from keyed: I think this was missing from the algo...\n\t\t\t\t\tskew--;\n\t\t\t\t}\n\t\t\t} else if (matchingIndex < skewedIndex) {\n\t\t\t\tif (matchingIndex == skewedIndex - 1) {\n\t\t\t\t\tskew = matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\tskew = 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tskew = 0;\n\t\t\t}\n\n\t\t\t// Move this VNode's DOM if the original index (matchingIndex) doesn't\n\t\t\t// match the new skew index (i + new skew)\n\t\t\tif (matchingIndex !== i + skew) {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove remaining oldChildren if there are any. Loop forwards so that as we\n\t// unmount DOM from the beginning of the oldChildren, we can adjust oldDom to\n\t// point to the next child, which needs to be the first DOM node that won't be\n\t// unmounted.\n\tif (remainingOldChildren) {\n\t\tfor (i = 0; i < oldChildrenLength; i++) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode != null && (oldVNode._flags & MATCHED) === 0) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * @param {VNode} parentVNode\n * @param {PreactElement} oldDom\n * @param {PreactElement} parentDom\n * @returns {PreactElement}\n */\nfunction insert(parentVNode, oldDom, parentDom) {\n\t// Note: VNodes in nested suspended trees may be missing _children.\n\n\tif (typeof parentVNode.type == 'function') {\n\t\tlet children = parentVNode._children;\n\t\tfor (let i = 0; children && i < children.length; i++) {\n\t\t\tif (children[i]) {\n\t\t\t\t// If we enter this code path on sCU bailout, where we copy\n\t\t\t\t// oldVNode._children to newVNode._children, we need to update the old\n\t\t\t\t// children's _parent pointer to point to the newVNode (parentVNode\n\t\t\t\t// here).\n\t\t\t\tchildren[i]._parent = parentVNode;\n\t\t\t\toldDom = insert(children[i], oldDom, parentDom);\n\t\t\t}\n\t\t}\n\n\t\treturn oldDom;\n\t} else if (parentVNode._dom != oldDom) {\n\t\tparentDom.insertBefore(parentVNode._dom, oldDom || null);\n\t\toldDom = parentVNode._dom;\n\t}\n\n\treturn oldDom && oldDom.nextSibling;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {ComponentChildren} children The unflattened children of a virtual\n * node\n * @returns {VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (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\n/**\n * @param {VNode} childVNode\n * @param {VNode[]} oldChildren\n * @param {number} skewedIndex\n * @param {number} remainingOldChildren\n * @returns {number}\n */\nfunction findMatchingIndex(\n\tchildVNode,\n\toldChildren,\n\tskewedIndex,\n\tremainingOldChildren\n) {\n\tconst key = childVNode.key;\n\tconst type = childVNode.type;\n\tlet x = skewedIndex - 1;\n\tlet y = skewedIndex + 1;\n\tlet oldVNode = oldChildren[skewedIndex];\n\n\t// We only need to perform a search if there are more children\n\t// (remainingOldChildren) to search. However, if the oldVNode we just looked\n\t// at skewedIndex was not already used in this diff, then there must be at\n\t// least 1 other (so greater than 1) remainingOldChildren to attempt to match\n\t// against. So the following condition checks that ensuring\n\t// remainingOldChildren > 1 if the oldVNode is not already used/matched. Else\n\t// if the oldVNode was null or matched, then there could needs to be at least\n\t// 1 (aka `remainingOldChildren > 0`) children to find and compare against.\n\tlet shouldSearch =\n\t\tremainingOldChildren >\n\t\t(oldVNode != null && (oldVNode._flags & MATCHED) === 0 ? 1 : 0);\n\n\tif (\n\t\toldVNode === null ||\n\t\t(oldVNode && key == oldVNode.key && type === oldVNode.type)\n\t) {\n\t\treturn skewedIndex;\n\t} else if (shouldSearch) {\n\t\twhile (x >= 0 || y < oldChildren.length) {\n\t\t\tif (x >= 0) {\n\t\t\t\toldVNode = oldChildren[x];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn x;\n\t\t\t\t}\n\t\t\t\tx--;\n\t\t\t}\n\n\t\t\tif (y < oldChildren.length) {\n\t\t\t\toldVNode = oldChildren[y];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn y;\n\t\t\t\t}\n\t\t\t\ty++;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn -1;\n}\n","import { IS_NON_DIMENSIONAL } from '../constants';\nimport options from '../options';\n\nfunction setStyle(style, key, value) {\n\tif (key[0] === '-') {\n\t\tstyle.setProperty(key, value == null ? '' : value);\n\t} else if (value == null) {\n\t\tstyle[key] = '';\n\t} else if (typeof value != 'number' || IS_NON_DIMENSIONAL.test(key)) {\n\t\tstyle[key] = value;\n\t} else {\n\t\tstyle[key] = value + 'px';\n\t}\n}\n\n/**\n * Set a property value on a DOM node\n * @param {PreactElement} dom The DOM node to modify\n * @param {string} name The name of the property to set\n * @param {*} value The value to set the property to\n * @param {*} oldValue The old value the property had\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node or not\n */\nexport function setProperty(dom, name, value, oldValue, isSvg) {\n\tlet useCapture;\n\n\to: if (name === 'style') {\n\t\tif (typeof value == 'string') {\n\t\t\tdom.style.cssText = value;\n\t\t} else {\n\t\t\tif (typeof oldValue == 'string') {\n\t\t\t\tdom.style.cssText = oldValue = '';\n\t\t\t}\n\n\t\t\tif (oldValue) {\n\t\t\t\tfor (name in oldValue) {\n\t\t\t\t\tif (!(value && name in value)) {\n\t\t\t\t\t\tsetStyle(dom.style, name, '');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (value) {\n\t\t\t\tfor (name in value) {\n\t\t\t\t\tif (!oldValue || value[name] !== oldValue[name]) {\n\t\t\t\t\t\tsetStyle(dom.style, name, value[name]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6\n\telse if (name[0] === 'o' && name[1] === 'n') {\n\t\tuseCapture =\n\t\t\tname !== (name = name.replace(/(PointerCapture)$|Capture$/, '$1'));\n\n\t\t// Infer correct casing for DOM built-in events:\n\t\tif (name.toLowerCase() in dom) name = name.toLowerCase().slice(2);\n\t\telse name = name.slice(2);\n\n\t\tif (!dom._listeners) dom._listeners = {};\n\t\tdom._listeners[name + useCapture] = value;\n\n\t\tif (value) {\n\t\t\tif (!oldValue) {\n\t\t\t\tvalue._attached = Date.now();\n\t\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\t\tdom.addEventListener(name, handler, useCapture);\n\t\t\t} else {\n\t\t\t\tvalue._attached = oldValue._attached;\n\t\t\t}\n\t\t} else {\n\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\tdom.removeEventListener(name, handler, useCapture);\n\t\t}\n\t} else {\n\t\tif (isSvg) {\n\t\t\t// Normalize incorrect prop usage for SVG:\n\t\t\t// - xlink:href / xlinkHref --> 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 !== 'width' &&\n\t\t\tname !== 'height' &&\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 !== 'rowSpan' &&\n\t\t\tname !== 'colSpan' &&\n\t\t\tname !== 'role' &&\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- and data- attributes have no boolean representation.\n\t\t// A `false` value is different from the attribute not being\n\t\t// present, so we can't remove it. For non-boolean aria\n\t\t// attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost too many bytes. On top of\n\t\t// that other frameworks generally stringify `false`.\n\n\t\tif (typeof value == 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (value != null && (value !== false || name[4] === '-')) {\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 {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tconst eventHandler = this._listeners[e.type + false];\n\t/**\n\t * This trick is inspired by Vue https://github.com/vuejs/core/blob/main/packages/runtime-dom/src/modules/events.ts#L90-L101\n\t * when the dom performs an event it leaves micro-ticks in between bubbling up which means that an event can trigger on a newly\n\t * created DOM-node while the event bubbles up, this can cause quirky behavior as seen in https://github.com/preactjs/preact/issues/3927\n\t */\n\tif (!e._dispatched) {\n\t\t// When an event has no _dispatched we know this is the first event-target in the chain\n\t\t// so we set the initial dispatched time.\n\t\te._dispatched = Date.now();\n\t\t// When the _dispatched is smaller than the time when the targetted event handler was attached\n\t\t// we know we have bubbled up to an element that was added during patching the dom.\n\t} else if (e._dispatched <= eventHandler._attached) {\n\t\treturn;\n\t}\n\treturn eventHandler(options.event ? options.event(e) : e);\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxyCapture(e) {\n\treturn this._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import {\n\tEMPTY_OBJ,\n\tMODE_HYDRATE,\n\tMODE_SUSPENDED,\n\tRESET_MODE\n} from '../constants';\nimport { BaseComponent, getDomSibling } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { setProperty } from './props';\nimport { assign, isArray, removeNode, slice } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {PreactElement} parentDom The parent of the DOM element\n * @param {VNode} newVNode The new virtual node\n * @param {VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating,\n\trefQueue\n) {\n\t/** @type {any} */\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._flags & MODE_SUSPENDED) {\n\t\tisHydrating = !!(oldVNode._flags & MODE_HYDRATE);\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\touter: if (typeof newType == 'function') {\n\t\ttry {\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-expect-error 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-expect-error Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new BaseComponent(\n\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t);\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\tc._stateCallbacks = [];\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\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\t\t\tc._vnode = newVNode;\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((c.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\t\tnewVNode._original === oldVNode._original)\n\t\t\t\t) {\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) {\n\t\t\t\t\t\t// When we are dealing with a bail because of sCU we have to update\n\t\t\t\t\t\t// the props, state and dirty-state.\n\t\t\t\t\t\t// when we are dealing with strict-equality we don't as the child could still\n\t\t\t\t\t\t// be dirtied see #3883\n\t\t\t\t\t\tc.props = newProps;\n\t\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t\tc._dirty = false;\n\t\t\t\t\t}\n\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\n\t\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t\t}\n\t\t\t\t\tc._stateCallbacks = [];\n\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._parentDom = parentDom;\n\t\t\tc._force = false;\n\n\t\t\tlet renderHook = options._render,\n\t\t\t\tcount = 0;\n\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\tc.state = c._nextState;\n\t\t\t\tc._dirty = false;\n\n\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t}\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t} else {\n\t\t\t\tdo {\n\t\t\t\t\tc._dirty = false;\n\t\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\t\t// Handle setState called in render, see #2553\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t} while (c._dirty && ++count < 25);\n\t\t\t}\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\tisArray(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\trefQueue\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._flags &= RESET_MODE;\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\t\t} catch (e) {\n\t\t\tnewVNode._original = null;\n\t\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\t\tnewVNode._dom = oldDom;\n\t\t\t\tnewVNode._flags |= isHydrating\n\t\t\t\t\t? MODE_HYDRATE | MODE_SUSPENDED\n\t\t\t\t\t: MODE_HYDRATE;\n\t\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t\t// ^ could possibly be simplified to:\n\t\t\t\t// excessDomChildren.length = 0;\n\t\t\t} else {\n\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t}\n\t\t\toptions._catchError(e, newVNode, oldVNode);\n\t\t}\n\t} else if (\n\t\texcessDomChildren == null &&\n\t\tnewVNode._original === oldVNode._original\n\t) {\n\t\tnewVNode._children = oldVNode._children;\n\t\tnewVNode._dom = oldVNode._dom;\n\t} else {\n\t\tnewVNode._dom = diffElementNodes(\n\t\t\toldVNode._dom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\tisHydrating,\n\t\t\trefQueue\n\t\t);\n\t}\n\n\tif ((tmp = options.diffed)) tmp(newVNode);\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {VNode} root\n */\nexport function commitRoot(commitQueue, root, refQueue) {\n\troot._nextDom = undefined;\n\n\tfor (let i = 0; i < refQueue.length; i++) {\n\t\tapplyRef(refQueue[i], refQueue[++i], refQueue[++i]);\n\t}\n\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-expect-error 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-expect-error See above comment 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 {PreactElement} dom The DOM element representing the virtual nodes\n * being diffed\n * @param {VNode} newVNode The new virtual node\n * @param {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 {Array} excessDomChildren\n * @param {Array} commitQueue List of components which have callbacks\n * to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n * @returns {PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating,\n\trefQueue\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = /** @type {string} */ (newVNode.type);\n\t/** @type {any} */\n\tlet i;\n\t/** @type {{ __html?: string }} */\n\tlet newHtml;\n\t/** @type {{ __html?: string }} */\n\tlet oldHtml;\n\t/** @type {ComponentChildren} */\n\tlet newChildren;\n\tlet value;\n\tlet inputValue;\n\tlet checked;\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 = 0; i < excessDomChildren.length; i++) {\n\t\t\tvalue = 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\tvalue &&\n\t\t\t\t'setAttribute' in value === !!nodeType &&\n\t\t\t\t(nodeType ? value.localName === nodeType : value.nodeType === 3)\n\t\t\t) {\n\t\t\t\tdom = value;\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\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS('http://www.w3.org/2000/svg', nodeType);\n\t\t} else {\n\t\t\tdom = document.createElement(nodeType, newProps.is && newProps);\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\n\t\t// 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 = excessDomChildren && slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\t// If we are in a situation where we are not hydrating but are using\n\t\t// existing DOM (e.g. replaceNode) we should read the existing DOM\n\t\t// attributes to diff them\n\t\tif (!isHydrating && excessDomChildren != null) {\n\t\t\toldProps = {};\n\t\t\tfor (i = 0; i < dom.attributes.length; i++) {\n\t\t\t\tvalue = dom.attributes[i];\n\t\t\t\toldProps[value.name] = value.value;\n\t\t\t}\n\t\t}\n\n\t\tfor (i in oldProps) {\n\t\t\tvalue = oldProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\toldHtml = value;\n\t\t\t} else if (i !== 'key' && !(i in newProps)) {\n\t\t\t\tsetProperty(dom, i, null, value, isSvg);\n\t\t\t}\n\t\t}\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\tfor (i in newProps) {\n\t\t\tvalue = newProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t\tnewChildren = value;\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\tnewHtml = value;\n\t\t\t} else if (i == 'value') {\n\t\t\t\tinputValue = value;\n\t\t\t} else if (i == 'checked') {\n\t\t\t\tchecked = value;\n\t\t\t} else if (\n\t\t\t\ti !== 'key' &&\n\t\t\t\t(!isHydrating || typeof value == 'function') &&\n\t\t\t\toldProps[i] !== value\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, value, oldProps[i], isSvg);\n\t\t\t}\n\t\t}\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\tif (\n\t\t\t\t!isHydrating &&\n\t\t\t\t(!oldHtml ||\n\t\t\t\t\t(newHtml.__html !== oldHtml.__html &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML))\n\t\t\t) {\n\t\t\t\tdom.innerHTML = newHtml.__html;\n\t\t\t}\n\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\tif (oldHtml) dom.innerHTML = '';\n\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tisArray(newChildren) ? newChildren : [newChildren],\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\texcessDomChildren\n\t\t\t\t\t? excessDomChildren[0]\n\t\t\t\t\t: oldVNode._children && getDomSibling(oldVNode, 0),\n\t\t\t\tisHydrating,\n\t\t\t\trefQueue\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\ti = 'value';\n\t\t\tif (\n\t\t\t\tinputValue !== 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(inputValue !== dom[i] ||\n\t\t\t\t\t(nodeType === 'progress' && !inputValue) ||\n\t\t\t\t\t// This is only for IE 11 to fix value not being updated.\n\t\t\t\t\t// To avoid a stale select value we need to set the option.value\n\t\t\t\t\t// again, which triggers IE11 to re-evaluate the select value\n\t\t\t\t\t(nodeType == 'option' && inputValue != oldProps[i]))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, inputValue, oldProps[i], namespace);\n\t\t\t}\n\n\t\t\ti = 'checked';\n\t\t\tif (checked != UNDEFINED && checked != dom[i]) {\n\t\t\t\tsetProperty(dom, i, checked, oldProps[i], namespace);\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 {Ref & { _unmount?: unknown }} ref\n * @param {any} value\n * @param {VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') {\n\t\t\tlet hasRefUnmount = typeof ref._unmount == 'function';\n\t\t\tif (hasRefUnmount) {\n\t\t\t\t// @ts-ignore TS doesn't like moving narrowing checks into variables\n\t\t\t\tref._unmount();\n\t\t\t}\n\n\t\t\tif (!hasRefUnmount || value != NULL) {\n\t\t\t\t// Store the cleanup function on the function\n\t\t\t\t// instance object itself to avoid shape\n\t\t\t\t// transitioning vnode\n\t\t\t\tref._unmount = ref(value);\n\t\t\t}\n\t\t} else 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 {VNode} vnode The virtual node to unmount\n * @param {VNode} parentVNode The parent of the VNode that 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) {\n\t\t\tapplyRef(r, NULL, parentVNode);\n\t\t}\n\t}\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]) {\n\t\t\t\tunmount(\n\t\t\t\t\tr[i],\n\t\t\t\t\tparentVNode,\n\t\t\t\t\tskipRemove || typeof vnode.type != 'function'\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!skipRemove) {\n\t\tremoveNode(vnode._dom);\n\t}\n\n\tvnode._component = vnode._parent = vnode._dom = UNDEFINED;\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, NULL } from './constants';\nimport { commitRoot, diff } from './diff/index';\nimport { createElement, Fragment } from './create-element';\nimport options from './options';\nimport { slice } from './util';\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 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\t// https://github.com/preactjs/preact/issues/3794\n\tif (parentDom == document) {\n\t\tparentDom = document.documentElement;\n\t}\n\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 = ((!isHydrating && replaceNode) || parentDom)._children =\n\t\tcreateElement(Fragment, NULL, [vnode]);\n\n\t// List of effects that need to be called after diffing.\n\tlet commitQueue = [],\n\t\trefQueue = [];\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.namespaceURI,\n\t\t!isHydrating && replaceNode\n\t\t\t? [replaceNode]\n\t\t\t: oldVNode\n\t\t\t\t? NULL\n\t\t\t\t: parentDom.firstChild\n\t\t\t\t\t? slice.call(parentDom.childNodes)\n\t\t\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\t? oldVNode._dom\n\t\t\t\t: parentDom.firstChild,\n\t\tisHydrating,\n\t\trefQueue\n\t);\n\n\t// Flush all queued effects\n\tcommitRoot(commitQueue, vnode, refQueue);\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 update\n */\nexport function hydrate(vnode, parentDom) {\n\trender(vnode, parentDom, hydrate);\n}\n","import { NULL } from '../constants';\n\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 the error that was caught (except\n * for unmounting when this parameter is the highest parent that was being\n * unmounted)\n * @param {import('../internal').VNode} [oldVNode]\n * @param {import('../internal').ErrorInfo} [errorInfo]\n */\nexport function _catchError(error, vnode, oldVNode, errorInfo) {\n\t/** @type {import('../internal').Component} */\n\tlet component,\n\t\t/** @type {import('../internal').ComponentType} */\n\t\tctor,\n\t\t/** @type {boolean} */\n\t\thandled;\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, errorInfo || {});\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","import { assign, slice } from './util';\nimport { createVNode } from './create-element';\nimport { NULL, UNDEFINED } from './constants';\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its\n * 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\n * 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\n\tlet defaultProps;\n\n\tif (vnode.type && vnode.type.defaultProps) {\n\t\tdefaultProps = vnode.type.defaultProps;\n\t}\n\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 if (props[i] === UNDEFINED && defaultProps != UNDEFINED) {\n\t\t\tnormalizedProps[i] = defaultProps[i];\n\t\t} else {\n\t\t\tnormalizedProps[i] = props[i];\n\t\t}\n\t}\n\n\tif (arguments.length > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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"],"names":["slice","options","vnodeId","isValidElement","rerenderQueue","prevDebounce","defer","depthSort","CAPTURE_REGEX","eventClock","eventProxy","eventProxyCapture","i","EMPTY_OBJ","EMPTY_ARR","IS_NON_DIMENSIONAL","isArray","Array","assign","obj","props","removeNode","node","parentNode","removeChild","createElement","type","children","key","ref","normalizedProps","arguments","length","call","defaultProps","undefined","createVNode","original","vnode","__k","__","__b","__e","__c","constructor","__v","__i","__u","Fragment","BaseComponent","context","this","getDomSibling","childIndex","sibling","updateParentDomPointers","child","base","enqueueRender","c","__d","push","process","__r","debounceRendering","component","newVNode","oldVNode","oldDom","commitQueue","refQueue","l","sort","shift","__P","diff","__n","namespaceURI","commitRoot","diffChildren","parentDom","renderResult","newParentVNode","oldParentVNode","globalContext","namespace","excessDomChildren","isHydrating","childVNode","newDom","firstChildDom","result","shouldPlace","oldChildren","newChildrenLength","constructNewChildrenArray","applyRef","insert","nextSibling","skewedIndex","matchingIndex","oldChildrenLength","remainingOldChildren","skew","String","findMatchingIndex","unmount","parentVNode","insertBefore","nodeType","x","y","matched","setStyle","style","value","setProperty","test","dom","name","oldValue","useCapture","lowerCaseName","o","cssText","replace","toLowerCase","_attached","addEventListener","removeEventListener","e","removeAttribute","setAttribute","createEventProxy","eventHandler","_dispatched","event","tmp","isNew","oldProps","oldState","snapshot","clearProcessingException","newProps","isClassComponent","provider","componentContext","renderHook","count","newType","outer","prototype","render","contextType","__E","doRender","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","some","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","cloneNode","then","MODE_HYDRATE","indexOf","markAsForce","diffElementNodes","diffed","forEach","root","cb","map","newHtml","oldHtml","newChildren","inputValue","checked","localName","document","createTextNode","createElementNS","is","__m","data","childNodes","attributes","__html","innerHTML","content","hasRefUnmount","current","skipRemove","r","componentWillUnmount","replaceNode","documentElement","firstChild","error","errorInfo","ctor","handled","getDerivedStateFromError","setState","componentDidCatch","update","callback","s","forceUpdate","Promise","bind","resolve","setTimeout","a","b","defaultValue","Context","subs","ctx","Set","_props","add","old","delete","Provider","__l","Consumer","contextValue","hydrate","toChildArray","out"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/dist/preact.min.js b/node_modules/preact/dist/preact.min.js index 93e6e4b..eda2c00 100644 --- a/node_modules/preact/dist/preact.min.js +++ b/node_modules/preact/dist/preact.min.js @@ -1,2 +1,2 @@ -!function(){var n,l,t,u,i,o,r,e,f,c,a=65536,s=1<<17,h={},v=[],p=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y=Array.isArray;function d(n,l){for(var t in l)n[t]=l[t];return n}function _(n){var l=n.parentNode;l&&l.removeChild(n)}function m(l,t,u){var i,o,r,e={};for(r in t)"key"==r?i=t[r]:"ref"==r?o=t[r]:e[r]=t[r];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):u),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===e[r]&&(e[r]=l.defaultProps[r]);return g(l,e,i,o,null)}function g(n,u,i,o,r){var e={type:n,props:u,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++t:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(e),e}function b(n){return n.children}function k(n,l){this.props=n,this.context=l}function w(n,l){if(null==l)return n.__?w(n.__,n.__i+1):null;for(var t;lt&&i.sort(e));P.__r=0}function S(n,l,t,u,i,o,r,e,f,c,s){var p,y,d,_,m,g=u&&u.__k||v,b=l.length;for(t.__d=f,$(t,l,g),f=t.__d,p=0;p0?g(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,e=E(i,t,r=u+v,h),i.__i=e,o=null,-1!==e&&(h--,(o=t[e])&&(o.__u|=s)),null==o||null===o.__v?(-1==e&&v--,"function"!=typeof i.type&&(i.__u|=a)):e!==r&&(e===r+1?v++:e>r?h>f-r?v+=e-r:v--:v=e(null!=f&&0==(f.__u&s)?1:0))for(;r>=0||e=0){if((f=l[r])&&0==(f.__u&s)&&i==f.key&&o===f.type)return r;r--}if(e2&&(f.children=arguments.length>3?n.call(arguments,2):u),g(l.type,f,i||l.key,o||l.ref,null)},createContext:function(n,l){var t={__c:l="__cC"+f++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var t,u;return this.getChildContext||(t=[],(u={})[l]=this,this.getChildContext=function(){return u},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&t.some(function(n){n.__e=!0,x(n)})},this.sub=function(n){t.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){t.splice(t.indexOf(n),1),l&&l.call(n)}}),n.children}};return t.Provider.__=t.Consumer.contextType=t},toChildArray:function n(l,t){return t=t||[],null==l||"boolean"==typeof l||(y(l)?l.some(function(l){n(l,t)}):t.push(l)),t},options:l},typeof module<"u"?module.exports=c:self.preact=c}(); +!function(){var n,t,e,i,r,o,f,u,c,s,a,h,l,p,y="http://www.w3.org/2000/svg",v="http://www.w3.org/1999/xhtml",d=null,w=void 0,_={},m=[],g=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,b=Array.isArray;function k(n,t){for(var e in t)n[e]=t[e];return n}function C(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function x(t,e,i){var r,o,f,u={};for(f in e)"key"==f?r=e[f]:"ref"==f?o=e[f]:u[f]=e[f];if(arguments.length>2&&(u.children=arguments.length>3?n.call(arguments,2):i),"function"==typeof t&&t.defaultProps!=d)for(f in t.defaultProps)u[f]===w&&(u[f]=t.defaultProps[f]);return S(t,u,r,o,d)}function S(n,i,r,o,f){var u={type:n,props:i,key:r,ref:o,__k:d,__:d,__b:0,__e:d,__c:d,constructor:w,__v:f==d?++e:f,__i:-1,__u:0};return f==d&&t.vnode!=d&&t.vnode(u),u}function M(n){return n.children}function $(n,t){this.props=n,this.context=t}function A(n,t){if(t==d)return n.__?A(n.__,n.__i+1):d;for(var e;ta&&r.sort(u),n=r.shift(),a=r.length,n.__d&&(i=void 0,o=void 0,f=(o=(e=n).__v).__e,c=[],s=[],e.__P&&((i=k({},o)).__v=o.__v+1,t.vnode&&t.vnode(i),z(e.__P,i,o,e.__n,e.__P.namespaceURI,32&o.__u?[f]:d,c,f==d?A(o):f,!!(32&o.__u),s),i.__v=o.__v,i.__.__k[i.__i]=i,R(c,i,s),o.__e=o.__=null,i.__e!=f&&I(i)));E.__r=0}function F(n,t,e,i,r,o,f,u,c,s,a){var h,l,p,y,v,g,b,k=i&&i.__k||m,C=t.length;for(c=H(e,t,k,c,C),h=0;h0?f=n.__k[o]=S(f.type,f.props,f.key,f.ref?f.ref:d,f.__v):n.__k[o]=f,c=o+l,f.__=n,f.__b=n.__b+1,s=f.__i=T(f,e,c,h),u=d,-1!=s&&(h--,(u=e[s])&&(u.__u|=2)),u==d||u.__v==d?(-1==s&&(r>a?l--:rc?l--:l++,f.__u|=4))):n.__k[o]=d;if(h)for(o=0;o(a?1:0))for(r=e-1,o=e+1;r>=0||o=0?r--:o++])!=d&&0==(2&s.__u)&&u==s.key&&c==s.type)return f;return-1}function j(n,t,e){"-"==t[0]?n.setProperty(t,e==d?"":e):n[t]=e==d?"":"number"!=typeof e||g.test(t)?e:e+"px"}function O(n,t,e,i,r){var o,f;n:if("style"==t)if("string"==typeof e)n.style.cssText=e;else{if("string"==typeof i&&(n.style.cssText=i=""),i)for(t in i)e&&t in e||j(n.style,t,"");if(e)for(t in e)i&&e[t]==i[t]||j(n.style,t,e[t])}else if("o"==t[0]&&"n"==t[1])o=t!=(t=t.replace(c,"$1")),f=t.toLowerCase(),t=f in n||"onFocusOut"==t||"onFocusIn"==t?f.slice(2):t.slice(2),n.l||(n.l={}),n.l[t+o]=e,e?i?e.t=i.t:(e.t=s,n.addEventListener(t,o?h:a,o)):n.removeEventListener(t,o?h:a,o);else{if(r==y)t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=t&&"height"!=t&&"href"!=t&&"list"!=t&&"form"!=t&&"tabIndex"!=t&&"download"!=t&&"rowSpan"!=t&&"colSpan"!=t&&"role"!=t&&"popover"!=t&&t in n)try{n[t]=e==d?"":e;break n}catch(n){}"function"==typeof e||(e==d||!1===e&&"-"!=t[4]?n.removeAttribute(t):n.setAttribute(t,"popover"==t&&1==e?"":e))}}function V(n){return function(e){if(this.l){var i=this.l[e.type+n];if(e.i==d)e.i=s++;else if(e.i0?n:b(n)?n.map(q):k({},n)}function B(e,i,r,o,f,u,c,s,a){var h,l,p,m,g,k,x,S=r.props||_,M=i.props,$=i.type;if("svg"==$?f=y:"math"==$?f="http://www.w3.org/1998/Math/MathML":f||(f=v),u!=d)for(h=0;h2&&(c.children=arguments.length>3?n.call(arguments,2):i),S(t.type,c,r||t.key,o||t.ref,d)},createContext:function(n){function t(n){var e,i;return this.getChildContext||(e=new Set,(i={})[t.__c]=this,this.getChildContext=function(){return i},this.componentWillUnmount=function(){e=d},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&e.forEach(function(n){n.__e=!0,P(n)})},this.sub=function(n){e.add(n);var t=n.componentWillUnmount;n.componentWillUnmount=function(){e&&e.delete(n),t&&t.call(n)}}),n.children}return t.__c="__cC"+l++,t.__=n,t.Provider=t.__l=(t.Consumer=function(n,t){return n.children(t)}).contextType=t,t},toChildArray:function n(t,e){return e=e||[],t==d||"boolean"==typeof t||(b(t)?t.some(function(t){n(t,e)}):e.push(t)),e},options:t},typeof module<"u"?module.exports=p:self.preact=p}(); //# sourceMappingURL=preact.min.js.map diff --git a/node_modules/preact/dist/preact.min.js.map b/node_modules/preact/dist/preact.min.js.map index 1ffa9ed..b382fb7 100644 --- a/node_modules/preact/dist/preact.min.js.map +++ b/node_modules/preact/dist/preact.min.js.map @@ -1 +1 @@ -{"version":3,"file":"preact.min.js","sources":["../src/util.js","../src/options.js","../src/create-element.js","../src/component.js","../src/create-context.js","../src/constants.js","../src/diff/children.js","../src/diff/props.js","../src/diff/index.js","../src/render.js","../src/diff/catch-error.js","../src/clone-element.js","../src/cjs.js"],"sourcesContent":["import { EMPTY_ARR } from './constants';\n\nexport const isArray = Array.isArray;\n\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-expect-error 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 {preact.ContainerNode} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\nexport const slice = EMPTY_ARR.slice;\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 {Options}\n */\nconst options = {\n\t_catchError\n};\n\nexport default options;\n","import { slice } from './util';\nimport options from './options';\n\nlet vnodeId = 0;\n\n/**\n * Create an virtual node (used for JSX)\n * @param {VNode[\"type\"]} type The node name or Component constructor for this\n * virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the\n * virtual node\n * @returns {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 > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 {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 {VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {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\t/** @type {VNode} */\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\tconstructor: undefined,\n\t\t_original: original == null ? ++vnodeId : original,\n\t\t_index: -1,\n\t\t_flags: 0\n\t};\n\n\t// Only invoke the vnode hook if this was *not* a direct copy:\n\tif (original == null && 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 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';\nimport { MODE_HYDRATE } from './constants';\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 BaseComponent(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {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 */\nBaseComponent.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) {\n\t\t\tthis._stateCallbacks.push(callback);\n\t\t}\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nBaseComponent.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 {ComponentChildren | void}\n */\nBaseComponent.prototype.render = Fragment;\n\n/**\n * @param {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._index + 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 {Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet oldVNode = component._vnode,\n\t\toldDom = oldVNode._dom,\n\t\tparentDom = component._parentDom,\n\t\tcommitQueue = [],\n\t\trefQueue = [];\n\n\tif (parentDom) {\n\t\tconst newVNode = assign({}, oldVNode);\n\t\tnewVNode._original = oldVNode._original + 1;\n\t\tif (options.vnode) options.vnode(newVNode);\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\toldVNode._flags & MODE_HYDRATE ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(oldVNode) : oldDom,\n\t\t\t!!(oldVNode._flags & MODE_HYDRATE),\n\t\t\trefQueue\n\t\t);\n\n\t\tnewVNode._parent._children[newVNode._index] = newVNode;\n\t\tcommitRoot(commitQueue, newVNode, refQueue);\n\n\t\tif (newVNode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(newVNode);\n\t\t}\n\t}\n}\n\n/**\n * @param {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 * 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\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/**\n * Enqueue a rerender of a component\n * @param {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/**\n * @param {Component} a\n * @param {Component} b\n */\nconst depthSort = (a, b) => a._vnode._depth - b._vnode._depth;\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet c;\n\trerenderQueue.sort(depthSort);\n\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t// process() calls from getting scheduled while `queue` is still being consumed.\n\twhile ((c = rerenderQueue.shift())) {\n\t\tif (c._dirty) {\n\t\t\tlet renderQueueLength = rerenderQueue.length;\n\t\t\trenderComponent(c);\n\t\t\tif (rerenderQueue.length > renderQueueLength) {\n\t\t\t\t// When i.e. rerendering a provider additional new items can be injected, we want to\n\t\t\t\t// keep the order from top to bottom with those new items so we can handle them in a\n\t\t\t\t// single pass\n\t\t\t\trerenderQueue.sort(depthSort);\n\t\t\t}\n\t\t}\n\t}\n\tprocess._rerenderCount = 0;\n}\n\nprocess._rerenderCount = 0;\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 {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 {FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\t/** @type {Component[]} */\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(c => {\n\t\t\t\t\t\t\tc._force = true;\n\t\t\t\t\t\t\tenqueueRender(c);\n\t\t\t\t\t\t});\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 =\n\t\tcontext);\n}\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR, INSERT_VNODE, MATCHED } from '../constants';\nimport { isArray } from '../util';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {PreactElement} parentDom The DOM element whose children are being\n * diffed\n * @param {ComponentChildren[]} renderResult\n * @param {VNode} newParentVNode The new virtual node whose children should be\n * diff'ed against oldParentVNode\n * @param {VNode} oldParentVNode The old virtual node whose children should be\n * diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\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\trefQueue\n) {\n\tlet i,\n\t\t/** @type {VNode} */\n\t\toldVNode,\n\t\t/** @type {VNode} */\n\t\tchildVNode,\n\t\t/** @type {PreactElement} */\n\t\tnewDom,\n\t\t/** @type {PreactElement} */\n\t\tfirstChildDom;\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\t/** @type {VNode[]} */\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet newChildrenLength = renderResult.length;\n\n\tnewParentVNode._nextDom = oldDom;\n\tconstructNewChildrenArray(newParentVNode, renderResult, oldChildren);\n\toldDom = newParentVNode._nextDom;\n\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\tchildVNode = newParentVNode._children[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// At this point, constructNewChildrenArray has assigned _index to be the\n\t\t// matchingIndex for this VNode's oldVNode (or -1 if there is no oldVNode).\n\t\tif (childVNode._index === -1) {\n\t\t\toldVNode = EMPTY_OBJ;\n\t\t} else {\n\t\t\toldVNode = oldChildren[childVNode._index] || EMPTY_OBJ;\n\t\t}\n\n\t\t// Update childVNode._index to its final index\n\t\tchildVNode._index = i;\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\trefQueue\n\t\t);\n\n\t\t// Adjust DOM nodes\n\t\tnewDom = childVNode._dom;\n\t\tif (childVNode.ref && oldVNode.ref != childVNode.ref) {\n\t\t\tif (oldVNode.ref) {\n\t\t\t\tapplyRef(oldVNode.ref, null, childVNode);\n\t\t\t}\n\t\t\trefQueue.push(\n\t\t\t\tchildVNode.ref,\n\t\t\t\tchildVNode._component || newDom,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t}\n\n\t\tif (firstChildDom == null && newDom != null) {\n\t\t\tfirstChildDom = newDom;\n\t\t}\n\n\t\tif (\n\t\t\tchildVNode._flags & INSERT_VNODE ||\n\t\t\toldVNode._children === childVNode._children\n\t\t) {\n\t\t\toldDom = insert(childVNode, oldDom, parentDom);\n\t\t} else if (\n\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\tchildVNode._nextDom !== undefined\n\t\t) {\n\t\t\t// Since Fragments or components that return Fragment like VNodes can\n\t\t\t// contain multiple DOM nodes as the same level, continue the diff from\n\t\t\t// the sibling of last DOM child of this child VNode\n\t\t\toldDom = childVNode._nextDom;\n\t\t} else if (newDom) {\n\t\t\toldDom = newDom.nextSibling;\n\t\t}\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because it\n\t\t// is only used by `diffChildren` to determine where to resume the diff\n\t\t// after diffing Components and Fragments. Once we store it the nextDOM\n\t\t// local var, we can clean up the property. Also prevents us hanging on to\n\t\t// DOM nodes that may have been unmounted.\n\t\tchildVNode._nextDom = undefined;\n\n\t\t// Unset diffing flags\n\t\tchildVNode._flags &= ~(INSERT_VNODE | MATCHED);\n\t}\n\n\t// TODO: With new child diffing algo, consider alt ways to diff Fragments.\n\t// Such as dropping oldDom and moving fragments in place\n\t//\n\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t// _nextDom property to the nextSibling of its last child DOM node.\n\t//\n\t// `oldDom` contains the correct value here because if the last child\n\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t// node's nextSibling.\n\tnewParentVNode._nextDom = oldDom;\n\tnewParentVNode._dom = firstChildDom;\n}\n\n/**\n * @param {VNode} newParentVNode\n * @param {ComponentChildren[]} renderResult\n * @param {VNode[]} oldChildren\n */\nfunction constructNewChildrenArray(newParentVNode, renderResult, oldChildren) {\n\t/** @type {number} */\n\tlet i;\n\t/** @type {VNode} */\n\tlet childVNode;\n\t/** @type {VNode} */\n\tlet oldVNode;\n\n\tconst newChildrenLength = renderResult.length;\n\tlet oldChildrenLength = oldChildren.length,\n\t\tremainingOldChildren = oldChildrenLength;\n\n\tlet skew = 0;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\t// @ts-expect-error We are reusing the childVNode variable to hold both the\n\t\t// pre and post normalized childVNode\n\t\tchildVNode = renderResult[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\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\tchildVNode.constructor == String\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 (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.constructor === undefined && 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\tchildVNode.ref ? childVNode.ref : null,\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// Handle unmounting null placeholders, i.e. VNode => null in unkeyed children\n\t\tif (childVNode == null) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode && oldVNode.key == null && oldVNode._dom) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode, false);\n\n\t\t\t\t// Explicitly nullify this position in oldChildren instead of just\n\t\t\t\t// setting `_match=true` to prevent other routines (e.g.\n\t\t\t\t// `findMatchingIndex` or `getDomSibling`) from thinking VNodes or DOM\n\t\t\t\t// nodes in this position are still available to be used in diffing when\n\t\t\t\t// they have actually already been unmounted. For example, by only\n\t\t\t\t// setting `_match=true` here, the unmounting loop later would attempt\n\t\t\t\t// to unmount this VNode again seeing `_match==true`. Further,\n\t\t\t\t// getDomSibling doesn't know about _match and so would incorrectly\n\t\t\t\t// assume DOM nodes in this subtree are mounted and usable.\n\t\t\t\toldChildren[i] = null;\n\t\t\t\tremainingOldChildren--;\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\tconst skewedIndex = i + skew;\n\t\tconst matchingIndex = findMatchingIndex(\n\t\t\tchildVNode,\n\t\t\toldChildren,\n\t\t\tskewedIndex,\n\t\t\tremainingOldChildren\n\t\t);\n\n\t\t// Temporarily store the matchingIndex on the _index property so we can pull\n\t\t// out the oldVNode in diffChildren. We'll override this to the VNode's\n\t\t// final index after using this property to get the oldVNode\n\t\tchildVNode._index = matchingIndex;\n\n\t\toldVNode = null;\n\t\tif (matchingIndex !== -1) {\n\t\t\toldVNode = oldChildren[matchingIndex];\n\t\t\tremainingOldChildren--;\n\t\t\tif (oldVNode) {\n\t\t\t\toldVNode._flags |= MATCHED;\n\t\t\t}\n\t\t}\n\n\t\t// Here, we define isMounting for the purposes of the skew diffing\n\t\t// algorithm. Nodes that are unsuspending are considered mounting and we detect\n\t\t// this by checking if oldVNode._original === null\n\t\tconst isMounting = oldVNode == null || oldVNode._original === null;\n\n\t\tif (isMounting) {\n\t\t\tif (matchingIndex == -1) {\n\t\t\t\tskew--;\n\t\t\t}\n\n\t\t\t// If we are mounting a DOM VNode, mark it for insertion\n\t\t\tif (typeof childVNode.type != 'function') {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t} else if (matchingIndex !== skewedIndex) {\n\t\t\tif (matchingIndex === skewedIndex + 1) {\n\t\t\t\tskew++;\n\t\t\t} else if (matchingIndex > skewedIndex) {\n\t\t\t\tif (remainingOldChildren > newChildrenLength - skewedIndex) {\n\t\t\t\t\tskew += matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// ### Change from keyed: I think this was missing from the algo...\n\t\t\t\t\tskew--;\n\t\t\t\t}\n\t\t\t} else if (matchingIndex < skewedIndex) {\n\t\t\t\tif (matchingIndex == skewedIndex - 1) {\n\t\t\t\t\tskew = matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\tskew = 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tskew = 0;\n\t\t\t}\n\n\t\t\t// Move this VNode's DOM if the original index (matchingIndex) doesn't\n\t\t\t// match the new skew index (i + new skew)\n\t\t\tif (matchingIndex !== i + skew) {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove remaining oldChildren if there are any. Loop forwards so that as we\n\t// unmount DOM from the beginning of the oldChildren, we can adjust oldDom to\n\t// point to the next child, which needs to be the first DOM node that won't be\n\t// unmounted.\n\tif (remainingOldChildren) {\n\t\tfor (i = 0; i < oldChildrenLength; i++) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode != null && (oldVNode._flags & MATCHED) === 0) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * @param {VNode} parentVNode\n * @param {PreactElement} oldDom\n * @param {PreactElement} parentDom\n * @returns {PreactElement}\n */\nfunction insert(parentVNode, oldDom, parentDom) {\n\t// Note: VNodes in nested suspended trees may be missing _children.\n\n\tif (typeof parentVNode.type == 'function') {\n\t\tlet children = parentVNode._children;\n\t\tfor (let i = 0; children && i < children.length; i++) {\n\t\t\tif (children[i]) {\n\t\t\t\t// If we enter this code path on sCU bailout, where we copy\n\t\t\t\t// oldVNode._children to newVNode._children, we need to update the old\n\t\t\t\t// children's _parent pointer to point to the newVNode (parentVNode\n\t\t\t\t// here).\n\t\t\t\tchildren[i]._parent = parentVNode;\n\t\t\t\toldDom = insert(children[i], oldDom, parentDom);\n\t\t\t}\n\t\t}\n\n\t\treturn oldDom;\n\t} else if (parentVNode._dom != oldDom) {\n\t\tparentDom.insertBefore(parentVNode._dom, oldDom || null);\n\t\toldDom = parentVNode._dom;\n\t}\n\n\treturn oldDom && oldDom.nextSibling;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {ComponentChildren} children The unflattened children of a virtual\n * node\n * @returns {VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (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\n/**\n * @param {VNode} childVNode\n * @param {VNode[]} oldChildren\n * @param {number} skewedIndex\n * @param {number} remainingOldChildren\n * @returns {number}\n */\nfunction findMatchingIndex(\n\tchildVNode,\n\toldChildren,\n\tskewedIndex,\n\tremainingOldChildren\n) {\n\tconst key = childVNode.key;\n\tconst type = childVNode.type;\n\tlet x = skewedIndex - 1;\n\tlet y = skewedIndex + 1;\n\tlet oldVNode = oldChildren[skewedIndex];\n\n\t// We only need to perform a search if there are more children\n\t// (remainingOldChildren) to search. However, if the oldVNode we just looked\n\t// at skewedIndex was not already used in this diff, then there must be at\n\t// least 1 other (so greater than 1) remainingOldChildren to attempt to match\n\t// against. So the following condition checks that ensuring\n\t// remainingOldChildren > 1 if the oldVNode is not already used/matched. Else\n\t// if the oldVNode was null or matched, then there could needs to be at least\n\t// 1 (aka `remainingOldChildren > 0`) children to find and compare against.\n\tlet shouldSearch =\n\t\tremainingOldChildren >\n\t\t(oldVNode != null && (oldVNode._flags & MATCHED) === 0 ? 1 : 0);\n\n\tif (\n\t\toldVNode === null ||\n\t\t(oldVNode && key == oldVNode.key && type === oldVNode.type)\n\t) {\n\t\treturn skewedIndex;\n\t} else if (shouldSearch) {\n\t\twhile (x >= 0 || y < oldChildren.length) {\n\t\t\tif (x >= 0) {\n\t\t\t\toldVNode = oldChildren[x];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn x;\n\t\t\t\t}\n\t\t\t\tx--;\n\t\t\t}\n\n\t\t\tif (y < oldChildren.length) {\n\t\t\t\toldVNode = oldChildren[y];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn y;\n\t\t\t\t}\n\t\t\t\ty++;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn -1;\n}\n","import { IS_NON_DIMENSIONAL } from '../constants';\nimport options from '../options';\n\nfunction setStyle(style, key, value) {\n\tif (key[0] === '-') {\n\t\tstyle.setProperty(key, value == null ? '' : value);\n\t} else if (value == null) {\n\t\tstyle[key] = '';\n\t} else if (typeof value != 'number' || IS_NON_DIMENSIONAL.test(key)) {\n\t\tstyle[key] = value;\n\t} else {\n\t\tstyle[key] = value + 'px';\n\t}\n}\n\n/**\n * Set a property value on a DOM node\n * @param {PreactElement} dom The DOM node to modify\n * @param {string} name The name of the property to set\n * @param {*} value The value to set the property to\n * @param {*} oldValue The old value the property had\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node or not\n */\nexport function setProperty(dom, name, value, oldValue, isSvg) {\n\tlet useCapture;\n\n\to: if (name === 'style') {\n\t\tif (typeof value == 'string') {\n\t\t\tdom.style.cssText = value;\n\t\t} else {\n\t\t\tif (typeof oldValue == 'string') {\n\t\t\t\tdom.style.cssText = oldValue = '';\n\t\t\t}\n\n\t\t\tif (oldValue) {\n\t\t\t\tfor (name in oldValue) {\n\t\t\t\t\tif (!(value && name in value)) {\n\t\t\t\t\t\tsetStyle(dom.style, name, '');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (value) {\n\t\t\t\tfor (name in value) {\n\t\t\t\t\tif (!oldValue || value[name] !== oldValue[name]) {\n\t\t\t\t\t\tsetStyle(dom.style, name, value[name]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6\n\telse if (name[0] === 'o' && name[1] === 'n') {\n\t\tuseCapture =\n\t\t\tname !== (name = name.replace(/(PointerCapture)$|Capture$/, '$1'));\n\n\t\t// Infer correct casing for DOM built-in events:\n\t\tif (name.toLowerCase() in dom) name = name.toLowerCase().slice(2);\n\t\telse name = name.slice(2);\n\n\t\tif (!dom._listeners) dom._listeners = {};\n\t\tdom._listeners[name + useCapture] = value;\n\n\t\tif (value) {\n\t\t\tif (!oldValue) {\n\t\t\t\tvalue._attached = Date.now();\n\t\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\t\tdom.addEventListener(name, handler, useCapture);\n\t\t\t} else {\n\t\t\t\tvalue._attached = oldValue._attached;\n\t\t\t}\n\t\t} else {\n\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\tdom.removeEventListener(name, handler, useCapture);\n\t\t}\n\t} else {\n\t\tif (isSvg) {\n\t\t\t// Normalize incorrect prop usage for SVG:\n\t\t\t// - xlink:href / xlinkHref --> 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 !== 'width' &&\n\t\t\tname !== 'height' &&\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 !== 'rowSpan' &&\n\t\t\tname !== 'colSpan' &&\n\t\t\tname !== 'role' &&\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- and data- attributes have no boolean representation.\n\t\t// A `false` value is different from the attribute not being\n\t\t// present, so we can't remove it. For non-boolean aria\n\t\t// attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost too many bytes. On top of\n\t\t// that other frameworks generally stringify `false`.\n\n\t\tif (typeof value == 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (value != null && (value !== false || name[4] === '-')) {\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 {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tconst eventHandler = this._listeners[e.type + false];\n\t/**\n\t * This trick is inspired by Vue https://github.com/vuejs/core/blob/main/packages/runtime-dom/src/modules/events.ts#L90-L101\n\t * when the dom performs an event it leaves micro-ticks in between bubbling up which means that an event can trigger on a newly\n\t * created DOM-node while the event bubbles up, this can cause quirky behavior as seen in https://github.com/preactjs/preact/issues/3927\n\t */\n\tif (!e._dispatched) {\n\t\t// When an event has no _dispatched we know this is the first event-target in the chain\n\t\t// so we set the initial dispatched time.\n\t\te._dispatched = Date.now();\n\t\t// When the _dispatched is smaller than the time when the targetted event handler was attached\n\t\t// we know we have bubbled up to an element that was added during patching the dom.\n\t} else if (e._dispatched <= eventHandler._attached) {\n\t\treturn;\n\t}\n\treturn eventHandler(options.event ? options.event(e) : e);\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxyCapture(e) {\n\treturn this._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import {\n\tEMPTY_OBJ,\n\tMODE_HYDRATE,\n\tMODE_SUSPENDED,\n\tRESET_MODE\n} from '../constants';\nimport { BaseComponent, getDomSibling } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { setProperty } from './props';\nimport { assign, isArray, removeNode, slice } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {PreactElement} parentDom The parent of the DOM element\n * @param {VNode} newVNode The new virtual node\n * @param {VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating,\n\trefQueue\n) {\n\t/** @type {any} */\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._flags & MODE_SUSPENDED) {\n\t\tisHydrating = !!(oldVNode._flags & MODE_HYDRATE);\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\touter: if (typeof newType == 'function') {\n\t\ttry {\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-expect-error 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-expect-error Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new BaseComponent(\n\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t);\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\tc._stateCallbacks = [];\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\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\t\t\tc._vnode = newVNode;\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((c.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\t\tnewVNode._original === oldVNode._original)\n\t\t\t\t) {\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) {\n\t\t\t\t\t\t// When we are dealing with a bail because of sCU we have to update\n\t\t\t\t\t\t// the props, state and dirty-state.\n\t\t\t\t\t\t// when we are dealing with strict-equality we don't as the child could still\n\t\t\t\t\t\t// be dirtied see #3883\n\t\t\t\t\t\tc.props = newProps;\n\t\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t\tc._dirty = false;\n\t\t\t\t\t}\n\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\n\t\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t\t}\n\t\t\t\t\tc._stateCallbacks = [];\n\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._parentDom = parentDom;\n\t\t\tc._force = false;\n\n\t\t\tlet renderHook = options._render,\n\t\t\t\tcount = 0;\n\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\tc.state = c._nextState;\n\t\t\t\tc._dirty = false;\n\n\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t}\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t} else {\n\t\t\t\tdo {\n\t\t\t\t\tc._dirty = false;\n\t\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\t\t// Handle setState called in render, see #2553\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t} while (c._dirty && ++count < 25);\n\t\t\t}\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\tisArray(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\trefQueue\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._flags &= RESET_MODE;\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\t\t} catch (e) {\n\t\t\tnewVNode._original = null;\n\t\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\t\tnewVNode._dom = oldDom;\n\t\t\t\tnewVNode._flags |= isHydrating\n\t\t\t\t\t? MODE_HYDRATE | MODE_SUSPENDED\n\t\t\t\t\t: MODE_HYDRATE;\n\t\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t\t// ^ could possibly be simplified to:\n\t\t\t\t// excessDomChildren.length = 0;\n\t\t\t} else {\n\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t}\n\t\t\toptions._catchError(e, newVNode, oldVNode);\n\t\t}\n\t} else if (\n\t\texcessDomChildren == null &&\n\t\tnewVNode._original === oldVNode._original\n\t) {\n\t\tnewVNode._children = oldVNode._children;\n\t\tnewVNode._dom = oldVNode._dom;\n\t} else {\n\t\tnewVNode._dom = diffElementNodes(\n\t\t\toldVNode._dom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\tisHydrating,\n\t\t\trefQueue\n\t\t);\n\t}\n\n\tif ((tmp = options.diffed)) tmp(newVNode);\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {VNode} root\n */\nexport function commitRoot(commitQueue, root, refQueue) {\n\troot._nextDom = undefined;\n\n\tfor (let i = 0; i < refQueue.length; i++) {\n\t\tapplyRef(refQueue[i], refQueue[++i], refQueue[++i]);\n\t}\n\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-expect-error 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-expect-error See above comment 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 {PreactElement} dom The DOM element representing the virtual nodes\n * being diffed\n * @param {VNode} newVNode The new virtual node\n * @param {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 {Array} excessDomChildren\n * @param {Array} commitQueue List of components which have callbacks\n * to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n * @returns {PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating,\n\trefQueue\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = /** @type {string} */ (newVNode.type);\n\t/** @type {any} */\n\tlet i;\n\t/** @type {{ __html?: string }} */\n\tlet newHtml;\n\t/** @type {{ __html?: string }} */\n\tlet oldHtml;\n\t/** @type {ComponentChildren} */\n\tlet newChildren;\n\tlet value;\n\tlet inputValue;\n\tlet checked;\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 = 0; i < excessDomChildren.length; i++) {\n\t\t\tvalue = 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\tvalue &&\n\t\t\t\t'setAttribute' in value === !!nodeType &&\n\t\t\t\t(nodeType ? value.localName === nodeType : value.nodeType === 3)\n\t\t\t) {\n\t\t\t\tdom = value;\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\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS('http://www.w3.org/2000/svg', nodeType);\n\t\t} else {\n\t\t\tdom = document.createElement(nodeType, newProps.is && newProps);\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\n\t\t// 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 = excessDomChildren && slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\t// If we are in a situation where we are not hydrating but are using\n\t\t// existing DOM (e.g. replaceNode) we should read the existing DOM\n\t\t// attributes to diff them\n\t\tif (!isHydrating && excessDomChildren != null) {\n\t\t\toldProps = {};\n\t\t\tfor (i = 0; i < dom.attributes.length; i++) {\n\t\t\t\tvalue = dom.attributes[i];\n\t\t\t\toldProps[value.name] = value.value;\n\t\t\t}\n\t\t}\n\n\t\tfor (i in oldProps) {\n\t\t\tvalue = oldProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\toldHtml = value;\n\t\t\t} else if (i !== 'key' && !(i in newProps)) {\n\t\t\t\tsetProperty(dom, i, null, value, isSvg);\n\t\t\t}\n\t\t}\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\tfor (i in newProps) {\n\t\t\tvalue = newProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t\tnewChildren = value;\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\tnewHtml = value;\n\t\t\t} else if (i == 'value') {\n\t\t\t\tinputValue = value;\n\t\t\t} else if (i == 'checked') {\n\t\t\t\tchecked = value;\n\t\t\t} else if (\n\t\t\t\ti !== 'key' &&\n\t\t\t\t(!isHydrating || typeof value == 'function') &&\n\t\t\t\toldProps[i] !== value\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, value, oldProps[i], isSvg);\n\t\t\t}\n\t\t}\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\tif (\n\t\t\t\t!isHydrating &&\n\t\t\t\t(!oldHtml ||\n\t\t\t\t\t(newHtml.__html !== oldHtml.__html &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML))\n\t\t\t) {\n\t\t\t\tdom.innerHTML = newHtml.__html;\n\t\t\t}\n\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\tif (oldHtml) dom.innerHTML = '';\n\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tisArray(newChildren) ? newChildren : [newChildren],\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\texcessDomChildren\n\t\t\t\t\t? excessDomChildren[0]\n\t\t\t\t\t: oldVNode._children && getDomSibling(oldVNode, 0),\n\t\t\t\tisHydrating,\n\t\t\t\trefQueue\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\ti = 'value';\n\t\t\tif (\n\t\t\t\tinputValue !== 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(inputValue !== dom[i] ||\n\t\t\t\t\t(nodeType === 'progress' && !inputValue) ||\n\t\t\t\t\t// This is only for IE 11 to fix value not being updated.\n\t\t\t\t\t// To avoid a stale select value we need to set the option.value\n\t\t\t\t\t// again, which triggers IE11 to re-evaluate the select value\n\t\t\t\t\t(nodeType == 'option' && inputValue != oldProps[i]))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, inputValue, oldProps[i], namespace);\n\t\t\t}\n\n\t\t\ti = 'checked';\n\t\t\tif (checked != UNDEFINED && checked != dom[i]) {\n\t\t\t\tsetProperty(dom, i, checked, oldProps[i], namespace);\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 {Ref & { _unmount?: unknown }} ref\n * @param {any} value\n * @param {VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') {\n\t\t\tlet hasRefUnmount = typeof ref._unmount == 'function';\n\t\t\tif (hasRefUnmount) {\n\t\t\t\t// @ts-ignore TS doesn't like moving narrowing checks into variables\n\t\t\t\tref._unmount();\n\t\t\t}\n\n\t\t\tif (!hasRefUnmount || value != NULL) {\n\t\t\t\t// Store the cleanup function on the function\n\t\t\t\t// instance object itself to avoid shape\n\t\t\t\t// transitioning vnode\n\t\t\t\tref._unmount = ref(value);\n\t\t\t}\n\t\t} else 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 {VNode} vnode The virtual node to unmount\n * @param {VNode} parentVNode The parent of the VNode that 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) {\n\t\t\tapplyRef(r, NULL, parentVNode);\n\t\t}\n\t}\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]) {\n\t\t\t\tunmount(\n\t\t\t\t\tr[i],\n\t\t\t\t\tparentVNode,\n\t\t\t\t\tskipRemove || typeof vnode.type != 'function'\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!skipRemove) {\n\t\tremoveNode(vnode._dom);\n\t}\n\n\tvnode._component = vnode._parent = vnode._dom = UNDEFINED;\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, NULL } from './constants';\nimport { commitRoot, diff } from './diff/index';\nimport { createElement, Fragment } from './create-element';\nimport options from './options';\nimport { slice } from './util';\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 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\t// https://github.com/preactjs/preact/issues/3794\n\tif (parentDom == document) {\n\t\tparentDom = document.documentElement;\n\t}\n\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 = ((!isHydrating && replaceNode) || parentDom)._children =\n\t\tcreateElement(Fragment, NULL, [vnode]);\n\n\t// List of effects that need to be called after diffing.\n\tlet commitQueue = [],\n\t\trefQueue = [];\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.namespaceURI,\n\t\t!isHydrating && replaceNode\n\t\t\t? [replaceNode]\n\t\t\t: oldVNode\n\t\t\t\t? NULL\n\t\t\t\t: parentDom.firstChild\n\t\t\t\t\t? slice.call(parentDom.childNodes)\n\t\t\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\t? oldVNode._dom\n\t\t\t\t: parentDom.firstChild,\n\t\tisHydrating,\n\t\trefQueue\n\t);\n\n\t// Flush all queued effects\n\tcommitRoot(commitQueue, vnode, refQueue);\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 update\n */\nexport function hydrate(vnode, parentDom) {\n\trender(vnode, parentDom, hydrate);\n}\n","import { NULL } from '../constants';\n\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 the error that was caught (except\n * for unmounting when this parameter is the highest parent that was being\n * unmounted)\n * @param {import('../internal').VNode} [oldVNode]\n * @param {import('../internal').ErrorInfo} [errorInfo]\n */\nexport function _catchError(error, vnode, oldVNode, errorInfo) {\n\t/** @type {import('../internal').Component} */\n\tlet component,\n\t\t/** @type {import('../internal').ComponentType} */\n\t\tctor,\n\t\t/** @type {boolean} */\n\t\thandled;\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, errorInfo || {});\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","import { assign, slice } from './util';\nimport { createVNode } from './create-element';\nimport { NULL, UNDEFINED } from './constants';\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its\n * 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\n * 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\n\tlet defaultProps;\n\n\tif (vnode.type && vnode.type.defaultProps) {\n\t\tdefaultProps = vnode.type.defaultProps;\n\t}\n\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 if (props[i] === UNDEFINED && defaultProps != UNDEFINED) {\n\t\t\tnormalizedProps[i] = defaultProps[i];\n\t\t} else {\n\t\t\tnormalizedProps[i] = props[i];\n\t\t}\n\t}\n\n\tif (arguments.length > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 * as preact from './index.js';\nif (typeof module < 'u') module.exports = preact;\nelse self.preact = preact;\n"],"names":["slice","options","vnodeId","isValidElement","rerenderQueue","prevDebounce","defer","depthSort","CAPTURE_REGEX","eventClock","eventProxy","eventProxyCapture","i","SVG_NAMESPACE","XHTML_NAMESPACE","NULL","UNDEFINED","undefined","EMPTY_OBJ","EMPTY_ARR","IS_NON_DIMENSIONAL","isArray","Array","assign","obj","props","removeNode","node","parentNode","removeChild","createElement","type","children","key","ref","normalizedProps","arguments","length","call","defaultProps","createVNode","original","vnode","__k","__","__b","__e","__c","constructor","__v","__i","__u","Fragment","BaseComponent","context","this","getDomSibling","childIndex","sibling","updateParentDomPointers","child","base","enqueueRender","c","__d","push","process","__r","debounceRendering","component","newVNode","oldVNode","oldDom","commitQueue","refQueue","l","sort","shift","__P","diff","__n","namespaceURI","commitRoot","diffChildren","parentDom","renderResult","newParentVNode","oldParentVNode","globalContext","namespace","excessDomChildren","isHydrating","childVNode","newDom","firstChildDom","result","shouldPlace","oldChildren","newChildrenLength","constructNewChildrenArray","applyRef","insert","nextSibling","skewedIndex","matchingIndex","oldChildrenLength","remainingOldChildren","skew","String","findMatchingIndex","unmount","parentVNode","insertBefore","nodeType","x","y","matched","setStyle","style","value","setProperty","test","dom","name","oldValue","useCapture","lowerCaseName","o","cssText","replace","toLowerCase","_attached","addEventListener","removeEventListener","e","removeAttribute","setAttribute","createEventProxy","eventHandler","_dispatched","event","tmp","isNew","oldProps","oldState","snapshot","clearProcessingException","newProps","isClassComponent","provider","componentContext","renderHook","count","newType","outer","prototype","render","contextType","__E","doRender","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","some","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","cloneNode","then","MODE_HYDRATE","indexOf","markAsForce","diffElementNodes","diffed","forEach","root","cb","map","newHtml","oldHtml","newChildren","inputValue","checked","localName","document","createTextNode","createElementNS","is","__m","data","childNodes","attributes","__html","innerHTML","content","hasRefUnmount","current","skipRemove","r","componentWillUnmount","replaceNode","documentElement","firstChild","error","errorInfo","ctor","handled","getDerivedStateFromError","setState","componentDidCatch","update","callback","s","forceUpdate","Promise","bind","resolve","setTimeout","a","b","hydrate","defaultValue","Context","subs","ctx","Set","_props","add","old","delete","Provider","__l","Consumer","contextValue","toChildArray","out","module","exports","preact","self"],"mappings":"gBA2BaA,EChBPC,ECPFC,EA2FSC,ECoFTC,EAWAC,EAEEC,EA0BAC,EC3MAC,EAaFC,EA+IEC,EACAC,ECzKKC,ICSEC,EAAgB,6BAChBC,EAAkB,+BAGlBC,EAAO,KACPC,OAAYC,EACZC,EAAgC,CAAG,EACnCC,EAAY,GACZC,EACZ,oENnBYC,EAAUC,MAAMD,QAStB,SAASE,EAAOC,EAAKC,GAE3B,IAAK,IAAIb,KAAKa,EAAOD,EAAIZ,GAAKa,EAAMb,GACpC,OAA6BY,CAC9B,CAQgB,SAAAE,EAAWC,GACtBA,GAAQA,EAAKC,YAAYD,EAAKC,WAAWC,YAAYF,EAC1D,CEVgB,SAAAG,EAAcC,EAAMN,EAAOO,GAC1C,IACCC,EACAC,EACAtB,EAHGuB,EAAkB,CAAA,EAItB,IAAKvB,KAAKa,EACA,OAALb,EAAYqB,EAAMR,EAAMb,GACd,OAALA,EAAYsB,EAAMT,EAAMb,GAC5BuB,EAAgBvB,GAAKa,EAAMb,GAUjC,GAPIwB,UAAUC,OAAS,IACtBF,EAAgBH,SACfI,UAAUC,OAAS,EAAIrC,EAAMsC,KAAKF,UAAW,GAAKJ,GAKjC,mBAARD,GAAsBA,EAAKQ,cAAgBxB,EACrD,IAAKH,KAAKmB,EAAKQ,aACVJ,EAAgBvB,KAAOI,IAC1BmB,EAAgBvB,GAAKmB,EAAKQ,aAAa3B,IAK1C,OAAO4B,EAAYT,EAAMI,EAAiBF,EAAKC,EAAKnB,EACrD,CAcgB,SAAAyB,EAAYT,EAAMN,EAAOQ,EAAKC,EAAKO,GAIlD,IAAMC,EAAQ,CACbX,KAAAA,EACAN,MAAAA,EACAQ,IAAAA,EACAC,IAAAA,EACAS,IAAW5B,EACX6B,GAAS7B,EACT8B,IAAQ,EACRC,IAAM/B,EACNgC,IAAYhC,EACZiC,YAAahC,EACbiC,IAAWR,GAAY1B,IAASb,EAAUuC,EAC1CS,KAAS,EACTC,IAAQ,GAMT,OAFIV,GAAY1B,GAAQd,EAAQyC,OAAS3B,GAAMd,EAAQyC,MAAMA,GAEtDA,CACR,CAMgB,SAAAU,EAAS3B,GACxB,OAAOA,EAAMO,QACd,CC3EO,SAASqB,EAAc5B,EAAO6B,GACpCC,KAAK9B,MAAQA,EACb8B,KAAKD,QAAUA,CAChB,UA0EgBE,EAAcd,EAAOe,GACpC,GAAIA,GAAc1C,EAEjB,OAAO2B,EAAKE,GACTY,EAAcd,EAAKE,GAAUF,EAAKQ,IAAU,GAC5CnC,EAIJ,IADA,IAAI2C,EACGD,EAAaf,EAAKC,IAAWN,OAAQoB,IAG3C,IAFAC,EAAUhB,EAAKC,IAAWc,KAEX1C,GAAQ2C,EAAOZ,KAAS/B,EAItC,OAAO2C,EAAOZ,IAShB,MAA4B,mBAAdJ,EAAMX,KAAqByB,EAAcd,GAAS3B,CACjE,CA4CA,SAAS4C,EAAwBjB,GAAjC,IAGW9B,EACJgD,EAHN,IAAKlB,EAAQA,EAAKE,KAAa7B,GAAQ2B,EAAKK,KAAehC,EAAM,CAEhE,IADA2B,EAAKI,IAAQJ,EAAKK,IAAYc,KAAO9C,EAC5BH,EAAI,EAAGA,EAAI8B,EAAKC,IAAWN,OAAQzB,IAE3C,IADIgD,EAAQlB,EAAKC,IAAW/B,KACfG,GAAQ6C,EAAKd,KAAS/B,EAAM,CACxC2B,EAAKI,IAAQJ,EAAKK,IAAYc,KAAOD,EAAKd,IAC1C,KACD,CAGD,OAAOa,EAAwBjB,EAChC,CACD,CA4BO,SAASoB,EAAcC,KAE1BA,EAACC,MACDD,EAACC,KAAU,IACZ5D,EAAc6D,KAAKF,KAClBG,EAAOC,OACT9D,GAAgBJ,EAAQmE,sBAExB/D,EAAeJ,EAAQmE,oBACN9D,GAAO4D,EAE1B,CASA,SAASA,IAMR,IALA,IAAIH,EApGoBM,EAOjBC,EANHC,EACHC,EACAC,EACAC,EAiGAC,EAAI,EAIEvE,EAAciC,QAOhBjC,EAAciC,OAASsC,GAC1BvE,EAAcwE,KAAKrE,GAGpBwD,EAAI3D,EAAcyE,QAClBF,EAAIvE,EAAciC,OAEd0B,EAACC,MAhHCM,SANHC,SACHC,GADGD,GADoBF,EAwHNN,GAvHMd,KACNH,IACjB2B,EAAc,GACdC,EAAW,GAERL,EAASS,OACNR,EAAW/C,EAAO,CAAE,EAAEgD,IACpBtB,IAAasB,EAAQtB,IAAa,EACtChD,EAAQyC,OAAOzC,EAAQyC,MAAM4B,GAEjCS,EACCV,EAASS,IACTR,EACAC,EACAF,EAASW,IACTX,EAASS,IAAYG,aGzII,GH0IzBV,EAAQpB,IAAyB,CAACqB,GAAUzD,EAC5C0D,EACAD,GAAUzD,EAAOyC,EAAce,GAAYC,KG5IlB,GH6ItBD,EAAQpB,KACXuB,GAGDJ,EAAQrB,IAAasB,EAAQtB,IAC7BqB,EAAQ1B,GAAAD,IAAmB2B,EAAQpB,KAAWoB,EAC9CY,EAAWT,EAAaH,EAAUI,GAClCH,EAAQzB,IAAQyB,EAAQ3B,GAAW,KAE/B0B,EAAQxB,KAAS0B,GACpBb,EAAwBW,KA6F1BJ,EAAOC,IAAkB,CAC1B,CI5MgB,SAAAgB,EACfC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAjB,EACAD,EACAmB,EACAjB,GAXe,IAaX9D,EAEH2D,EAEAqB,EAEAC,EAEAC,EAiCIC,EA8BAC,EA1DDC,EAAeV,GAAkBA,EAAc5C,KAAexB,EAE9D+E,EAAoBb,EAAahD,OAUrC,IARAmC,EAAS2B,EACRb,EACAD,EACAY,EACAzB,EACA0B,GAGItF,EAAI,EAAGA,EAAIsF,EAAmBtF,KAClCgF,EAAaN,EAAc3C,IAAW/B,KACpBG,IAKjBwD,GADyB,GAAtBqB,EAAU1C,IACFhC,EAEA+E,EAAYL,EAAU1C,MAAYhC,EAI9C0E,EAAU1C,IAAUtC,EAGhBmF,EAAShB,EACZK,EACAQ,EACArB,EACAiB,EACAC,EACAC,EACAjB,EACAD,EACAmB,EACAjB,GAIDmB,EAASD,EAAU9C,IACf8C,EAAW1D,KAAOqC,EAASrC,KAAO0D,EAAW1D,MAC5CqC,EAASrC,KACZkE,EAAS7B,EAASrC,IAAKnB,EAAM6E,GAE9BlB,EAAST,KACR2B,EAAW1D,IACX0D,EAAU7C,KAAe8C,EACzBD,IAIEE,GAAiB/E,GAAQ8E,GAAU9E,IACtC+E,EAAgBD,IAGbG,KDzHsB,ECyHLJ,EAAUzC,OACZoB,EAAQ5B,MAAeiD,EAAUjD,IACnD6B,EAAS6B,EAAOT,EAAYpB,EAAQY,EAAWY,GACX,mBAAnBJ,EAAW7D,MAAsBgE,IAAW/E,EAC7DwD,EAASuB,EACCF,IACVrB,EAASqB,EAAOS,aAIjBV,EAAUzC,MAAW,GAKtB,OAFAmC,EAAcxC,IAAQgD,EAEftB,CACR,CAOA,SAAS2B,EACRb,EACAD,EACAY,EACAzB,EACA0B,GALD,IAQKtF,EAEAgF,EAEArB,EA8DGgC,EAOAC,EAnEHC,EAAoBR,EAAY5D,OACnCqE,EAAuBD,EAEpBE,EAAO,EAGX,IADArB,EAAc3C,IAAa,IAAIrB,MAAM4E,GAChCtF,EAAI,EAAGA,EAAIsF,EAAmBtF,KAGlCgF,EAAaP,EAAazE,KAGXG,GACO,kBAAd6E,GACc,mBAAdA,GASc,iBAAdA,GACc,iBAAdA,GAEc,iBAAdA,GACPA,EAAW5C,aAAe4D,OAE1BhB,EAAaN,EAAc3C,IAAW/B,GAAK4B,EAC1CzB,EACA6E,EACA7E,EACAA,EACAA,GAESM,EAAQuE,GAClBA,EAAaN,EAAc3C,IAAW/B,GAAK4B,EAC1CY,EACA,CAAEpB,SAAU4D,GACZ7E,EACAA,EACAA,GAES6E,EAAW5C,cAAgBhC,GAAa4E,EAAU/C,IAAU,EAKtE+C,EAAaN,EAAc3C,IAAW/B,GAAK4B,EAC1CoD,EAAW7D,KACX6D,EAAWnE,MACXmE,EAAW3D,IACX2D,EAAW1D,IAAM0D,EAAW1D,IAAMnB,EAClC6E,EAAU3C,KAGXqC,EAAc3C,IAAW/B,GAAKgF,EAGzBW,EAAc3F,EAAI+F,EACxBf,EAAUhD,GAAW0C,EACrBM,EAAU/C,IAAUyC,EAAczC,IAAU,EAKtC2D,EAAiBZ,EAAU1C,IAAU2D,EAC1CjB,EACAK,EACAM,EACAG,GAGDnC,EAAWxD,GACW,GAAlByF,IAEHE,KADAnC,EAAW0B,EAAYO,MAGtBjC,EAAQpB,KD3OW,ICkPFoB,GAAYxD,GAAQwD,EAAQtB,KAAclC,IAGtC,GAAlByF,IAeCN,EAAoBO,EACvBE,IACUT,EAAoBO,GAC9BE,KAK4B,mBAAnBf,EAAW7D,OACrB6D,EAAUzC,KD/Qc,ICiRfqD,GAAiBD,IAiBvBC,GAAiBD,EAAc,EAClCI,IACUH,GAAiBD,EAAc,EACzCI,KAEIH,EAAgBD,EACnBI,IAEAA,IAMDf,EAAUzC,KDhTc,KC8KzBmC,EAAc3C,IAAW/B,GAAKG,EA2IhC,GAAI2F,EACH,IAAK9F,EAAI,EAAGA,EAAI6F,EAAmB7F,KAClC2D,EAAW0B,EAAYrF,KACPG,GAAuC,ID1TnC,EC0TKwD,EAAQpB,OAC5BoB,EAAQzB,KAAS0B,IACpBA,EAAShB,EAAce,IAGxBuC,EAAQvC,EAAUA,IAKrB,OAAOC,CACR,CASA,SAAS6B,EAAOU,EAAavC,EAAQY,EAAWY,GAAhD,IAIMhE,EACKpB,EAFV,GAA+B,mBAApBmG,EAAYhF,KAAoB,CAE1C,IADIC,EAAW+E,EAAWpE,IACjB/B,EAAI,EAAGoB,GAAYpB,EAAIoB,EAASK,OAAQzB,IAC5CoB,EAASpB,KAKZoB,EAASpB,GAAEgC,GAAWmE,EACtBvC,EAAS6B,EAAOrE,EAASpB,GAAI4D,EAAQY,EAAWY,IAIlD,OAAOxB,CACR,CAAWuC,EAAWjE,KAAS0B,IAC1BwB,IACCxB,GAAUuC,EAAYhF,OAASyC,EAAO5C,aACzC4C,EAAShB,EAAcuD,IAExB3B,EAAU4B,aAAaD,EAAWjE,IAAO0B,GAAUzD,IAEpDyD,EAASuC,EAAWjE,KAGrB,GACC0B,EAASA,GAAUA,EAAO8B,kBAClB9B,GAAUzD,GAA2B,GAAnByD,EAAOyC,UAElC,OAAOzC,CACR,CA4BA,SAASqC,EACRjB,EACAK,EACAM,EACAG,GAJD,IAgCMQ,EACAC,EAEG1D,EA7BFxB,EAAM2D,EAAW3D,IACjBF,EAAO6D,EAAW7D,KACpBwC,EAAW0B,EAAYM,GACrBa,EAAU7C,GAAYxD,GAAuC,IDnZ7C,ECmZewD,EAAQpB,KAiB7C,GACEoB,IAAaxD,GAAe,MAAPkB,GACrBmF,GAAWnF,GAAOsC,EAAStC,KAAOF,GAAQwC,EAASxC,KAEpD,OAAOwE,EACD,GAPNG,GAAwBU,EAAU,EAAI,GAUtC,IAFIF,EAAIX,EAAc,EAClBY,EAAIZ,EAAc,EACfW,GAAK,GAAKC,EAAIlB,EAAY5D,QAGhC,IADAkC,EAAW0B,EADLxC,EAAayD,GAAK,EAAIA,IAAMC,OAGrBpG,GACmB,IDjbZ,ECiblBwD,EAAQpB,MACTlB,GAAOsC,EAAStC,KAChBF,GAAQwC,EAASxC,KAEjB,OAAO0B,EAKV,OAAQ,CACT,CH/bA,SAAS4D,EAASC,EAAOrF,EAAKsF,GACf,KAAVtF,EAAI,GACPqF,EAAME,YAAYvF,EAAKsF,GAASxG,EAAO,GAAKwG,GAE5CD,EAAMrF,GADIsF,GAASxG,EACN,GACa,iBAATwG,GAAqBnG,EAAmBqG,KAAKxF,GACjDsF,EAEAA,EAAQ,IAEvB,CAyBgB,SAAAC,EAAYE,EAAKC,EAAMJ,EAAOK,EAAUnC,GAAxC,IACXoC,EA8BGC,EA5BPC,EAAG,GAAY,SAARJ,EACN,GAAoB,iBAATJ,EACVG,EAAIJ,MAAMU,QAAUT,MACd,CAKN,GAJuB,iBAAZK,IACVF,EAAIJ,MAAMU,QAAUJ,EAAW,IAG5BA,EACH,IAAKD,KAAQC,EACNL,GAASI,KAAQJ,GACtBF,EAASK,EAAIJ,MAAOK,EAAM,IAK7B,GAAIJ,EACH,IAAKI,KAAQJ,EACPK,GAAYL,EAAMI,IAASC,EAASD,IACxCN,EAASK,EAAIJ,MAAOK,EAAMJ,EAAMI,GAIpC,MAGI,GAAe,KAAXA,EAAK,IAAwB,KAAXA,EAAK,GAC/BE,EAAaF,IAASA,EAAOA,EAAKM,QAAQzH,EAAe,OACnDsH,EAAgBH,EAAKO,cAI1BP,EADGG,KAAiBJ,GAAe,cAARC,GAAgC,aAARA,EAC5CG,EAAc9H,MAAM,GAChB2H,EAAK3H,MAAM,GAElB0H,EAAG/C,IAAa+C,EAAG/C,EAAc,CAAE,GACxC+C,EAAG/C,EAAYgD,EAAOE,GAAcN,EAEhCA,EACEK,EAQJL,EAAMY,EAAYP,EAASO,GAP3BZ,EAAMY,EAAY1H,EAClBiH,EAAIU,iBACHT,EACAE,EAAalH,EAAoBD,EACjCmH,IAMFH,EAAIW,oBACHV,EACAE,EAAalH,EAAoBD,EACjCmH,OAGI,CACN,GAAIpC,GAAa5E,EAIhB8G,EAAOA,EAAKM,QAAQ,cAAe,KAAKA,QAAQ,SAAU,UAE1DN,GAAQ,SAARA,GACQ,UAARA,GACQ,QAARA,GACQ,QAARA,GACQ,QAARA,GAGQ,YAARA,GACQ,YAARA,GACQ,WAARA,GACQ,WAARA,GACQ,QAARA,GACQ,WAARA,GACAA,KAAQD,EAER,IACCA,EAAIC,GAAQJ,GAASxG,EAAO,GAAKwG,EAEjC,MAAMQ,CAER,CADG,MAAOO,GACV,CASoB,mBAATf,IAEAA,GAASxG,IAAmB,IAAVwG,GAA8B,KAAXI,EAAK,GAGpDD,EAAIa,gBAAgBZ,GAFpBD,EAAIc,aAAab,EAAc,WAARA,GAA8B,GAATJ,EAAgB,GAAKA,GAInE,CACD,CAOA,SAASkB,EAAiBZ,GAMzB,gBAAiBS,GAChB,GAAI/E,KAAIoB,EAAa,CACpB,IAAM+D,EAAenF,KAAIoB,EAAY2D,EAAEvG,KAAO8F,GAC9C,GAAIS,EAAEK,GAAe5H,EACpBuH,EAAEK,EAAclI,SAKV,GAAI6H,EAAEK,EAAcD,EAAaP,EACvC,OAED,OAAOO,EAAazI,EAAQ2I,MAAQ3I,EAAQ2I,MAAMN,GAAKA,EACxD,CACD,CACD,UIzHgBvD,EACfK,EACAd,EACAC,EACAiB,EACAC,EACAC,EACAjB,EACAD,EACAmB,EACAjB,OAGImE,EAkBE9E,EAAG+E,EAAOC,EAAUC,EAAUC,EAAUC,EACxCC,EACEC,EAMFC,EACAC,EAuGO1I,EA4BP2I,EACHC,EASS5I,EA6BNyE,EAgDOzE,EApPZ6I,EAAUnF,EAASvC,KAIpB,GAAIuC,EAAStB,cAAgBhC,EAAW,OAAOD,EF/DlB,IEkEzBwD,EAAQpB,MACXwC,KFrE0B,GEqETpB,EAAQpB,KAEzBuC,EAAoB,CADpBlB,EAASF,EAAQxB,IAAQyB,EAAQzB,OAI7B+F,EAAM5I,EAAO4C,MAASgG,EAAIvE,GAE/BoF,EAAO,GAAsB,mBAAXD,EACjB,IAgEC,GA9DIN,EAAW7E,EAAS7C,MAClB2H,EACL,cAAeK,GAAWA,EAAQE,UAAUC,OAKzCP,GADJR,EAAMY,EAAQI,cACQrE,EAAcqD,EAAG9F,KACnCuG,EAAmBT,EACpBQ,EACCA,EAAS5H,MAAM8F,MACfsB,EAAGjG,GACJ4C,EAGCjB,EAAQxB,IAEXmG,GADAnF,EAAIO,EAAQvB,IAAcwB,EAAQxB,KACNH,GAAwBmB,EAAC+F,KAGjDV,EAEH9E,EAAQvB,IAAcgB,EAAI,IAAI0F,EAAQN,EAAUG,IAGhDhF,EAAQvB,IAAcgB,EAAI,IAAIV,EAC7B8F,EACAG,GAEDvF,EAAEf,YAAcyG,EAChB1F,EAAE6F,OAASG,GAERV,GAAUA,EAASW,IAAIjG,GAEtBA,EAAEkG,QAAOlG,EAAEkG,MAAQ,CAAE,GAC1BlG,EAACiB,IAAkBQ,EACnBsD,EAAQ/E,EAACC,KAAU,EACnBD,EAACmG,IAAoB,GACrBnG,EAACoG,IAAmB,IAIjBf,GAAoBrF,EAACqG,KAAerJ,IACvCgD,EAACqG,IAAcrG,EAAEkG,OAGdb,GAAoBK,EAAQY,0BAA4BtJ,IACvDgD,EAACqG,KAAerG,EAAEkG,QACrBlG,EAACqG,IAAc7I,EAAO,CAAE,EAAEwC,EAACqG,MAG5B7I,EACCwC,EAACqG,IACDX,EAAQY,yBAAyBlB,EAAUpF,EAACqG,OAI9CrB,EAAWhF,EAAEtC,MACbuH,EAAWjF,EAAEkG,MACblG,EAACd,IAAUqB,EAGPwE,EAEFM,GACAK,EAAQY,0BAA4BtJ,GACpCgD,EAAEuG,oBAAsBvJ,GAExBgD,EAAEuG,qBAGClB,GAAoBrF,EAAEwG,mBAAqBxJ,GAC9CgD,EAACmG,IAAkBjG,KAAKF,EAAEwG,uBAErB,CAUN,GARCnB,GACAK,EAAQY,0BAA4BtJ,GACpCoI,IAAaJ,GACbhF,EAAEyG,2BAA6BzJ,GAE/BgD,EAAEyG,0BAA0BrB,EAAUG,GAItChF,EAAQrB,KAAcsB,EAAQtB,MAC5Bc,EAACjB,KACFiB,EAAE0G,uBAAyB1J,IAKrB,IAJNgD,EAAE0G,sBACDtB,EACApF,EAACqG,IACDd,GAED,CAkBD,IAhBIhF,EAAQrB,KAAcsB,EAAQtB,MAKjCc,EAAEtC,MAAQ0H,EACVpF,EAAEkG,MAAQlG,EAACqG,IACXrG,EAACC,KAAU,GAGZM,EAAQxB,IAAQyB,EAAQzB,IACxBwB,EAAQ3B,IAAa4B,EAAQ5B,IAC7B2B,EAAQ3B,IAAW+H,KAAK,SAAAhI,GACnBA,IAAOA,EAAKE,GAAW0B,EAC5B,GAES1D,EAAI,EAAGA,EAAImD,EAACoG,IAAiB9H,OAAQzB,IAC7CmD,EAACmG,IAAkBjG,KAAKF,EAACoG,IAAiBvJ,IAE3CmD,EAACoG,IAAmB,GAEhBpG,EAACmG,IAAkB7H,QACtBoC,EAAYR,KAAKF,GAGlB,MAAM2F,CACP,CAEI3F,EAAE4G,qBAAuB5J,GAC5BgD,EAAE4G,oBAAoBxB,EAAUpF,EAACqG,IAAad,GAG3CF,GAAoBrF,EAAE6G,oBAAsB7J,GAC/CgD,EAACmG,IAAkBjG,KAAK,WACvBF,EAAE6G,mBAAmB7B,EAAUC,EAAUC,EAC1C,EAEF,CASA,GAPAlF,EAAET,QAAUgG,EACZvF,EAAEtC,MAAQ0H,EACVpF,EAACe,IAAcM,EACfrB,EAACjB,KAAU,EAEPyG,EAAatJ,EAAOkE,IACvBqF,EAAQ,EACLJ,EAAkB,CAQrB,IAPArF,EAAEkG,MAAQlG,EAACqG,IACXrG,EAACC,KAAU,EAEPuF,GAAYA,EAAWjF,GAE3BuE,EAAM9E,EAAE6F,OAAO7F,EAAEtC,MAAOsC,EAAEkG,MAAOlG,EAAET,SAE1B1C,EAAI,EAAGA,EAAImD,EAACoG,IAAiB9H,OAAQzB,IAC7CmD,EAACmG,IAAkBjG,KAAKF,EAACoG,IAAiBvJ,IAE3CmD,EAACoG,IAAmB,EACrB,MACC,GACCpG,EAACC,KAAU,EACPuF,GAAYA,EAAWjF,GAE3BuE,EAAM9E,EAAE6F,OAAO7F,EAAEtC,MAAOsC,EAAEkG,MAAOlG,EAAET,SAGnCS,EAAEkG,MAAQlG,EAACqG,UACHrG,EAACC,OAAawF,EAAQ,IAIhCzF,EAAEkG,MAAQlG,EAACqG,IAEPrG,EAAE8G,iBAAmB9J,IACxByE,EAAgBjE,EAAOA,EAAO,CAAE,EAAEiE,GAAgBzB,EAAE8G,oBAGjDzB,IAAqBN,GAAS/E,EAAE+G,yBAA2B/J,IAC9DkI,EAAWlF,EAAE+G,wBAAwB/B,EAAUC,IAK5C3D,EAAewD,EADlBA,GAAO9H,GAAQ8H,EAAI9G,OAASqB,GAAYyF,EAAI5G,KAAOlB,IAInDsE,EAAe0F,EAAUlC,EAAIpH,MAAMO,WAGpCwC,EAASW,EACRC,EACA/D,EAAQgE,GAAgBA,EAAe,CAACA,GACxCf,EACAC,EACAiB,EACAC,EACAC,EACAjB,EACAD,EACAmB,EACAjB,GAGDX,EAAEF,KAAOS,EAAQxB,IAGjBwB,EAAQnB,MF/Qe,IEiRnBY,EAACmG,IAAkB7H,QACtBoC,EAAYR,KAAKF,GAGdmF,IACHnF,EAAC+F,IAAiB/F,EAACnB,GAAwB7B,EA6B7C,CA3BE,MAAOuH,GAGR,GAFAhE,EAAQrB,IAAalC,EAEjB4E,GAAeD,GAAqB3E,EACvC,GAAIuH,EAAE0C,KAAM,CAKX,IAJA1G,EAAQnB,KAAWwC,EAChBsF,IFrSsB,IEwSlBzG,GAA6B,GAAnBA,EAAOyC,UAAiBzC,EAAO8B,aAC/C9B,EAASA,EAAO8B,YAGjBZ,EAAkBA,EAAkBwF,QAAQ1G,IAAWzD,EACvDuD,EAAQxB,IAAQ0B,CACjB,KAAO,CACN,IAAS5D,EAAI8E,EAAkBrD,OAAQzB,KACtCc,EAAWgE,EAAkB9E,IAE9BuK,EAAY7G,EACb,MAEAA,EAAQxB,IAAQyB,EAAQzB,IACxBwB,EAAQ3B,IAAa4B,EAAQ5B,IACxB2F,EAAE0C,MAAMG,EAAY7G,GAE1BrE,EAAO6C,IAAawF,EAAGhE,EAAUC,EAClC,MAEAmB,GAAqB3E,GACrBuD,EAAQrB,KAAcsB,EAAQtB,KAE9BqB,EAAQ3B,IAAa4B,EAAQ5B,IAC7B2B,EAAQxB,IAAQyB,EAAQzB,KAExB0B,EAASF,EAAQxB,IAAQsI,EACxB7G,EAAQzB,IACRwB,EACAC,EACAiB,EACAC,EACAC,EACAjB,EACAkB,EACAjB,GAMF,OAFKmE,EAAM5I,EAAQoL,SAASxC,EAAIvE,GF/UH,IEiVtBA,EAAQnB,SAA2BlC,EAAYuD,CACvD,CAEA,SAAS2G,EAAYzI,GAChBA,GAASA,EAAKK,MAAaL,EAAKK,IAAAD,KAAqB,GACrDJ,GAASA,EAAKC,KAAYD,EAAKC,IAAW2I,QAAQH,EACvD,CAOO,SAASjG,EAAWT,EAAa8G,EAAM7G,GAC7C,IAAK,IAAI9D,EAAI,EAAGA,EAAI8D,EAASrC,OAAQzB,IACpCwF,EAAS1B,EAAS9D,GAAI8D,IAAW9D,GAAI8D,IAAW9D,IAG7CX,EAAO8C,KAAU9C,EAAO8C,IAASwI,EAAM9G,GAE3CA,EAAYiG,KAAK,SAAA3G,GAChB,IAECU,EAAcV,EAACmG,IACfnG,EAACmG,IAAoB,GACrBzF,EAAYiG,KAAK,SAAAc,GAEhBA,EAAGlJ,KAAKyB,EACT,EAGD,CAFE,MAAOuE,GACRrI,EAAO6C,IAAawF,EAAGvE,EAACd,IACzB,CACD,EACD,CAEA,SAAS8H,EAAUpJ,GAClB,MACgB,iBAARA,GACPA,GAAQZ,GACPY,EAAIkB,KAAWlB,EAAIkB,IAAU,EAEvBlB,EAGJN,EAAQM,GACJA,EAAK8J,IAAIV,GAGVxJ,EAAO,GAAII,EACnB,CAiBA,SAASyJ,EACR1D,EACApD,EACAC,EACAiB,EACAC,EACAC,EACAjB,EACAkB,EACAjB,GATD,IAeK9D,EAEA8K,EAEAC,EAEAC,EACArE,EACAsE,EACAC,EAbA/C,EAAWxE,EAAS9C,OAASP,EAC7BiI,EAAW7E,EAAS7C,MACpBwF,EAAkC3C,EAASvC,KAkB/C,GAJgB,OAAZkF,EAAmBxB,EAAY5E,EACd,QAAZoG,EAAoBxB,EFpaA,qCEqanBA,IAAWA,EAAY3E,GAE7B4E,GAAqB3E,EACxB,IAAKH,EAAI,EAAGA,EAAI8E,EAAkBrD,OAAQzB,IAMzC,IALA2G,EAAQ7B,EAAkB9E,KAOzB,iBAAkB2G,KAAWN,IAC5BA,EAAWM,EAAMwE,WAAa9E,EAA6B,GAAlBM,EAAMN,UAC/C,CACDS,EAAMH,EACN7B,EAAkB9E,GAAKG,EACvB,KACD,CAIF,GAAI2G,GAAO3G,EAAM,CAChB,GAAIkG,GAAYlG,EACf,OAAOiL,SAASC,eAAe9C,GAGhCzB,EAAMsE,SAASE,gBACdzG,EACAwB,EACAkC,EAASgD,IAAMhD,GAKZxD,IACC1F,EAAOmM,KACVnM,EAAOmM,IAAoB9H,EAAUoB,GACtCC,GAAc,GAGfD,EAAoB3E,CACrB,CAEA,GAAIkG,GAAYlG,EAEXgI,IAAaI,GAAcxD,GAAe+B,EAAI2E,MAAQlD,IACzDzB,EAAI2E,KAAOlD,OAEN,CAON,GALAzD,EAAoBA,GAAqB1F,EAAMsC,KAAKoF,EAAI4E,aAKnD3G,GAAeD,GAAqB3E,EAExC,IADAgI,EAAW,GACNnI,EAAI,EAAGA,EAAI8G,EAAI6E,WAAWlK,OAAQzB,IAEtCmI,GADAxB,EAAQG,EAAI6E,WAAW3L,IACR+G,MAAQJ,EAAMA,MAI/B,IAAK3G,KAAKmI,EAET,GADAxB,EAAQwB,EAASnI,GACR,YAALA,QACOA,GAAK,2BAALA,EACV+K,EAAUpE,OACA,KAAE3G,KAAKuI,GAAW,CAC5B,GACO,SAALvI,GAAgB,iBAAkBuI,GAC7B,WAALvI,GAAkB,mBAAoBuI,EAEvC,SAED3B,EAAYE,EAAK9G,EAAGG,EAAMwG,EAAO9B,EAClC,CAKD,IAAK7E,KAAKuI,EACT5B,EAAQ4B,EAASvI,GACR,YAALA,EACHgL,EAAcrE,EACC,2BAAL3G,EACV8K,EAAUnE,EACK,SAAL3G,EACViL,EAAatE,EACE,WAAL3G,EACVkL,EAAUvE,EAER5B,GAA+B,mBAAT4B,GACxBwB,EAASnI,KAAO2G,GAEhBC,EAAYE,EAAK9G,EAAG2G,EAAOwB,EAASnI,GAAI6E,GAK1C,GAAIiG,EAGD/F,GACCgG,IACAD,EAAOc,QAAWb,EAAOa,QAAWd,EAAOc,QAAW9E,EAAI+E,aAE5D/E,EAAI+E,UAAYf,EAAOc,QAGxBlI,EAAQ3B,IAAa,QAsBrB,GApBIgJ,IAASjE,EAAI+E,UAAY,IAE7BtH,EAEkB,YAAjBb,EAASvC,KAAqB2F,EAAIgF,QAAUhF,EAC5CrG,EAAQuK,GAAeA,EAAc,CAACA,GACtCtH,EACAC,EACAiB,EACY,iBAAZyB,EAA8BnG,EAAkB2E,EAChDC,EACAjB,EACAiB,EACGA,EAAkB,GAClBnB,EAAQ5B,KAAca,EAAce,EAAU,GACjDoB,EACAjB,GAIGgB,GAAqB3E,EACxB,IAAKH,EAAI8E,EAAkBrD,OAAQzB,KAClCc,EAAWgE,EAAkB9E,IAM3B+E,IACJ/E,EAAI,QACY,YAAZqG,GAA0B4E,GAAc9K,EAC3C2G,EAAIa,gBAAgB,SAEpBsD,GAAc7K,IAKb6K,IAAenE,EAAI9G,IACN,YAAZqG,IAA2B4E,GAIf,UAAZ5E,GAAwB4E,GAAc9C,EAASnI,KAEjD4G,EAAYE,EAAK9G,EAAGiL,EAAY9C,EAASnI,GAAI6E,GAG9C7E,EAAI,UACAkL,GAAW9K,GAAa8K,GAAWpE,EAAI9G,IAC1C4G,EAAYE,EAAK9G,EAAGkL,EAAS/C,EAASnI,GAAI6E,GAG7C,CAEA,OAAOiC,CACR,CAQgB,SAAAtB,EAASlE,EAAKqF,EAAO7E,GACpC,IACC,GAAkB,mBAAPR,EAAmB,CAC7B,IAAIyK,EAAuC,mBAAhBzK,EAAGiB,IAC1BwJ,GAEHzK,EAAGiB,MAGCwJ,GAAiBpF,GAASxG,IAI9BmB,EAAGiB,IAAYjB,EAAIqF,GAErB,MAAOrF,EAAI0K,QAAUrF,CAGtB,CAFE,MAAOe,GACRrI,EAAO6C,IAAawF,EAAG5F,EACxB,CACD,CASgB,SAAAoE,EAAQpE,EAAOqE,EAAa8F,GAA5B,IACXC,EAsBMlM,EAbV,GARIX,EAAQ6G,SAAS7G,EAAQ6G,QAAQpE,IAEhCoK,EAAIpK,EAAMR,OACT4K,EAAEF,SAAWE,EAAEF,SAAWlK,EAAKI,KACnCsD,EAAS0G,EAAG/L,EAAMgG,KAIf+F,EAAIpK,EAAKK,MAAgBhC,EAAM,CACnC,GAAI+L,EAAEC,qBACL,IACCD,EAAEC,sBAGH,CAFE,MAAOzE,GACRrI,EAAO6C,IAAawF,EAAGvB,EACxB,CAGD+F,EAAEjJ,KAAOiJ,EAAChI,IAAc/D,CACzB,CAEA,GAAK+L,EAAIpK,EAAKC,IACb,IAAS/B,EAAI,EAAGA,EAAIkM,EAAEzK,OAAQzB,IACzBkM,EAAElM,IACLkG,EACCgG,EAAElM,GACFmG,EACA8F,GAAmC,mBAAdnK,EAAMX,MAM1B8K,GACJnL,EAAWgB,EAAKI,KAGjBJ,EAAKK,IAAcL,EAAKE,GAAWF,EAAKI,IAAQ9B,CACjD,CAGA,SAAS+I,EAAStI,EAAOwI,EAAO3G,GAC/B,YAAYN,YAAYvB,EAAO6B,EAChC,CC9pBO,SAASsG,EAAOlH,EAAO0C,EAAW4H,GAAlC,IAWFrH,EAOApB,EAQAE,EACHC,EAzBGU,GAAa4G,WAChB5G,EAAY4G,SAASiB,iBAGlBhN,EAAO2C,IAAQ3C,EAAO2C,GAAOF,EAAO0C,GAYpCb,GAPAoB,EAAoC,mBAAfqH,GAQtBjM,EACCiM,GAAeA,EAAWrK,KAAeyC,EAASzC,IAMlD8B,EAAc,GACjBC,EAAW,GACZK,EACCK,EAPD1C,IAAWiD,GAAeqH,GAAgB5H,GAASzC,IAClDb,EAAcsB,EAAUrC,EAAM,CAAC2B,IAU/B6B,GAAYrD,EACZA,EACAkE,EAAUH,cACTU,GAAeqH,EACb,CAACA,GACDzI,EACCxD,EACAqE,EAAU8H,WACTlN,EAAMsC,KAAK8C,EAAUkH,YACrBvL,EACL0D,GACCkB,GAAeqH,EACbA,EACAzI,EACCA,EAAQzB,IACRsC,EAAU8H,WACdvH,EACAjB,GAIDQ,EAAWT,EAAa/B,EAAOgC,EAChC,CTzCa1E,EAAQmB,EAAUnB,MChBzBC,EAAU,CACf6C,ISDM,SAAqBqK,EAAOzK,EAAO6B,EAAU6I,GAQnD,IANA,IAAI/I,EAEHgJ,EAEAC,EAEO5K,EAAQA,EAAKE,IACpB,IAAKyB,EAAY3B,EAAKK,OAAiBsB,EAASzB,GAC/C,IAcC,IAbAyK,EAAOhJ,EAAUrB,cAELqK,EAAKE,0BAA4BxM,IAC5CsD,EAAUmJ,SAASH,EAAKE,yBAAyBJ,IACjDG,EAAUjJ,EAASL,KAGhBK,EAAUoJ,mBAAqB1M,IAClCsD,EAAUoJ,kBAAkBN,EAAOC,GAAa,CAAE,GAClDE,EAAUjJ,EAASL,KAIhBsJ,EACH,OAAQjJ,EAASyF,IAAiBzF,CAIpC,CAFE,MAAOiE,GACR6E,EAAQ7E,CACT,CAIF,MAAM6E,CACP,GRzCIjN,EAAU,EA2FDC,EAAiB,SAAAuC,GAAK,OAClCA,GAAS3B,GAAQ2B,EAAMM,cAAgBhC,CAAS,ECrEjDqC,EAAcsG,UAAU6D,SAAW,SAAUE,EAAQC,GAEpD,IAAIC,EAEHA,EADGrK,KAAI6G,KAAerJ,GAAQwC,KAAI6G,KAAe7G,KAAK0G,MAClD1G,KAAI6G,IAEJ7G,KAAI6G,IAAc7I,EAAO,CAAA,EAAIgC,KAAK0G,OAGlB,mBAAVyD,IAGVA,EAASA,EAAOnM,EAAO,CAAA,EAAIqM,GAAIrK,KAAK9B,QAGjCiM,GACHnM,EAAOqM,EAAGF,GAIPA,GAAU3M,GAEVwC,KAAIN,MACH0K,GACHpK,KAAI4G,IAAiBlG,KAAK0J,GAE3B7J,EAAcP,MAEhB,EAQAF,EAAcsG,UAAUkE,YAAc,SAAUF,GAC3CpK,KAAIN,MAIPM,KAAIT,KAAU,EACV6K,GAAUpK,KAAI2G,IAAkBjG,KAAK0J,GACzC7J,EAAcP,MAEhB,EAYAF,EAAcsG,UAAUC,OAASxG,EA+F7BhD,EAAgB,GAadE,EACa,mBAAXwN,QACJA,QAAQnE,UAAUqB,KAAK+C,KAAKD,QAAQE,WACpCC,WAuBE1N,EAAY,SAAC2N,EAAGC,GAAM,OAAAD,EAACjL,IAAAJ,IAAiBsL,EAAClL,IAAAJ,GAAc,EA8B7DqB,EAAOC,IAAkB,ECzOnB3D,EAAgB,8BAalBC,EAAa,EA+IXC,EAAa+H,GAAiB,GAC9B9H,EAAoB8H,GAAiB,GCzKhC7H,EAAI,qCIwER,SAASwN,EAAQ1L,EAAO0C,GAC9BwE,EAAOlH,EAAO0C,EAAWgJ,EAC1B,sDPMC,MAAO,CAAExB,QAAS7L,EACnB,qDSvE6B2B,EAAOjB,EAAOO,OAEzCC,EACAC,EACAtB,EAEG2B,EALAJ,EAAkBZ,EAAO,CAAE,EAAEmB,EAAMjB,OAWvC,IAAKb,KAJD8B,EAAMX,MAAQW,EAAMX,KAAKQ,eAC5BA,EAAeG,EAAMX,KAAKQ,cAGjBd,EACA,OAALb,EAAYqB,EAAMR,EAAMb,GACd,OAALA,EAAYsB,EAAMT,EAAMb,GAEhCuB,EAAgBvB,GADRa,EAAMb,KAAOI,GAAauB,GAAgBvB,EAC7BuB,EAAa3B,GAEba,EAAMb,GAS7B,OALIwB,UAAUC,OAAS,IACtBF,EAAgBH,SACfI,UAAUC,OAAS,EAAIrC,EAAMsC,KAAKF,UAAW,GAAKJ,GAG7CQ,EACNE,EAAMX,KACNI,EACAF,GAAOS,EAAMT,IACbC,GAAOQ,EAAMR,IACbnB,EAEF,gBN1CgB,SAAcsN,GAC7B,SAASC,EAAQ7M,GAAjB,IAGM8M,EACAC,EA+BL,OAlCKjL,KAAKsH,kBAEL0D,EAAO,IAAIE,KACXD,EAAM,CAAE,GACRF,EAAOvL,KAAQQ,KAEnBA,KAAKsH,gBAAkB,WAAM,OAAA2D,CAAG,EAEhCjL,KAAKwJ,qBAAuB,WAC3BwB,EAAOxN,CACR,EAEAwC,KAAKkH,sBAAwB,SAAUiE,GAElCnL,KAAK9B,MAAM8F,OAASmH,EAAOnH,OAC9BgH,EAAKjD,QAAQ,SAAAvH,GACZA,EAACjB,KAAU,EACXgB,EAAcC,EACf,EAEF,EAEAR,KAAKyG,IAAM,SAAAjG,GACVwK,EAAKI,IAAI5K,GACT,IAAI6K,EAAM7K,EAAEgJ,qBACZhJ,EAAEgJ,qBAAuB,WACpBwB,GACHA,EAAKM,OAAO9K,GAET6K,GAAKA,EAAItM,KAAKyB,EACnB,CACD,GAGMtC,EAAMO,QACd,CAgBA,OAdAsM,EAAOvL,IAAO,OAASnC,IACvB0N,EAAO1L,GAAiByL,EAQxBC,EAAQQ,SACPR,EAAOS,KANRT,EAAQU,SAAW,SAACvN,EAAOwN,GAC1B,OAAOxN,EAAMO,SAASiN,EACvB,GAKkBpF,YAChByE,EAEKA,CACR,eEkUO,SAASY,EAAalN,EAAUmN,GAUtC,OATAA,EAAMA,GAAO,GACTnN,GAAYjB,GAA2B,kBAAZiB,IACpBX,EAAQW,GAClBA,EAAS0I,KAAK,SAAA9G,GACbsL,EAAatL,EAAOuL,EACrB,GAEAA,EAAIlL,KAAKjC,IAEHmN,CACR,oBKvYWC,OAAS,IAAKA,OAAOC,QAAUC,EACrCC,KAAKD,OAASA"} \ No newline at end of file diff --git a/node_modules/preact/dist/preact.min.module.js b/node_modules/preact/dist/preact.min.module.js index 0e0ef1c..ac16472 100644 --- a/node_modules/preact/dist/preact.min.module.js +++ b/node_modules/preact/dist/preact.min.module.js @@ -1,2 +1,2 @@ -var n,l,t,u,i,o,r,e,f,c,a={},s=[],h=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,v=Array.isArray;function p(n,l){for(var t in l)n[t]=l[t];return n}function y(n){var l=n.parentNode;l&&l.removeChild(n)}function d(l,t,u){var i,o,r,e={};for(r in t)"key"==r?i=t[r]:"ref"==r?o=t[r]:e[r]=t[r];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):u),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===e[r]&&(e[r]=l.defaultProps[r]);return _(l,e,i,o,null)}function _(n,u,i,o,r){var e={type:n,props:u,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++t:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(e),e}function m(n){return n.children}function g(n,l){this.props=n,this.context=l}function b(n,l){if(null==l)return n.__?b(n.__,n.__i+1):null;for(var t;lt&&i.sort(e));C.__r=0}function x(n,l,t,u,i,o,r,e,f,c,h){var v,p,y,d,_,m=u&&u.__k||s,g=l.length;for(t.__d=f,P(t,l,m),f=t.__d,v=0;v0?_(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,e=$(i,t,r=u+s,a),i.__i=e,o=null,-1!==e&&(a--,(o=t[e])&&(o.__u|=131072)),null==o||null===o.__v?(-1==e&&s--,"function"!=typeof i.type&&(i.__u|=65536)):e!==r&&(e===r+1?s++:e>r?a>f-r?s+=e-r:s--:s=e(null!=f&&0==(131072&f.__u)?1:0))for(;r>=0||e=0){if((f=l[r])&&0==(131072&f.__u)&&i==f.key&&o===f.type)return r;r--}if(e2&&(f.children=arguments.length>3?n.call(arguments,2):u),_(l.type,f,i||l.key,o||l.ref,null)},createContext:function(n,l){var t={__c:l="__cC"+f++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var t,u;return this.getChildContext||(t=[],(u={})[l]=this,this.getChildContext=function(){return u},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&t.some(function(n){n.__e=!0,w(n)})},this.sub=function(n){t.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){t.splice(t.indexOf(n),1),l&&l.call(n)}}),n.children}};return t.Provider.__=t.Consumer.contextType=t},toChildArray:function n(l,t){return t=t||[],null==l||"boolean"==typeof l||(v(l)?l.some(function(l){n(l,t)}):t.push(l)),t},options:l},typeof module<"u"?module.exports=c:self.preact=c; +var n,l,t,u,i,e,o,r,f,c,s,a,h,p,v={},y=[],d=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,w=Array.isArray;function m(n,l){for(var t in l)n[t]=l[t];return n}function _(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function g(l,t,u){var i,e,o,r={};for(o in t)"key"==o?i=t[o]:"ref"==o?e=t[o]:r[o]=t[o];if(arguments.length>2&&(r.children=arguments.length>3?n.call(arguments,2):u),"function"==typeof l&&null!=l.defaultProps)for(o in l.defaultProps)void 0===r[o]&&(r[o]=l.defaultProps[o]);return b(l,r,i,e,null)}function b(n,u,i,e,o){var r={type:n,props:u,key:i,ref:e,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==o?++t:o,__i:-1,__u:0};return null==o&&null!=l.vnode&&l.vnode(r),r}function k(n){return n.children}function x(n,l){this.props=n,this.context=l}function C(n,l){if(null==l)return n.__?C(n.__,n.__i+1):null;for(var t;ls&&i.sort(r),n=i.shift(),s=i.length,n.__d&&(u=void 0,e=void 0,o=(e=(t=n).__v).__e,f=[],c=[],t.__P&&((u=m({},e)).__v=e.__v+1,l.vnode&&l.vnode(u),T(t.__P,u,e,t.__n,t.__P.namespaceURI,32&e.__u?[o]:null,f,null==o?C(e):o,!!(32&e.__u),c),u.__v=e.__v,u.__.__k[u.__i]=u,O(f,u,c),e.__e=e.__=null,u.__e!=o&&S(u)));$.__r=0}function A(n,l,t,u,i,e,o,r,f,c,s){var a,h,p,d,w,m,_,g=u&&u.__k||y,b=l.length;for(f=I(t,l,g,f,b),a=0;a0?o=n.__k[e]=b(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):n.__k[e]=o,f=e+h,o.__=n,o.__b=n.__b+1,r=null,-1!=(c=o.__i=E(o,t,f,a))&&(a--,(r=t[c])&&(r.__u|=2)),null==r||null==r.__v?(-1==c&&(i>s?h--:if?h--:h++,o.__u|=4))):n.__k[e]=null;if(a)for(e=0;e(s?1:0))for(i=t-1,e=t+1;i>=0||e=0?i--:e++])&&0==(2&c.__u)&&r==c.key&&f==c.type)return o;return-1}function F(n,l,t){"-"==l[0]?n.setProperty(l,null==t?"":t):n[l]=null==t?"":"number"!=typeof t||d.test(l)?t:t+"px"}function H(n,l,t,u,i){var e,o;n:if("style"==l)if("string"==typeof t)n.style.cssText=t;else{if("string"==typeof u&&(n.style.cssText=u=""),u)for(l in u)t&&l in t||F(n.style,l,"");if(t)for(l in t)u&&t[l]==u[l]||F(n.style,l,t[l])}else if("o"==l[0]&&"n"==l[1])e=l!=(l=l.replace(f,"$1")),o=l.toLowerCase(),l=o in n||"onFocusOut"==l||"onFocusIn"==l?o.slice(2):l.slice(2),n.l||(n.l={}),n.l[l+e]=t,t?u?t.t=u.t:(t.t=c,n.addEventListener(l,e?a:s,e)):n.removeEventListener(l,e?a:s,e);else{if("http://www.w3.org/2000/svg"==i)l=l.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=l&&"height"!=l&&"href"!=l&&"list"!=l&&"form"!=l&&"tabIndex"!=l&&"download"!=l&&"rowSpan"!=l&&"colSpan"!=l&&"role"!=l&&"popover"!=l&&l in n)try{n[l]=null==t?"":t;break n}catch(n){}"function"==typeof t||(null==t||!1===t&&"-"!=l[4]?n.removeAttribute(l):n.setAttribute(l,"popover"==l&&1==t?"":t))}}function L(n){return function(t){if(this.l){var u=this.l[t.type+n];if(null==t.u)t.u=c++;else if(t.u0?n:w(n)?n.map(V):m({},n)}function z(t,u,i,e,o,r,f,c,s){var a,h,p,y,d,m,g,b=i.props||v,k=u.props,x=u.type;if("svg"==x?o="http://www.w3.org/2000/svg":"math"==x?o="http://www.w3.org/1998/Math/MathML":o||(o="http://www.w3.org/1999/xhtml"),null!=r)for(a=0;a2&&(f.children=arguments.length>3?n.call(arguments,2):u),b(l.type,f,i||l.key,e||l.ref,null)},createContext:function(n){function l(n){var t,u;return this.getChildContext||(t=new Set,(u={})[l.__c]=this,this.getChildContext=function(){return u},this.componentWillUnmount=function(){t=null},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&t.forEach(function(n){n.__e=!0,M(n)})},this.sub=function(n){t.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){t&&t.delete(n),l&&l.call(n)}}),n.children}return l.__c="__cC"+h++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l},toChildArray:function n(l,t){return t=t||[],null==l||"boolean"==typeof l||(w(l)?l.some(function(l){n(l,t)}):t.push(l)),t},options:l},typeof module<"u"?module.exports=p:self.preact=p; //# sourceMappingURL=preact.min.module.js.map diff --git a/node_modules/preact/dist/preact.min.module.js.map b/node_modules/preact/dist/preact.min.module.js.map index d06c523..f5f4bdc 100644 --- a/node_modules/preact/dist/preact.min.module.js.map +++ b/node_modules/preact/dist/preact.min.module.js.map @@ -1 +1 @@ -{"version":3,"file":"preact.min.module.js","sources":["../src/constants.js","../src/util.js","../src/options.js","../src/create-element.js","../src/component.js","../src/create-context.js","../src/diff/children.js","../src/diff/props.js","../src/diff/index.js","../src/render.js","../src/diff/catch-error.js","../src/clone-element.js","../src/cjs.js"],"sourcesContent":["/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { EMPTY_ARR } from './constants';\n\nexport const isArray = Array.isArray;\n\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-expect-error 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 {preact.ContainerNode} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\nexport const slice = EMPTY_ARR.slice;\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 {Options}\n */\nconst options = {\n\t_catchError\n};\n\nexport default options;\n","import { slice } from './util';\nimport options from './options';\n\nlet vnodeId = 0;\n\n/**\n * Create an virtual node (used for JSX)\n * @param {VNode[\"type\"]} type The node name or Component constructor for this\n * virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the\n * virtual node\n * @returns {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 > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 {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 {VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {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\t/** @type {VNode} */\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\tconstructor: undefined,\n\t\t_original: original == null ? ++vnodeId : original,\n\t\t_index: -1,\n\t\t_flags: 0\n\t};\n\n\t// Only invoke the vnode hook if this was *not* a direct copy:\n\tif (original == null && 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 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';\nimport { MODE_HYDRATE } from './constants';\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 BaseComponent(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {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 */\nBaseComponent.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) {\n\t\t\tthis._stateCallbacks.push(callback);\n\t\t}\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nBaseComponent.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 {ComponentChildren | void}\n */\nBaseComponent.prototype.render = Fragment;\n\n/**\n * @param {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._index + 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 {Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet oldVNode = component._vnode,\n\t\toldDom = oldVNode._dom,\n\t\tparentDom = component._parentDom,\n\t\tcommitQueue = [],\n\t\trefQueue = [];\n\n\tif (parentDom) {\n\t\tconst newVNode = assign({}, oldVNode);\n\t\tnewVNode._original = oldVNode._original + 1;\n\t\tif (options.vnode) options.vnode(newVNode);\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\toldVNode._flags & MODE_HYDRATE ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(oldVNode) : oldDom,\n\t\t\t!!(oldVNode._flags & MODE_HYDRATE),\n\t\t\trefQueue\n\t\t);\n\n\t\tnewVNode._parent._children[newVNode._index] = newVNode;\n\t\tcommitRoot(commitQueue, newVNode, refQueue);\n\n\t\tif (newVNode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(newVNode);\n\t\t}\n\t}\n}\n\n/**\n * @param {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 * 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\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/**\n * Enqueue a rerender of a component\n * @param {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/**\n * @param {Component} a\n * @param {Component} b\n */\nconst depthSort = (a, b) => a._vnode._depth - b._vnode._depth;\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet c;\n\trerenderQueue.sort(depthSort);\n\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t// process() calls from getting scheduled while `queue` is still being consumed.\n\twhile ((c = rerenderQueue.shift())) {\n\t\tif (c._dirty) {\n\t\t\tlet renderQueueLength = rerenderQueue.length;\n\t\t\trenderComponent(c);\n\t\t\tif (rerenderQueue.length > renderQueueLength) {\n\t\t\t\t// When i.e. rerendering a provider additional new items can be injected, we want to\n\t\t\t\t// keep the order from top to bottom with those new items so we can handle them in a\n\t\t\t\t// single pass\n\t\t\t\trerenderQueue.sort(depthSort);\n\t\t\t}\n\t\t}\n\t}\n\tprocess._rerenderCount = 0;\n}\n\nprocess._rerenderCount = 0;\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 {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 {FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\t/** @type {Component[]} */\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(c => {\n\t\t\t\t\t\t\tc._force = true;\n\t\t\t\t\t\t\tenqueueRender(c);\n\t\t\t\t\t\t});\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 =\n\t\tcontext);\n}\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR, INSERT_VNODE, MATCHED } from '../constants';\nimport { isArray } from '../util';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {PreactElement} parentDom The DOM element whose children are being\n * diffed\n * @param {ComponentChildren[]} renderResult\n * @param {VNode} newParentVNode The new virtual node whose children should be\n * diff'ed against oldParentVNode\n * @param {VNode} oldParentVNode The old virtual node whose children should be\n * diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\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\trefQueue\n) {\n\tlet i,\n\t\t/** @type {VNode} */\n\t\toldVNode,\n\t\t/** @type {VNode} */\n\t\tchildVNode,\n\t\t/** @type {PreactElement} */\n\t\tnewDom,\n\t\t/** @type {PreactElement} */\n\t\tfirstChildDom;\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\t/** @type {VNode[]} */\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet newChildrenLength = renderResult.length;\n\n\tnewParentVNode._nextDom = oldDom;\n\tconstructNewChildrenArray(newParentVNode, renderResult, oldChildren);\n\toldDom = newParentVNode._nextDom;\n\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\tchildVNode = newParentVNode._children[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// At this point, constructNewChildrenArray has assigned _index to be the\n\t\t// matchingIndex for this VNode's oldVNode (or -1 if there is no oldVNode).\n\t\tif (childVNode._index === -1) {\n\t\t\toldVNode = EMPTY_OBJ;\n\t\t} else {\n\t\t\toldVNode = oldChildren[childVNode._index] || EMPTY_OBJ;\n\t\t}\n\n\t\t// Update childVNode._index to its final index\n\t\tchildVNode._index = i;\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\trefQueue\n\t\t);\n\n\t\t// Adjust DOM nodes\n\t\tnewDom = childVNode._dom;\n\t\tif (childVNode.ref && oldVNode.ref != childVNode.ref) {\n\t\t\tif (oldVNode.ref) {\n\t\t\t\tapplyRef(oldVNode.ref, null, childVNode);\n\t\t\t}\n\t\t\trefQueue.push(\n\t\t\t\tchildVNode.ref,\n\t\t\t\tchildVNode._component || newDom,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t}\n\n\t\tif (firstChildDom == null && newDom != null) {\n\t\t\tfirstChildDom = newDom;\n\t\t}\n\n\t\tif (\n\t\t\tchildVNode._flags & INSERT_VNODE ||\n\t\t\toldVNode._children === childVNode._children\n\t\t) {\n\t\t\toldDom = insert(childVNode, oldDom, parentDom);\n\t\t} else if (\n\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\tchildVNode._nextDom !== undefined\n\t\t) {\n\t\t\t// Since Fragments or components that return Fragment like VNodes can\n\t\t\t// contain multiple DOM nodes as the same level, continue the diff from\n\t\t\t// the sibling of last DOM child of this child VNode\n\t\t\toldDom = childVNode._nextDom;\n\t\t} else if (newDom) {\n\t\t\toldDom = newDom.nextSibling;\n\t\t}\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because it\n\t\t// is only used by `diffChildren` to determine where to resume the diff\n\t\t// after diffing Components and Fragments. Once we store it the nextDOM\n\t\t// local var, we can clean up the property. Also prevents us hanging on to\n\t\t// DOM nodes that may have been unmounted.\n\t\tchildVNode._nextDom = undefined;\n\n\t\t// Unset diffing flags\n\t\tchildVNode._flags &= ~(INSERT_VNODE | MATCHED);\n\t}\n\n\t// TODO: With new child diffing algo, consider alt ways to diff Fragments.\n\t// Such as dropping oldDom and moving fragments in place\n\t//\n\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t// _nextDom property to the nextSibling of its last child DOM node.\n\t//\n\t// `oldDom` contains the correct value here because if the last child\n\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t// node's nextSibling.\n\tnewParentVNode._nextDom = oldDom;\n\tnewParentVNode._dom = firstChildDom;\n}\n\n/**\n * @param {VNode} newParentVNode\n * @param {ComponentChildren[]} renderResult\n * @param {VNode[]} oldChildren\n */\nfunction constructNewChildrenArray(newParentVNode, renderResult, oldChildren) {\n\t/** @type {number} */\n\tlet i;\n\t/** @type {VNode} */\n\tlet childVNode;\n\t/** @type {VNode} */\n\tlet oldVNode;\n\n\tconst newChildrenLength = renderResult.length;\n\tlet oldChildrenLength = oldChildren.length,\n\t\tremainingOldChildren = oldChildrenLength;\n\n\tlet skew = 0;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\t// @ts-expect-error We are reusing the childVNode variable to hold both the\n\t\t// pre and post normalized childVNode\n\t\tchildVNode = renderResult[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\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\tchildVNode.constructor == String\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 (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.constructor === undefined && 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\tchildVNode.ref ? childVNode.ref : null,\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// Handle unmounting null placeholders, i.e. VNode => null in unkeyed children\n\t\tif (childVNode == null) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode && oldVNode.key == null && oldVNode._dom) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode, false);\n\n\t\t\t\t// Explicitly nullify this position in oldChildren instead of just\n\t\t\t\t// setting `_match=true` to prevent other routines (e.g.\n\t\t\t\t// `findMatchingIndex` or `getDomSibling`) from thinking VNodes or DOM\n\t\t\t\t// nodes in this position are still available to be used in diffing when\n\t\t\t\t// they have actually already been unmounted. For example, by only\n\t\t\t\t// setting `_match=true` here, the unmounting loop later would attempt\n\t\t\t\t// to unmount this VNode again seeing `_match==true`. Further,\n\t\t\t\t// getDomSibling doesn't know about _match and so would incorrectly\n\t\t\t\t// assume DOM nodes in this subtree are mounted and usable.\n\t\t\t\toldChildren[i] = null;\n\t\t\t\tremainingOldChildren--;\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\tconst skewedIndex = i + skew;\n\t\tconst matchingIndex = findMatchingIndex(\n\t\t\tchildVNode,\n\t\t\toldChildren,\n\t\t\tskewedIndex,\n\t\t\tremainingOldChildren\n\t\t);\n\n\t\t// Temporarily store the matchingIndex on the _index property so we can pull\n\t\t// out the oldVNode in diffChildren. We'll override this to the VNode's\n\t\t// final index after using this property to get the oldVNode\n\t\tchildVNode._index = matchingIndex;\n\n\t\toldVNode = null;\n\t\tif (matchingIndex !== -1) {\n\t\t\toldVNode = oldChildren[matchingIndex];\n\t\t\tremainingOldChildren--;\n\t\t\tif (oldVNode) {\n\t\t\t\toldVNode._flags |= MATCHED;\n\t\t\t}\n\t\t}\n\n\t\t// Here, we define isMounting for the purposes of the skew diffing\n\t\t// algorithm. Nodes that are unsuspending are considered mounting and we detect\n\t\t// this by checking if oldVNode._original === null\n\t\tconst isMounting = oldVNode == null || oldVNode._original === null;\n\n\t\tif (isMounting) {\n\t\t\tif (matchingIndex == -1) {\n\t\t\t\tskew--;\n\t\t\t}\n\n\t\t\t// If we are mounting a DOM VNode, mark it for insertion\n\t\t\tif (typeof childVNode.type != 'function') {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t} else if (matchingIndex !== skewedIndex) {\n\t\t\tif (matchingIndex === skewedIndex + 1) {\n\t\t\t\tskew++;\n\t\t\t} else if (matchingIndex > skewedIndex) {\n\t\t\t\tif (remainingOldChildren > newChildrenLength - skewedIndex) {\n\t\t\t\t\tskew += matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// ### Change from keyed: I think this was missing from the algo...\n\t\t\t\t\tskew--;\n\t\t\t\t}\n\t\t\t} else if (matchingIndex < skewedIndex) {\n\t\t\t\tif (matchingIndex == skewedIndex - 1) {\n\t\t\t\t\tskew = matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\tskew = 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tskew = 0;\n\t\t\t}\n\n\t\t\t// Move this VNode's DOM if the original index (matchingIndex) doesn't\n\t\t\t// match the new skew index (i + new skew)\n\t\t\tif (matchingIndex !== i + skew) {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove remaining oldChildren if there are any. Loop forwards so that as we\n\t// unmount DOM from the beginning of the oldChildren, we can adjust oldDom to\n\t// point to the next child, which needs to be the first DOM node that won't be\n\t// unmounted.\n\tif (remainingOldChildren) {\n\t\tfor (i = 0; i < oldChildrenLength; i++) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode != null && (oldVNode._flags & MATCHED) === 0) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * @param {VNode} parentVNode\n * @param {PreactElement} oldDom\n * @param {PreactElement} parentDom\n * @returns {PreactElement}\n */\nfunction insert(parentVNode, oldDom, parentDom) {\n\t// Note: VNodes in nested suspended trees may be missing _children.\n\n\tif (typeof parentVNode.type == 'function') {\n\t\tlet children = parentVNode._children;\n\t\tfor (let i = 0; children && i < children.length; i++) {\n\t\t\tif (children[i]) {\n\t\t\t\t// If we enter this code path on sCU bailout, where we copy\n\t\t\t\t// oldVNode._children to newVNode._children, we need to update the old\n\t\t\t\t// children's _parent pointer to point to the newVNode (parentVNode\n\t\t\t\t// here).\n\t\t\t\tchildren[i]._parent = parentVNode;\n\t\t\t\toldDom = insert(children[i], oldDom, parentDom);\n\t\t\t}\n\t\t}\n\n\t\treturn oldDom;\n\t} else if (parentVNode._dom != oldDom) {\n\t\tparentDom.insertBefore(parentVNode._dom, oldDom || null);\n\t\toldDom = parentVNode._dom;\n\t}\n\n\treturn oldDom && oldDom.nextSibling;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {ComponentChildren} children The unflattened children of a virtual\n * node\n * @returns {VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (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\n/**\n * @param {VNode} childVNode\n * @param {VNode[]} oldChildren\n * @param {number} skewedIndex\n * @param {number} remainingOldChildren\n * @returns {number}\n */\nfunction findMatchingIndex(\n\tchildVNode,\n\toldChildren,\n\tskewedIndex,\n\tremainingOldChildren\n) {\n\tconst key = childVNode.key;\n\tconst type = childVNode.type;\n\tlet x = skewedIndex - 1;\n\tlet y = skewedIndex + 1;\n\tlet oldVNode = oldChildren[skewedIndex];\n\n\t// We only need to perform a search if there are more children\n\t// (remainingOldChildren) to search. However, if the oldVNode we just looked\n\t// at skewedIndex was not already used in this diff, then there must be at\n\t// least 1 other (so greater than 1) remainingOldChildren to attempt to match\n\t// against. So the following condition checks that ensuring\n\t// remainingOldChildren > 1 if the oldVNode is not already used/matched. Else\n\t// if the oldVNode was null or matched, then there could needs to be at least\n\t// 1 (aka `remainingOldChildren > 0`) children to find and compare against.\n\tlet shouldSearch =\n\t\tremainingOldChildren >\n\t\t(oldVNode != null && (oldVNode._flags & MATCHED) === 0 ? 1 : 0);\n\n\tif (\n\t\toldVNode === null ||\n\t\t(oldVNode && key == oldVNode.key && type === oldVNode.type)\n\t) {\n\t\treturn skewedIndex;\n\t} else if (shouldSearch) {\n\t\twhile (x >= 0 || y < oldChildren.length) {\n\t\t\tif (x >= 0) {\n\t\t\t\toldVNode = oldChildren[x];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn x;\n\t\t\t\t}\n\t\t\t\tx--;\n\t\t\t}\n\n\t\t\tif (y < oldChildren.length) {\n\t\t\t\toldVNode = oldChildren[y];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn y;\n\t\t\t\t}\n\t\t\t\ty++;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn -1;\n}\n","import { IS_NON_DIMENSIONAL } from '../constants';\nimport options from '../options';\n\nfunction setStyle(style, key, value) {\n\tif (key[0] === '-') {\n\t\tstyle.setProperty(key, value == null ? '' : value);\n\t} else if (value == null) {\n\t\tstyle[key] = '';\n\t} else if (typeof value != 'number' || IS_NON_DIMENSIONAL.test(key)) {\n\t\tstyle[key] = value;\n\t} else {\n\t\tstyle[key] = value + 'px';\n\t}\n}\n\n/**\n * Set a property value on a DOM node\n * @param {PreactElement} dom The DOM node to modify\n * @param {string} name The name of the property to set\n * @param {*} value The value to set the property to\n * @param {*} oldValue The old value the property had\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node or not\n */\nexport function setProperty(dom, name, value, oldValue, isSvg) {\n\tlet useCapture;\n\n\to: if (name === 'style') {\n\t\tif (typeof value == 'string') {\n\t\t\tdom.style.cssText = value;\n\t\t} else {\n\t\t\tif (typeof oldValue == 'string') {\n\t\t\t\tdom.style.cssText = oldValue = '';\n\t\t\t}\n\n\t\t\tif (oldValue) {\n\t\t\t\tfor (name in oldValue) {\n\t\t\t\t\tif (!(value && name in value)) {\n\t\t\t\t\t\tsetStyle(dom.style, name, '');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (value) {\n\t\t\t\tfor (name in value) {\n\t\t\t\t\tif (!oldValue || value[name] !== oldValue[name]) {\n\t\t\t\t\t\tsetStyle(dom.style, name, value[name]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6\n\telse if (name[0] === 'o' && name[1] === 'n') {\n\t\tuseCapture =\n\t\t\tname !== (name = name.replace(/(PointerCapture)$|Capture$/, '$1'));\n\n\t\t// Infer correct casing for DOM built-in events:\n\t\tif (name.toLowerCase() in dom) name = name.toLowerCase().slice(2);\n\t\telse name = name.slice(2);\n\n\t\tif (!dom._listeners) dom._listeners = {};\n\t\tdom._listeners[name + useCapture] = value;\n\n\t\tif (value) {\n\t\t\tif (!oldValue) {\n\t\t\t\tvalue._attached = Date.now();\n\t\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\t\tdom.addEventListener(name, handler, useCapture);\n\t\t\t} else {\n\t\t\t\tvalue._attached = oldValue._attached;\n\t\t\t}\n\t\t} else {\n\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\tdom.removeEventListener(name, handler, useCapture);\n\t\t}\n\t} else {\n\t\tif (isSvg) {\n\t\t\t// Normalize incorrect prop usage for SVG:\n\t\t\t// - xlink:href / xlinkHref --> 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 !== 'width' &&\n\t\t\tname !== 'height' &&\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 !== 'rowSpan' &&\n\t\t\tname !== 'colSpan' &&\n\t\t\tname !== 'role' &&\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- and data- attributes have no boolean representation.\n\t\t// A `false` value is different from the attribute not being\n\t\t// present, so we can't remove it. For non-boolean aria\n\t\t// attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost too many bytes. On top of\n\t\t// that other frameworks generally stringify `false`.\n\n\t\tif (typeof value == 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (value != null && (value !== false || name[4] === '-')) {\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 {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tconst eventHandler = this._listeners[e.type + false];\n\t/**\n\t * This trick is inspired by Vue https://github.com/vuejs/core/blob/main/packages/runtime-dom/src/modules/events.ts#L90-L101\n\t * when the dom performs an event it leaves micro-ticks in between bubbling up which means that an event can trigger on a newly\n\t * created DOM-node while the event bubbles up, this can cause quirky behavior as seen in https://github.com/preactjs/preact/issues/3927\n\t */\n\tif (!e._dispatched) {\n\t\t// When an event has no _dispatched we know this is the first event-target in the chain\n\t\t// so we set the initial dispatched time.\n\t\te._dispatched = Date.now();\n\t\t// When the _dispatched is smaller than the time when the targetted event handler was attached\n\t\t// we know we have bubbled up to an element that was added during patching the dom.\n\t} else if (e._dispatched <= eventHandler._attached) {\n\t\treturn;\n\t}\n\treturn eventHandler(options.event ? options.event(e) : e);\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxyCapture(e) {\n\treturn this._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import {\n\tEMPTY_OBJ,\n\tMODE_HYDRATE,\n\tMODE_SUSPENDED,\n\tRESET_MODE\n} from '../constants';\nimport { BaseComponent, getDomSibling } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { setProperty } from './props';\nimport { assign, isArray, removeNode, slice } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {PreactElement} parentDom The parent of the DOM element\n * @param {VNode} newVNode The new virtual node\n * @param {VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating,\n\trefQueue\n) {\n\t/** @type {any} */\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._flags & MODE_SUSPENDED) {\n\t\tisHydrating = !!(oldVNode._flags & MODE_HYDRATE);\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\touter: if (typeof newType == 'function') {\n\t\ttry {\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-expect-error 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-expect-error Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new BaseComponent(\n\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t);\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\tc._stateCallbacks = [];\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\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\t\t\tc._vnode = newVNode;\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((c.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\t\tnewVNode._original === oldVNode._original)\n\t\t\t\t) {\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) {\n\t\t\t\t\t\t// When we are dealing with a bail because of sCU we have to update\n\t\t\t\t\t\t// the props, state and dirty-state.\n\t\t\t\t\t\t// when we are dealing with strict-equality we don't as the child could still\n\t\t\t\t\t\t// be dirtied see #3883\n\t\t\t\t\t\tc.props = newProps;\n\t\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t\tc._dirty = false;\n\t\t\t\t\t}\n\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\n\t\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t\t}\n\t\t\t\t\tc._stateCallbacks = [];\n\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._parentDom = parentDom;\n\t\t\tc._force = false;\n\n\t\t\tlet renderHook = options._render,\n\t\t\t\tcount = 0;\n\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\tc.state = c._nextState;\n\t\t\t\tc._dirty = false;\n\n\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t}\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t} else {\n\t\t\t\tdo {\n\t\t\t\t\tc._dirty = false;\n\t\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\t\t// Handle setState called in render, see #2553\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t} while (c._dirty && ++count < 25);\n\t\t\t}\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\tisArray(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\trefQueue\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._flags &= RESET_MODE;\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\t\t} catch (e) {\n\t\t\tnewVNode._original = null;\n\t\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\t\tnewVNode._dom = oldDom;\n\t\t\t\tnewVNode._flags |= isHydrating\n\t\t\t\t\t? MODE_HYDRATE | MODE_SUSPENDED\n\t\t\t\t\t: MODE_HYDRATE;\n\t\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t\t// ^ could possibly be simplified to:\n\t\t\t\t// excessDomChildren.length = 0;\n\t\t\t} else {\n\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t}\n\t\t\toptions._catchError(e, newVNode, oldVNode);\n\t\t}\n\t} else if (\n\t\texcessDomChildren == null &&\n\t\tnewVNode._original === oldVNode._original\n\t) {\n\t\tnewVNode._children = oldVNode._children;\n\t\tnewVNode._dom = oldVNode._dom;\n\t} else {\n\t\tnewVNode._dom = diffElementNodes(\n\t\t\toldVNode._dom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\tisHydrating,\n\t\t\trefQueue\n\t\t);\n\t}\n\n\tif ((tmp = options.diffed)) tmp(newVNode);\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {VNode} root\n */\nexport function commitRoot(commitQueue, root, refQueue) {\n\troot._nextDom = undefined;\n\n\tfor (let i = 0; i < refQueue.length; i++) {\n\t\tapplyRef(refQueue[i], refQueue[++i], refQueue[++i]);\n\t}\n\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-expect-error 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-expect-error See above comment 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 {PreactElement} dom The DOM element representing the virtual nodes\n * being diffed\n * @param {VNode} newVNode The new virtual node\n * @param {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 {Array} excessDomChildren\n * @param {Array} commitQueue List of components which have callbacks\n * to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n * @returns {PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating,\n\trefQueue\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = /** @type {string} */ (newVNode.type);\n\t/** @type {any} */\n\tlet i;\n\t/** @type {{ __html?: string }} */\n\tlet newHtml;\n\t/** @type {{ __html?: string }} */\n\tlet oldHtml;\n\t/** @type {ComponentChildren} */\n\tlet newChildren;\n\tlet value;\n\tlet inputValue;\n\tlet checked;\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 = 0; i < excessDomChildren.length; i++) {\n\t\t\tvalue = 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\tvalue &&\n\t\t\t\t'setAttribute' in value === !!nodeType &&\n\t\t\t\t(nodeType ? value.localName === nodeType : value.nodeType === 3)\n\t\t\t) {\n\t\t\t\tdom = value;\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\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS('http://www.w3.org/2000/svg', nodeType);\n\t\t} else {\n\t\t\tdom = document.createElement(nodeType, newProps.is && newProps);\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\n\t\t// 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 = excessDomChildren && slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\t// If we are in a situation where we are not hydrating but are using\n\t\t// existing DOM (e.g. replaceNode) we should read the existing DOM\n\t\t// attributes to diff them\n\t\tif (!isHydrating && excessDomChildren != null) {\n\t\t\toldProps = {};\n\t\t\tfor (i = 0; i < dom.attributes.length; i++) {\n\t\t\t\tvalue = dom.attributes[i];\n\t\t\t\toldProps[value.name] = value.value;\n\t\t\t}\n\t\t}\n\n\t\tfor (i in oldProps) {\n\t\t\tvalue = oldProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\toldHtml = value;\n\t\t\t} else if (i !== 'key' && !(i in newProps)) {\n\t\t\t\tsetProperty(dom, i, null, value, isSvg);\n\t\t\t}\n\t\t}\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\tfor (i in newProps) {\n\t\t\tvalue = newProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t\tnewChildren = value;\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\tnewHtml = value;\n\t\t\t} else if (i == 'value') {\n\t\t\t\tinputValue = value;\n\t\t\t} else if (i == 'checked') {\n\t\t\t\tchecked = value;\n\t\t\t} else if (\n\t\t\t\ti !== 'key' &&\n\t\t\t\t(!isHydrating || typeof value == 'function') &&\n\t\t\t\toldProps[i] !== value\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, value, oldProps[i], isSvg);\n\t\t\t}\n\t\t}\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\tif (\n\t\t\t\t!isHydrating &&\n\t\t\t\t(!oldHtml ||\n\t\t\t\t\t(newHtml.__html !== oldHtml.__html &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML))\n\t\t\t) {\n\t\t\t\tdom.innerHTML = newHtml.__html;\n\t\t\t}\n\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\tif (oldHtml) dom.innerHTML = '';\n\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tisArray(newChildren) ? newChildren : [newChildren],\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\texcessDomChildren\n\t\t\t\t\t? excessDomChildren[0]\n\t\t\t\t\t: oldVNode._children && getDomSibling(oldVNode, 0),\n\t\t\t\tisHydrating,\n\t\t\t\trefQueue\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\ti = 'value';\n\t\t\tif (\n\t\t\t\tinputValue !== 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(inputValue !== dom[i] ||\n\t\t\t\t\t(nodeType === 'progress' && !inputValue) ||\n\t\t\t\t\t// This is only for IE 11 to fix value not being updated.\n\t\t\t\t\t// To avoid a stale select value we need to set the option.value\n\t\t\t\t\t// again, which triggers IE11 to re-evaluate the select value\n\t\t\t\t\t(nodeType == 'option' && inputValue != oldProps[i]))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, inputValue, oldProps[i], namespace);\n\t\t\t}\n\n\t\t\ti = 'checked';\n\t\t\tif (checked != UNDEFINED && checked != dom[i]) {\n\t\t\t\tsetProperty(dom, i, checked, oldProps[i], namespace);\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 {Ref & { _unmount?: unknown }} ref\n * @param {any} value\n * @param {VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') {\n\t\t\tlet hasRefUnmount = typeof ref._unmount == 'function';\n\t\t\tif (hasRefUnmount) {\n\t\t\t\t// @ts-ignore TS doesn't like moving narrowing checks into variables\n\t\t\t\tref._unmount();\n\t\t\t}\n\n\t\t\tif (!hasRefUnmount || value != NULL) {\n\t\t\t\t// Store the cleanup function on the function\n\t\t\t\t// instance object itself to avoid shape\n\t\t\t\t// transitioning vnode\n\t\t\t\tref._unmount = ref(value);\n\t\t\t}\n\t\t} else 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 {VNode} vnode The virtual node to unmount\n * @param {VNode} parentVNode The parent of the VNode that 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) {\n\t\t\tapplyRef(r, NULL, parentVNode);\n\t\t}\n\t}\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]) {\n\t\t\t\tunmount(\n\t\t\t\t\tr[i],\n\t\t\t\t\tparentVNode,\n\t\t\t\t\tskipRemove || typeof vnode.type != 'function'\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!skipRemove) {\n\t\tremoveNode(vnode._dom);\n\t}\n\n\tvnode._component = vnode._parent = vnode._dom = UNDEFINED;\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, NULL } from './constants';\nimport { commitRoot, diff } from './diff/index';\nimport { createElement, Fragment } from './create-element';\nimport options from './options';\nimport { slice } from './util';\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 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\t// https://github.com/preactjs/preact/issues/3794\n\tif (parentDom == document) {\n\t\tparentDom = document.documentElement;\n\t}\n\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 = ((!isHydrating && replaceNode) || parentDom)._children =\n\t\tcreateElement(Fragment, NULL, [vnode]);\n\n\t// List of effects that need to be called after diffing.\n\tlet commitQueue = [],\n\t\trefQueue = [];\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.namespaceURI,\n\t\t!isHydrating && replaceNode\n\t\t\t? [replaceNode]\n\t\t\t: oldVNode\n\t\t\t\t? NULL\n\t\t\t\t: parentDom.firstChild\n\t\t\t\t\t? slice.call(parentDom.childNodes)\n\t\t\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\t? oldVNode._dom\n\t\t\t\t: parentDom.firstChild,\n\t\tisHydrating,\n\t\trefQueue\n\t);\n\n\t// Flush all queued effects\n\tcommitRoot(commitQueue, vnode, refQueue);\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 update\n */\nexport function hydrate(vnode, parentDom) {\n\trender(vnode, parentDom, hydrate);\n}\n","import { NULL } from '../constants';\n\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 the error that was caught (except\n * for unmounting when this parameter is the highest parent that was being\n * unmounted)\n * @param {import('../internal').VNode} [oldVNode]\n * @param {import('../internal').ErrorInfo} [errorInfo]\n */\nexport function _catchError(error, vnode, oldVNode, errorInfo) {\n\t/** @type {import('../internal').Component} */\n\tlet component,\n\t\t/** @type {import('../internal').ComponentType} */\n\t\tctor,\n\t\t/** @type {boolean} */\n\t\thandled;\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, errorInfo || {});\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","import { assign, slice } from './util';\nimport { createVNode } from './create-element';\nimport { NULL, UNDEFINED } from './constants';\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its\n * 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\n * 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\n\tlet defaultProps;\n\n\tif (vnode.type && vnode.type.defaultProps) {\n\t\tdefaultProps = vnode.type.defaultProps;\n\t}\n\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 if (props[i] === UNDEFINED && defaultProps != UNDEFINED) {\n\t\t\tnormalizedProps[i] = defaultProps[i];\n\t\t} else {\n\t\t\tnormalizedProps[i] = props[i];\n\t\t}\n\t}\n\n\tif (arguments.length > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 * as preact from './index.js';\nif (typeof module < 'u') module.exports = preact;\nelse self.preact = preact;\n"],"names":["slice","options","vnodeId","isValidElement","rerenderQueue","prevDebounce","defer","depthSort","CAPTURE_REGEX","eventClock","eventProxy","eventProxyCapture","i","EMPTY_OBJ","EMPTY_ARR","IS_NON_DIMENSIONAL","isArray","Array","assign","obj","props","removeNode","node","parentNode","removeChild","createElement","type","children","key","ref","normalizedProps","arguments","length","call","defaultProps","undefined","createVNode","original","vnode","__k","__","__b","__e","__c","constructor","__v","__i","__u","Fragment","BaseComponent","context","this","getDomSibling","childIndex","sibling","updateParentDomPointers","child","base","enqueueRender","c","__d","push","process","__r","debounceRendering","component","newVNode","oldVNode","oldDom","commitQueue","refQueue","l","sort","shift","__P","diff","__n","namespaceURI","commitRoot","diffChildren","parentDom","renderResult","newParentVNode","oldParentVNode","globalContext","namespace","excessDomChildren","isHydrating","childVNode","newDom","firstChildDom","result","shouldPlace","oldChildren","newChildrenLength","constructNewChildrenArray","applyRef","insert","nextSibling","skewedIndex","matchingIndex","oldChildrenLength","remainingOldChildren","skew","String","findMatchingIndex","unmount","parentVNode","insertBefore","nodeType","x","y","matched","setStyle","style","value","setProperty","test","dom","name","oldValue","useCapture","lowerCaseName","o","cssText","replace","toLowerCase","_attached","addEventListener","removeEventListener","e","removeAttribute","setAttribute","createEventProxy","eventHandler","_dispatched","event","tmp","isNew","oldProps","oldState","snapshot","clearProcessingException","newProps","isClassComponent","provider","componentContext","renderHook","count","newType","outer","prototype","render","contextType","__E","doRender","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","some","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","cloneNode","then","MODE_HYDRATE","indexOf","markAsForce","diffElementNodes","diffed","forEach","root","cb","map","newHtml","oldHtml","newChildren","inputValue","checked","localName","document","createTextNode","createElementNS","is","__m","data","childNodes","attributes","__html","innerHTML","content","hasRefUnmount","current","skipRemove","r","componentWillUnmount","replaceNode","documentElement","firstChild","error","errorInfo","ctor","handled","getDerivedStateFromError","setState","componentDidCatch","update","callback","s","forceUpdate","Promise","bind","resolve","setTimeout","a","b","hydrate","defaultValue","Context","subs","ctx","Set","_props","add","old","delete","Provider","__l","Consumer","contextValue","toChildArray","out","module","exports","preact","self"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/dist/preact.min.umd.js b/node_modules/preact/dist/preact.min.umd.js index 10fd489..123ccae 100644 --- a/node_modules/preact/dist/preact.min.umd.js +++ b/node_modules/preact/dist/preact.min.umd.js @@ -1,2 +1,2 @@ -!function(n){"function"==typeof define&&define.amd?define(n):n()}(function(){var n,l,t,u,i,o,r,e,f,c,a=65536,s=1<<17,h={},v=[],p=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y=Array.isArray;function d(n,l){for(var t in l)n[t]=l[t];return n}function _(n){var l=n.parentNode;l&&l.removeChild(n)}function m(l,t,u){var i,o,r,e={};for(r in t)"key"==r?i=t[r]:"ref"==r?o=t[r]:e[r]=t[r];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):u),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===e[r]&&(e[r]=l.defaultProps[r]);return g(l,e,i,o,null)}function g(n,u,i,o,r){var e={type:n,props:u,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++t:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(e),e}function b(n){return n.children}function k(n,l){this.props=n,this.context=l}function w(n,l){if(null==l)return n.__?w(n.__,n.__i+1):null;for(var t;lt&&i.sort(e));P.__r=0}function S(n,l,t,u,i,o,r,e,f,c,s){var p,y,d,_,m,g=u&&u.__k||v,b=l.length;for(t.__d=f,$(t,l,g),f=t.__d,p=0;p0?g(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,e=E(i,t,r=u+v,h),i.__i=e,o=null,-1!==e&&(h--,(o=t[e])&&(o.__u|=s)),null==o||null===o.__v?(-1==e&&v--,"function"!=typeof i.type&&(i.__u|=a)):e!==r&&(e===r+1?v++:e>r?h>f-r?v+=e-r:v--:v=e(null!=f&&0==(f.__u&s)?1:0))for(;r>=0||e=0){if((f=l[r])&&0==(f.__u&s)&&i==f.key&&o===f.type)return r;r--}if(e2&&(f.children=arguments.length>3?n.call(arguments,2):u),g(l.type,f,i||l.key,o||l.ref,null)},createContext:function(n,l){var t={__c:l="__cC"+f++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var t,u;return this.getChildContext||(t=[],(u={})[l]=this,this.getChildContext=function(){return u},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&t.some(function(n){n.__e=!0,x(n)})},this.sub=function(n){t.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){t.splice(t.indexOf(n),1),l&&l.call(n)}}),n.children}};return t.Provider.__=t.Consumer.contextType=t},toChildArray:function n(l,t){return t=t||[],null==l||"boolean"==typeof l||(y(l)?l.some(function(l){n(l,t)}):t.push(l)),t},options:l},typeof module<"u"?module.exports=c:self.preact=c}); +!function(n){"function"==typeof define&&define.amd?define(n):n()}(function(){var n,t,e,i,r,o,f,u,c,s,a,h,l,p,y="http://www.w3.org/2000/svg",v="http://www.w3.org/1999/xhtml",d=null,w=void 0,_={},m=[],g=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,b=Array.isArray;function k(n,t){for(var e in t)n[e]=t[e];return n}function C(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function x(t,e,i){var r,o,f,u={};for(f in e)"key"==f?r=e[f]:"ref"==f?o=e[f]:u[f]=e[f];if(arguments.length>2&&(u.children=arguments.length>3?n.call(arguments,2):i),"function"==typeof t&&t.defaultProps!=d)for(f in t.defaultProps)u[f]===w&&(u[f]=t.defaultProps[f]);return S(t,u,r,o,d)}function S(n,i,r,o,f){var u={type:n,props:i,key:r,ref:o,__k:d,__:d,__b:0,__e:d,__c:d,constructor:w,__v:f==d?++e:f,__i:-1,__u:0};return f==d&&t.vnode!=d&&t.vnode(u),u}function M(n){return n.children}function $(n,t){this.props=n,this.context=t}function A(n,t){if(t==d)return n.__?A(n.__,n.__i+1):d;for(var e;ta&&r.sort(u),n=r.shift(),a=r.length,n.__d&&(i=void 0,o=void 0,f=(o=(e=n).__v).__e,c=[],s=[],e.__P&&((i=k({},o)).__v=o.__v+1,t.vnode&&t.vnode(i),z(e.__P,i,o,e.__n,e.__P.namespaceURI,32&o.__u?[f]:d,c,f==d?A(o):f,!!(32&o.__u),s),i.__v=o.__v,i.__.__k[i.__i]=i,R(c,i,s),o.__e=o.__=null,i.__e!=f&&I(i)));E.__r=0}function F(n,t,e,i,r,o,f,u,c,s,a){var h,l,p,y,v,g,b,k=i&&i.__k||m,C=t.length;for(c=H(e,t,k,c,C),h=0;h0?f=n.__k[o]=S(f.type,f.props,f.key,f.ref?f.ref:d,f.__v):n.__k[o]=f,c=o+l,f.__=n,f.__b=n.__b+1,s=f.__i=T(f,e,c,h),u=d,-1!=s&&(h--,(u=e[s])&&(u.__u|=2)),u==d||u.__v==d?(-1==s&&(r>a?l--:rc?l--:l++,f.__u|=4))):n.__k[o]=d;if(h)for(o=0;o(a?1:0))for(r=e-1,o=e+1;r>=0||o=0?r--:o++])!=d&&0==(2&s.__u)&&u==s.key&&c==s.type)return f;return-1}function j(n,t,e){"-"==t[0]?n.setProperty(t,e==d?"":e):n[t]=e==d?"":"number"!=typeof e||g.test(t)?e:e+"px"}function O(n,t,e,i,r){var o,f;n:if("style"==t)if("string"==typeof e)n.style.cssText=e;else{if("string"==typeof i&&(n.style.cssText=i=""),i)for(t in i)e&&t in e||j(n.style,t,"");if(e)for(t in e)i&&e[t]==i[t]||j(n.style,t,e[t])}else if("o"==t[0]&&"n"==t[1])o=t!=(t=t.replace(c,"$1")),f=t.toLowerCase(),t=f in n||"onFocusOut"==t||"onFocusIn"==t?f.slice(2):t.slice(2),n.l||(n.l={}),n.l[t+o]=e,e?i?e.t=i.t:(e.t=s,n.addEventListener(t,o?h:a,o)):n.removeEventListener(t,o?h:a,o);else{if(r==y)t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=t&&"height"!=t&&"href"!=t&&"list"!=t&&"form"!=t&&"tabIndex"!=t&&"download"!=t&&"rowSpan"!=t&&"colSpan"!=t&&"role"!=t&&"popover"!=t&&t in n)try{n[t]=e==d?"":e;break n}catch(n){}"function"==typeof e||(e==d||!1===e&&"-"!=t[4]?n.removeAttribute(t):n.setAttribute(t,"popover"==t&&1==e?"":e))}}function V(n){return function(e){if(this.l){var i=this.l[e.type+n];if(e.i==d)e.i=s++;else if(e.i0?n:b(n)?n.map(q):k({},n)}function B(e,i,r,o,f,u,c,s,a){var h,l,p,m,g,k,x,S=r.props||_,M=i.props,$=i.type;if("svg"==$?f=y:"math"==$?f="http://www.w3.org/1998/Math/MathML":f||(f=v),u!=d)for(h=0;h2&&(c.children=arguments.length>3?n.call(arguments,2):i),S(t.type,c,r||t.key,o||t.ref,d)},createContext:function(n){function t(n){var e,i;return this.getChildContext||(e=new Set,(i={})[t.__c]=this,this.getChildContext=function(){return i},this.componentWillUnmount=function(){e=d},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&e.forEach(function(n){n.__e=!0,P(n)})},this.sub=function(n){e.add(n);var t=n.componentWillUnmount;n.componentWillUnmount=function(){e&&e.delete(n),t&&t.call(n)}}),n.children}return t.__c="__cC"+l++,t.__=n,t.Provider=t.__l=(t.Consumer=function(n,t){return n.children(t)}).contextType=t,t},toChildArray:function n(t,e){return e=e||[],t==d||"boolean"==typeof t||(b(t)?t.some(function(t){n(t,e)}):e.push(t)),e},options:t},typeof module<"u"?module.exports=p:self.preact=p}); //# sourceMappingURL=preact.min.umd.js.map diff --git a/node_modules/preact/dist/preact.min.umd.js.map b/node_modules/preact/dist/preact.min.umd.js.map index 857bc82..c181682 100644 --- a/node_modules/preact/dist/preact.min.umd.js.map +++ b/node_modules/preact/dist/preact.min.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"preact.min.umd.js","sources":["../src/util.js","../src/options.js","../src/create-element.js","../src/component.js","../src/create-context.js","../src/constants.js","../src/diff/children.js","../src/diff/props.js","../src/diff/index.js","../src/render.js","../src/diff/catch-error.js","../src/clone-element.js","../src/cjs.js"],"sourcesContent":["import { EMPTY_ARR } from './constants';\n\nexport const isArray = Array.isArray;\n\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-expect-error 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 {preact.ContainerNode} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\nexport const slice = EMPTY_ARR.slice;\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 {Options}\n */\nconst options = {\n\t_catchError\n};\n\nexport default options;\n","import { slice } from './util';\nimport options from './options';\n\nlet vnodeId = 0;\n\n/**\n * Create an virtual node (used for JSX)\n * @param {VNode[\"type\"]} type The node name or Component constructor for this\n * virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the\n * virtual node\n * @returns {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 > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 {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 {VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {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\t/** @type {VNode} */\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\tconstructor: undefined,\n\t\t_original: original == null ? ++vnodeId : original,\n\t\t_index: -1,\n\t\t_flags: 0\n\t};\n\n\t// Only invoke the vnode hook if this was *not* a direct copy:\n\tif (original == null && 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 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';\nimport { MODE_HYDRATE } from './constants';\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 BaseComponent(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {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 */\nBaseComponent.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) {\n\t\t\tthis._stateCallbacks.push(callback);\n\t\t}\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nBaseComponent.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 {ComponentChildren | void}\n */\nBaseComponent.prototype.render = Fragment;\n\n/**\n * @param {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._index + 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 {Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet oldVNode = component._vnode,\n\t\toldDom = oldVNode._dom,\n\t\tparentDom = component._parentDom,\n\t\tcommitQueue = [],\n\t\trefQueue = [];\n\n\tif (parentDom) {\n\t\tconst newVNode = assign({}, oldVNode);\n\t\tnewVNode._original = oldVNode._original + 1;\n\t\tif (options.vnode) options.vnode(newVNode);\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\toldVNode._flags & MODE_HYDRATE ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(oldVNode) : oldDom,\n\t\t\t!!(oldVNode._flags & MODE_HYDRATE),\n\t\t\trefQueue\n\t\t);\n\n\t\tnewVNode._parent._children[newVNode._index] = newVNode;\n\t\tcommitRoot(commitQueue, newVNode, refQueue);\n\n\t\tif (newVNode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(newVNode);\n\t\t}\n\t}\n}\n\n/**\n * @param {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 * 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\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/**\n * Enqueue a rerender of a component\n * @param {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/**\n * @param {Component} a\n * @param {Component} b\n */\nconst depthSort = (a, b) => a._vnode._depth - b._vnode._depth;\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet c;\n\trerenderQueue.sort(depthSort);\n\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t// process() calls from getting scheduled while `queue` is still being consumed.\n\twhile ((c = rerenderQueue.shift())) {\n\t\tif (c._dirty) {\n\t\t\tlet renderQueueLength = rerenderQueue.length;\n\t\t\trenderComponent(c);\n\t\t\tif (rerenderQueue.length > renderQueueLength) {\n\t\t\t\t// When i.e. rerendering a provider additional new items can be injected, we want to\n\t\t\t\t// keep the order from top to bottom with those new items so we can handle them in a\n\t\t\t\t// single pass\n\t\t\t\trerenderQueue.sort(depthSort);\n\t\t\t}\n\t\t}\n\t}\n\tprocess._rerenderCount = 0;\n}\n\nprocess._rerenderCount = 0;\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 {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 {FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\t/** @type {Component[]} */\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(c => {\n\t\t\t\t\t\t\tc._force = true;\n\t\t\t\t\t\t\tenqueueRender(c);\n\t\t\t\t\t\t});\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 =\n\t\tcontext);\n}\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR, INSERT_VNODE, MATCHED } from '../constants';\nimport { isArray } from '../util';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {PreactElement} parentDom The DOM element whose children are being\n * diffed\n * @param {ComponentChildren[]} renderResult\n * @param {VNode} newParentVNode The new virtual node whose children should be\n * diff'ed against oldParentVNode\n * @param {VNode} oldParentVNode The old virtual node whose children should be\n * diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\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\trefQueue\n) {\n\tlet i,\n\t\t/** @type {VNode} */\n\t\toldVNode,\n\t\t/** @type {VNode} */\n\t\tchildVNode,\n\t\t/** @type {PreactElement} */\n\t\tnewDom,\n\t\t/** @type {PreactElement} */\n\t\tfirstChildDom;\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\t/** @type {VNode[]} */\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet newChildrenLength = renderResult.length;\n\n\tnewParentVNode._nextDom = oldDom;\n\tconstructNewChildrenArray(newParentVNode, renderResult, oldChildren);\n\toldDom = newParentVNode._nextDom;\n\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\tchildVNode = newParentVNode._children[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// At this point, constructNewChildrenArray has assigned _index to be the\n\t\t// matchingIndex for this VNode's oldVNode (or -1 if there is no oldVNode).\n\t\tif (childVNode._index === -1) {\n\t\t\toldVNode = EMPTY_OBJ;\n\t\t} else {\n\t\t\toldVNode = oldChildren[childVNode._index] || EMPTY_OBJ;\n\t\t}\n\n\t\t// Update childVNode._index to its final index\n\t\tchildVNode._index = i;\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\trefQueue\n\t\t);\n\n\t\t// Adjust DOM nodes\n\t\tnewDom = childVNode._dom;\n\t\tif (childVNode.ref && oldVNode.ref != childVNode.ref) {\n\t\t\tif (oldVNode.ref) {\n\t\t\t\tapplyRef(oldVNode.ref, null, childVNode);\n\t\t\t}\n\t\t\trefQueue.push(\n\t\t\t\tchildVNode.ref,\n\t\t\t\tchildVNode._component || newDom,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t}\n\n\t\tif (firstChildDom == null && newDom != null) {\n\t\t\tfirstChildDom = newDom;\n\t\t}\n\n\t\tif (\n\t\t\tchildVNode._flags & INSERT_VNODE ||\n\t\t\toldVNode._children === childVNode._children\n\t\t) {\n\t\t\toldDom = insert(childVNode, oldDom, parentDom);\n\t\t} else if (\n\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\tchildVNode._nextDom !== undefined\n\t\t) {\n\t\t\t// Since Fragments or components that return Fragment like VNodes can\n\t\t\t// contain multiple DOM nodes as the same level, continue the diff from\n\t\t\t// the sibling of last DOM child of this child VNode\n\t\t\toldDom = childVNode._nextDom;\n\t\t} else if (newDom) {\n\t\t\toldDom = newDom.nextSibling;\n\t\t}\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because it\n\t\t// is only used by `diffChildren` to determine where to resume the diff\n\t\t// after diffing Components and Fragments. Once we store it the nextDOM\n\t\t// local var, we can clean up the property. Also prevents us hanging on to\n\t\t// DOM nodes that may have been unmounted.\n\t\tchildVNode._nextDom = undefined;\n\n\t\t// Unset diffing flags\n\t\tchildVNode._flags &= ~(INSERT_VNODE | MATCHED);\n\t}\n\n\t// TODO: With new child diffing algo, consider alt ways to diff Fragments.\n\t// Such as dropping oldDom and moving fragments in place\n\t//\n\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t// _nextDom property to the nextSibling of its last child DOM node.\n\t//\n\t// `oldDom` contains the correct value here because if the last child\n\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t// node's nextSibling.\n\tnewParentVNode._nextDom = oldDom;\n\tnewParentVNode._dom = firstChildDom;\n}\n\n/**\n * @param {VNode} newParentVNode\n * @param {ComponentChildren[]} renderResult\n * @param {VNode[]} oldChildren\n */\nfunction constructNewChildrenArray(newParentVNode, renderResult, oldChildren) {\n\t/** @type {number} */\n\tlet i;\n\t/** @type {VNode} */\n\tlet childVNode;\n\t/** @type {VNode} */\n\tlet oldVNode;\n\n\tconst newChildrenLength = renderResult.length;\n\tlet oldChildrenLength = oldChildren.length,\n\t\tremainingOldChildren = oldChildrenLength;\n\n\tlet skew = 0;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\t// @ts-expect-error We are reusing the childVNode variable to hold both the\n\t\t// pre and post normalized childVNode\n\t\tchildVNode = renderResult[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\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\tchildVNode.constructor == String\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 (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.constructor === undefined && 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\tchildVNode.ref ? childVNode.ref : null,\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// Handle unmounting null placeholders, i.e. VNode => null in unkeyed children\n\t\tif (childVNode == null) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode && oldVNode.key == null && oldVNode._dom) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode, false);\n\n\t\t\t\t// Explicitly nullify this position in oldChildren instead of just\n\t\t\t\t// setting `_match=true` to prevent other routines (e.g.\n\t\t\t\t// `findMatchingIndex` or `getDomSibling`) from thinking VNodes or DOM\n\t\t\t\t// nodes in this position are still available to be used in diffing when\n\t\t\t\t// they have actually already been unmounted. For example, by only\n\t\t\t\t// setting `_match=true` here, the unmounting loop later would attempt\n\t\t\t\t// to unmount this VNode again seeing `_match==true`. Further,\n\t\t\t\t// getDomSibling doesn't know about _match and so would incorrectly\n\t\t\t\t// assume DOM nodes in this subtree are mounted and usable.\n\t\t\t\toldChildren[i] = null;\n\t\t\t\tremainingOldChildren--;\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\tconst skewedIndex = i + skew;\n\t\tconst matchingIndex = findMatchingIndex(\n\t\t\tchildVNode,\n\t\t\toldChildren,\n\t\t\tskewedIndex,\n\t\t\tremainingOldChildren\n\t\t);\n\n\t\t// Temporarily store the matchingIndex on the _index property so we can pull\n\t\t// out the oldVNode in diffChildren. We'll override this to the VNode's\n\t\t// final index after using this property to get the oldVNode\n\t\tchildVNode._index = matchingIndex;\n\n\t\toldVNode = null;\n\t\tif (matchingIndex !== -1) {\n\t\t\toldVNode = oldChildren[matchingIndex];\n\t\t\tremainingOldChildren--;\n\t\t\tif (oldVNode) {\n\t\t\t\toldVNode._flags |= MATCHED;\n\t\t\t}\n\t\t}\n\n\t\t// Here, we define isMounting for the purposes of the skew diffing\n\t\t// algorithm. Nodes that are unsuspending are considered mounting and we detect\n\t\t// this by checking if oldVNode._original === null\n\t\tconst isMounting = oldVNode == null || oldVNode._original === null;\n\n\t\tif (isMounting) {\n\t\t\tif (matchingIndex == -1) {\n\t\t\t\tskew--;\n\t\t\t}\n\n\t\t\t// If we are mounting a DOM VNode, mark it for insertion\n\t\t\tif (typeof childVNode.type != 'function') {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t} else if (matchingIndex !== skewedIndex) {\n\t\t\tif (matchingIndex === skewedIndex + 1) {\n\t\t\t\tskew++;\n\t\t\t} else if (matchingIndex > skewedIndex) {\n\t\t\t\tif (remainingOldChildren > newChildrenLength - skewedIndex) {\n\t\t\t\t\tskew += matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// ### Change from keyed: I think this was missing from the algo...\n\t\t\t\t\tskew--;\n\t\t\t\t}\n\t\t\t} else if (matchingIndex < skewedIndex) {\n\t\t\t\tif (matchingIndex == skewedIndex - 1) {\n\t\t\t\t\tskew = matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\tskew = 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tskew = 0;\n\t\t\t}\n\n\t\t\t// Move this VNode's DOM if the original index (matchingIndex) doesn't\n\t\t\t// match the new skew index (i + new skew)\n\t\t\tif (matchingIndex !== i + skew) {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove remaining oldChildren if there are any. Loop forwards so that as we\n\t// unmount DOM from the beginning of the oldChildren, we can adjust oldDom to\n\t// point to the next child, which needs to be the first DOM node that won't be\n\t// unmounted.\n\tif (remainingOldChildren) {\n\t\tfor (i = 0; i < oldChildrenLength; i++) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode != null && (oldVNode._flags & MATCHED) === 0) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * @param {VNode} parentVNode\n * @param {PreactElement} oldDom\n * @param {PreactElement} parentDom\n * @returns {PreactElement}\n */\nfunction insert(parentVNode, oldDom, parentDom) {\n\t// Note: VNodes in nested suspended trees may be missing _children.\n\n\tif (typeof parentVNode.type == 'function') {\n\t\tlet children = parentVNode._children;\n\t\tfor (let i = 0; children && i < children.length; i++) {\n\t\t\tif (children[i]) {\n\t\t\t\t// If we enter this code path on sCU bailout, where we copy\n\t\t\t\t// oldVNode._children to newVNode._children, we need to update the old\n\t\t\t\t// children's _parent pointer to point to the newVNode (parentVNode\n\t\t\t\t// here).\n\t\t\t\tchildren[i]._parent = parentVNode;\n\t\t\t\toldDom = insert(children[i], oldDom, parentDom);\n\t\t\t}\n\t\t}\n\n\t\treturn oldDom;\n\t} else if (parentVNode._dom != oldDom) {\n\t\tparentDom.insertBefore(parentVNode._dom, oldDom || null);\n\t\toldDom = parentVNode._dom;\n\t}\n\n\treturn oldDom && oldDom.nextSibling;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {ComponentChildren} children The unflattened children of a virtual\n * node\n * @returns {VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (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\n/**\n * @param {VNode} childVNode\n * @param {VNode[]} oldChildren\n * @param {number} skewedIndex\n * @param {number} remainingOldChildren\n * @returns {number}\n */\nfunction findMatchingIndex(\n\tchildVNode,\n\toldChildren,\n\tskewedIndex,\n\tremainingOldChildren\n) {\n\tconst key = childVNode.key;\n\tconst type = childVNode.type;\n\tlet x = skewedIndex - 1;\n\tlet y = skewedIndex + 1;\n\tlet oldVNode = oldChildren[skewedIndex];\n\n\t// We only need to perform a search if there are more children\n\t// (remainingOldChildren) to search. However, if the oldVNode we just looked\n\t// at skewedIndex was not already used in this diff, then there must be at\n\t// least 1 other (so greater than 1) remainingOldChildren to attempt to match\n\t// against. So the following condition checks that ensuring\n\t// remainingOldChildren > 1 if the oldVNode is not already used/matched. Else\n\t// if the oldVNode was null or matched, then there could needs to be at least\n\t// 1 (aka `remainingOldChildren > 0`) children to find and compare against.\n\tlet shouldSearch =\n\t\tremainingOldChildren >\n\t\t(oldVNode != null && (oldVNode._flags & MATCHED) === 0 ? 1 : 0);\n\n\tif (\n\t\toldVNode === null ||\n\t\t(oldVNode && key == oldVNode.key && type === oldVNode.type)\n\t) {\n\t\treturn skewedIndex;\n\t} else if (shouldSearch) {\n\t\twhile (x >= 0 || y < oldChildren.length) {\n\t\t\tif (x >= 0) {\n\t\t\t\toldVNode = oldChildren[x];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn x;\n\t\t\t\t}\n\t\t\t\tx--;\n\t\t\t}\n\n\t\t\tif (y < oldChildren.length) {\n\t\t\t\toldVNode = oldChildren[y];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn y;\n\t\t\t\t}\n\t\t\t\ty++;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn -1;\n}\n","import { IS_NON_DIMENSIONAL } from '../constants';\nimport options from '../options';\n\nfunction setStyle(style, key, value) {\n\tif (key[0] === '-') {\n\t\tstyle.setProperty(key, value == null ? '' : value);\n\t} else if (value == null) {\n\t\tstyle[key] = '';\n\t} else if (typeof value != 'number' || IS_NON_DIMENSIONAL.test(key)) {\n\t\tstyle[key] = value;\n\t} else {\n\t\tstyle[key] = value + 'px';\n\t}\n}\n\n/**\n * Set a property value on a DOM node\n * @param {PreactElement} dom The DOM node to modify\n * @param {string} name The name of the property to set\n * @param {*} value The value to set the property to\n * @param {*} oldValue The old value the property had\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node or not\n */\nexport function setProperty(dom, name, value, oldValue, isSvg) {\n\tlet useCapture;\n\n\to: if (name === 'style') {\n\t\tif (typeof value == 'string') {\n\t\t\tdom.style.cssText = value;\n\t\t} else {\n\t\t\tif (typeof oldValue == 'string') {\n\t\t\t\tdom.style.cssText = oldValue = '';\n\t\t\t}\n\n\t\t\tif (oldValue) {\n\t\t\t\tfor (name in oldValue) {\n\t\t\t\t\tif (!(value && name in value)) {\n\t\t\t\t\t\tsetStyle(dom.style, name, '');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (value) {\n\t\t\t\tfor (name in value) {\n\t\t\t\t\tif (!oldValue || value[name] !== oldValue[name]) {\n\t\t\t\t\t\tsetStyle(dom.style, name, value[name]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6\n\telse if (name[0] === 'o' && name[1] === 'n') {\n\t\tuseCapture =\n\t\t\tname !== (name = name.replace(/(PointerCapture)$|Capture$/, '$1'));\n\n\t\t// Infer correct casing for DOM built-in events:\n\t\tif (name.toLowerCase() in dom) name = name.toLowerCase().slice(2);\n\t\telse name = name.slice(2);\n\n\t\tif (!dom._listeners) dom._listeners = {};\n\t\tdom._listeners[name + useCapture] = value;\n\n\t\tif (value) {\n\t\t\tif (!oldValue) {\n\t\t\t\tvalue._attached = Date.now();\n\t\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\t\tdom.addEventListener(name, handler, useCapture);\n\t\t\t} else {\n\t\t\t\tvalue._attached = oldValue._attached;\n\t\t\t}\n\t\t} else {\n\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\tdom.removeEventListener(name, handler, useCapture);\n\t\t}\n\t} else {\n\t\tif (isSvg) {\n\t\t\t// Normalize incorrect prop usage for SVG:\n\t\t\t// - xlink:href / xlinkHref --> 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 !== 'width' &&\n\t\t\tname !== 'height' &&\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 !== 'rowSpan' &&\n\t\t\tname !== 'colSpan' &&\n\t\t\tname !== 'role' &&\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- and data- attributes have no boolean representation.\n\t\t// A `false` value is different from the attribute not being\n\t\t// present, so we can't remove it. For non-boolean aria\n\t\t// attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost too many bytes. On top of\n\t\t// that other frameworks generally stringify `false`.\n\n\t\tif (typeof value == 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (value != null && (value !== false || name[4] === '-')) {\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 {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tconst eventHandler = this._listeners[e.type + false];\n\t/**\n\t * This trick is inspired by Vue https://github.com/vuejs/core/blob/main/packages/runtime-dom/src/modules/events.ts#L90-L101\n\t * when the dom performs an event it leaves micro-ticks in between bubbling up which means that an event can trigger on a newly\n\t * created DOM-node while the event bubbles up, this can cause quirky behavior as seen in https://github.com/preactjs/preact/issues/3927\n\t */\n\tif (!e._dispatched) {\n\t\t// When an event has no _dispatched we know this is the first event-target in the chain\n\t\t// so we set the initial dispatched time.\n\t\te._dispatched = Date.now();\n\t\t// When the _dispatched is smaller than the time when the targetted event handler was attached\n\t\t// we know we have bubbled up to an element that was added during patching the dom.\n\t} else if (e._dispatched <= eventHandler._attached) {\n\t\treturn;\n\t}\n\treturn eventHandler(options.event ? options.event(e) : e);\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxyCapture(e) {\n\treturn this._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import {\n\tEMPTY_OBJ,\n\tMODE_HYDRATE,\n\tMODE_SUSPENDED,\n\tRESET_MODE\n} from '../constants';\nimport { BaseComponent, getDomSibling } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { setProperty } from './props';\nimport { assign, isArray, removeNode, slice } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {PreactElement} parentDom The parent of the DOM element\n * @param {VNode} newVNode The new virtual node\n * @param {VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating,\n\trefQueue\n) {\n\t/** @type {any} */\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._flags & MODE_SUSPENDED) {\n\t\tisHydrating = !!(oldVNode._flags & MODE_HYDRATE);\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\touter: if (typeof newType == 'function') {\n\t\ttry {\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-expect-error 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-expect-error Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new BaseComponent(\n\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t);\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\tc._stateCallbacks = [];\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\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\t\t\tc._vnode = newVNode;\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((c.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\t\tnewVNode._original === oldVNode._original)\n\t\t\t\t) {\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) {\n\t\t\t\t\t\t// When we are dealing with a bail because of sCU we have to update\n\t\t\t\t\t\t// the props, state and dirty-state.\n\t\t\t\t\t\t// when we are dealing with strict-equality we don't as the child could still\n\t\t\t\t\t\t// be dirtied see #3883\n\t\t\t\t\t\tc.props = newProps;\n\t\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t\tc._dirty = false;\n\t\t\t\t\t}\n\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\n\t\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t\t}\n\t\t\t\t\tc._stateCallbacks = [];\n\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._parentDom = parentDom;\n\t\t\tc._force = false;\n\n\t\t\tlet renderHook = options._render,\n\t\t\t\tcount = 0;\n\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\tc.state = c._nextState;\n\t\t\t\tc._dirty = false;\n\n\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t}\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t} else {\n\t\t\t\tdo {\n\t\t\t\t\tc._dirty = false;\n\t\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\t\t// Handle setState called in render, see #2553\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t} while (c._dirty && ++count < 25);\n\t\t\t}\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\tisArray(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\trefQueue\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._flags &= RESET_MODE;\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\t\t} catch (e) {\n\t\t\tnewVNode._original = null;\n\t\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\t\tnewVNode._dom = oldDom;\n\t\t\t\tnewVNode._flags |= isHydrating\n\t\t\t\t\t? MODE_HYDRATE | MODE_SUSPENDED\n\t\t\t\t\t: MODE_HYDRATE;\n\t\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t\t// ^ could possibly be simplified to:\n\t\t\t\t// excessDomChildren.length = 0;\n\t\t\t} else {\n\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t}\n\t\t\toptions._catchError(e, newVNode, oldVNode);\n\t\t}\n\t} else if (\n\t\texcessDomChildren == null &&\n\t\tnewVNode._original === oldVNode._original\n\t) {\n\t\tnewVNode._children = oldVNode._children;\n\t\tnewVNode._dom = oldVNode._dom;\n\t} else {\n\t\tnewVNode._dom = diffElementNodes(\n\t\t\toldVNode._dom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\tisHydrating,\n\t\t\trefQueue\n\t\t);\n\t}\n\n\tif ((tmp = options.diffed)) tmp(newVNode);\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {VNode} root\n */\nexport function commitRoot(commitQueue, root, refQueue) {\n\troot._nextDom = undefined;\n\n\tfor (let i = 0; i < refQueue.length; i++) {\n\t\tapplyRef(refQueue[i], refQueue[++i], refQueue[++i]);\n\t}\n\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-expect-error 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-expect-error See above comment 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 {PreactElement} dom The DOM element representing the virtual nodes\n * being diffed\n * @param {VNode} newVNode The new virtual node\n * @param {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 {Array} excessDomChildren\n * @param {Array} commitQueue List of components which have callbacks\n * to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n * @returns {PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating,\n\trefQueue\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = /** @type {string} */ (newVNode.type);\n\t/** @type {any} */\n\tlet i;\n\t/** @type {{ __html?: string }} */\n\tlet newHtml;\n\t/** @type {{ __html?: string }} */\n\tlet oldHtml;\n\t/** @type {ComponentChildren} */\n\tlet newChildren;\n\tlet value;\n\tlet inputValue;\n\tlet checked;\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 = 0; i < excessDomChildren.length; i++) {\n\t\t\tvalue = 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\tvalue &&\n\t\t\t\t'setAttribute' in value === !!nodeType &&\n\t\t\t\t(nodeType ? value.localName === nodeType : value.nodeType === 3)\n\t\t\t) {\n\t\t\t\tdom = value;\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\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS('http://www.w3.org/2000/svg', nodeType);\n\t\t} else {\n\t\t\tdom = document.createElement(nodeType, newProps.is && newProps);\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\n\t\t// 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 = excessDomChildren && slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\t// If we are in a situation where we are not hydrating but are using\n\t\t// existing DOM (e.g. replaceNode) we should read the existing DOM\n\t\t// attributes to diff them\n\t\tif (!isHydrating && excessDomChildren != null) {\n\t\t\toldProps = {};\n\t\t\tfor (i = 0; i < dom.attributes.length; i++) {\n\t\t\t\tvalue = dom.attributes[i];\n\t\t\t\toldProps[value.name] = value.value;\n\t\t\t}\n\t\t}\n\n\t\tfor (i in oldProps) {\n\t\t\tvalue = oldProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\toldHtml = value;\n\t\t\t} else if (i !== 'key' && !(i in newProps)) {\n\t\t\t\tsetProperty(dom, i, null, value, isSvg);\n\t\t\t}\n\t\t}\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\tfor (i in newProps) {\n\t\t\tvalue = newProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t\tnewChildren = value;\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\tnewHtml = value;\n\t\t\t} else if (i == 'value') {\n\t\t\t\tinputValue = value;\n\t\t\t} else if (i == 'checked') {\n\t\t\t\tchecked = value;\n\t\t\t} else if (\n\t\t\t\ti !== 'key' &&\n\t\t\t\t(!isHydrating || typeof value == 'function') &&\n\t\t\t\toldProps[i] !== value\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, value, oldProps[i], isSvg);\n\t\t\t}\n\t\t}\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\tif (\n\t\t\t\t!isHydrating &&\n\t\t\t\t(!oldHtml ||\n\t\t\t\t\t(newHtml.__html !== oldHtml.__html &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML))\n\t\t\t) {\n\t\t\t\tdom.innerHTML = newHtml.__html;\n\t\t\t}\n\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\tif (oldHtml) dom.innerHTML = '';\n\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tisArray(newChildren) ? newChildren : [newChildren],\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\texcessDomChildren\n\t\t\t\t\t? excessDomChildren[0]\n\t\t\t\t\t: oldVNode._children && getDomSibling(oldVNode, 0),\n\t\t\t\tisHydrating,\n\t\t\t\trefQueue\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\ti = 'value';\n\t\t\tif (\n\t\t\t\tinputValue !== 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(inputValue !== dom[i] ||\n\t\t\t\t\t(nodeType === 'progress' && !inputValue) ||\n\t\t\t\t\t// This is only for IE 11 to fix value not being updated.\n\t\t\t\t\t// To avoid a stale select value we need to set the option.value\n\t\t\t\t\t// again, which triggers IE11 to re-evaluate the select value\n\t\t\t\t\t(nodeType == 'option' && inputValue != oldProps[i]))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, inputValue, oldProps[i], namespace);\n\t\t\t}\n\n\t\t\ti = 'checked';\n\t\t\tif (checked != UNDEFINED && checked != dom[i]) {\n\t\t\t\tsetProperty(dom, i, checked, oldProps[i], namespace);\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 {Ref & { _unmount?: unknown }} ref\n * @param {any} value\n * @param {VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') {\n\t\t\tlet hasRefUnmount = typeof ref._unmount == 'function';\n\t\t\tif (hasRefUnmount) {\n\t\t\t\t// @ts-ignore TS doesn't like moving narrowing checks into variables\n\t\t\t\tref._unmount();\n\t\t\t}\n\n\t\t\tif (!hasRefUnmount || value != NULL) {\n\t\t\t\t// Store the cleanup function on the function\n\t\t\t\t// instance object itself to avoid shape\n\t\t\t\t// transitioning vnode\n\t\t\t\tref._unmount = ref(value);\n\t\t\t}\n\t\t} else 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 {VNode} vnode The virtual node to unmount\n * @param {VNode} parentVNode The parent of the VNode that 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) {\n\t\t\tapplyRef(r, NULL, parentVNode);\n\t\t}\n\t}\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]) {\n\t\t\t\tunmount(\n\t\t\t\t\tr[i],\n\t\t\t\t\tparentVNode,\n\t\t\t\t\tskipRemove || typeof vnode.type != 'function'\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!skipRemove) {\n\t\tremoveNode(vnode._dom);\n\t}\n\n\tvnode._component = vnode._parent = vnode._dom = UNDEFINED;\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, NULL } from './constants';\nimport { commitRoot, diff } from './diff/index';\nimport { createElement, Fragment } from './create-element';\nimport options from './options';\nimport { slice } from './util';\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 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\t// https://github.com/preactjs/preact/issues/3794\n\tif (parentDom == document) {\n\t\tparentDom = document.documentElement;\n\t}\n\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 = ((!isHydrating && replaceNode) || parentDom)._children =\n\t\tcreateElement(Fragment, NULL, [vnode]);\n\n\t// List of effects that need to be called after diffing.\n\tlet commitQueue = [],\n\t\trefQueue = [];\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.namespaceURI,\n\t\t!isHydrating && replaceNode\n\t\t\t? [replaceNode]\n\t\t\t: oldVNode\n\t\t\t\t? NULL\n\t\t\t\t: parentDom.firstChild\n\t\t\t\t\t? slice.call(parentDom.childNodes)\n\t\t\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\t? oldVNode._dom\n\t\t\t\t: parentDom.firstChild,\n\t\tisHydrating,\n\t\trefQueue\n\t);\n\n\t// Flush all queued effects\n\tcommitRoot(commitQueue, vnode, refQueue);\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 update\n */\nexport function hydrate(vnode, parentDom) {\n\trender(vnode, parentDom, hydrate);\n}\n","import { NULL } from '../constants';\n\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 the error that was caught (except\n * for unmounting when this parameter is the highest parent that was being\n * unmounted)\n * @param {import('../internal').VNode} [oldVNode]\n * @param {import('../internal').ErrorInfo} [errorInfo]\n */\nexport function _catchError(error, vnode, oldVNode, errorInfo) {\n\t/** @type {import('../internal').Component} */\n\tlet component,\n\t\t/** @type {import('../internal').ComponentType} */\n\t\tctor,\n\t\t/** @type {boolean} */\n\t\thandled;\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, errorInfo || {});\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","import { assign, slice } from './util';\nimport { createVNode } from './create-element';\nimport { NULL, UNDEFINED } from './constants';\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its\n * 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\n * 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\n\tlet defaultProps;\n\n\tif (vnode.type && vnode.type.defaultProps) {\n\t\tdefaultProps = vnode.type.defaultProps;\n\t}\n\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 if (props[i] === UNDEFINED && defaultProps != UNDEFINED) {\n\t\t\tnormalizedProps[i] = defaultProps[i];\n\t\t} else {\n\t\t\tnormalizedProps[i] = props[i];\n\t\t}\n\t}\n\n\tif (arguments.length > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 * as preact from './index.js';\nif (typeof module < 'u') module.exports = preact;\nelse self.preact = preact;\n"],"names":["slice","options","vnodeId","isValidElement","rerenderQueue","prevDebounce","defer","depthSort","CAPTURE_REGEX","eventClock","eventProxy","eventProxyCapture","i","SVG_NAMESPACE","XHTML_NAMESPACE","NULL","UNDEFINED","undefined","EMPTY_OBJ","EMPTY_ARR","IS_NON_DIMENSIONAL","isArray","Array","assign","obj","props","removeNode","node","parentNode","removeChild","createElement","type","children","key","ref","normalizedProps","arguments","length","call","defaultProps","createVNode","original","vnode","__k","__","__b","__e","__c","constructor","__v","__i","__u","Fragment","BaseComponent","context","this","getDomSibling","childIndex","sibling","updateParentDomPointers","child","base","enqueueRender","c","__d","push","process","__r","debounceRendering","component","newVNode","oldVNode","oldDom","commitQueue","refQueue","l","sort","shift","__P","diff","__n","namespaceURI","commitRoot","diffChildren","parentDom","renderResult","newParentVNode","oldParentVNode","globalContext","namespace","excessDomChildren","isHydrating","childVNode","newDom","firstChildDom","result","shouldPlace","oldChildren","newChildrenLength","constructNewChildrenArray","applyRef","insert","nextSibling","skewedIndex","matchingIndex","oldChildrenLength","remainingOldChildren","skew","String","findMatchingIndex","unmount","parentVNode","insertBefore","nodeType","x","y","matched","setStyle","style","value","setProperty","test","dom","name","oldValue","useCapture","lowerCaseName","o","cssText","replace","toLowerCase","_attached","addEventListener","removeEventListener","e","removeAttribute","setAttribute","createEventProxy","eventHandler","_dispatched","event","tmp","isNew","oldProps","oldState","snapshot","clearProcessingException","newProps","isClassComponent","provider","componentContext","renderHook","count","newType","outer","prototype","render","contextType","__E","doRender","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","some","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","cloneNode","then","MODE_HYDRATE","indexOf","markAsForce","diffElementNodes","diffed","forEach","root","cb","map","newHtml","oldHtml","newChildren","inputValue","checked","localName","document","createTextNode","createElementNS","is","__m","data","childNodes","attributes","__html","innerHTML","content","hasRefUnmount","current","skipRemove","r","componentWillUnmount","replaceNode","documentElement","firstChild","error","errorInfo","ctor","handled","getDerivedStateFromError","setState","componentDidCatch","update","callback","s","forceUpdate","Promise","bind","resolve","setTimeout","a","b","hydrate","defaultValue","Context","subs","ctx","Set","_props","add","old","delete","Provider","__l","Consumer","contextValue","toChildArray","out","module","exports","preact","self"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/dist/preact.mjs b/node_modules/preact/dist/preact.mjs index 3c13f01..5d8574d 100644 --- a/node_modules/preact/dist/preact.mjs +++ b/node_modules/preact/dist/preact.mjs @@ -1,2 +1,2 @@ -var n,l,u,t,i,o,r,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,h=Array.isArray;function v(n,l){for(var u in l)n[u]=l[u];return n}function p(n){var l=n.parentNode;l&&l.removeChild(n)}function y(l,u,t){var i,o,r,f={};for(r in u)"key"==r?i=u[r]:"ref"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return d(l,f,i,o,null)}function d(n,t,i,o,r){var f={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(f),f}function _(){return{current:null}}function g(n){return n.children}function b(n,l){this.props=n,this.context=l}function m(n,l){if(null==l)return n.__?m(n.__,n.__i+1):null;for(var u;lu&&i.sort(f));x.__r=0}function C(n,l,u,t,i,o,r,f,e,a,h){var v,p,y,d,_,g=t&&t.__k||s,b=l.length;for(u.__d=e,P(u,l,g),e=u.__d,v=0;v0?d(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,f=H(i,u,r=t+a,s),i.__i=f,o=null,-1!==f&&(s--,(o=u[f])&&(o.__u|=131072)),null==o||null===o.__v?(-1==f&&a--,"function"!=typeof i.type&&(i.__u|=65536)):f!==r&&(f===r+1?a++:f>r?s>e-r?a+=f-r:a--:a=f(null!=e&&0==(131072&e.__u)?1:0))for(;r>=0||f=0){if((e=l[r])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return r;r--}if(f2&&(e.children=arguments.length>3?n.call(arguments,2):t),d(l.type,e,i||l.key,o||l.ref,null)}function F(n,l){var u={__c:l="__cC"+e++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=[],(t={})[l]=this,this.getChildContext=function(){return t},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(function(n){n.__e=!0,w(n)})},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=s.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},b.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=v({},this.state),"function"==typeof n&&(n=n(v({},u),this.props)),n&&v(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),w(this))},b.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),w(this))},b.prototype.render=g,i=[],r="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},x.__r=0,e=0;export{b as Component,g as Fragment,E as cloneElement,F as createContext,y as createElement,_ as createRef,y as h,B as hydrate,t as isValidElement,l as options,q as render,$ as toChildArray}; +var n,l,u,t,i,o,r,e,f,c,s,a,h,p={},v=[],y=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,d=Array.isArray;function w(n,l){for(var u in l)n[u]=l[u];return n}function g(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function _(l,u,t){var i,o,r,e={};for(r in u)"key"==r?i=u[r]:"ref"==r?o=u[r]:e[r]=u[r];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===e[r]&&(e[r]=l.defaultProps[r]);return m(l,e,i,o,null)}function m(n,t,i,o,r){var e={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(e),e}function b(){return{current:null}}function k(n){return n.children}function x(n,l){this.props=n,this.context=l}function S(n,l){if(null==l)return n.__?S(n.__,n.__i+1):null;for(var u;ls&&i.sort(e),n=i.shift(),s=i.length,n.__d&&(t=void 0,o=void 0,r=(o=(u=n).__v).__e,f=[],c=[],u.__P&&((t=w({},o)).__v=o.__v+1,l.vnode&&l.vnode(t),O(u.__P,t,o,u.__n,u.__P.namespaceURI,32&o.__u?[r]:null,f,null==r?S(o):r,!!(32&o.__u),c),t.__v=o.__v,t.__.__k[t.__i]=t,N(f,t,c),o.__e=o.__=null,t.__e!=r&&C(t)));$.__r=0}function I(n,l,u,t,i,o,r,e,f,c,s){var a,h,y,d,w,g,_,m=t&&t.__k||v,b=l.length;for(f=P(u,l,m,f,b),a=0;a0?r=n.__k[o]=m(r.type,r.props,r.key,r.ref?r.ref:null,r.__v):n.__k[o]=r,f=o+h,r.__=n,r.__b=n.__b+1,e=null,-1!=(c=r.__i=L(r,u,f,a))&&(a--,(e=u[c])&&(e.__u|=2)),null==e||null==e.__v?(-1==c&&(i>s?h--:if?h--:h++,r.__u|=4))):n.__k[o]=null;if(a)for(o=0;o(s?1:0))for(i=u-1,o=u+1;i>=0||o=0?i--:o++])&&0==(2&c.__u)&&e==c.key&&f==c.type)return r;return-1}function T(n,l,u){"-"==l[0]?n.setProperty(l,null==u?"":u):n[l]=null==u?"":"number"!=typeof u||y.test(l)?u:u+"px"}function j(n,l,u,t,i){var o,r;n:if("style"==l)if("string"==typeof u)n.style.cssText=u;else{if("string"==typeof t&&(n.style.cssText=t=""),t)for(l in t)u&&l in u||T(n.style,l,"");if(u)for(l in u)t&&u[l]==t[l]||T(n.style,l,u[l])}else if("o"==l[0]&&"n"==l[1])o=l!=(l=l.replace(f,"$1")),r=l.toLowerCase(),l=r in n||"onFocusOut"==l||"onFocusIn"==l?r.slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?t?u.u=t.u:(u.u=c,n.addEventListener(l,o?a:s,o)):n.removeEventListener(l,o?a:s,o);else{if("http://www.w3.org/2000/svg"==i)l=l.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=l&&"height"!=l&&"href"!=l&&"list"!=l&&"form"!=l&&"tabIndex"!=l&&"download"!=l&&"rowSpan"!=l&&"colSpan"!=l&&"role"!=l&&"popover"!=l&&l in n)try{n[l]=null==u?"":u;break n}catch(n){}"function"==typeof u||(null==u||!1===u&&"-"!=l[4]?n.removeAttribute(l):n.setAttribute(l,"popover"==l&&1==u?"":u))}}function F(n){return function(u){if(this.l){var t=this.l[u.type+n];if(null==u.t)u.t=c++;else if(u.t0?n:d(n)?n.map(V):w({},n)}function q(u,t,i,o,r,e,f,c,s){var a,h,v,y,w,_,m,b=i.props||p,k=t.props,x=t.type;if("svg"==x?r="http://www.w3.org/2000/svg":"math"==x?r="http://www.w3.org/1998/Math/MathML":r||(r="http://www.w3.org/1999/xhtml"),null!=e)for(a=0;a2&&(f.children=arguments.length>3?n.call(arguments,2):t),m(l.type,f,i||l.key,o||l.ref,null)}function Q(n){function l(n){var u,t;return this.getChildContext||(u=new Set,(t={})[l.__c]=this,this.getChildContext=function(){return t},this.componentWillUnmount=function(){u=null},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&u.forEach(function(n){n.__e=!0,M(n)})},this.sub=function(n){u.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u&&u.delete(n),l&&l.call(n)}}),n.children}return l.__c="__cC"+h++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l}n=v.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&void 0===n.constructor},x.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!=this.state?this.__s:this.__s=w({},this.state),"function"==typeof n&&(n=n(w({},u),this.props)),n&&w(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),M(this))},x.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),M(this))},x.prototype.render=k,i=[],r="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,e=function(n,l){return n.__v.__b-l.__v.__b},$.__r=0,f=/(PointerCapture)$|Capture$/i,c=0,s=F(!1),a=F(!0),h=0;export{x as Component,k as Fragment,K as cloneElement,Q as createContext,_ as createElement,b as createRef,_ as h,J as hydrate,t as isValidElement,l as options,G as render,H as toChildArray}; //# sourceMappingURL=preact.module.js.map diff --git a/node_modules/preact/dist/preact.module.js b/node_modules/preact/dist/preact.module.js index 3c13f01..5d8574d 100644 --- a/node_modules/preact/dist/preact.module.js +++ b/node_modules/preact/dist/preact.module.js @@ -1,2 +1,2 @@ -var n,l,u,t,i,o,r,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,h=Array.isArray;function v(n,l){for(var u in l)n[u]=l[u];return n}function p(n){var l=n.parentNode;l&&l.removeChild(n)}function y(l,u,t){var i,o,r,f={};for(r in u)"key"==r?i=u[r]:"ref"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return d(l,f,i,o,null)}function d(n,t,i,o,r){var f={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(f),f}function _(){return{current:null}}function g(n){return n.children}function b(n,l){this.props=n,this.context=l}function m(n,l){if(null==l)return n.__?m(n.__,n.__i+1):null;for(var u;lu&&i.sort(f));x.__r=0}function C(n,l,u,t,i,o,r,f,e,a,h){var v,p,y,d,_,g=t&&t.__k||s,b=l.length;for(u.__d=e,P(u,l,g),e=u.__d,v=0;v0?d(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,f=H(i,u,r=t+a,s),i.__i=f,o=null,-1!==f&&(s--,(o=u[f])&&(o.__u|=131072)),null==o||null===o.__v?(-1==f&&a--,"function"!=typeof i.type&&(i.__u|=65536)):f!==r&&(f===r+1?a++:f>r?s>e-r?a+=f-r:a--:a=f(null!=e&&0==(131072&e.__u)?1:0))for(;r>=0||f=0){if((e=l[r])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return r;r--}if(f2&&(e.children=arguments.length>3?n.call(arguments,2):t),d(l.type,e,i||l.key,o||l.ref,null)}function F(n,l){var u={__c:l="__cC"+e++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=[],(t={})[l]=this,this.getChildContext=function(){return t},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(function(n){n.__e=!0,w(n)})},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=s.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},b.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=v({},this.state),"function"==typeof n&&(n=n(v({},u),this.props)),n&&v(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),w(this))},b.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),w(this))},b.prototype.render=g,i=[],r="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},x.__r=0,e=0;export{b as Component,g as Fragment,E as cloneElement,F as createContext,y as createElement,_ as createRef,y as h,B as hydrate,t as isValidElement,l as options,q as render,$ as toChildArray}; +var n,l,u,t,i,o,r,e,f,c,s,a,h,p={},v=[],y=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,d=Array.isArray;function w(n,l){for(var u in l)n[u]=l[u];return n}function g(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function _(l,u,t){var i,o,r,e={};for(r in u)"key"==r?i=u[r]:"ref"==r?o=u[r]:e[r]=u[r];if(arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===e[r]&&(e[r]=l.defaultProps[r]);return m(l,e,i,o,null)}function m(n,t,i,o,r){var e={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(e),e}function b(){return{current:null}}function k(n){return n.children}function x(n,l){this.props=n,this.context=l}function S(n,l){if(null==l)return n.__?S(n.__,n.__i+1):null;for(var u;ls&&i.sort(e),n=i.shift(),s=i.length,n.__d&&(t=void 0,o=void 0,r=(o=(u=n).__v).__e,f=[],c=[],u.__P&&((t=w({},o)).__v=o.__v+1,l.vnode&&l.vnode(t),O(u.__P,t,o,u.__n,u.__P.namespaceURI,32&o.__u?[r]:null,f,null==r?S(o):r,!!(32&o.__u),c),t.__v=o.__v,t.__.__k[t.__i]=t,N(f,t,c),o.__e=o.__=null,t.__e!=r&&C(t)));$.__r=0}function I(n,l,u,t,i,o,r,e,f,c,s){var a,h,y,d,w,g,_,m=t&&t.__k||v,b=l.length;for(f=P(u,l,m,f,b),a=0;a0?r=n.__k[o]=m(r.type,r.props,r.key,r.ref?r.ref:null,r.__v):n.__k[o]=r,f=o+h,r.__=n,r.__b=n.__b+1,e=null,-1!=(c=r.__i=L(r,u,f,a))&&(a--,(e=u[c])&&(e.__u|=2)),null==e||null==e.__v?(-1==c&&(i>s?h--:if?h--:h++,r.__u|=4))):n.__k[o]=null;if(a)for(o=0;o(s?1:0))for(i=u-1,o=u+1;i>=0||o=0?i--:o++])&&0==(2&c.__u)&&e==c.key&&f==c.type)return r;return-1}function T(n,l,u){"-"==l[0]?n.setProperty(l,null==u?"":u):n[l]=null==u?"":"number"!=typeof u||y.test(l)?u:u+"px"}function j(n,l,u,t,i){var o,r;n:if("style"==l)if("string"==typeof u)n.style.cssText=u;else{if("string"==typeof t&&(n.style.cssText=t=""),t)for(l in t)u&&l in u||T(n.style,l,"");if(u)for(l in u)t&&u[l]==t[l]||T(n.style,l,u[l])}else if("o"==l[0]&&"n"==l[1])o=l!=(l=l.replace(f,"$1")),r=l.toLowerCase(),l=r in n||"onFocusOut"==l||"onFocusIn"==l?r.slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?t?u.u=t.u:(u.u=c,n.addEventListener(l,o?a:s,o)):n.removeEventListener(l,o?a:s,o);else{if("http://www.w3.org/2000/svg"==i)l=l.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=l&&"height"!=l&&"href"!=l&&"list"!=l&&"form"!=l&&"tabIndex"!=l&&"download"!=l&&"rowSpan"!=l&&"colSpan"!=l&&"role"!=l&&"popover"!=l&&l in n)try{n[l]=null==u?"":u;break n}catch(n){}"function"==typeof u||(null==u||!1===u&&"-"!=l[4]?n.removeAttribute(l):n.setAttribute(l,"popover"==l&&1==u?"":u))}}function F(n){return function(u){if(this.l){var t=this.l[u.type+n];if(null==u.t)u.t=c++;else if(u.t0?n:d(n)?n.map(V):w({},n)}function q(u,t,i,o,r,e,f,c,s){var a,h,v,y,w,_,m,b=i.props||p,k=t.props,x=t.type;if("svg"==x?r="http://www.w3.org/2000/svg":"math"==x?r="http://www.w3.org/1998/Math/MathML":r||(r="http://www.w3.org/1999/xhtml"),null!=e)for(a=0;a2&&(f.children=arguments.length>3?n.call(arguments,2):t),m(l.type,f,i||l.key,o||l.ref,null)}function Q(n){function l(n){var u,t;return this.getChildContext||(u=new Set,(t={})[l.__c]=this,this.getChildContext=function(){return t},this.componentWillUnmount=function(){u=null},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&u.forEach(function(n){n.__e=!0,M(n)})},this.sub=function(n){u.add(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u&&u.delete(n),l&&l.call(n)}}),n.children}return l.__c="__cC"+h++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l}n=v.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&void 0===n.constructor},x.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!=this.state?this.__s:this.__s=w({},this.state),"function"==typeof n&&(n=n(w({},u),this.props)),n&&w(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),M(this))},x.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),M(this))},x.prototype.render=k,i=[],r="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,e=function(n,l){return n.__v.__b-l.__v.__b},$.__r=0,f=/(PointerCapture)$|Capture$/i,c=0,s=F(!1),a=F(!0),h=0;export{x as Component,k as Fragment,K as cloneElement,Q as createContext,_ as createElement,b as createRef,_ as h,J as hydrate,t as isValidElement,l as options,G as render,H as toChildArray}; //# sourceMappingURL=preact.module.js.map diff --git a/node_modules/preact/dist/preact.module.js.map b/node_modules/preact/dist/preact.module.js.map index ed7f3f0..9bd81e2 100644 --- a/node_modules/preact/dist/preact.module.js.map +++ b/node_modules/preact/dist/preact.module.js.map @@ -1 +1 @@ -{"version":3,"file":"preact.module.js","sources":["../src/constants.js","../src/util.js","../src/options.js","../src/create-element.js","../src/component.js","../src/create-context.js","../src/diff/children.js","../src/diff/props.js","../src/diff/index.js","../src/render.js","../src/clone-element.js","../src/diff/catch-error.js"],"sourcesContent":["/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { EMPTY_ARR } from './constants';\n\nexport const isArray = Array.isArray;\n\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-expect-error 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 {preact.ContainerNode} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\nexport const slice = EMPTY_ARR.slice;\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 {Options}\n */\nconst options = {\n\t_catchError\n};\n\nexport default options;\n","import { slice } from './util';\nimport options from './options';\n\nlet vnodeId = 0;\n\n/**\n * Create an virtual node (used for JSX)\n * @param {VNode[\"type\"]} type The node name or Component constructor for this\n * virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the\n * virtual node\n * @returns {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 > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 {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 {VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {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\t/** @type {VNode} */\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\tconstructor: undefined,\n\t\t_original: original == null ? ++vnodeId : original,\n\t\t_index: -1,\n\t\t_flags: 0\n\t};\n\n\t// Only invoke the vnode hook if this was *not* a direct copy:\n\tif (original == null && 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 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';\nimport { MODE_HYDRATE } from './constants';\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 BaseComponent(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {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 */\nBaseComponent.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) {\n\t\t\tthis._stateCallbacks.push(callback);\n\t\t}\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nBaseComponent.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 {ComponentChildren | void}\n */\nBaseComponent.prototype.render = Fragment;\n\n/**\n * @param {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._index + 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 {Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet oldVNode = component._vnode,\n\t\toldDom = oldVNode._dom,\n\t\tparentDom = component._parentDom,\n\t\tcommitQueue = [],\n\t\trefQueue = [];\n\n\tif (parentDom) {\n\t\tconst newVNode = assign({}, oldVNode);\n\t\tnewVNode._original = oldVNode._original + 1;\n\t\tif (options.vnode) options.vnode(newVNode);\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\toldVNode._flags & MODE_HYDRATE ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(oldVNode) : oldDom,\n\t\t\t!!(oldVNode._flags & MODE_HYDRATE),\n\t\t\trefQueue\n\t\t);\n\n\t\tnewVNode._parent._children[newVNode._index] = newVNode;\n\t\tcommitRoot(commitQueue, newVNode, refQueue);\n\n\t\tif (newVNode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(newVNode);\n\t\t}\n\t}\n}\n\n/**\n * @param {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 * 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\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/**\n * Enqueue a rerender of a component\n * @param {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/**\n * @param {Component} a\n * @param {Component} b\n */\nconst depthSort = (a, b) => a._vnode._depth - b._vnode._depth;\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet c;\n\trerenderQueue.sort(depthSort);\n\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t// process() calls from getting scheduled while `queue` is still being consumed.\n\twhile ((c = rerenderQueue.shift())) {\n\t\tif (c._dirty) {\n\t\t\tlet renderQueueLength = rerenderQueue.length;\n\t\t\trenderComponent(c);\n\t\t\tif (rerenderQueue.length > renderQueueLength) {\n\t\t\t\t// When i.e. rerendering a provider additional new items can be injected, we want to\n\t\t\t\t// keep the order from top to bottom with those new items so we can handle them in a\n\t\t\t\t// single pass\n\t\t\t\trerenderQueue.sort(depthSort);\n\t\t\t}\n\t\t}\n\t}\n\tprocess._rerenderCount = 0;\n}\n\nprocess._rerenderCount = 0;\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 {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 {FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\t/** @type {Component[]} */\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(c => {\n\t\t\t\t\t\t\tc._force = true;\n\t\t\t\t\t\t\tenqueueRender(c);\n\t\t\t\t\t\t});\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 =\n\t\tcontext);\n}\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR, INSERT_VNODE, MATCHED } from '../constants';\nimport { isArray } from '../util';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {PreactElement} parentDom The DOM element whose children are being\n * diffed\n * @param {ComponentChildren[]} renderResult\n * @param {VNode} newParentVNode The new virtual node whose children should be\n * diff'ed against oldParentVNode\n * @param {VNode} oldParentVNode The old virtual node whose children should be\n * diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\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\trefQueue\n) {\n\tlet i,\n\t\t/** @type {VNode} */\n\t\toldVNode,\n\t\t/** @type {VNode} */\n\t\tchildVNode,\n\t\t/** @type {PreactElement} */\n\t\tnewDom,\n\t\t/** @type {PreactElement} */\n\t\tfirstChildDom;\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\t/** @type {VNode[]} */\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet newChildrenLength = renderResult.length;\n\n\tnewParentVNode._nextDom = oldDom;\n\tconstructNewChildrenArray(newParentVNode, renderResult, oldChildren);\n\toldDom = newParentVNode._nextDom;\n\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\tchildVNode = newParentVNode._children[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// At this point, constructNewChildrenArray has assigned _index to be the\n\t\t// matchingIndex for this VNode's oldVNode (or -1 if there is no oldVNode).\n\t\tif (childVNode._index === -1) {\n\t\t\toldVNode = EMPTY_OBJ;\n\t\t} else {\n\t\t\toldVNode = oldChildren[childVNode._index] || EMPTY_OBJ;\n\t\t}\n\n\t\t// Update childVNode._index to its final index\n\t\tchildVNode._index = i;\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\trefQueue\n\t\t);\n\n\t\t// Adjust DOM nodes\n\t\tnewDom = childVNode._dom;\n\t\tif (childVNode.ref && oldVNode.ref != childVNode.ref) {\n\t\t\tif (oldVNode.ref) {\n\t\t\t\tapplyRef(oldVNode.ref, null, childVNode);\n\t\t\t}\n\t\t\trefQueue.push(\n\t\t\t\tchildVNode.ref,\n\t\t\t\tchildVNode._component || newDom,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t}\n\n\t\tif (firstChildDom == null && newDom != null) {\n\t\t\tfirstChildDom = newDom;\n\t\t}\n\n\t\tif (\n\t\t\tchildVNode._flags & INSERT_VNODE ||\n\t\t\toldVNode._children === childVNode._children\n\t\t) {\n\t\t\toldDom = insert(childVNode, oldDom, parentDom);\n\t\t} else if (\n\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\tchildVNode._nextDom !== undefined\n\t\t) {\n\t\t\t// Since Fragments or components that return Fragment like VNodes can\n\t\t\t// contain multiple DOM nodes as the same level, continue the diff from\n\t\t\t// the sibling of last DOM child of this child VNode\n\t\t\toldDom = childVNode._nextDom;\n\t\t} else if (newDom) {\n\t\t\toldDom = newDom.nextSibling;\n\t\t}\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because it\n\t\t// is only used by `diffChildren` to determine where to resume the diff\n\t\t// after diffing Components and Fragments. Once we store it the nextDOM\n\t\t// local var, we can clean up the property. Also prevents us hanging on to\n\t\t// DOM nodes that may have been unmounted.\n\t\tchildVNode._nextDom = undefined;\n\n\t\t// Unset diffing flags\n\t\tchildVNode._flags &= ~(INSERT_VNODE | MATCHED);\n\t}\n\n\t// TODO: With new child diffing algo, consider alt ways to diff Fragments.\n\t// Such as dropping oldDom and moving fragments in place\n\t//\n\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t// _nextDom property to the nextSibling of its last child DOM node.\n\t//\n\t// `oldDom` contains the correct value here because if the last child\n\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t// node's nextSibling.\n\tnewParentVNode._nextDom = oldDom;\n\tnewParentVNode._dom = firstChildDom;\n}\n\n/**\n * @param {VNode} newParentVNode\n * @param {ComponentChildren[]} renderResult\n * @param {VNode[]} oldChildren\n */\nfunction constructNewChildrenArray(newParentVNode, renderResult, oldChildren) {\n\t/** @type {number} */\n\tlet i;\n\t/** @type {VNode} */\n\tlet childVNode;\n\t/** @type {VNode} */\n\tlet oldVNode;\n\n\tconst newChildrenLength = renderResult.length;\n\tlet oldChildrenLength = oldChildren.length,\n\t\tremainingOldChildren = oldChildrenLength;\n\n\tlet skew = 0;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\t// @ts-expect-error We are reusing the childVNode variable to hold both the\n\t\t// pre and post normalized childVNode\n\t\tchildVNode = renderResult[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\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\tchildVNode.constructor == String\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 (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.constructor === undefined && 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\tchildVNode.ref ? childVNode.ref : null,\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// Handle unmounting null placeholders, i.e. VNode => null in unkeyed children\n\t\tif (childVNode == null) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode && oldVNode.key == null && oldVNode._dom) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode, false);\n\n\t\t\t\t// Explicitly nullify this position in oldChildren instead of just\n\t\t\t\t// setting `_match=true` to prevent other routines (e.g.\n\t\t\t\t// `findMatchingIndex` or `getDomSibling`) from thinking VNodes or DOM\n\t\t\t\t// nodes in this position are still available to be used in diffing when\n\t\t\t\t// they have actually already been unmounted. For example, by only\n\t\t\t\t// setting `_match=true` here, the unmounting loop later would attempt\n\t\t\t\t// to unmount this VNode again seeing `_match==true`. Further,\n\t\t\t\t// getDomSibling doesn't know about _match and so would incorrectly\n\t\t\t\t// assume DOM nodes in this subtree are mounted and usable.\n\t\t\t\toldChildren[i] = null;\n\t\t\t\tremainingOldChildren--;\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\tconst skewedIndex = i + skew;\n\t\tconst matchingIndex = findMatchingIndex(\n\t\t\tchildVNode,\n\t\t\toldChildren,\n\t\t\tskewedIndex,\n\t\t\tremainingOldChildren\n\t\t);\n\n\t\t// Temporarily store the matchingIndex on the _index property so we can pull\n\t\t// out the oldVNode in diffChildren. We'll override this to the VNode's\n\t\t// final index after using this property to get the oldVNode\n\t\tchildVNode._index = matchingIndex;\n\n\t\toldVNode = null;\n\t\tif (matchingIndex !== -1) {\n\t\t\toldVNode = oldChildren[matchingIndex];\n\t\t\tremainingOldChildren--;\n\t\t\tif (oldVNode) {\n\t\t\t\toldVNode._flags |= MATCHED;\n\t\t\t}\n\t\t}\n\n\t\t// Here, we define isMounting for the purposes of the skew diffing\n\t\t// algorithm. Nodes that are unsuspending are considered mounting and we detect\n\t\t// this by checking if oldVNode._original === null\n\t\tconst isMounting = oldVNode == null || oldVNode._original === null;\n\n\t\tif (isMounting) {\n\t\t\tif (matchingIndex == -1) {\n\t\t\t\tskew--;\n\t\t\t}\n\n\t\t\t// If we are mounting a DOM VNode, mark it for insertion\n\t\t\tif (typeof childVNode.type != 'function') {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t} else if (matchingIndex !== skewedIndex) {\n\t\t\tif (matchingIndex === skewedIndex + 1) {\n\t\t\t\tskew++;\n\t\t\t} else if (matchingIndex > skewedIndex) {\n\t\t\t\tif (remainingOldChildren > newChildrenLength - skewedIndex) {\n\t\t\t\t\tskew += matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// ### Change from keyed: I think this was missing from the algo...\n\t\t\t\t\tskew--;\n\t\t\t\t}\n\t\t\t} else if (matchingIndex < skewedIndex) {\n\t\t\t\tif (matchingIndex == skewedIndex - 1) {\n\t\t\t\t\tskew = matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\tskew = 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tskew = 0;\n\t\t\t}\n\n\t\t\t// Move this VNode's DOM if the original index (matchingIndex) doesn't\n\t\t\t// match the new skew index (i + new skew)\n\t\t\tif (matchingIndex !== i + skew) {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove remaining oldChildren if there are any. Loop forwards so that as we\n\t// unmount DOM from the beginning of the oldChildren, we can adjust oldDom to\n\t// point to the next child, which needs to be the first DOM node that won't be\n\t// unmounted.\n\tif (remainingOldChildren) {\n\t\tfor (i = 0; i < oldChildrenLength; i++) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode != null && (oldVNode._flags & MATCHED) === 0) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * @param {VNode} parentVNode\n * @param {PreactElement} oldDom\n * @param {PreactElement} parentDom\n * @returns {PreactElement}\n */\nfunction insert(parentVNode, oldDom, parentDom) {\n\t// Note: VNodes in nested suspended trees may be missing _children.\n\n\tif (typeof parentVNode.type == 'function') {\n\t\tlet children = parentVNode._children;\n\t\tfor (let i = 0; children && i < children.length; i++) {\n\t\t\tif (children[i]) {\n\t\t\t\t// If we enter this code path on sCU bailout, where we copy\n\t\t\t\t// oldVNode._children to newVNode._children, we need to update the old\n\t\t\t\t// children's _parent pointer to point to the newVNode (parentVNode\n\t\t\t\t// here).\n\t\t\t\tchildren[i]._parent = parentVNode;\n\t\t\t\toldDom = insert(children[i], oldDom, parentDom);\n\t\t\t}\n\t\t}\n\n\t\treturn oldDom;\n\t} else if (parentVNode._dom != oldDom) {\n\t\tparentDom.insertBefore(parentVNode._dom, oldDom || null);\n\t\toldDom = parentVNode._dom;\n\t}\n\n\treturn oldDom && oldDom.nextSibling;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {ComponentChildren} children The unflattened children of a virtual\n * node\n * @returns {VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (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\n/**\n * @param {VNode} childVNode\n * @param {VNode[]} oldChildren\n * @param {number} skewedIndex\n * @param {number} remainingOldChildren\n * @returns {number}\n */\nfunction findMatchingIndex(\n\tchildVNode,\n\toldChildren,\n\tskewedIndex,\n\tremainingOldChildren\n) {\n\tconst key = childVNode.key;\n\tconst type = childVNode.type;\n\tlet x = skewedIndex - 1;\n\tlet y = skewedIndex + 1;\n\tlet oldVNode = oldChildren[skewedIndex];\n\n\t// We only need to perform a search if there are more children\n\t// (remainingOldChildren) to search. However, if the oldVNode we just looked\n\t// at skewedIndex was not already used in this diff, then there must be at\n\t// least 1 other (so greater than 1) remainingOldChildren to attempt to match\n\t// against. So the following condition checks that ensuring\n\t// remainingOldChildren > 1 if the oldVNode is not already used/matched. Else\n\t// if the oldVNode was null or matched, then there could needs to be at least\n\t// 1 (aka `remainingOldChildren > 0`) children to find and compare against.\n\tlet shouldSearch =\n\t\tremainingOldChildren >\n\t\t(oldVNode != null && (oldVNode._flags & MATCHED) === 0 ? 1 : 0);\n\n\tif (\n\t\toldVNode === null ||\n\t\t(oldVNode && key == oldVNode.key && type === oldVNode.type)\n\t) {\n\t\treturn skewedIndex;\n\t} else if (shouldSearch) {\n\t\twhile (x >= 0 || y < oldChildren.length) {\n\t\t\tif (x >= 0) {\n\t\t\t\toldVNode = oldChildren[x];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn x;\n\t\t\t\t}\n\t\t\t\tx--;\n\t\t\t}\n\n\t\t\tif (y < oldChildren.length) {\n\t\t\t\toldVNode = oldChildren[y];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn y;\n\t\t\t\t}\n\t\t\t\ty++;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn -1;\n}\n","import { IS_NON_DIMENSIONAL } from '../constants';\nimport options from '../options';\n\nfunction setStyle(style, key, value) {\n\tif (key[0] === '-') {\n\t\tstyle.setProperty(key, value == null ? '' : value);\n\t} else if (value == null) {\n\t\tstyle[key] = '';\n\t} else if (typeof value != 'number' || IS_NON_DIMENSIONAL.test(key)) {\n\t\tstyle[key] = value;\n\t} else {\n\t\tstyle[key] = value + 'px';\n\t}\n}\n\n/**\n * Set a property value on a DOM node\n * @param {PreactElement} dom The DOM node to modify\n * @param {string} name The name of the property to set\n * @param {*} value The value to set the property to\n * @param {*} oldValue The old value the property had\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node or not\n */\nexport function setProperty(dom, name, value, oldValue, isSvg) {\n\tlet useCapture;\n\n\to: if (name === 'style') {\n\t\tif (typeof value == 'string') {\n\t\t\tdom.style.cssText = value;\n\t\t} else {\n\t\t\tif (typeof oldValue == 'string') {\n\t\t\t\tdom.style.cssText = oldValue = '';\n\t\t\t}\n\n\t\t\tif (oldValue) {\n\t\t\t\tfor (name in oldValue) {\n\t\t\t\t\tif (!(value && name in value)) {\n\t\t\t\t\t\tsetStyle(dom.style, name, '');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (value) {\n\t\t\t\tfor (name in value) {\n\t\t\t\t\tif (!oldValue || value[name] !== oldValue[name]) {\n\t\t\t\t\t\tsetStyle(dom.style, name, value[name]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6\n\telse if (name[0] === 'o' && name[1] === 'n') {\n\t\tuseCapture =\n\t\t\tname !== (name = name.replace(/(PointerCapture)$|Capture$/, '$1'));\n\n\t\t// Infer correct casing for DOM built-in events:\n\t\tif (name.toLowerCase() in dom) name = name.toLowerCase().slice(2);\n\t\telse name = name.slice(2);\n\n\t\tif (!dom._listeners) dom._listeners = {};\n\t\tdom._listeners[name + useCapture] = value;\n\n\t\tif (value) {\n\t\t\tif (!oldValue) {\n\t\t\t\tvalue._attached = Date.now();\n\t\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\t\tdom.addEventListener(name, handler, useCapture);\n\t\t\t} else {\n\t\t\t\tvalue._attached = oldValue._attached;\n\t\t\t}\n\t\t} else {\n\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\tdom.removeEventListener(name, handler, useCapture);\n\t\t}\n\t} else {\n\t\tif (isSvg) {\n\t\t\t// Normalize incorrect prop usage for SVG:\n\t\t\t// - xlink:href / xlinkHref --> 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 !== 'width' &&\n\t\t\tname !== 'height' &&\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 !== 'rowSpan' &&\n\t\t\tname !== 'colSpan' &&\n\t\t\tname !== 'role' &&\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- and data- attributes have no boolean representation.\n\t\t// A `false` value is different from the attribute not being\n\t\t// present, so we can't remove it. For non-boolean aria\n\t\t// attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost too many bytes. On top of\n\t\t// that other frameworks generally stringify `false`.\n\n\t\tif (typeof value == 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (value != null && (value !== false || name[4] === '-')) {\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 {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tconst eventHandler = this._listeners[e.type + false];\n\t/**\n\t * This trick is inspired by Vue https://github.com/vuejs/core/blob/main/packages/runtime-dom/src/modules/events.ts#L90-L101\n\t * when the dom performs an event it leaves micro-ticks in between bubbling up which means that an event can trigger on a newly\n\t * created DOM-node while the event bubbles up, this can cause quirky behavior as seen in https://github.com/preactjs/preact/issues/3927\n\t */\n\tif (!e._dispatched) {\n\t\t// When an event has no _dispatched we know this is the first event-target in the chain\n\t\t// so we set the initial dispatched time.\n\t\te._dispatched = Date.now();\n\t\t// When the _dispatched is smaller than the time when the targetted event handler was attached\n\t\t// we know we have bubbled up to an element that was added during patching the dom.\n\t} else if (e._dispatched <= eventHandler._attached) {\n\t\treturn;\n\t}\n\treturn eventHandler(options.event ? options.event(e) : e);\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxyCapture(e) {\n\treturn this._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import {\n\tEMPTY_OBJ,\n\tMODE_HYDRATE,\n\tMODE_SUSPENDED,\n\tRESET_MODE\n} from '../constants';\nimport { BaseComponent, getDomSibling } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { setProperty } from './props';\nimport { assign, isArray, removeNode, slice } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {PreactElement} parentDom The parent of the DOM element\n * @param {VNode} newVNode The new virtual node\n * @param {VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating,\n\trefQueue\n) {\n\t/** @type {any} */\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._flags & MODE_SUSPENDED) {\n\t\tisHydrating = !!(oldVNode._flags & MODE_HYDRATE);\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\touter: if (typeof newType == 'function') {\n\t\ttry {\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-expect-error 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-expect-error Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new BaseComponent(\n\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t);\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\tc._stateCallbacks = [];\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\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\t\t\tc._vnode = newVNode;\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((c.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\t\tnewVNode._original === oldVNode._original)\n\t\t\t\t) {\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) {\n\t\t\t\t\t\t// When we are dealing with a bail because of sCU we have to update\n\t\t\t\t\t\t// the props, state and dirty-state.\n\t\t\t\t\t\t// when we are dealing with strict-equality we don't as the child could still\n\t\t\t\t\t\t// be dirtied see #3883\n\t\t\t\t\t\tc.props = newProps;\n\t\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t\tc._dirty = false;\n\t\t\t\t\t}\n\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\n\t\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t\t}\n\t\t\t\t\tc._stateCallbacks = [];\n\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._parentDom = parentDom;\n\t\t\tc._force = false;\n\n\t\t\tlet renderHook = options._render,\n\t\t\t\tcount = 0;\n\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\tc.state = c._nextState;\n\t\t\t\tc._dirty = false;\n\n\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t}\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t} else {\n\t\t\t\tdo {\n\t\t\t\t\tc._dirty = false;\n\t\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\t\t// Handle setState called in render, see #2553\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t} while (c._dirty && ++count < 25);\n\t\t\t}\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\tisArray(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\trefQueue\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._flags &= RESET_MODE;\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\t\t} catch (e) {\n\t\t\tnewVNode._original = null;\n\t\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\t\tnewVNode._dom = oldDom;\n\t\t\t\tnewVNode._flags |= isHydrating\n\t\t\t\t\t? MODE_HYDRATE | MODE_SUSPENDED\n\t\t\t\t\t: MODE_HYDRATE;\n\t\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t\t// ^ could possibly be simplified to:\n\t\t\t\t// excessDomChildren.length = 0;\n\t\t\t} else {\n\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t}\n\t\t\toptions._catchError(e, newVNode, oldVNode);\n\t\t}\n\t} else if (\n\t\texcessDomChildren == null &&\n\t\tnewVNode._original === oldVNode._original\n\t) {\n\t\tnewVNode._children = oldVNode._children;\n\t\tnewVNode._dom = oldVNode._dom;\n\t} else {\n\t\tnewVNode._dom = diffElementNodes(\n\t\t\toldVNode._dom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\tisHydrating,\n\t\t\trefQueue\n\t\t);\n\t}\n\n\tif ((tmp = options.diffed)) tmp(newVNode);\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {VNode} root\n */\nexport function commitRoot(commitQueue, root, refQueue) {\n\troot._nextDom = undefined;\n\n\tfor (let i = 0; i < refQueue.length; i++) {\n\t\tapplyRef(refQueue[i], refQueue[++i], refQueue[++i]);\n\t}\n\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-expect-error 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-expect-error See above comment 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 {PreactElement} dom The DOM element representing the virtual nodes\n * being diffed\n * @param {VNode} newVNode The new virtual node\n * @param {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 {Array} excessDomChildren\n * @param {Array} commitQueue List of components which have callbacks\n * to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n * @returns {PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating,\n\trefQueue\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = /** @type {string} */ (newVNode.type);\n\t/** @type {any} */\n\tlet i;\n\t/** @type {{ __html?: string }} */\n\tlet newHtml;\n\t/** @type {{ __html?: string }} */\n\tlet oldHtml;\n\t/** @type {ComponentChildren} */\n\tlet newChildren;\n\tlet value;\n\tlet inputValue;\n\tlet checked;\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 = 0; i < excessDomChildren.length; i++) {\n\t\t\tvalue = 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\tvalue &&\n\t\t\t\t'setAttribute' in value === !!nodeType &&\n\t\t\t\t(nodeType ? value.localName === nodeType : value.nodeType === 3)\n\t\t\t) {\n\t\t\t\tdom = value;\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\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS('http://www.w3.org/2000/svg', nodeType);\n\t\t} else {\n\t\t\tdom = document.createElement(nodeType, newProps.is && newProps);\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\n\t\t// 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 = excessDomChildren && slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\t// If we are in a situation where we are not hydrating but are using\n\t\t// existing DOM (e.g. replaceNode) we should read the existing DOM\n\t\t// attributes to diff them\n\t\tif (!isHydrating && excessDomChildren != null) {\n\t\t\toldProps = {};\n\t\t\tfor (i = 0; i < dom.attributes.length; i++) {\n\t\t\t\tvalue = dom.attributes[i];\n\t\t\t\toldProps[value.name] = value.value;\n\t\t\t}\n\t\t}\n\n\t\tfor (i in oldProps) {\n\t\t\tvalue = oldProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\toldHtml = value;\n\t\t\t} else if (i !== 'key' && !(i in newProps)) {\n\t\t\t\tsetProperty(dom, i, null, value, isSvg);\n\t\t\t}\n\t\t}\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\tfor (i in newProps) {\n\t\t\tvalue = newProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t\tnewChildren = value;\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\tnewHtml = value;\n\t\t\t} else if (i == 'value') {\n\t\t\t\tinputValue = value;\n\t\t\t} else if (i == 'checked') {\n\t\t\t\tchecked = value;\n\t\t\t} else if (\n\t\t\t\ti !== 'key' &&\n\t\t\t\t(!isHydrating || typeof value == 'function') &&\n\t\t\t\toldProps[i] !== value\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, value, oldProps[i], isSvg);\n\t\t\t}\n\t\t}\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\tif (\n\t\t\t\t!isHydrating &&\n\t\t\t\t(!oldHtml ||\n\t\t\t\t\t(newHtml.__html !== oldHtml.__html &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML))\n\t\t\t) {\n\t\t\t\tdom.innerHTML = newHtml.__html;\n\t\t\t}\n\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\tif (oldHtml) dom.innerHTML = '';\n\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tisArray(newChildren) ? newChildren : [newChildren],\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\texcessDomChildren\n\t\t\t\t\t? excessDomChildren[0]\n\t\t\t\t\t: oldVNode._children && getDomSibling(oldVNode, 0),\n\t\t\t\tisHydrating,\n\t\t\t\trefQueue\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\ti = 'value';\n\t\t\tif (\n\t\t\t\tinputValue !== 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(inputValue !== dom[i] ||\n\t\t\t\t\t(nodeType === 'progress' && !inputValue) ||\n\t\t\t\t\t// This is only for IE 11 to fix value not being updated.\n\t\t\t\t\t// To avoid a stale select value we need to set the option.value\n\t\t\t\t\t// again, which triggers IE11 to re-evaluate the select value\n\t\t\t\t\t(nodeType == 'option' && inputValue != oldProps[i]))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, inputValue, oldProps[i], namespace);\n\t\t\t}\n\n\t\t\ti = 'checked';\n\t\t\tif (checked != UNDEFINED && checked != dom[i]) {\n\t\t\t\tsetProperty(dom, i, checked, oldProps[i], namespace);\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 {Ref & { _unmount?: unknown }} ref\n * @param {any} value\n * @param {VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') {\n\t\t\tlet hasRefUnmount = typeof ref._unmount == 'function';\n\t\t\tif (hasRefUnmount) {\n\t\t\t\t// @ts-ignore TS doesn't like moving narrowing checks into variables\n\t\t\t\tref._unmount();\n\t\t\t}\n\n\t\t\tif (!hasRefUnmount || value != NULL) {\n\t\t\t\t// Store the cleanup function on the function\n\t\t\t\t// instance object itself to avoid shape\n\t\t\t\t// transitioning vnode\n\t\t\t\tref._unmount = ref(value);\n\t\t\t}\n\t\t} else 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 {VNode} vnode The virtual node to unmount\n * @param {VNode} parentVNode The parent of the VNode that 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) {\n\t\t\tapplyRef(r, NULL, parentVNode);\n\t\t}\n\t}\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]) {\n\t\t\t\tunmount(\n\t\t\t\t\tr[i],\n\t\t\t\t\tparentVNode,\n\t\t\t\t\tskipRemove || typeof vnode.type != 'function'\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!skipRemove) {\n\t\tremoveNode(vnode._dom);\n\t}\n\n\tvnode._component = vnode._parent = vnode._dom = UNDEFINED;\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, NULL } from './constants';\nimport { commitRoot, diff } from './diff/index';\nimport { createElement, Fragment } from './create-element';\nimport options from './options';\nimport { slice } from './util';\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 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\t// https://github.com/preactjs/preact/issues/3794\n\tif (parentDom == document) {\n\t\tparentDom = document.documentElement;\n\t}\n\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 = ((!isHydrating && replaceNode) || parentDom)._children =\n\t\tcreateElement(Fragment, NULL, [vnode]);\n\n\t// List of effects that need to be called after diffing.\n\tlet commitQueue = [],\n\t\trefQueue = [];\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.namespaceURI,\n\t\t!isHydrating && replaceNode\n\t\t\t? [replaceNode]\n\t\t\t: oldVNode\n\t\t\t\t? NULL\n\t\t\t\t: parentDom.firstChild\n\t\t\t\t\t? slice.call(parentDom.childNodes)\n\t\t\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\t? oldVNode._dom\n\t\t\t\t: parentDom.firstChild,\n\t\tisHydrating,\n\t\trefQueue\n\t);\n\n\t// Flush all queued effects\n\tcommitRoot(commitQueue, vnode, refQueue);\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 update\n */\nexport function hydrate(vnode, parentDom) {\n\trender(vnode, parentDom, hydrate);\n}\n","import { assign, slice } from './util';\nimport { createVNode } from './create-element';\nimport { NULL, UNDEFINED } from './constants';\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its\n * 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\n * 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\n\tlet defaultProps;\n\n\tif (vnode.type && vnode.type.defaultProps) {\n\t\tdefaultProps = vnode.type.defaultProps;\n\t}\n\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 if (props[i] === UNDEFINED && defaultProps != UNDEFINED) {\n\t\t\tnormalizedProps[i] = defaultProps[i];\n\t\t} else {\n\t\t\tnormalizedProps[i] = props[i];\n\t\t}\n\t}\n\n\tif (arguments.length > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 { NULL } from '../constants';\n\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 the error that was caught (except\n * for unmounting when this parameter is the highest parent that was being\n * unmounted)\n * @param {import('../internal').VNode} [oldVNode]\n * @param {import('../internal').ErrorInfo} [errorInfo]\n */\nexport function _catchError(error, vnode, oldVNode, errorInfo) {\n\t/** @type {import('../internal').Component} */\n\tlet component,\n\t\t/** @type {import('../internal').ComponentType} */\n\t\tctor,\n\t\t/** @type {boolean} */\n\t\thandled;\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, errorInfo || {});\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"],"names":["slice","options","vnodeId","isValidElement","rerenderQueue","prevDebounce","defer","depthSort","CAPTURE_REGEX","eventClock","eventProxy","eventProxyCapture","i","EMPTY_OBJ","EMPTY_ARR","IS_NON_DIMENSIONAL","isArray","Array","assign","obj","props","removeNode","node","parentNode","removeChild","createElement","type","children","key","ref","normalizedProps","arguments","length","call","defaultProps","undefined","createVNode","original","vnode","__k","__","__b","__e","__c","constructor","__v","__i","__u","createRef","current","Fragment","BaseComponent","context","this","getDomSibling","childIndex","sibling","updateParentDomPointers","child","base","enqueueRender","c","__d","push","process","__r","debounceRendering","component","newVNode","oldVNode","oldDom","commitQueue","refQueue","l","sort","shift","__P","diff","__n","namespaceURI","commitRoot","diffChildren","parentDom","renderResult","newParentVNode","oldParentVNode","globalContext","namespace","excessDomChildren","isHydrating","childVNode","newDom","firstChildDom","result","shouldPlace","oldChildren","newChildrenLength","constructNewChildrenArray","applyRef","insert","nextSibling","skewedIndex","matchingIndex","oldChildrenLength","remainingOldChildren","skew","String","findMatchingIndex","unmount","parentVNode","insertBefore","nodeType","toChildArray","out","some","x","y","matched","setStyle","style","value","setProperty","test","dom","name","oldValue","useCapture","lowerCaseName","o","cssText","replace","toLowerCase","_attached","addEventListener","removeEventListener","e","removeAttribute","setAttribute","createEventProxy","eventHandler","_dispatched","event","tmp","isNew","oldProps","oldState","snapshot","clearProcessingException","newProps","isClassComponent","provider","componentContext","renderHook","count","newType","outer","prototype","render","contextType","__E","doRender","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","cloneNode","then","MODE_HYDRATE","indexOf","markAsForce","diffElementNodes","diffed","forEach","root","cb","map","newHtml","oldHtml","newChildren","inputValue","checked","localName","document","createTextNode","createElementNS","is","__m","data","childNodes","attributes","__html","innerHTML","content","hasRefUnmount","skipRemove","r","componentWillUnmount","replaceNode","documentElement","firstChild","hydrate","cloneElement","createContext","defaultValue","Context","subs","ctx","Set","_props","add","old","delete","Provider","__l","Consumer","contextValue","error","errorInfo","ctor","handled","getDerivedStateFromError","setState","componentDidCatch","update","callback","s","forceUpdate","Promise","bind","resolve","setTimeout","a","b"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/dist/preact.umd.js b/node_modules/preact/dist/preact.umd.js index e259989..ec22604 100644 --- a/node_modules/preact/dist/preact.umd.js +++ b/node_modules/preact/dist/preact.umd.js @@ -1,2 +1,2 @@ -!function(n,l){"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((n||self).preact={})}(this,function(n){var l,u,t,i,o,r,f,e,c,s=65536,a=1<<17,h={},p=[],v=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y=Array.isArray;function d(n,l){for(var u in l)n[u]=l[u];return n}function _(n){var l=n.parentNode;l&&l.removeChild(n)}function b(n,u,t){var i,o,r,f={};for(r in u)"key"==r?i=u[r]:"ref"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?l.call(arguments,2):t),"function"==typeof n&&null!=n.defaultProps)for(r in n.defaultProps)void 0===f[r]&&(f[r]=n.defaultProps[r]);return g(n,f,i,o,null)}function g(n,l,i,o,r){var f={type:n,props:l,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++t:r,__i:-1,__u:0};return null==r&&null!=u.vnode&&u.vnode(f),f}function m(n){return n.children}function k(n,l){this.props=n,this.context=l}function w(n,l){if(null==l)return n.__?w(n.__,n.__i+1):null;for(var u;ll&&o.sort(e));S.__r=0}function T(n,l,u,t,i,o,r,f,e,c,a){var v,y,d,_,b,g=t&&t.__k||p,m=l.length;for(u.__d=e,$(u,l,g),e=u.__d,v=0;v0?g(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,f=H(i,u,r=t+p,h),i.__i=f,o=null,-1!==f&&(h--,(o=u[f])&&(o.__u|=a)),null==o||null===o.__v?(-1==f&&p--,"function"!=typeof i.type&&(i.__u|=s)):f!==r&&(f===r+1?p++:f>r?h>e-r?p+=f-r:p--:p=f(null!=e&&0==(e.__u&a)?1:0))for(;r>=0||f=0){if((e=l[r])&&0==(e.__u&a)&&i==e.key&&o===e.type)return r;r--}if(f2&&(e.children=arguments.length>3?l.call(arguments,2):t),g(n.type,e,i||n.key,o||n.ref,null)},n.createContext=function(n,l){var u={__c:l="__cC"+c++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=[],(t={})[l]=this,this.getChildContext=function(){return t},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(function(n){n.__e=!0,P(n)})},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u},n.createElement=b,n.createRef=function(){return{current:null}},n.h=b,n.hydrate=function n(l,u){B(l,u,n)},n.isValidElement=i,n.options=u,n.render=B,n.toChildArray=function n(l,u){return u=u||[],null==l||"boolean"==typeof l||(y(l)?l.some(function(l){n(l,u)}):u.push(l)),u}}); +!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((n||self).preact={})}(this,function(n){var t,i,e,o,r,f,u,c,s,a,h,p,l,y="http://www.w3.org/2000/svg",v="http://www.w3.org/1999/xhtml",d=null,w=void 0,g={},_=[],b=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,m=Array.isArray;function k(n,t){for(var i in t)n[i]=t[i];return n}function x(n){n&&n.parentNode&&n.parentNode.removeChild(n)}function S(n,i,e){var o,r,f,u={};for(f in i)"key"==f?o=i[f]:"ref"==f?r=i[f]:u[f]=i[f];if(arguments.length>2&&(u.children=arguments.length>3?t.call(arguments,2):e),"function"==typeof n&&n.defaultProps!=d)for(f in n.defaultProps)u[f]===w&&(u[f]=n.defaultProps[f]);return M(n,u,o,r,d)}function M(n,t,o,r,f){var u={type:n,props:t,key:o,ref:r,__k:d,__:d,__b:0,__e:d,__c:d,constructor:w,__v:f==d?++e:f,__i:-1,__u:0};return f==d&&i.vnode!=d&&i.vnode(u),u}function T(n){return n.children}function $(n,t){this.props=n,this.context=t}function C(n,t){if(t==d)return n.__?C(n.__,n.__i+1):d;for(var i;ta&&r.sort(c),n=r.shift(),a=r.length,n.__d&&(e=void 0,o=void 0,f=(o=(t=n).__v).__e,u=[],s=[],t.__P&&((e=k({},o)).__v=o.__v+1,i.vnode&&i.vnode(e),V(t.__P,e,o,t.__n,t.__P.namespaceURI,32&o.__u?[f]:d,u,f==d?C(o):f,!!(32&o.__u),s),e.__v=o.__v,e.__.__k[e.__i]=e,B(u,e,s),o.__e=o.__=null,e.__e!=f&&I(e)));j.__r=0}function A(n,t,i,e,o,r,f,u,c,s,a){var h,p,l,y,v,b,m,k=e&&e.__k||_,x=t.length;for(c=H(i,t,k,c,x),h=0;h0?f=n.__k[r]=M(f.type,f.props,f.key,f.ref?f.ref:d,f.__v):n.__k[r]=f,c=r+p,f.__=n,f.__b=n.__b+1,s=f.__i=F(f,i,c,h),u=d,-1!=s&&(h--,(u=i[s])&&(u.__u|=2)),u==d||u.__v==d?(-1==s&&(o>a?p--:oc?p--:p++,f.__u|=4))):n.__k[r]=d;if(h)for(r=0;r(a?1:0))for(o=i-1,r=i+1;o>=0||r=0?o--:r++])!=d&&0==(2&s.__u)&&u==s.key&&c==s.type)return f;return-1}function O(n,t,i){"-"==t[0]?n.setProperty(t,i==d?"":i):n[t]=i==d?"":"number"!=typeof i||b.test(t)?i:i+"px"}function z(n,t,i,e,o){var r,f;n:if("style"==t)if("string"==typeof i)n.style.cssText=i;else{if("string"==typeof e&&(n.style.cssText=e=""),e)for(t in e)i&&t in i||O(n.style,t,"");if(i)for(t in i)e&&i[t]==e[t]||O(n.style,t,i[t])}else if("o"==t[0]&&"n"==t[1])r=t!=(t=t.replace(s,"$1")),f=t.toLowerCase(),t=f in n||"onFocusOut"==t||"onFocusIn"==t?f.slice(2):t.slice(2),n.l||(n.l={}),n.l[t+r]=i,i?e?i.t=e.t:(i.t=a,n.addEventListener(t,r?p:h,r)):n.removeEventListener(t,r?p:h,r);else{if(o==y)t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=t&&"height"!=t&&"href"!=t&&"list"!=t&&"form"!=t&&"tabIndex"!=t&&"download"!=t&&"rowSpan"!=t&&"colSpan"!=t&&"role"!=t&&"popover"!=t&&t in n)try{n[t]=i==d?"":i;break n}catch(n){}"function"==typeof i||(i==d||!1===i&&"-"!=t[4]?n.removeAttribute(t):n.setAttribute(t,"popover"==t&&1==i?"":i))}}function N(n){return function(t){if(this.l){var e=this.l[t.type+n];if(t.i==d)t.i=a++;else if(t.i0?n:m(n)?n.map(D):k({},n)}function E(n,e,o,r,f,u,c,s,a){var h,p,l,_,b,k,S,M=o.props||g,T=e.props,$=e.type;if("svg"==$?f=y:"math"==$?f="http://www.w3.org/1998/Math/MathML":f||(f=v),u!=d)for(h=0;h2&&(c.children=arguments.length>3?t.call(arguments,2):e),M(n.type,c,o||n.key,r||n.ref,d)},n.createContext=function(n){function t(n){var i,e;return this.getChildContext||(i=new Set,(e={})[t.__c]=this,this.getChildContext=function(){return e},this.componentWillUnmount=function(){i=d},this.shouldComponentUpdate=function(n){this.props.value!=n.value&&i.forEach(function(n){n.__e=!0,P(n)})},this.sub=function(n){i.add(n);var t=n.componentWillUnmount;n.componentWillUnmount=function(){i&&i.delete(n),t&&t.call(n)}}),n.children}return t.__c="__cC"+l++,t.__=n,t.Provider=t.__l=(t.Consumer=function(n,t){return n.children(t)}).contextType=t,t},n.createElement=S,n.createRef=function(){return{current:d}},n.h=S,n.hydrate=function n(t,i){Q(t,i,n)},n.isValidElement=o,n.options=i,n.render=Q,n.toChildArray=function n(t,i){return i=i||[],t==d||"boolean"==typeof t||(m(t)?t.some(function(t){n(t,i)}):i.push(t)),i}}); //# sourceMappingURL=preact.umd.js.map diff --git a/node_modules/preact/dist/preact.umd.js.map b/node_modules/preact/dist/preact.umd.js.map index 4e83544..6b275dd 100644 --- a/node_modules/preact/dist/preact.umd.js.map +++ b/node_modules/preact/dist/preact.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"preact.umd.js","sources":["../src/util.js","../src/options.js","../src/create-element.js","../src/component.js","../src/create-context.js","../src/constants.js","../src/diff/children.js","../src/diff/props.js","../src/diff/index.js","../src/render.js","../src/diff/catch-error.js","../src/clone-element.js"],"sourcesContent":["import { EMPTY_ARR } from './constants';\n\nexport const isArray = Array.isArray;\n\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-expect-error 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 {preact.ContainerNode} node The node to remove\n */\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n\nexport const slice = EMPTY_ARR.slice;\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 {Options}\n */\nconst options = {\n\t_catchError\n};\n\nexport default options;\n","import { slice } from './util';\nimport options from './options';\n\nlet vnodeId = 0;\n\n/**\n * Create an virtual node (used for JSX)\n * @param {VNode[\"type\"]} type The node name or Component constructor for this\n * virtual node\n * @param {object | null | undefined} [props] The properties of the virtual node\n * @param {Array} [children] The children of the\n * virtual node\n * @returns {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 > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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 {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 {VNode[\"ref\"]} ref The ref property that will\n * receive a reference to its created child\n * @returns {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\t/** @type {VNode} */\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\tconstructor: undefined,\n\t\t_original: original == null ? ++vnodeId : original,\n\t\t_index: -1,\n\t\t_flags: 0\n\t};\n\n\t// Only invoke the vnode hook if this was *not* a direct copy:\n\tif (original == null && 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 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';\nimport { MODE_HYDRATE } from './constants';\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 BaseComponent(props, context) {\n\tthis.props = props;\n\tthis.context = context;\n}\n\n/**\n * Update component state and schedule a re-render.\n * @this {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 */\nBaseComponent.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) {\n\t\t\tthis._stateCallbacks.push(callback);\n\t\t}\n\t\tenqueueRender(this);\n\t}\n};\n\n/**\n * Immediately perform a synchronous re-render of the component\n * @this {Component}\n * @param {() => void} [callback] A function to be called after component is\n * re-rendered\n */\nBaseComponent.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 {ComponentChildren | void}\n */\nBaseComponent.prototype.render = Fragment;\n\n/**\n * @param {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._index + 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 {Component} component The component to rerender\n */\nfunction renderComponent(component) {\n\tlet oldVNode = component._vnode,\n\t\toldDom = oldVNode._dom,\n\t\tparentDom = component._parentDom,\n\t\tcommitQueue = [],\n\t\trefQueue = [];\n\n\tif (parentDom) {\n\t\tconst newVNode = assign({}, oldVNode);\n\t\tnewVNode._original = oldVNode._original + 1;\n\t\tif (options.vnode) options.vnode(newVNode);\n\n\t\tdiff(\n\t\t\tparentDom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tcomponent._globalContext,\n\t\t\tparentDom.ownerSVGElement !== undefined,\n\t\t\toldVNode._flags & MODE_HYDRATE ? [oldDom] : null,\n\t\t\tcommitQueue,\n\t\t\toldDom == null ? getDomSibling(oldVNode) : oldDom,\n\t\t\t!!(oldVNode._flags & MODE_HYDRATE),\n\t\t\trefQueue\n\t\t);\n\n\t\tnewVNode._parent._children[newVNode._index] = newVNode;\n\t\tcommitRoot(commitQueue, newVNode, refQueue);\n\n\t\tif (newVNode._dom != oldDom) {\n\t\t\tupdateParentDomPointers(newVNode);\n\t\t}\n\t}\n}\n\n/**\n * @param {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 * 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\nconst defer =\n\ttypeof Promise == 'function'\n\t\t? Promise.prototype.then.bind(Promise.resolve())\n\t\t: setTimeout;\n\n/**\n * Enqueue a rerender of a component\n * @param {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/**\n * @param {Component} a\n * @param {Component} b\n */\nconst depthSort = (a, b) => a._vnode._depth - b._vnode._depth;\n\n/** Flush the render queue by rerendering all queued components */\nfunction process() {\n\tlet c;\n\trerenderQueue.sort(depthSort);\n\t// Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary\n\t// process() calls from getting scheduled while `queue` is still being consumed.\n\twhile ((c = rerenderQueue.shift())) {\n\t\tif (c._dirty) {\n\t\t\tlet renderQueueLength = rerenderQueue.length;\n\t\t\trenderComponent(c);\n\t\t\tif (rerenderQueue.length > renderQueueLength) {\n\t\t\t\t// When i.e. rerendering a provider additional new items can be injected, we want to\n\t\t\t\t// keep the order from top to bottom with those new items so we can handle them in a\n\t\t\t\t// single pass\n\t\t\t\trerenderQueue.sort(depthSort);\n\t\t\t}\n\t\t}\n\t}\n\tprocess._rerenderCount = 0;\n}\n\nprocess._rerenderCount = 0;\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 {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 {FunctionComponent} */\n\t\tProvider(props) {\n\t\t\tif (!this.getChildContext) {\n\t\t\t\t/** @type {Component[]} */\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(c => {\n\t\t\t\t\t\t\tc._force = true;\n\t\t\t\t\t\t\tenqueueRender(c);\n\t\t\t\t\t\t});\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 =\n\t\tcontext);\n}\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 16;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 17;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { diff, unmount, applyRef } from './index';\nimport { createVNode, Fragment } from '../create-element';\nimport { EMPTY_OBJ, EMPTY_ARR, INSERT_VNODE, MATCHED } from '../constants';\nimport { isArray } from '../util';\nimport { getDomSibling } from '../component';\n\n/**\n * Diff the children of a virtual node\n * @param {PreactElement} parentDom The DOM element whose children are being\n * diffed\n * @param {ComponentChildren[]} renderResult\n * @param {VNode} newParentVNode The new virtual node whose children should be\n * diff'ed against oldParentVNode\n * @param {VNode} oldParentVNode The old virtual node whose children should be\n * diff'ed against newParentVNode\n * @param {object} globalContext The current context object - modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\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\trefQueue\n) {\n\tlet i,\n\t\t/** @type {VNode} */\n\t\toldVNode,\n\t\t/** @type {VNode} */\n\t\tchildVNode,\n\t\t/** @type {PreactElement} */\n\t\tnewDom,\n\t\t/** @type {PreactElement} */\n\t\tfirstChildDom;\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\t/** @type {VNode[]} */\n\tlet oldChildren = (oldParentVNode && oldParentVNode._children) || EMPTY_ARR;\n\n\tlet newChildrenLength = renderResult.length;\n\n\tnewParentVNode._nextDom = oldDom;\n\tconstructNewChildrenArray(newParentVNode, renderResult, oldChildren);\n\toldDom = newParentVNode._nextDom;\n\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\tchildVNode = newParentVNode._children[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// At this point, constructNewChildrenArray has assigned _index to be the\n\t\t// matchingIndex for this VNode's oldVNode (or -1 if there is no oldVNode).\n\t\tif (childVNode._index === -1) {\n\t\t\toldVNode = EMPTY_OBJ;\n\t\t} else {\n\t\t\toldVNode = oldChildren[childVNode._index] || EMPTY_OBJ;\n\t\t}\n\n\t\t// Update childVNode._index to its final index\n\t\tchildVNode._index = i;\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\trefQueue\n\t\t);\n\n\t\t// Adjust DOM nodes\n\t\tnewDom = childVNode._dom;\n\t\tif (childVNode.ref && oldVNode.ref != childVNode.ref) {\n\t\t\tif (oldVNode.ref) {\n\t\t\t\tapplyRef(oldVNode.ref, null, childVNode);\n\t\t\t}\n\t\t\trefQueue.push(\n\t\t\t\tchildVNode.ref,\n\t\t\t\tchildVNode._component || newDom,\n\t\t\t\tchildVNode\n\t\t\t);\n\t\t}\n\n\t\tif (firstChildDom == null && newDom != null) {\n\t\t\tfirstChildDom = newDom;\n\t\t}\n\n\t\tif (\n\t\t\tchildVNode._flags & INSERT_VNODE ||\n\t\t\toldVNode._children === childVNode._children\n\t\t) {\n\t\t\toldDom = insert(childVNode, oldDom, parentDom);\n\t\t} else if (\n\t\t\ttypeof childVNode.type == 'function' &&\n\t\t\tchildVNode._nextDom !== undefined\n\t\t) {\n\t\t\t// Since Fragments or components that return Fragment like VNodes can\n\t\t\t// contain multiple DOM nodes as the same level, continue the diff from\n\t\t\t// the sibling of last DOM child of this child VNode\n\t\t\toldDom = childVNode._nextDom;\n\t\t} else if (newDom) {\n\t\t\toldDom = newDom.nextSibling;\n\t\t}\n\n\t\t// Eagerly cleanup _nextDom. We don't need to persist the value because it\n\t\t// is only used by `diffChildren` to determine where to resume the diff\n\t\t// after diffing Components and Fragments. Once we store it the nextDOM\n\t\t// local var, we can clean up the property. Also prevents us hanging on to\n\t\t// DOM nodes that may have been unmounted.\n\t\tchildVNode._nextDom = undefined;\n\n\t\t// Unset diffing flags\n\t\tchildVNode._flags &= ~(INSERT_VNODE | MATCHED);\n\t}\n\n\t// TODO: With new child diffing algo, consider alt ways to diff Fragments.\n\t// Such as dropping oldDom and moving fragments in place\n\t//\n\t// Because the newParentVNode is Fragment-like, we need to set it's\n\t// _nextDom property to the nextSibling of its last child DOM node.\n\t//\n\t// `oldDom` contains the correct value here because if the last child\n\t// is a Fragment-like, then oldDom has already been set to that child's _nextDom.\n\t// If the last child is a DOM VNode, then oldDom will be set to that DOM\n\t// node's nextSibling.\n\tnewParentVNode._nextDom = oldDom;\n\tnewParentVNode._dom = firstChildDom;\n}\n\n/**\n * @param {VNode} newParentVNode\n * @param {ComponentChildren[]} renderResult\n * @param {VNode[]} oldChildren\n */\nfunction constructNewChildrenArray(newParentVNode, renderResult, oldChildren) {\n\t/** @type {number} */\n\tlet i;\n\t/** @type {VNode} */\n\tlet childVNode;\n\t/** @type {VNode} */\n\tlet oldVNode;\n\n\tconst newChildrenLength = renderResult.length;\n\tlet oldChildrenLength = oldChildren.length,\n\t\tremainingOldChildren = oldChildrenLength;\n\n\tlet skew = 0;\n\n\tnewParentVNode._children = [];\n\tfor (i = 0; i < newChildrenLength; i++) {\n\t\t// @ts-expect-error We are reusing the childVNode variable to hold both the\n\t\t// pre and post normalized childVNode\n\t\tchildVNode = renderResult[i];\n\n\t\tif (\n\t\t\tchildVNode == null ||\n\t\t\ttypeof childVNode == 'boolean' ||\n\t\t\ttypeof childVNode == 'function'\n\t\t) {\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\tchildVNode.constructor == String\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 (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.constructor === undefined && 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\tchildVNode.ref ? childVNode.ref : null,\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// Handle unmounting null placeholders, i.e. VNode => null in unkeyed children\n\t\tif (childVNode == null) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode && oldVNode.key == null && oldVNode._dom) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode, false);\n\n\t\t\t\t// Explicitly nullify this position in oldChildren instead of just\n\t\t\t\t// setting `_match=true` to prevent other routines (e.g.\n\t\t\t\t// `findMatchingIndex` or `getDomSibling`) from thinking VNodes or DOM\n\t\t\t\t// nodes in this position are still available to be used in diffing when\n\t\t\t\t// they have actually already been unmounted. For example, by only\n\t\t\t\t// setting `_match=true` here, the unmounting loop later would attempt\n\t\t\t\t// to unmount this VNode again seeing `_match==true`. Further,\n\t\t\t\t// getDomSibling doesn't know about _match and so would incorrectly\n\t\t\t\t// assume DOM nodes in this subtree are mounted and usable.\n\t\t\t\toldChildren[i] = null;\n\t\t\t\tremainingOldChildren--;\n\t\t\t}\n\n\t\t\tcontinue;\n\t\t}\n\n\t\tchildVNode._parent = newParentVNode;\n\t\tchildVNode._depth = newParentVNode._depth + 1;\n\n\t\tconst skewedIndex = i + skew;\n\t\tconst matchingIndex = findMatchingIndex(\n\t\t\tchildVNode,\n\t\t\toldChildren,\n\t\t\tskewedIndex,\n\t\t\tremainingOldChildren\n\t\t);\n\n\t\t// Temporarily store the matchingIndex on the _index property so we can pull\n\t\t// out the oldVNode in diffChildren. We'll override this to the VNode's\n\t\t// final index after using this property to get the oldVNode\n\t\tchildVNode._index = matchingIndex;\n\n\t\toldVNode = null;\n\t\tif (matchingIndex !== -1) {\n\t\t\toldVNode = oldChildren[matchingIndex];\n\t\t\tremainingOldChildren--;\n\t\t\tif (oldVNode) {\n\t\t\t\toldVNode._flags |= MATCHED;\n\t\t\t}\n\t\t}\n\n\t\t// Here, we define isMounting for the purposes of the skew diffing\n\t\t// algorithm. Nodes that are unsuspending are considered mounting and we detect\n\t\t// this by checking if oldVNode._original === null\n\t\tconst isMounting = oldVNode == null || oldVNode._original === null;\n\n\t\tif (isMounting) {\n\t\t\tif (matchingIndex == -1) {\n\t\t\t\tskew--;\n\t\t\t}\n\n\t\t\t// If we are mounting a DOM VNode, mark it for insertion\n\t\t\tif (typeof childVNode.type != 'function') {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t} else if (matchingIndex !== skewedIndex) {\n\t\t\tif (matchingIndex === skewedIndex + 1) {\n\t\t\t\tskew++;\n\t\t\t} else if (matchingIndex > skewedIndex) {\n\t\t\t\tif (remainingOldChildren > newChildrenLength - skewedIndex) {\n\t\t\t\t\tskew += matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\t// ### Change from keyed: I think this was missing from the algo...\n\t\t\t\t\tskew--;\n\t\t\t\t}\n\t\t\t} else if (matchingIndex < skewedIndex) {\n\t\t\t\tif (matchingIndex == skewedIndex - 1) {\n\t\t\t\t\tskew = matchingIndex - skewedIndex;\n\t\t\t\t} else {\n\t\t\t\t\tskew = 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tskew = 0;\n\t\t\t}\n\n\t\t\t// Move this VNode's DOM if the original index (matchingIndex) doesn't\n\t\t\t// match the new skew index (i + new skew)\n\t\t\tif (matchingIndex !== i + skew) {\n\t\t\t\tchildVNode._flags |= INSERT_VNODE;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Remove remaining oldChildren if there are any. Loop forwards so that as we\n\t// unmount DOM from the beginning of the oldChildren, we can adjust oldDom to\n\t// point to the next child, which needs to be the first DOM node that won't be\n\t// unmounted.\n\tif (remainingOldChildren) {\n\t\tfor (i = 0; i < oldChildrenLength; i++) {\n\t\t\toldVNode = oldChildren[i];\n\t\t\tif (oldVNode != null && (oldVNode._flags & MATCHED) === 0) {\n\t\t\t\tif (oldVNode._dom == newParentVNode._nextDom) {\n\t\t\t\t\tnewParentVNode._nextDom = getDomSibling(oldVNode);\n\t\t\t\t}\n\n\t\t\t\tunmount(oldVNode, oldVNode);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * @param {VNode} parentVNode\n * @param {PreactElement} oldDom\n * @param {PreactElement} parentDom\n * @returns {PreactElement}\n */\nfunction insert(parentVNode, oldDom, parentDom) {\n\t// Note: VNodes in nested suspended trees may be missing _children.\n\n\tif (typeof parentVNode.type == 'function') {\n\t\tlet children = parentVNode._children;\n\t\tfor (let i = 0; children && i < children.length; i++) {\n\t\t\tif (children[i]) {\n\t\t\t\t// If we enter this code path on sCU bailout, where we copy\n\t\t\t\t// oldVNode._children to newVNode._children, we need to update the old\n\t\t\t\t// children's _parent pointer to point to the newVNode (parentVNode\n\t\t\t\t// here).\n\t\t\t\tchildren[i]._parent = parentVNode;\n\t\t\t\toldDom = insert(children[i], oldDom, parentDom);\n\t\t\t}\n\t\t}\n\n\t\treturn oldDom;\n\t} else if (parentVNode._dom != oldDom) {\n\t\tparentDom.insertBefore(parentVNode._dom, oldDom || null);\n\t\toldDom = parentVNode._dom;\n\t}\n\n\treturn oldDom && oldDom.nextSibling;\n}\n\n/**\n * Flatten and loop through the children of a virtual node\n * @param {ComponentChildren} children The unflattened children of a virtual\n * node\n * @returns {VNode[]}\n */\nexport function toChildArray(children, out) {\n\tout = out || [];\n\tif (children == null || typeof children == 'boolean') {\n\t} else if (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\n/**\n * @param {VNode} childVNode\n * @param {VNode[]} oldChildren\n * @param {number} skewedIndex\n * @param {number} remainingOldChildren\n * @returns {number}\n */\nfunction findMatchingIndex(\n\tchildVNode,\n\toldChildren,\n\tskewedIndex,\n\tremainingOldChildren\n) {\n\tconst key = childVNode.key;\n\tconst type = childVNode.type;\n\tlet x = skewedIndex - 1;\n\tlet y = skewedIndex + 1;\n\tlet oldVNode = oldChildren[skewedIndex];\n\n\t// We only need to perform a search if there are more children\n\t// (remainingOldChildren) to search. However, if the oldVNode we just looked\n\t// at skewedIndex was not already used in this diff, then there must be at\n\t// least 1 other (so greater than 1) remainingOldChildren to attempt to match\n\t// against. So the following condition checks that ensuring\n\t// remainingOldChildren > 1 if the oldVNode is not already used/matched. Else\n\t// if the oldVNode was null or matched, then there could needs to be at least\n\t// 1 (aka `remainingOldChildren > 0`) children to find and compare against.\n\tlet shouldSearch =\n\t\tremainingOldChildren >\n\t\t(oldVNode != null && (oldVNode._flags & MATCHED) === 0 ? 1 : 0);\n\n\tif (\n\t\toldVNode === null ||\n\t\t(oldVNode && key == oldVNode.key && type === oldVNode.type)\n\t) {\n\t\treturn skewedIndex;\n\t} else if (shouldSearch) {\n\t\twhile (x >= 0 || y < oldChildren.length) {\n\t\t\tif (x >= 0) {\n\t\t\t\toldVNode = oldChildren[x];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn x;\n\t\t\t\t}\n\t\t\t\tx--;\n\t\t\t}\n\n\t\t\tif (y < oldChildren.length) {\n\t\t\t\toldVNode = oldChildren[y];\n\t\t\t\tif (\n\t\t\t\t\toldVNode &&\n\t\t\t\t\t(oldVNode._flags & MATCHED) === 0 &&\n\t\t\t\t\tkey == oldVNode.key &&\n\t\t\t\t\ttype === oldVNode.type\n\t\t\t\t) {\n\t\t\t\t\treturn y;\n\t\t\t\t}\n\t\t\t\ty++;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn -1;\n}\n","import { IS_NON_DIMENSIONAL } from '../constants';\nimport options from '../options';\n\nfunction setStyle(style, key, value) {\n\tif (key[0] === '-') {\n\t\tstyle.setProperty(key, value == null ? '' : value);\n\t} else if (value == null) {\n\t\tstyle[key] = '';\n\t} else if (typeof value != 'number' || IS_NON_DIMENSIONAL.test(key)) {\n\t\tstyle[key] = value;\n\t} else {\n\t\tstyle[key] = value + 'px';\n\t}\n}\n\n/**\n * Set a property value on a DOM node\n * @param {PreactElement} dom The DOM node to modify\n * @param {string} name The name of the property to set\n * @param {*} value The value to set the property to\n * @param {*} oldValue The old value the property had\n * @param {boolean} isSvg Whether or not this DOM node is an SVG node or not\n */\nexport function setProperty(dom, name, value, oldValue, isSvg) {\n\tlet useCapture;\n\n\to: if (name === 'style') {\n\t\tif (typeof value == 'string') {\n\t\t\tdom.style.cssText = value;\n\t\t} else {\n\t\t\tif (typeof oldValue == 'string') {\n\t\t\t\tdom.style.cssText = oldValue = '';\n\t\t\t}\n\n\t\t\tif (oldValue) {\n\t\t\t\tfor (name in oldValue) {\n\t\t\t\t\tif (!(value && name in value)) {\n\t\t\t\t\t\tsetStyle(dom.style, name, '');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (value) {\n\t\t\t\tfor (name in value) {\n\t\t\t\t\tif (!oldValue || value[name] !== oldValue[name]) {\n\t\t\t\t\t\tsetStyle(dom.style, name, value[name]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6\n\telse if (name[0] === 'o' && name[1] === 'n') {\n\t\tuseCapture =\n\t\t\tname !== (name = name.replace(/(PointerCapture)$|Capture$/, '$1'));\n\n\t\t// Infer correct casing for DOM built-in events:\n\t\tif (name.toLowerCase() in dom) name = name.toLowerCase().slice(2);\n\t\telse name = name.slice(2);\n\n\t\tif (!dom._listeners) dom._listeners = {};\n\t\tdom._listeners[name + useCapture] = value;\n\n\t\tif (value) {\n\t\t\tif (!oldValue) {\n\t\t\t\tvalue._attached = Date.now();\n\t\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\t\tdom.addEventListener(name, handler, useCapture);\n\t\t\t} else {\n\t\t\t\tvalue._attached = oldValue._attached;\n\t\t\t}\n\t\t} else {\n\t\t\tconst handler = useCapture ? eventProxyCapture : eventProxy;\n\t\t\tdom.removeEventListener(name, handler, useCapture);\n\t\t}\n\t} else {\n\t\tif (isSvg) {\n\t\t\t// Normalize incorrect prop usage for SVG:\n\t\t\t// - xlink:href / xlinkHref --> 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 !== 'width' &&\n\t\t\tname !== 'height' &&\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 !== 'rowSpan' &&\n\t\t\tname !== 'colSpan' &&\n\t\t\tname !== 'role' &&\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- and data- attributes have no boolean representation.\n\t\t// A `false` value is different from the attribute not being\n\t\t// present, so we can't remove it. For non-boolean aria\n\t\t// attributes we could treat false as a removal, but the\n\t\t// amount of exceptions would cost too many bytes. On top of\n\t\t// that other frameworks generally stringify `false`.\n\n\t\tif (typeof value == 'function') {\n\t\t\t// never serialize functions as attribute values\n\t\t} else if (value != null && (value !== false || name[4] === '-')) {\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 {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxy(e) {\n\tconst eventHandler = this._listeners[e.type + false];\n\t/**\n\t * This trick is inspired by Vue https://github.com/vuejs/core/blob/main/packages/runtime-dom/src/modules/events.ts#L90-L101\n\t * when the dom performs an event it leaves micro-ticks in between bubbling up which means that an event can trigger on a newly\n\t * created DOM-node while the event bubbles up, this can cause quirky behavior as seen in https://github.com/preactjs/preact/issues/3927\n\t */\n\tif (!e._dispatched) {\n\t\t// When an event has no _dispatched we know this is the first event-target in the chain\n\t\t// so we set the initial dispatched time.\n\t\te._dispatched = Date.now();\n\t\t// When the _dispatched is smaller than the time when the targetted event handler was attached\n\t\t// we know we have bubbled up to an element that was added during patching the dom.\n\t} else if (e._dispatched <= eventHandler._attached) {\n\t\treturn;\n\t}\n\treturn eventHandler(options.event ? options.event(e) : e);\n}\n\n/**\n * Proxy an event to hooked event handlers\n * @param {PreactEvent} e The event object from the browser\n * @private\n */\nfunction eventProxyCapture(e) {\n\treturn this._listeners[e.type + true](options.event ? options.event(e) : e);\n}\n","import {\n\tEMPTY_OBJ,\n\tMODE_HYDRATE,\n\tMODE_SUSPENDED,\n\tRESET_MODE\n} from '../constants';\nimport { BaseComponent, getDomSibling } from '../component';\nimport { Fragment } from '../create-element';\nimport { diffChildren } from './children';\nimport { setProperty } from './props';\nimport { assign, isArray, removeNode, slice } from '../util';\nimport options from '../options';\n\n/**\n * Diff two virtual nodes and apply proper changes to the DOM\n * @param {PreactElement} parentDom The parent of the DOM element\n * @param {VNode} newVNode The new virtual node\n * @param {VNode} oldVNode The old virtual node\n * @param {object} globalContext The current context object. Modified by\n * 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 which have callbacks\n * to invoke in commitRoot\n * @param {PreactElement} oldDom The current attached DOM element any new dom\n * elements should be placed around. Likely `null` on first render (except when\n * hydrating). Can be a sibling DOM element when diffing Fragments that have\n * siblings. In most cases, it starts out as `oldChildren[0]._dom`.\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n */\nexport function diff(\n\tparentDom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\toldDom,\n\tisHydrating,\n\trefQueue\n) {\n\t/** @type {any} */\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._flags & MODE_SUSPENDED) {\n\t\tisHydrating = !!(oldVNode._flags & MODE_HYDRATE);\n\t\toldDom = newVNode._dom = oldVNode._dom;\n\t\texcessDomChildren = [oldDom];\n\t}\n\n\tif ((tmp = options._diff)) tmp(newVNode);\n\n\touter: if (typeof newType == 'function') {\n\t\ttry {\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-expect-error 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-expect-error Trust me, Component implements the interface we want\n\t\t\t\t\tnewVNode._component = c = new BaseComponent(\n\t\t\t\t\t\tnewProps,\n\t\t\t\t\t\tcomponentContext\n\t\t\t\t\t);\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\tc._stateCallbacks = [];\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\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\t\t\tc._vnode = newVNode;\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((c.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\t\tnewVNode._original === oldVNode._original)\n\t\t\t\t) {\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) {\n\t\t\t\t\t\t// When we are dealing with a bail because of sCU we have to update\n\t\t\t\t\t\t// the props, state and dirty-state.\n\t\t\t\t\t\t// when we are dealing with strict-equality we don't as the child could still\n\t\t\t\t\t\t// be dirtied see #3883\n\t\t\t\t\t\tc.props = newProps;\n\t\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t\t\tc._dirty = false;\n\t\t\t\t\t}\n\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\n\t\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t\t}\n\t\t\t\t\tc._stateCallbacks = [];\n\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._parentDom = parentDom;\n\t\t\tc._force = false;\n\n\t\t\tlet renderHook = options._render,\n\t\t\t\tcount = 0;\n\t\t\tif ('prototype' in newType && newType.prototype.render) {\n\t\t\t\tc.state = c._nextState;\n\t\t\t\tc._dirty = false;\n\n\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\tfor (let i = 0; i < c._stateCallbacks.length; i++) {\n\t\t\t\t\tc._renderCallbacks.push(c._stateCallbacks[i]);\n\t\t\t\t}\n\t\t\t\tc._stateCallbacks = [];\n\t\t\t} else {\n\t\t\t\tdo {\n\t\t\t\t\tc._dirty = false;\n\t\t\t\t\tif (renderHook) renderHook(newVNode);\n\n\t\t\t\t\ttmp = c.render(c.props, c.state, c.context);\n\n\t\t\t\t\t// Handle setState called in render, see #2553\n\t\t\t\t\tc.state = c._nextState;\n\t\t\t\t} while (c._dirty && ++count < 25);\n\t\t\t}\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\tisArray(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\trefQueue\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._flags &= RESET_MODE;\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\t\t} catch (e) {\n\t\t\tnewVNode._original = null;\n\t\t\t// if hydrating or creating initial tree, bailout preserves DOM:\n\t\t\tif (isHydrating || excessDomChildren != null) {\n\t\t\t\tnewVNode._dom = oldDom;\n\t\t\t\tnewVNode._flags |= isHydrating\n\t\t\t\t\t? MODE_HYDRATE | MODE_SUSPENDED\n\t\t\t\t\t: MODE_HYDRATE;\n\t\t\t\texcessDomChildren[excessDomChildren.indexOf(oldDom)] = null;\n\t\t\t\t// ^ could possibly be simplified to:\n\t\t\t\t// excessDomChildren.length = 0;\n\t\t\t} else {\n\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t}\n\t\t\toptions._catchError(e, newVNode, oldVNode);\n\t\t}\n\t} else if (\n\t\texcessDomChildren == null &&\n\t\tnewVNode._original === oldVNode._original\n\t) {\n\t\tnewVNode._children = oldVNode._children;\n\t\tnewVNode._dom = oldVNode._dom;\n\t} else {\n\t\tnewVNode._dom = diffElementNodes(\n\t\t\toldVNode._dom,\n\t\t\tnewVNode,\n\t\t\toldVNode,\n\t\t\tglobalContext,\n\t\t\tisSvg,\n\t\t\texcessDomChildren,\n\t\t\tcommitQueue,\n\t\t\tisHydrating,\n\t\t\trefQueue\n\t\t);\n\t}\n\n\tif ((tmp = options.diffed)) tmp(newVNode);\n}\n\n/**\n * @param {Array} commitQueue List of components\n * which have callbacks to invoke in commitRoot\n * @param {VNode} root\n */\nexport function commitRoot(commitQueue, root, refQueue) {\n\troot._nextDom = undefined;\n\n\tfor (let i = 0; i < refQueue.length; i++) {\n\t\tapplyRef(refQueue[i], refQueue[++i], refQueue[++i]);\n\t}\n\n\tif (options._commit) options._commit(root, commitQueue);\n\n\tcommitQueue.some(c => {\n\t\ttry {\n\t\t\t// @ts-expect-error 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-expect-error See above comment 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 {PreactElement} dom The DOM element representing the virtual nodes\n * being diffed\n * @param {VNode} newVNode The new virtual node\n * @param {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 {Array} excessDomChildren\n * @param {Array} commitQueue List of components which have callbacks\n * to invoke in commitRoot\n * @param {boolean} isHydrating Whether or not we are in hydration\n * @param {any[]} refQueue an array of elements needed to invoke refs\n * @returns {PreactElement}\n */\nfunction diffElementNodes(\n\tdom,\n\tnewVNode,\n\toldVNode,\n\tglobalContext,\n\tisSvg,\n\texcessDomChildren,\n\tcommitQueue,\n\tisHydrating,\n\trefQueue\n) {\n\tlet oldProps = oldVNode.props;\n\tlet newProps = newVNode.props;\n\tlet nodeType = /** @type {string} */ (newVNode.type);\n\t/** @type {any} */\n\tlet i;\n\t/** @type {{ __html?: string }} */\n\tlet newHtml;\n\t/** @type {{ __html?: string }} */\n\tlet oldHtml;\n\t/** @type {ComponentChildren} */\n\tlet newChildren;\n\tlet value;\n\tlet inputValue;\n\tlet checked;\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 = 0; i < excessDomChildren.length; i++) {\n\t\t\tvalue = 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\tvalue &&\n\t\t\t\t'setAttribute' in value === !!nodeType &&\n\t\t\t\t(nodeType ? value.localName === nodeType : value.nodeType === 3)\n\t\t\t) {\n\t\t\t\tdom = value;\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\treturn document.createTextNode(newProps);\n\t\t}\n\n\t\tif (isSvg) {\n\t\t\tdom = document.createElementNS('http://www.w3.org/2000/svg', nodeType);\n\t\t} else {\n\t\t\tdom = document.createElement(nodeType, newProps.is && newProps);\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\n\t\t// 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 = excessDomChildren && slice.call(dom.childNodes);\n\n\t\toldProps = oldVNode.props || EMPTY_OBJ;\n\n\t\t// If we are in a situation where we are not hydrating but are using\n\t\t// existing DOM (e.g. replaceNode) we should read the existing DOM\n\t\t// attributes to diff them\n\t\tif (!isHydrating && excessDomChildren != null) {\n\t\t\toldProps = {};\n\t\t\tfor (i = 0; i < dom.attributes.length; i++) {\n\t\t\t\tvalue = dom.attributes[i];\n\t\t\t\toldProps[value.name] = value.value;\n\t\t\t}\n\t\t}\n\n\t\tfor (i in oldProps) {\n\t\t\tvalue = oldProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\toldHtml = value;\n\t\t\t} else if (i !== 'key' && !(i in newProps)) {\n\t\t\t\tsetProperty(dom, i, null, value, isSvg);\n\t\t\t}\n\t\t}\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\tfor (i in newProps) {\n\t\t\tvalue = newProps[i];\n\t\t\tif (i == 'children') {\n\t\t\t\tnewChildren = value;\n\t\t\t} else if (i == 'dangerouslySetInnerHTML') {\n\t\t\t\tnewHtml = value;\n\t\t\t} else if (i == 'value') {\n\t\t\t\tinputValue = value;\n\t\t\t} else if (i == 'checked') {\n\t\t\t\tchecked = value;\n\t\t\t} else if (\n\t\t\t\ti !== 'key' &&\n\t\t\t\t(!isHydrating || typeof value == 'function') &&\n\t\t\t\toldProps[i] !== value\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, value, oldProps[i], isSvg);\n\t\t\t}\n\t\t}\n\n\t\t// If the new vnode didn't have dangerouslySetInnerHTML, diff its children\n\t\tif (newHtml) {\n\t\t\t// Avoid re-applying the same '__html' if it did not changed between re-render\n\t\t\tif (\n\t\t\t\t!isHydrating &&\n\t\t\t\t(!oldHtml ||\n\t\t\t\t\t(newHtml.__html !== oldHtml.__html &&\n\t\t\t\t\t\tnewHtml.__html !== dom.innerHTML))\n\t\t\t) {\n\t\t\t\tdom.innerHTML = newHtml.__html;\n\t\t\t}\n\n\t\t\tnewVNode._children = [];\n\t\t} else {\n\t\t\tif (oldHtml) dom.innerHTML = '';\n\n\t\t\tdiffChildren(\n\t\t\t\tdom,\n\t\t\t\tisArray(newChildren) ? newChildren : [newChildren],\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\texcessDomChildren\n\t\t\t\t\t? excessDomChildren[0]\n\t\t\t\t\t: oldVNode._children && getDomSibling(oldVNode, 0),\n\t\t\t\tisHydrating,\n\t\t\t\trefQueue\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\ti = 'value';\n\t\t\tif (\n\t\t\t\tinputValue !== 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(inputValue !== dom[i] ||\n\t\t\t\t\t(nodeType === 'progress' && !inputValue) ||\n\t\t\t\t\t// This is only for IE 11 to fix value not being updated.\n\t\t\t\t\t// To avoid a stale select value we need to set the option.value\n\t\t\t\t\t// again, which triggers IE11 to re-evaluate the select value\n\t\t\t\t\t(nodeType == 'option' && inputValue != oldProps[i]))\n\t\t\t) {\n\t\t\t\tsetProperty(dom, i, inputValue, oldProps[i], namespace);\n\t\t\t}\n\n\t\t\ti = 'checked';\n\t\t\tif (checked != UNDEFINED && checked != dom[i]) {\n\t\t\t\tsetProperty(dom, i, checked, oldProps[i], namespace);\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 {Ref & { _unmount?: unknown }} ref\n * @param {any} value\n * @param {VNode} vnode\n */\nexport function applyRef(ref, value, vnode) {\n\ttry {\n\t\tif (typeof ref == 'function') {\n\t\t\tlet hasRefUnmount = typeof ref._unmount == 'function';\n\t\t\tif (hasRefUnmount) {\n\t\t\t\t// @ts-ignore TS doesn't like moving narrowing checks into variables\n\t\t\t\tref._unmount();\n\t\t\t}\n\n\t\t\tif (!hasRefUnmount || value != NULL) {\n\t\t\t\t// Store the cleanup function on the function\n\t\t\t\t// instance object itself to avoid shape\n\t\t\t\t// transitioning vnode\n\t\t\t\tref._unmount = ref(value);\n\t\t\t}\n\t\t} else 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 {VNode} vnode The virtual node to unmount\n * @param {VNode} parentVNode The parent of the VNode that 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) {\n\t\t\tapplyRef(r, NULL, parentVNode);\n\t\t}\n\t}\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]) {\n\t\t\t\tunmount(\n\t\t\t\t\tr[i],\n\t\t\t\t\tparentVNode,\n\t\t\t\t\tskipRemove || typeof vnode.type != 'function'\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (!skipRemove) {\n\t\tremoveNode(vnode._dom);\n\t}\n\n\tvnode._component = vnode._parent = vnode._dom = UNDEFINED;\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, NULL } from './constants';\nimport { commitRoot, diff } from './diff/index';\nimport { createElement, Fragment } from './create-element';\nimport options from './options';\nimport { slice } from './util';\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 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\t// https://github.com/preactjs/preact/issues/3794\n\tif (parentDom == document) {\n\t\tparentDom = document.documentElement;\n\t}\n\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 = ((!isHydrating && replaceNode) || parentDom)._children =\n\t\tcreateElement(Fragment, NULL, [vnode]);\n\n\t// List of effects that need to be called after diffing.\n\tlet commitQueue = [],\n\t\trefQueue = [];\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.namespaceURI,\n\t\t!isHydrating && replaceNode\n\t\t\t? [replaceNode]\n\t\t\t: oldVNode\n\t\t\t\t? NULL\n\t\t\t\t: parentDom.firstChild\n\t\t\t\t\t? slice.call(parentDom.childNodes)\n\t\t\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\t? oldVNode._dom\n\t\t\t\t: parentDom.firstChild,\n\t\tisHydrating,\n\t\trefQueue\n\t);\n\n\t// Flush all queued effects\n\tcommitRoot(commitQueue, vnode, refQueue);\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 update\n */\nexport function hydrate(vnode, parentDom) {\n\trender(vnode, parentDom, hydrate);\n}\n","import { NULL } from '../constants';\n\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 the error that was caught (except\n * for unmounting when this parameter is the highest parent that was being\n * unmounted)\n * @param {import('../internal').VNode} [oldVNode]\n * @param {import('../internal').ErrorInfo} [errorInfo]\n */\nexport function _catchError(error, vnode, oldVNode, errorInfo) {\n\t/** @type {import('../internal').Component} */\n\tlet component,\n\t\t/** @type {import('../internal').ComponentType} */\n\t\tctor,\n\t\t/** @type {boolean} */\n\t\thandled;\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, errorInfo || {});\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","import { assign, slice } from './util';\nimport { createVNode } from './create-element';\nimport { NULL, UNDEFINED } from './constants';\n\n/**\n * Clones the given VNode, optionally adding attributes/props and replacing its\n * 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\n * 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\n\tlet defaultProps;\n\n\tif (vnode.type && vnode.type.defaultProps) {\n\t\tdefaultProps = vnode.type.defaultProps;\n\t}\n\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 if (props[i] === UNDEFINED && defaultProps != UNDEFINED) {\n\t\t\tnormalizedProps[i] = defaultProps[i];\n\t\t} else {\n\t\t\tnormalizedProps[i] = props[i];\n\t\t}\n\t}\n\n\tif (arguments.length > 2) {\n\t\tnormalizedProps.children =\n\t\t\targuments.length > 3 ? slice.call(arguments, 2) : 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"],"names":["slice","options","vnodeId","isValidElement","rerenderQueue","prevDebounce","defer","depthSort","CAPTURE_REGEX","eventClock","eventProxy","eventProxyCapture","i","SVG_NAMESPACE","XHTML_NAMESPACE","NULL","UNDEFINED","undefined","EMPTY_OBJ","EMPTY_ARR","IS_NON_DIMENSIONAL","isArray","Array","assign","obj","props","removeNode","node","parentNode","removeChild","createElement","type","children","key","ref","normalizedProps","arguments","length","call","defaultProps","createVNode","original","vnode","__k","__","__b","__e","__c","constructor","__v","__i","__u","Fragment","BaseComponent","context","this","getDomSibling","childIndex","sibling","updateParentDomPointers","child","base","enqueueRender","c","__d","push","process","__r","debounceRendering","component","newVNode","oldVNode","oldDom","commitQueue","refQueue","l","sort","shift","__P","diff","__n","namespaceURI","commitRoot","diffChildren","parentDom","renderResult","newParentVNode","oldParentVNode","globalContext","namespace","excessDomChildren","isHydrating","childVNode","newDom","firstChildDom","result","shouldPlace","oldChildren","newChildrenLength","constructNewChildrenArray","applyRef","insert","nextSibling","skewedIndex","matchingIndex","oldChildrenLength","remainingOldChildren","skew","String","findMatchingIndex","unmount","parentVNode","insertBefore","nodeType","x","y","matched","setStyle","style","value","setProperty","test","dom","name","oldValue","useCapture","lowerCaseName","o","cssText","replace","toLowerCase","_attached","addEventListener","removeEventListener","e","removeAttribute","setAttribute","createEventProxy","eventHandler","_dispatched","event","tmp","isNew","oldProps","oldState","snapshot","clearProcessingException","newProps","isClassComponent","provider","componentContext","renderHook","count","newType","outer","prototype","render","contextType","__E","doRender","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","some","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","cloneNode","then","MODE_HYDRATE","indexOf","markAsForce","diffElementNodes","diffed","forEach","root","cb","map","newHtml","oldHtml","newChildren","inputValue","checked","localName","document","createTextNode","createElementNS","is","__m","data","childNodes","attributes","__html","innerHTML","content","hasRefUnmount","current","skipRemove","r","componentWillUnmount","replaceNode","documentElement","firstChild","error","errorInfo","ctor","handled","getDerivedStateFromError","setState","componentDidCatch","update","callback","s","forceUpdate","Promise","bind","resolve","setTimeout","a","b","defaultValue","Context","subs","ctx","Set","_props","add","old","delete","Provider","__l","Consumer","contextValue","hydrate","toChildArray","out"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/hooks/LICENSE b/node_modules/preact/hooks/LICENSE deleted file mode 100644 index da5389a..0000000 --- a/node_modules/preact/hooks/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2015-present Jason Miller - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/node_modules/preact/hooks/dist/hooks.js b/node_modules/preact/hooks/dist/hooks.js index 4173b32..b3fd8f4 100644 --- a/node_modules/preact/hooks/dist/hooks.js +++ b/node_modules/preact/hooks/dist/hooks.js @@ -1,2 +1,2 @@ -var n,t,r,u,o=require("preact"),i=0,f=[],c=[],e=o.options.__b,a=o.options.__r,v=o.options.diffed,s=o.options.__c,l=o.options.unmount;function p(n,r){o.options.__h&&o.options.__h(t,n,i||r),i=0;var u=t.__H||(t.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({__V:c}),u.__[n]}function x(n){return i=1,d(P,n)}function d(r,u,o){var i=p(n++,2);if(i.t=r,!i.__c&&(i.__=[o?o(u):P(void 0,u),function(n){var t=i.__N?i.__N[0]:i.__[0],r=i.t(t,n);t!==r&&(i.__N=[r,i.__[1]],i.__c.setState({}))}],i.__c=t,!t.u)){var f=function(n,t,r){if(!i.__c.__H)return!0;var u=i.__c.__H.__.filter(function(n){return n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var o=!1;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(o=!0)}}),!(!o&&i.__c.props===n)&&(!c||c.call(this,n,t,r))};t.u=!0;var c=t.shouldComponentUpdate,e=t.componentWillUpdate;t.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},t.shouldComponentUpdate=f}return i.__N||i.__}function m(r,u){var i=p(n++,4);!o.options.__s&&T(i.__H,u)&&(i.__=r,i.o=u,t.__h.push(i))}function h(t,r){var u=p(n++,7);return T(u.__H,r)?(u.__V=t(),u.o=r,u.__h=t,u.__V):u.__}function y(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(A),n.__H.__h.forEach(F),n.__H.__h=[]}catch(t){n.__H.__h=[],o.options.__e(t,n.__v)}}o.options.__b=function(n){t=null,e&&e(n)},o.options.__r=function(u){a&&a(u),n=0;var o=(t=u.__c).__H;o&&(r===t?(o.__h=[],t.__h=[],o.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=c,n.__N=n.o=void 0})):(o.__h.forEach(A),o.__h.forEach(F),o.__h=[],n=0)),r=t},o.options.diffed=function(n){v&&v(n);var i=n.__c;i&&i.__H&&(i.__H.__h.length&&(1!==f.push(i)&&u===o.options.requestAnimationFrame||((u=o.options.requestAnimationFrame)||q)(y)),i.__H.__.forEach(function(n){n.o&&(n.__H=n.o),n.__V!==c&&(n.__=n.__V),n.o=void 0,n.__V=c})),r=t=null},o.options.__c=function(n,t){t.some(function(n){try{n.__h.forEach(A),n.__h=n.__h.filter(function(n){return!n.__||F(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],o.options.__e(r,n.__v)}}),s&&s(n,t)},o.options.unmount=function(n){l&&l(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{A(n)}catch(n){t=n}}),r.__H=void 0,t&&o.options.__e(t,r.__v))};var _="function"==typeof requestAnimationFrame;function q(n){var t,r=function(){clearTimeout(u),_&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);_&&(t=requestAnimationFrame(r))}function A(n){var r=t,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),t=r}function F(n){var r=t;n.__c=n.__(),t=r}function T(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function P(n,t){return"function"==typeof t?t(n):t}exports.useCallback=function(n,t){return i=8,h(function(){return n},t)},exports.useContext=function(r){var u=t.context[r.__c],o=p(n++,9);return o.c=r,u?(null==o.__&&(o.__=!0,u.sub(t)),u.props.value):r.__},exports.useDebugValue=function(n,t){o.options.useDebugValue&&o.options.useDebugValue(t?t(n):n)},exports.useEffect=function(r,u){var i=p(n++,3);!o.options.__s&&T(i.__H,u)&&(i.__=r,i.o=u,t.__H.__h.push(i))},exports.useErrorBoundary=function(r){var u=p(n++,10),o=x();return u.__=r,t.componentDidCatch||(t.componentDidCatch=function(n,t){u.__&&u.__(n,t),o[1](n)}),[o[0],function(){o[1](void 0)}]},exports.useId=function(){var r=p(n++,11);if(!r.__){for(var u=t.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var o=u.__m||(u.__m=[0,0]);r.__="P"+o[0]+"-"+o[1]++}return r.__},exports.useImperativeHandle=function(n,t,r){i=6,m(function(){return"function"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))},exports.useLayoutEffect=m,exports.useMemo=h,exports.useReducer=d,exports.useRef=function(n){return i=5,h(function(){return{current:n}},[])},exports.useState=x; +var n,t,r,u,o=require("preact"),i=0,f=[],c=o.options,e=c.__b,a=c.__r,v=c.diffed,s=c.__c,l=c.unmount,p=c.__;function x(n,r){c.__h&&c.__h(t,n,i||r),i=0;var u=t.__H||(t.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function m(n){return i=1,d(b,n)}function d(r,u,o){var i=x(n++,2);if(i.t=r,!i.__c&&(i.__=[o?o(u):b(void 0,u),function(n){var t=i.__N?i.__N[0]:i.__[0],r=i.t(t,n);t!==r&&(i.__N=[r,i.__[1]],i.__c.setState({}))}],i.__c=t,!t.__f)){var f=function(n,t,r){if(!i.__c.__H)return!0;var u=i.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var o=i.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(o=!0)}}),c&&c.call(this,n,t,r)||o};t.__f=!0;var c=t.shouldComponentUpdate,e=t.componentWillUpdate;t.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},t.shouldComponentUpdate=f}return i.__N||i.__}function h(r,u){var o=x(n++,4);!c.__s&&P(o.__H,u)&&(o.__=r,o.u=u,t.__h.push(o))}function y(t,r){var u=x(n++,7);return P(u.__H,r)&&(u.__=t(),u.__H=r,u.__h=t),u.__}function _(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(F),n.__H.__h.forEach(T),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){t=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),p&&p(n,t)},c.__r=function(u){a&&a(u),n=0;var o=(t=u.__c).__H;o&&(r===t?(o.__h=[],t.__h=[],o.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(o.__h.forEach(F),o.__h.forEach(T),o.__h=[],n=0)),r=t},c.diffed=function(n){v&&v(n);var o=n.__c;o&&o.__H&&(o.__H.__h.length&&(1!==f.push(o)&&u===c.requestAnimationFrame||((u=c.requestAnimationFrame)||A)(_)),o.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),r=t=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(F),n.__h=n.__h.filter(function(n){return!n.__||T(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),s&&s(n,t)},c.unmount=function(n){l&&l(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{F(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var q="function"==typeof requestAnimationFrame;function A(n){var t,r=function(){clearTimeout(u),q&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,35);q&&(t=requestAnimationFrame(r))}function F(n){var r=t,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),t=r}function T(n){var r=t;n.__c=n.__(),t=r}function P(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function b(n,t){return"function"==typeof t?t(n):t}exports.useCallback=function(n,t){return i=8,y(function(){return n},t)},exports.useContext=function(r){var u=t.context[r.__c],o=x(n++,9);return o.c=r,u?(null==o.__&&(o.__=!0,u.sub(t)),u.props.value):r.__},exports.useDebugValue=function(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)},exports.useEffect=function(r,u){var o=x(n++,3);!c.__s&&P(o.__H,u)&&(o.__=r,o.u=u,t.__H.__h.push(o))},exports.useErrorBoundary=function(r){var u=x(n++,10),o=m();return u.__=r,t.componentDidCatch||(t.componentDidCatch=function(n,t){u.__&&u.__(n,t),o[1](n)}),[o[0],function(){o[1](void 0)}]},exports.useId=function(){var r=x(n++,11);if(!r.__){for(var u=t.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var o=u.__m||(u.__m=[0,0]);r.__="P"+o[0]+"-"+o[1]++}return r.__},exports.useImperativeHandle=function(n,t,r){i=6,h(function(){if("function"==typeof n){var r=n(t());return function(){n(null),r&&"function"==typeof r&&r()}}if(n)return n.current=t(),function(){return n.current=null}},null==r?r:r.concat(n))},exports.useLayoutEffect=h,exports.useMemo=y,exports.useReducer=d,exports.useRef=function(n){return i=5,y(function(){return{current:n}},[])},exports.useState=m; //# sourceMappingURL=hooks.js.map diff --git a/node_modules/preact/hooks/dist/hooks.js.map b/node_modules/preact/hooks/dist/hooks.js.map index 5ae15d3..e3434df 100644 --- a/node_modules/preact/hooks/dist/hooks.js.map +++ b/node_modules/preact/hooks/dist/hooks.js.map @@ -1 +1 @@ -{"version":3,"file":"hooks.js","sources":["../src/index.js"],"sourcesContent":["import { options } from 'preact';\n\n/** @type {number} */\nlet currentIndex;\n\n/** @type {import('./internal').Component} */\nlet currentComponent;\n\n/** @type {import('./internal').Component} */\nlet previousComponent;\n\n/** @type {number} */\nlet currentHook = 0;\n\n/** @type {Array} */\nlet afterPaintEffects = [];\n\nlet EMPTY = [];\n\nlet oldBeforeDiff = options._diff;\nlet oldBeforeRender = options._render;\nlet oldAfterDiff = options.diffed;\nlet oldCommit = options._commit;\nlet oldBeforeUnmount = options.unmount;\n\nconst RAF_TIMEOUT = 100;\nlet prevRaf;\n\noptions._diff = vnode => {\n\tcurrentComponent = null;\n\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n};\n\noptions._render = vnode => {\n\tif (oldBeforeRender) oldBeforeRender(vnode);\n\n\tcurrentComponent = vnode._component;\n\tcurrentIndex = 0;\n\n\tconst hooks = currentComponent.__hooks;\n\tif (hooks) {\n\t\tif (previousComponent === currentComponent) {\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentComponent._renderCallbacks = [];\n\t\t\thooks._list.forEach(hookItem => {\n\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t}\n\t\t\t\thookItem._pendingValue = EMPTY;\n\t\t\t\thookItem._nextValue = hookItem._pendingArgs = undefined;\n\t\t\t});\n\t\t} else {\n\t\t\thooks._pendingEffects.forEach(invokeCleanup);\n\t\t\thooks._pendingEffects.forEach(invokeEffect);\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentIndex = 0;\n\t\t}\n\t}\n\tpreviousComponent = currentComponent;\n};\n\noptions.diffed = vnode => {\n\tif (oldAfterDiff) oldAfterDiff(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tif (c.__hooks._pendingEffects.length) afterPaint(afterPaintEffects.push(c));\n\t\tc.__hooks._list.forEach(hookItem => {\n\t\t\tif (hookItem._pendingArgs) {\n\t\t\t\thookItem._args = hookItem._pendingArgs;\n\t\t\t}\n\t\t\tif (hookItem._pendingValue !== EMPTY) {\n\t\t\t\thookItem._value = hookItem._pendingValue;\n\t\t\t}\n\t\t\thookItem._pendingArgs = undefined;\n\t\t\thookItem._pendingValue = EMPTY;\n\t\t});\n\t}\n\tpreviousComponent = currentComponent = null;\n};\n\noptions._commit = (vnode, commitQueue) => {\n\tcommitQueue.some(component => {\n\t\ttry {\n\t\t\tcomponent._renderCallbacks.forEach(invokeCleanup);\n\t\t\tcomponent._renderCallbacks = component._renderCallbacks.filter(cb =>\n\t\t\t\tcb._value ? invokeEffect(cb) : true\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tcommitQueue.some(c => {\n\t\t\t\tif (c._renderCallbacks) c._renderCallbacks = [];\n\t\t\t});\n\t\t\tcommitQueue = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t});\n\n\tif (oldCommit) oldCommit(vnode, commitQueue);\n};\n\noptions.unmount = vnode => {\n\tif (oldBeforeUnmount) oldBeforeUnmount(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tlet hasErrored;\n\t\tc.__hooks._list.forEach(s => {\n\t\t\ttry {\n\t\t\t\tinvokeCleanup(s);\n\t\t\t} catch (e) {\n\t\t\t\thasErrored = e;\n\t\t\t}\n\t\t});\n\t\tc.__hooks = undefined;\n\t\tif (hasErrored) options._catchError(hasErrored, c._vnode);\n\t}\n};\n\n/**\n * Get a hook's state from the currentComponent\n * @param {number} index The index of the hook to get\n * @param {number} type The index of the hook to get\n * @returns {any}\n */\nfunction getHookState(index, type) {\n\tif (options._hook) {\n\t\toptions._hook(currentComponent, index, currentHook || type);\n\t}\n\tcurrentHook = 0;\n\n\t// Largely inspired by:\n\t// * https://github.com/michael-klein/funcy.js/blob/f6be73468e6ec46b0ff5aa3cc4c9baf72a29025a/src/hooks/core_hooks.mjs\n\t// * https://github.com/michael-klein/funcy.js/blob/650beaa58c43c33a74820a3c98b3c7079cf2e333/src/renderer.mjs\n\t// Other implementations to look at:\n\t// * https://codesandbox.io/s/mnox05qp8\n\tconst hooks =\n\t\tcurrentComponent.__hooks ||\n\t\t(currentComponent.__hooks = {\n\t\t\t_list: [],\n\t\t\t_pendingEffects: []\n\t\t});\n\n\tif (index >= hooks._list.length) {\n\t\thooks._list.push({ _pendingValue: EMPTY });\n\t}\n\treturn hooks._list[index];\n}\n\n/**\n * @param {import('./index').StateUpdater} [initialState]\n */\nexport function useState(initialState) {\n\tcurrentHook = 1;\n\treturn useReducer(invokeOrReturn, initialState);\n}\n\n/**\n * @param {import('./index').Reducer} reducer\n * @param {import('./index').StateUpdater} initialState\n * @param {(initialState: any) => void} [init]\n * @returns {[ any, (state: any) => void ]}\n */\nexport function useReducer(reducer, initialState, init) {\n\t/** @type {import('./internal').ReducerHookState} */\n\tconst hookState = getHookState(currentIndex++, 2);\n\thookState._reducer = reducer;\n\tif (!hookState._component) {\n\t\thookState._value = [\n\t\t\t!init ? invokeOrReturn(undefined, initialState) : init(initialState),\n\n\t\t\taction => {\n\t\t\t\tconst currentValue = hookState._nextValue\n\t\t\t\t\t? hookState._nextValue[0]\n\t\t\t\t\t: hookState._value[0];\n\t\t\t\tconst nextValue = hookState._reducer(currentValue, action);\n\n\t\t\t\tif (currentValue !== nextValue) {\n\t\t\t\t\thookState._nextValue = [nextValue, hookState._value[1]];\n\t\t\t\t\thookState._component.setState({});\n\t\t\t\t}\n\t\t\t}\n\t\t];\n\n\t\thookState._component = currentComponent;\n\n\t\tif (!currentComponent._hasScuFromHooks) {\n\t\t\tcurrentComponent._hasScuFromHooks = true;\n\t\t\tlet prevScu = currentComponent.shouldComponentUpdate;\n\t\t\tconst prevCWU = currentComponent.componentWillUpdate;\n\n\t\t\t// If we're dealing with a forced update `shouldComponentUpdate` will\n\t\t\t// not be called. But we use that to update the hook values, so we\n\t\t\t// need to call it.\n\t\t\tcurrentComponent.componentWillUpdate = function (p, s, c) {\n\t\t\t\tif (this._force) {\n\t\t\t\t\tlet tmp = prevScu;\n\t\t\t\t\t// Clear to avoid other sCU hooks from being called\n\t\t\t\t\tprevScu = undefined;\n\t\t\t\t\tupdateHookState(p, s, c);\n\t\t\t\t\tprevScu = tmp;\n\t\t\t\t}\n\n\t\t\t\tif (prevCWU) prevCWU.call(this, p, s, c);\n\t\t\t};\n\n\t\t\t// This SCU has the purpose of bailing out after repeated updates\n\t\t\t// to stateful hooks.\n\t\t\t// we store the next value in _nextValue[0] and keep doing that for all\n\t\t\t// state setters, if we have next states and\n\t\t\t// all next states within a component end up being equal to their original state\n\t\t\t// we are safe to bail out for this specific component.\n\t\t\t/**\n\t\t\t *\n\t\t\t * @type {import('./internal').Component[\"shouldComponentUpdate\"]}\n\t\t\t */\n\t\t\t// @ts-ignore - We don't use TS to downtranspile\n\t\t\t// eslint-disable-next-line no-inner-declarations\n\t\t\tfunction updateHookState(p, s, c) {\n\t\t\t\tif (!hookState._component.__hooks) return true;\n\n\t\t\t\tconst stateHooks = hookState._component.__hooks._list.filter(\n\t\t\t\t\tx => x._component\n\t\t\t\t);\n\t\t\t\tconst allHooksEmpty = stateHooks.every(x => !x._nextValue);\n\t\t\t\t// When we have no updated hooks in the component we invoke the previous SCU or\n\t\t\t\t// traverse the VDOM tree further.\n\t\t\t\tif (allHooksEmpty) {\n\t\t\t\t\treturn prevScu ? prevScu.call(this, p, s, c) : true;\n\t\t\t\t}\n\n\t\t\t\t// We check whether we have components with a nextValue set that\n\t\t\t\t// have values that aren't equal to one another this pushes\n\t\t\t\t// us to update further down the tree\n\t\t\t\tlet shouldUpdate = false;\n\t\t\t\tstateHooks.forEach(hookItem => {\n\t\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\t\tconst currentValue = hookItem._value[0];\n\t\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t\t\thookItem._nextValue = undefined;\n\t\t\t\t\t\tif (currentValue !== hookItem._value[0]) shouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\treturn shouldUpdate || hookState._component.props !== p\n\t\t\t\t\t? prevScu\n\t\t\t\t\t\t? prevScu.call(this, p, s, c)\n\t\t\t\t\t\t: true\n\t\t\t\t\t: false;\n\t\t\t}\n\n\t\t\tcurrentComponent.shouldComponentUpdate = updateHookState;\n\t\t}\n\t}\n\n\treturn hookState._nextValue || hookState._value;\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 3);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent.__hooks._pendingEffects.push(state);\n\t}\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useLayoutEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 4);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent._renderCallbacks.push(state);\n\t}\n}\n\nexport function useRef(initialValue) {\n\tcurrentHook = 5;\n\treturn useMemo(() => ({ current: initialValue }), []);\n}\n\n/**\n * @param {object} ref\n * @param {() => object} createHandle\n * @param {any[]} args\n */\nexport function useImperativeHandle(ref, createHandle, args) {\n\tcurrentHook = 6;\n\tuseLayoutEffect(\n\t\t() => {\n\t\t\tif (typeof ref == 'function') {\n\t\t\t\tref(createHandle());\n\t\t\t\treturn () => ref(null);\n\t\t\t} else if (ref) {\n\t\t\t\tref.current = createHandle();\n\t\t\t\treturn () => (ref.current = null);\n\t\t\t}\n\t\t},\n\t\targs == null ? args : args.concat(ref)\n\t);\n}\n\n/**\n * @param {() => any} factory\n * @param {any[]} args\n */\nexport function useMemo(factory, args) {\n\t/** @type {import('./internal').MemoHookState} */\n\tconst state = getHookState(currentIndex++, 7);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._pendingValue = factory();\n\t\tstate._pendingArgs = args;\n\t\tstate._factory = factory;\n\t\treturn state._pendingValue;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * @param {() => void} callback\n * @param {any[]} args\n */\nexport function useCallback(callback, args) {\n\tcurrentHook = 8;\n\treturn useMemo(() => callback, args);\n}\n\n/**\n * @param {import('./internal').PreactContext} context\n */\nexport function useContext(context) {\n\tconst provider = currentComponent.context[context._id];\n\t// We could skip this call here, but than we'd not call\n\t// `options._hook`. We need to do that in order to make\n\t// the devtools aware of this hook.\n\t/** @type {import('./internal').ContextHookState} */\n\tconst state = getHookState(currentIndex++, 9);\n\t// The devtools needs access to the context object to\n\t// be able to pull of the default value when no provider\n\t// is present in the tree.\n\tstate._context = context;\n\tif (!provider) return context._defaultValue;\n\t// This is probably not safe to convert to \"!\"\n\tif (state._value == null) {\n\t\tstate._value = true;\n\t\tprovider.sub(currentComponent);\n\t}\n\treturn provider.props.value;\n}\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, cb?: (value: T) => string | number) => void}\n */\nexport function useDebugValue(value, formatter) {\n\tif (options.useDebugValue) {\n\t\toptions.useDebugValue(formatter ? formatter(value) : value);\n\t}\n}\n\n/**\n * @param {(error: any, errorInfo: import('preact').ErrorInfo) => void} cb\n */\nexport function useErrorBoundary(cb) {\n\t/** @type {import('./internal').ErrorBoundaryHookState} */\n\tconst state = getHookState(currentIndex++, 10);\n\tconst errState = useState();\n\tstate._value = cb;\n\tif (!currentComponent.componentDidCatch) {\n\t\tcurrentComponent.componentDidCatch = (err, errorInfo) => {\n\t\t\tif (state._value) state._value(err, errorInfo);\n\t\t\terrState[1](err);\n\t\t};\n\t}\n\treturn [\n\t\terrState[0],\n\t\t() => {\n\t\t\terrState[1](undefined);\n\t\t}\n\t];\n}\n\nexport function useId() {\n\tconst state = getHookState(currentIndex++, 11);\n\tif (!state._value) {\n\t\t// Grab either the root node or the nearest async boundary node.\n\t\t/** @type {import('./internal.d').VNode} */\n\t\tlet root = currentComponent._vnode;\n\t\twhile (root !== null && !root._mask && root._parent !== null) {\n\t\t\troot = root._parent;\n\t\t}\n\n\t\tlet mask = root._mask || (root._mask = [0, 0]);\n\t\tstate._value = 'P' + mask[0] + '-' + mask[1]++;\n\t}\n\n\treturn state._value;\n}\n/**\n * After paint effects consumer.\n */\nfunction flushAfterPaintEffects() {\n\tlet component;\n\twhile ((component = afterPaintEffects.shift())) {\n\t\tif (!component._parentDom || !component.__hooks) continue;\n\t\ttry {\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t} catch (e) {\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t}\n}\n\nlet HAS_RAF = typeof requestAnimationFrame == 'function';\n\n/**\n * Schedule a callback to be invoked after the browser has a chance to paint a new frame.\n * Do this by combining requestAnimationFrame (rAF) + setTimeout to invoke a callback after\n * the next browser frame.\n *\n * Also, schedule a timeout in parallel to the the rAF to ensure the callback is invoked\n * even if RAF doesn't fire (for example if the browser tab is not visible)\n *\n * @param {() => void} callback\n */\nfunction afterNextFrame(callback) {\n\tconst done = () => {\n\t\tclearTimeout(timeout);\n\t\tif (HAS_RAF) cancelAnimationFrame(raf);\n\t\tsetTimeout(callback);\n\t};\n\tconst timeout = setTimeout(done, RAF_TIMEOUT);\n\n\tlet raf;\n\tif (HAS_RAF) {\n\t\traf = requestAnimationFrame(done);\n\t}\n}\n\n// Note: if someone used options.debounceRendering = requestAnimationFrame,\n// then effects will ALWAYS run on the NEXT frame instead of the current one, incurring a ~16ms delay.\n// Perhaps this is not such a big deal.\n/**\n * Schedule afterPaintEffects flush after the browser paints\n * @param {number} newQueueLength\n */\nfunction afterPaint(newQueueLength) {\n\tif (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) {\n\t\tprevRaf = options.requestAnimationFrame;\n\t\t(prevRaf || afterNextFrame)(flushAfterPaintEffects);\n\t}\n}\n\n/**\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeCleanup(hook) {\n\t// A hook cleanup can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\tlet cleanup = hook._cleanup;\n\tif (typeof cleanup == 'function') {\n\t\thook._cleanup = undefined;\n\t\tcleanup();\n\t}\n\n\tcurrentComponent = comp;\n}\n\n/**\n * Invoke a Hook's effect\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeEffect(hook) {\n\t// A hook call can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\thook._cleanup = hook._value();\n\tcurrentComponent = comp;\n}\n\n/**\n * @param {any[]} oldArgs\n * @param {any[]} newArgs\n */\nfunction argsChanged(oldArgs, newArgs) {\n\treturn (\n\t\t!oldArgs ||\n\t\toldArgs.length !== newArgs.length ||\n\t\tnewArgs.some((arg, index) => arg !== oldArgs[index])\n\t);\n}\n\nfunction invokeOrReturn(arg, f) {\n\treturn typeof f == 'function' ? f(arg) : f;\n}\n"],"names":["currentIndex","currentComponent","previousComponent","prevRaf","currentHook","afterPaintEffects","EMPTY","oldBeforeDiff","options","__b","oldBeforeRender","__r","oldAfterDiff","diffed","oldCommit","__c","oldBeforeUnmount","unmount","getHookState","index","type","__h","hooks","__H","__","length","push","__V","useState","initialState","useReducer","invokeOrReturn","reducer","init","hookState","_reducer","undefined","action","currentValue","__N","nextValue","setState","_hasScuFromHooks","updateHookState","p","s","c","stateHooks","filter","x","every","prevScu","call","this","shouldUpdate","forEach","hookItem","props","shouldComponentUpdate","prevCWU","componentWillUpdate","__e","tmp","useLayoutEffect","callback","args","state","argsChanged","_pendingArgs","useMemo","factory","flushAfterPaintEffects","component","shift","__P","invokeCleanup","invokeEffect","e","__v","vnode","requestAnimationFrame","afterNextFrame","commitQueue","some","cb","hasErrored","HAS_RAF","raf","done","clearTimeout","timeout","cancelAnimationFrame","setTimeout","hook","comp","cleanup","oldArgs","newArgs","arg","f","context","provider","sub","value","useDebugValue","formatter","useEffect","__s","errState","componentDidCatch","err","errorInfo","root","__m","mask","ref","createHandle","current","concat","useRef","initialValue"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"hooks.js","sources":["../src/index.js"],"sourcesContent":["import { options as _options } from 'preact';\n\n/** @type {number} */\nlet currentIndex;\n\n/** @type {import('./internal').Component} */\nlet currentComponent;\n\n/** @type {import('./internal').Component} */\nlet previousComponent;\n\n/** @type {number} */\nlet currentHook = 0;\n\n/** @type {Array} */\nlet afterPaintEffects = [];\n\n// Cast to use internal Options type\nconst options = /** @type {import('./internal').Options} */ (_options);\n\nlet oldBeforeDiff = options._diff;\nlet oldBeforeRender = options._render;\nlet oldAfterDiff = options.diffed;\nlet oldCommit = options._commit;\nlet oldBeforeUnmount = options.unmount;\nlet oldRoot = options._root;\n\n// We take the minimum timeout for requestAnimationFrame to ensure that\n// the callback is invoked after the next frame. 35ms is based on a 30hz\n// refresh rate, which is the minimum rate for a smooth user experience.\nconst RAF_TIMEOUT = 35;\nlet prevRaf;\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions._diff = vnode => {\n\tcurrentComponent = null;\n\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n};\n\noptions._root = (vnode, parentDom) => {\n\tif (vnode && parentDom._children && parentDom._children._mask) {\n\t\tvnode._mask = parentDom._children._mask;\n\t}\n\n\tif (oldRoot) oldRoot(vnode, parentDom);\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions._render = vnode => {\n\tif (oldBeforeRender) oldBeforeRender(vnode);\n\n\tcurrentComponent = vnode._component;\n\tcurrentIndex = 0;\n\n\tconst hooks = currentComponent.__hooks;\n\tif (hooks) {\n\t\tif (previousComponent === currentComponent) {\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentComponent._renderCallbacks = [];\n\t\t\thooks._list.forEach(hookItem => {\n\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t}\n\t\t\t\thookItem._pendingArgs = hookItem._nextValue = undefined;\n\t\t\t});\n\t\t} else {\n\t\t\thooks._pendingEffects.forEach(invokeCleanup);\n\t\t\thooks._pendingEffects.forEach(invokeEffect);\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentIndex = 0;\n\t\t}\n\t}\n\tpreviousComponent = currentComponent;\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.diffed = vnode => {\n\tif (oldAfterDiff) oldAfterDiff(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tif (c.__hooks._pendingEffects.length) afterPaint(afterPaintEffects.push(c));\n\t\tc.__hooks._list.forEach(hookItem => {\n\t\t\tif (hookItem._pendingArgs) {\n\t\t\t\thookItem._args = hookItem._pendingArgs;\n\t\t\t}\n\t\t\thookItem._pendingArgs = undefined;\n\t\t});\n\t}\n\tpreviousComponent = currentComponent = null;\n};\n\n// TODO: Improve typing of commitQueue parameter\n/** @type {(vnode: import('./internal').VNode, commitQueue: any) => void} */\noptions._commit = (vnode, commitQueue) => {\n\tcommitQueue.some(component => {\n\t\ttry {\n\t\t\tcomponent._renderCallbacks.forEach(invokeCleanup);\n\t\t\tcomponent._renderCallbacks = component._renderCallbacks.filter(cb =>\n\t\t\t\tcb._value ? invokeEffect(cb) : true\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tcommitQueue.some(c => {\n\t\t\t\tif (c._renderCallbacks) c._renderCallbacks = [];\n\t\t\t});\n\t\t\tcommitQueue = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t});\n\n\tif (oldCommit) oldCommit(vnode, commitQueue);\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.unmount = vnode => {\n\tif (oldBeforeUnmount) oldBeforeUnmount(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tlet hasErrored;\n\t\tc.__hooks._list.forEach(s => {\n\t\t\ttry {\n\t\t\t\tinvokeCleanup(s);\n\t\t\t} catch (e) {\n\t\t\t\thasErrored = e;\n\t\t\t}\n\t\t});\n\t\tc.__hooks = undefined;\n\t\tif (hasErrored) options._catchError(hasErrored, c._vnode);\n\t}\n};\n\n/**\n * Get a hook's state from the currentComponent\n * @param {number} index The index of the hook to get\n * @param {number} type The index of the hook to get\n * @returns {any}\n */\nfunction getHookState(index, type) {\n\tif (options._hook) {\n\t\toptions._hook(currentComponent, index, currentHook || type);\n\t}\n\tcurrentHook = 0;\n\n\t// Largely inspired by:\n\t// * https://github.com/michael-klein/funcy.js/blob/f6be73468e6ec46b0ff5aa3cc4c9baf72a29025a/src/hooks/core_hooks.mjs\n\t// * https://github.com/michael-klein/funcy.js/blob/650beaa58c43c33a74820a3c98b3c7079cf2e333/src/renderer.mjs\n\t// Other implementations to look at:\n\t// * https://codesandbox.io/s/mnox05qp8\n\tconst hooks =\n\t\tcurrentComponent.__hooks ||\n\t\t(currentComponent.__hooks = {\n\t\t\t_list: [],\n\t\t\t_pendingEffects: []\n\t\t});\n\n\tif (index >= hooks._list.length) {\n\t\thooks._list.push({});\n\t}\n\n\treturn hooks._list[index];\n}\n\n/**\n * @template {unknown} S\n * @param {import('./index').Dispatch>} [initialState]\n * @returns {[S, (state: S) => void]}\n */\nexport function useState(initialState) {\n\tcurrentHook = 1;\n\treturn useReducer(invokeOrReturn, initialState);\n}\n\n/**\n * @template {unknown} S\n * @template {unknown} A\n * @param {import('./index').Reducer} reducer\n * @param {import('./index').Dispatch>} initialState\n * @param {(initialState: any) => void} [init]\n * @returns {[ S, (state: S) => void ]}\n */\nexport function useReducer(reducer, initialState, init) {\n\t/** @type {import('./internal').ReducerHookState} */\n\tconst hookState = getHookState(currentIndex++, 2);\n\thookState._reducer = reducer;\n\tif (!hookState._component) {\n\t\thookState._value = [\n\t\t\t!init ? invokeOrReturn(undefined, initialState) : init(initialState),\n\n\t\t\taction => {\n\t\t\t\tconst currentValue = hookState._nextValue\n\t\t\t\t\t? hookState._nextValue[0]\n\t\t\t\t\t: hookState._value[0];\n\t\t\t\tconst nextValue = hookState._reducer(currentValue, action);\n\n\t\t\t\tif (currentValue !== nextValue) {\n\t\t\t\t\thookState._nextValue = [nextValue, hookState._value[1]];\n\t\t\t\t\thookState._component.setState({});\n\t\t\t\t}\n\t\t\t}\n\t\t];\n\n\t\thookState._component = currentComponent;\n\n\t\tif (!currentComponent._hasScuFromHooks) {\n\t\t\tcurrentComponent._hasScuFromHooks = true;\n\t\t\tlet prevScu = currentComponent.shouldComponentUpdate;\n\t\t\tconst prevCWU = currentComponent.componentWillUpdate;\n\n\t\t\t// If we're dealing with a forced update `shouldComponentUpdate` will\n\t\t\t// not be called. But we use that to update the hook values, so we\n\t\t\t// need to call it.\n\t\t\tcurrentComponent.componentWillUpdate = function (p, s, c) {\n\t\t\t\tif (this._force) {\n\t\t\t\t\tlet tmp = prevScu;\n\t\t\t\t\t// Clear to avoid other sCU hooks from being called\n\t\t\t\t\tprevScu = undefined;\n\t\t\t\t\tupdateHookState(p, s, c);\n\t\t\t\t\tprevScu = tmp;\n\t\t\t\t}\n\n\t\t\t\tif (prevCWU) prevCWU.call(this, p, s, c);\n\t\t\t};\n\n\t\t\t// This SCU has the purpose of bailing out after repeated updates\n\t\t\t// to stateful hooks.\n\t\t\t// we store the next value in _nextValue[0] and keep doing that for all\n\t\t\t// state setters, if we have next states and\n\t\t\t// all next states within a component end up being equal to their original state\n\t\t\t// we are safe to bail out for this specific component.\n\t\t\t/**\n\t\t\t *\n\t\t\t * @type {import('./internal').Component[\"shouldComponentUpdate\"]}\n\t\t\t */\n\t\t\t// @ts-ignore - We don't use TS to downtranspile\n\t\t\t// eslint-disable-next-line no-inner-declarations\n\t\t\tfunction updateHookState(p, s, c) {\n\t\t\t\tif (!hookState._component.__hooks) return true;\n\n\t\t\t\t/** @type {(x: import('./internal').HookState) => x is import('./internal').ReducerHookState} */\n\t\t\t\tconst isStateHook = x => !!x._component;\n\t\t\t\tconst stateHooks =\n\t\t\t\t\thookState._component.__hooks._list.filter(isStateHook);\n\n\t\t\t\tconst allHooksEmpty = stateHooks.every(x => !x._nextValue);\n\t\t\t\t// When we have no updated hooks in the component we invoke the previous SCU or\n\t\t\t\t// traverse the VDOM tree further.\n\t\t\t\tif (allHooksEmpty) {\n\t\t\t\t\treturn prevScu ? prevScu.call(this, p, s, c) : true;\n\t\t\t\t}\n\n\t\t\t\t// We check whether we have components with a nextValue set that\n\t\t\t\t// have values that aren't equal to one another this pushes\n\t\t\t\t// us to update further down the tree\n\t\t\t\tlet shouldUpdate = hookState._component.props !== p;\n\t\t\t\tstateHooks.forEach(hookItem => {\n\t\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\t\tconst currentValue = hookItem._value[0];\n\t\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t\t\thookItem._nextValue = undefined;\n\t\t\t\t\t\tif (currentValue !== hookItem._value[0]) shouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\treturn prevScu\n\t\t\t\t\t? prevScu.call(this, p, s, c) || shouldUpdate\n\t\t\t\t\t: shouldUpdate;\n\t\t\t}\n\n\t\t\tcurrentComponent.shouldComponentUpdate = updateHookState;\n\t\t}\n\t}\n\n\treturn hookState._nextValue || hookState._value;\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 3);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent.__hooks._pendingEffects.push(state);\n\t}\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useLayoutEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 4);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent._renderCallbacks.push(state);\n\t}\n}\n\n/** @type {(initialValue: unknown) => unknown} */\nexport function useRef(initialValue) {\n\tcurrentHook = 5;\n\treturn useMemo(() => ({ current: initialValue }), []);\n}\n\n/**\n * @param {object} ref\n * @param {() => object} createHandle\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useImperativeHandle(ref, createHandle, args) {\n\tcurrentHook = 6;\n\tuseLayoutEffect(\n\t\t() => {\n\t\t\tif (typeof ref == 'function') {\n\t\t\t\tconst result = ref(createHandle());\n\t\t\t\treturn () => {\n\t\t\t\t\tref(null);\n\t\t\t\t\tif (result && typeof result == 'function') result();\n\t\t\t\t};\n\t\t\t} else if (ref) {\n\t\t\t\tref.current = createHandle();\n\t\t\t\treturn () => (ref.current = null);\n\t\t\t}\n\t\t},\n\t\targs == null ? args : args.concat(ref)\n\t);\n}\n\n/**\n * @template {unknown} T\n * @param {() => T} factory\n * @param {unknown[]} args\n * @returns {T}\n */\nexport function useMemo(factory, args) {\n\t/** @type {import('./internal').MemoHookState} */\n\tconst state = getHookState(currentIndex++, 7);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._value = factory();\n\t\tstate._args = args;\n\t\tstate._factory = factory;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * @param {() => void} callback\n * @param {unknown[]} args\n * @returns {() => void}\n */\nexport function useCallback(callback, args) {\n\tcurrentHook = 8;\n\treturn useMemo(() => callback, args);\n}\n\n/**\n * @param {import('./internal').PreactContext} context\n */\nexport function useContext(context) {\n\tconst provider = currentComponent.context[context._id];\n\t// We could skip this call here, but than we'd not call\n\t// `options._hook`. We need to do that in order to make\n\t// the devtools aware of this hook.\n\t/** @type {import('./internal').ContextHookState} */\n\tconst state = getHookState(currentIndex++, 9);\n\t// The devtools needs access to the context object to\n\t// be able to pull of the default value when no provider\n\t// is present in the tree.\n\tstate._context = context;\n\tif (!provider) return context._defaultValue;\n\t// This is probably not safe to convert to \"!\"\n\tif (state._value == null) {\n\t\tstate._value = true;\n\t\tprovider.sub(currentComponent);\n\t}\n\treturn provider.props.value;\n}\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, cb?: (value: T) => string | number) => void}\n */\nexport function useDebugValue(value, formatter) {\n\tif (options.useDebugValue) {\n\t\toptions.useDebugValue(\n\t\t\tformatter ? formatter(value) : /** @type {any}*/ (value)\n\t\t);\n\t}\n}\n\n/**\n * @param {(error: unknown, errorInfo: import('preact').ErrorInfo) => void} cb\n * @returns {[unknown, () => void]}\n */\nexport function useErrorBoundary(cb) {\n\t/** @type {import('./internal').ErrorBoundaryHookState} */\n\tconst state = getHookState(currentIndex++, 10);\n\tconst errState = useState();\n\tstate._value = cb;\n\tif (!currentComponent.componentDidCatch) {\n\t\tcurrentComponent.componentDidCatch = (err, errorInfo) => {\n\t\t\tif (state._value) state._value(err, errorInfo);\n\t\t\terrState[1](err);\n\t\t};\n\t}\n\treturn [\n\t\terrState[0],\n\t\t() => {\n\t\t\terrState[1](undefined);\n\t\t}\n\t];\n}\n\n/** @type {() => string} */\nexport function useId() {\n\t/** @type {import('./internal').IdHookState} */\n\tconst state = getHookState(currentIndex++, 11);\n\tif (!state._value) {\n\t\t// Grab either the root node or the nearest async boundary node.\n\t\t/** @type {import('./internal').VNode} */\n\t\tlet root = currentComponent._vnode;\n\t\twhile (root !== null && !root._mask && root._parent !== null) {\n\t\t\troot = root._parent;\n\t\t}\n\n\t\tlet mask = root._mask || (root._mask = [0, 0]);\n\t\tstate._value = 'P' + mask[0] + '-' + mask[1]++;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * After paint effects consumer.\n */\nfunction flushAfterPaintEffects() {\n\tlet component;\n\twhile ((component = afterPaintEffects.shift())) {\n\t\tif (!component._parentDom || !component.__hooks) continue;\n\t\ttry {\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t} catch (e) {\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t}\n}\n\nlet HAS_RAF = typeof requestAnimationFrame == 'function';\n\n/**\n * Schedule a callback to be invoked after the browser has a chance to paint a new frame.\n * Do this by combining requestAnimationFrame (rAF) + setTimeout to invoke a callback after\n * the next browser frame.\n *\n * Also, schedule a timeout in parallel to the the rAF to ensure the callback is invoked\n * even if RAF doesn't fire (for example if the browser tab is not visible)\n *\n * @param {() => void} callback\n */\nfunction afterNextFrame(callback) {\n\tconst done = () => {\n\t\tclearTimeout(timeout);\n\t\tif (HAS_RAF) cancelAnimationFrame(raf);\n\t\tsetTimeout(callback);\n\t};\n\tconst timeout = setTimeout(done, RAF_TIMEOUT);\n\n\tlet raf;\n\tif (HAS_RAF) {\n\t\traf = requestAnimationFrame(done);\n\t}\n}\n\n// Note: if someone used options.debounceRendering = requestAnimationFrame,\n// then effects will ALWAYS run on the NEXT frame instead of the current one, incurring a ~16ms delay.\n// Perhaps this is not such a big deal.\n/**\n * Schedule afterPaintEffects flush after the browser paints\n * @param {number} newQueueLength\n * @returns {void}\n */\nfunction afterPaint(newQueueLength) {\n\tif (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) {\n\t\tprevRaf = options.requestAnimationFrame;\n\t\t(prevRaf || afterNextFrame)(flushAfterPaintEffects);\n\t}\n}\n\n/**\n * @param {import('./internal').HookState} hook\n * @returns {void}\n */\nfunction invokeCleanup(hook) {\n\t// A hook cleanup can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\tlet cleanup = hook._cleanup;\n\tif (typeof cleanup == 'function') {\n\t\thook._cleanup = undefined;\n\t\tcleanup();\n\t}\n\n\tcurrentComponent = comp;\n}\n\n/**\n * Invoke a Hook's effect\n * @param {import('./internal').EffectHookState} hook\n * @returns {void}\n */\nfunction invokeEffect(hook) {\n\t// A hook call can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\thook._cleanup = hook._value();\n\tcurrentComponent = comp;\n}\n\n/**\n * @param {unknown[]} oldArgs\n * @param {unknown[]} newArgs\n * @returns {boolean}\n */\nfunction argsChanged(oldArgs, newArgs) {\n\treturn (\n\t\t!oldArgs ||\n\t\toldArgs.length !== newArgs.length ||\n\t\tnewArgs.some((arg, index) => arg !== oldArgs[index])\n\t);\n}\n\n/**\n * @template Arg\n * @param {Arg} arg\n * @param {(arg: Arg) => any} f\n * @returns {any}\n */\nfunction invokeOrReturn(arg, f) {\n\treturn typeof f == 'function' ? f(arg) : f;\n}\n"],"names":["currentIndex","currentComponent","previousComponent","prevRaf","currentHook","afterPaintEffects","options","_options","oldBeforeDiff","__b","oldBeforeRender","__r","oldAfterDiff","diffed","oldCommit","__c","oldBeforeUnmount","unmount","oldRoot","__","getHookState","index","type","__h","hooks","__H","length","push","useState","initialState","useReducer","invokeOrReturn","reducer","init","hookState","_reducer","undefined","action","currentValue","__N","nextValue","setState","__f","updateHookState","p","s","c","stateHooks","filter","x","every","prevScu","call","this","shouldUpdate","props","forEach","hookItem","shouldComponentUpdate","prevCWU","componentWillUpdate","__e","tmp","useLayoutEffect","callback","args","state","__s","argsChanged","_pendingArgs","useMemo","factory","flushAfterPaintEffects","component","shift","__P","invokeCleanup","invokeEffect","e","__v","vnode","parentDom","__k","__m","requestAnimationFrame","afterNextFrame","commitQueue","some","cb","hasErrored","HAS_RAF","raf","done","clearTimeout","timeout","cancelAnimationFrame","setTimeout","hook","comp","cleanup","oldArgs","newArgs","arg","f","context","provider","sub","value","formatter","useDebugValue","errState","componentDidCatch","err","errorInfo","root","mask","ref","createHandle","result","current","concat","initialValue"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/hooks/dist/hooks.mjs b/node_modules/preact/hooks/dist/hooks.mjs index 83ed2ec..49081e0 100644 --- a/node_modules/preact/hooks/dist/hooks.mjs +++ b/node_modules/preact/hooks/dist/hooks.mjs @@ -1,2 +1,2 @@ -import{options as n}from"preact";var t,r,u,i,o=0,f=[],c=[],e=n.__b,a=n.__r,v=n.diffed,l=n.__c,m=n.unmount;function d(t,u){n.__h&&n.__h(r,t,o||u),o=0;var i=r.__H||(r.__H={__:[],__h:[]});return t>=i.__.length&&i.__.push({__V:c}),i.__[t]}function h(n){return o=1,s(B,n)}function s(n,u,i){var o=d(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):B(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=!1;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),!(!i&&o.__c.props===n)&&(!c||c.call(this,n,t,r))};r.u=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function p(u,i){var o=d(t++,3);!n.__s&&z(o.__H,i)&&(o.__=u,o.i=i,r.__H.__h.push(o))}function y(u,i){var o=d(t++,4);!n.__s&&z(o.__H,i)&&(o.__=u,o.i=i,r.__h.push(o))}function _(n){return o=5,F(function(){return{current:n}},[])}function A(n,t,r){o=6,y(function(){return"function"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))}function F(n,r){var u=d(t++,7);return z(u.__H,r)?(u.__V=n(),u.i=r,u.__h=n,u.__V):u.__}function T(n,t){return o=8,F(function(){return n},t)}function q(n){var u=r.context[n.__c],i=d(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function x(t,r){n.useDebugValue&&n.useDebugValue(r?r(t):t)}function P(n){var u=d(t++,10),i=h();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function V(){var n=d(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__="P"+i[0]+"-"+i[1]++}return n.__}function b(){for(var t;t=f.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(k),t.__H.__h.forEach(w),t.__H.__h=[]}catch(r){t.__H.__h=[],n.__e(r,t.__v)}}n.__b=function(n){r=null,e&&e(n)},n.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=c,n.__N=n.i=void 0})):(i.__h.forEach(k),i.__h.forEach(w),i.__h=[],t=0)),u=r},n.diffed=function(t){v&&v(t);var o=t.__c;o&&o.__H&&(o.__H.__h.length&&(1!==f.push(o)&&i===n.requestAnimationFrame||((i=n.requestAnimationFrame)||j)(b)),o.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==c&&(n.__=n.__V),n.i=void 0,n.__V=c})),u=r=null},n.__c=function(t,r){r.some(function(t){try{t.__h.forEach(k),t.__h=t.__h.filter(function(n){return!n.__||w(n)})}catch(u){r.some(function(n){n.__h&&(n.__h=[])}),r=[],n.__e(u,t.__v)}}),l&&l(t,r)},n.unmount=function(t){m&&m(t);var r,u=t.__c;u&&u.__H&&(u.__H.__.forEach(function(n){try{k(n)}catch(n){r=n}}),u.__H=void 0,r&&n.__e(r,u.__v))};var g="function"==typeof requestAnimationFrame;function j(n){var t,r=function(){clearTimeout(u),g&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);g&&(t=requestAnimationFrame(r))}function k(n){var t=r,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),r=t}function w(n){var t=r;n.__c=n.__(),r=t}function z(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function B(n,t){return"function"==typeof t?t(n):t}export{T as useCallback,q as useContext,x as useDebugValue,p as useEffect,P as useErrorBoundary,V as useId,A as useImperativeHandle,y as useLayoutEffect,F as useMemo,s as useReducer,_ as useRef,h as useState}; +import{options as n}from"preact";var t,r,u,i,o=0,f=[],c=n,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function p(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function d(n){return o=1,h(D,n)}function h(n,u,i){var o=p(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.__f)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=o.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),c&&c.call(this,n,t,r)||i};r.__f=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=p(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__H.__h.push(i))}function _(n,u){var i=p(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){if("function"==typeof n){var r=n(t());return function(){n(null),r&&"function"==typeof r&&r()}}if(n)return n.current=t(),function(){return n.current=null}},null==r?r:r.concat(n))}function T(n,r){var u=p(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=p(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=p(t++,10),i=d();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=p(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__="P"+i[0]+"-"+i[1]++}return n.__}function j(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(z),n.__H.__h.forEach(B),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(i.__h.forEach(z),i.__h.forEach(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k="function"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,35);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return"function"==typeof t?t(n):t}export{q as useCallback,x as useContext,P as useDebugValue,y as useEffect,b as useErrorBoundary,g as useId,F as useImperativeHandle,_ as useLayoutEffect,T as useMemo,h as useReducer,A as useRef,d as useState}; //# sourceMappingURL=hooks.module.js.map diff --git a/node_modules/preact/hooks/dist/hooks.module.js b/node_modules/preact/hooks/dist/hooks.module.js index 83ed2ec..49081e0 100644 --- a/node_modules/preact/hooks/dist/hooks.module.js +++ b/node_modules/preact/hooks/dist/hooks.module.js @@ -1,2 +1,2 @@ -import{options as n}from"preact";var t,r,u,i,o=0,f=[],c=[],e=n.__b,a=n.__r,v=n.diffed,l=n.__c,m=n.unmount;function d(t,u){n.__h&&n.__h(r,t,o||u),o=0;var i=r.__H||(r.__H={__:[],__h:[]});return t>=i.__.length&&i.__.push({__V:c}),i.__[t]}function h(n){return o=1,s(B,n)}function s(n,u,i){var o=d(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):B(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=!1;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),!(!i&&o.__c.props===n)&&(!c||c.call(this,n,t,r))};r.u=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function p(u,i){var o=d(t++,3);!n.__s&&z(o.__H,i)&&(o.__=u,o.i=i,r.__H.__h.push(o))}function y(u,i){var o=d(t++,4);!n.__s&&z(o.__H,i)&&(o.__=u,o.i=i,r.__h.push(o))}function _(n){return o=5,F(function(){return{current:n}},[])}function A(n,t,r){o=6,y(function(){return"function"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))}function F(n,r){var u=d(t++,7);return z(u.__H,r)?(u.__V=n(),u.i=r,u.__h=n,u.__V):u.__}function T(n,t){return o=8,F(function(){return n},t)}function q(n){var u=r.context[n.__c],i=d(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function x(t,r){n.useDebugValue&&n.useDebugValue(r?r(t):t)}function P(n){var u=d(t++,10),i=h();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function V(){var n=d(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__="P"+i[0]+"-"+i[1]++}return n.__}function b(){for(var t;t=f.shift();)if(t.__P&&t.__H)try{t.__H.__h.forEach(k),t.__H.__h.forEach(w),t.__H.__h=[]}catch(r){t.__H.__h=[],n.__e(r,t.__v)}}n.__b=function(n){r=null,e&&e(n)},n.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=c,n.__N=n.i=void 0})):(i.__h.forEach(k),i.__h.forEach(w),i.__h=[],t=0)),u=r},n.diffed=function(t){v&&v(t);var o=t.__c;o&&o.__H&&(o.__H.__h.length&&(1!==f.push(o)&&i===n.requestAnimationFrame||((i=n.requestAnimationFrame)||j)(b)),o.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==c&&(n.__=n.__V),n.i=void 0,n.__V=c})),u=r=null},n.__c=function(t,r){r.some(function(t){try{t.__h.forEach(k),t.__h=t.__h.filter(function(n){return!n.__||w(n)})}catch(u){r.some(function(n){n.__h&&(n.__h=[])}),r=[],n.__e(u,t.__v)}}),l&&l(t,r)},n.unmount=function(t){m&&m(t);var r,u=t.__c;u&&u.__H&&(u.__H.__.forEach(function(n){try{k(n)}catch(n){r=n}}),u.__H=void 0,r&&n.__e(r,u.__v))};var g="function"==typeof requestAnimationFrame;function j(n){var t,r=function(){clearTimeout(u),g&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);g&&(t=requestAnimationFrame(r))}function k(n){var t=r,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),r=t}function w(n){var t=r;n.__c=n.__(),r=t}function z(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function B(n,t){return"function"==typeof t?t(n):t}export{T as useCallback,q as useContext,x as useDebugValue,p as useEffect,P as useErrorBoundary,V as useId,A as useImperativeHandle,y as useLayoutEffect,F as useMemo,s as useReducer,_ as useRef,h as useState}; +import{options as n}from"preact";var t,r,u,i,o=0,f=[],c=n,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function p(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function d(n){return o=1,h(D,n)}function h(n,u,i){var o=p(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.__f)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=o.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),c&&c.call(this,n,t,r)||i};r.__f=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=p(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__H.__h.push(i))}function _(n,u){var i=p(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){if("function"==typeof n){var r=n(t());return function(){n(null),r&&"function"==typeof r&&r()}}if(n)return n.current=t(),function(){return n.current=null}},null==r?r:r.concat(n))}function T(n,r){var u=p(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=p(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=p(t++,10),i=d();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=p(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__="P"+i[0]+"-"+i[1]++}return n.__}function j(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(z),n.__H.__h.forEach(B),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(i.__h.forEach(z),i.__h.forEach(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k="function"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,35);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return"function"==typeof t?t(n):t}export{q as useCallback,x as useContext,P as useDebugValue,y as useEffect,b as useErrorBoundary,g as useId,F as useImperativeHandle,_ as useLayoutEffect,T as useMemo,h as useReducer,A as useRef,d as useState}; //# sourceMappingURL=hooks.module.js.map diff --git a/node_modules/preact/hooks/dist/hooks.module.js.map b/node_modules/preact/hooks/dist/hooks.module.js.map index 8691f9a..ee19711 100644 --- a/node_modules/preact/hooks/dist/hooks.module.js.map +++ b/node_modules/preact/hooks/dist/hooks.module.js.map @@ -1 +1 @@ -{"version":3,"file":"hooks.module.js","sources":["../src/index.js"],"sourcesContent":["import { options } from 'preact';\n\n/** @type {number} */\nlet currentIndex;\n\n/** @type {import('./internal').Component} */\nlet currentComponent;\n\n/** @type {import('./internal').Component} */\nlet previousComponent;\n\n/** @type {number} */\nlet currentHook = 0;\n\n/** @type {Array} */\nlet afterPaintEffects = [];\n\nlet EMPTY = [];\n\nlet oldBeforeDiff = options._diff;\nlet oldBeforeRender = options._render;\nlet oldAfterDiff = options.diffed;\nlet oldCommit = options._commit;\nlet oldBeforeUnmount = options.unmount;\n\nconst RAF_TIMEOUT = 100;\nlet prevRaf;\n\noptions._diff = vnode => {\n\tcurrentComponent = null;\n\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n};\n\noptions._render = vnode => {\n\tif (oldBeforeRender) oldBeforeRender(vnode);\n\n\tcurrentComponent = vnode._component;\n\tcurrentIndex = 0;\n\n\tconst hooks = currentComponent.__hooks;\n\tif (hooks) {\n\t\tif (previousComponent === currentComponent) {\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentComponent._renderCallbacks = [];\n\t\t\thooks._list.forEach(hookItem => {\n\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t}\n\t\t\t\thookItem._pendingValue = EMPTY;\n\t\t\t\thookItem._nextValue = hookItem._pendingArgs = undefined;\n\t\t\t});\n\t\t} else {\n\t\t\thooks._pendingEffects.forEach(invokeCleanup);\n\t\t\thooks._pendingEffects.forEach(invokeEffect);\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentIndex = 0;\n\t\t}\n\t}\n\tpreviousComponent = currentComponent;\n};\n\noptions.diffed = vnode => {\n\tif (oldAfterDiff) oldAfterDiff(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tif (c.__hooks._pendingEffects.length) afterPaint(afterPaintEffects.push(c));\n\t\tc.__hooks._list.forEach(hookItem => {\n\t\t\tif (hookItem._pendingArgs) {\n\t\t\t\thookItem._args = hookItem._pendingArgs;\n\t\t\t}\n\t\t\tif (hookItem._pendingValue !== EMPTY) {\n\t\t\t\thookItem._value = hookItem._pendingValue;\n\t\t\t}\n\t\t\thookItem._pendingArgs = undefined;\n\t\t\thookItem._pendingValue = EMPTY;\n\t\t});\n\t}\n\tpreviousComponent = currentComponent = null;\n};\n\noptions._commit = (vnode, commitQueue) => {\n\tcommitQueue.some(component => {\n\t\ttry {\n\t\t\tcomponent._renderCallbacks.forEach(invokeCleanup);\n\t\t\tcomponent._renderCallbacks = component._renderCallbacks.filter(cb =>\n\t\t\t\tcb._value ? invokeEffect(cb) : true\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tcommitQueue.some(c => {\n\t\t\t\tif (c._renderCallbacks) c._renderCallbacks = [];\n\t\t\t});\n\t\t\tcommitQueue = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t});\n\n\tif (oldCommit) oldCommit(vnode, commitQueue);\n};\n\noptions.unmount = vnode => {\n\tif (oldBeforeUnmount) oldBeforeUnmount(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tlet hasErrored;\n\t\tc.__hooks._list.forEach(s => {\n\t\t\ttry {\n\t\t\t\tinvokeCleanup(s);\n\t\t\t} catch (e) {\n\t\t\t\thasErrored = e;\n\t\t\t}\n\t\t});\n\t\tc.__hooks = undefined;\n\t\tif (hasErrored) options._catchError(hasErrored, c._vnode);\n\t}\n};\n\n/**\n * Get a hook's state from the currentComponent\n * @param {number} index The index of the hook to get\n * @param {number} type The index of the hook to get\n * @returns {any}\n */\nfunction getHookState(index, type) {\n\tif (options._hook) {\n\t\toptions._hook(currentComponent, index, currentHook || type);\n\t}\n\tcurrentHook = 0;\n\n\t// Largely inspired by:\n\t// * https://github.com/michael-klein/funcy.js/blob/f6be73468e6ec46b0ff5aa3cc4c9baf72a29025a/src/hooks/core_hooks.mjs\n\t// * https://github.com/michael-klein/funcy.js/blob/650beaa58c43c33a74820a3c98b3c7079cf2e333/src/renderer.mjs\n\t// Other implementations to look at:\n\t// * https://codesandbox.io/s/mnox05qp8\n\tconst hooks =\n\t\tcurrentComponent.__hooks ||\n\t\t(currentComponent.__hooks = {\n\t\t\t_list: [],\n\t\t\t_pendingEffects: []\n\t\t});\n\n\tif (index >= hooks._list.length) {\n\t\thooks._list.push({ _pendingValue: EMPTY });\n\t}\n\treturn hooks._list[index];\n}\n\n/**\n * @param {import('./index').StateUpdater} [initialState]\n */\nexport function useState(initialState) {\n\tcurrentHook = 1;\n\treturn useReducer(invokeOrReturn, initialState);\n}\n\n/**\n * @param {import('./index').Reducer} reducer\n * @param {import('./index').StateUpdater} initialState\n * @param {(initialState: any) => void} [init]\n * @returns {[ any, (state: any) => void ]}\n */\nexport function useReducer(reducer, initialState, init) {\n\t/** @type {import('./internal').ReducerHookState} */\n\tconst hookState = getHookState(currentIndex++, 2);\n\thookState._reducer = reducer;\n\tif (!hookState._component) {\n\t\thookState._value = [\n\t\t\t!init ? invokeOrReturn(undefined, initialState) : init(initialState),\n\n\t\t\taction => {\n\t\t\t\tconst currentValue = hookState._nextValue\n\t\t\t\t\t? hookState._nextValue[0]\n\t\t\t\t\t: hookState._value[0];\n\t\t\t\tconst nextValue = hookState._reducer(currentValue, action);\n\n\t\t\t\tif (currentValue !== nextValue) {\n\t\t\t\t\thookState._nextValue = [nextValue, hookState._value[1]];\n\t\t\t\t\thookState._component.setState({});\n\t\t\t\t}\n\t\t\t}\n\t\t];\n\n\t\thookState._component = currentComponent;\n\n\t\tif (!currentComponent._hasScuFromHooks) {\n\t\t\tcurrentComponent._hasScuFromHooks = true;\n\t\t\tlet prevScu = currentComponent.shouldComponentUpdate;\n\t\t\tconst prevCWU = currentComponent.componentWillUpdate;\n\n\t\t\t// If we're dealing with a forced update `shouldComponentUpdate` will\n\t\t\t// not be called. But we use that to update the hook values, so we\n\t\t\t// need to call it.\n\t\t\tcurrentComponent.componentWillUpdate = function (p, s, c) {\n\t\t\t\tif (this._force) {\n\t\t\t\t\tlet tmp = prevScu;\n\t\t\t\t\t// Clear to avoid other sCU hooks from being called\n\t\t\t\t\tprevScu = undefined;\n\t\t\t\t\tupdateHookState(p, s, c);\n\t\t\t\t\tprevScu = tmp;\n\t\t\t\t}\n\n\t\t\t\tif (prevCWU) prevCWU.call(this, p, s, c);\n\t\t\t};\n\n\t\t\t// This SCU has the purpose of bailing out after repeated updates\n\t\t\t// to stateful hooks.\n\t\t\t// we store the next value in _nextValue[0] and keep doing that for all\n\t\t\t// state setters, if we have next states and\n\t\t\t// all next states within a component end up being equal to their original state\n\t\t\t// we are safe to bail out for this specific component.\n\t\t\t/**\n\t\t\t *\n\t\t\t * @type {import('./internal').Component[\"shouldComponentUpdate\"]}\n\t\t\t */\n\t\t\t// @ts-ignore - We don't use TS to downtranspile\n\t\t\t// eslint-disable-next-line no-inner-declarations\n\t\t\tfunction updateHookState(p, s, c) {\n\t\t\t\tif (!hookState._component.__hooks) return true;\n\n\t\t\t\tconst stateHooks = hookState._component.__hooks._list.filter(\n\t\t\t\t\tx => x._component\n\t\t\t\t);\n\t\t\t\tconst allHooksEmpty = stateHooks.every(x => !x._nextValue);\n\t\t\t\t// When we have no updated hooks in the component we invoke the previous SCU or\n\t\t\t\t// traverse the VDOM tree further.\n\t\t\t\tif (allHooksEmpty) {\n\t\t\t\t\treturn prevScu ? prevScu.call(this, p, s, c) : true;\n\t\t\t\t}\n\n\t\t\t\t// We check whether we have components with a nextValue set that\n\t\t\t\t// have values that aren't equal to one another this pushes\n\t\t\t\t// us to update further down the tree\n\t\t\t\tlet shouldUpdate = false;\n\t\t\t\tstateHooks.forEach(hookItem => {\n\t\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\t\tconst currentValue = hookItem._value[0];\n\t\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t\t\thookItem._nextValue = undefined;\n\t\t\t\t\t\tif (currentValue !== hookItem._value[0]) shouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\treturn shouldUpdate || hookState._component.props !== p\n\t\t\t\t\t? prevScu\n\t\t\t\t\t\t? prevScu.call(this, p, s, c)\n\t\t\t\t\t\t: true\n\t\t\t\t\t: false;\n\t\t\t}\n\n\t\t\tcurrentComponent.shouldComponentUpdate = updateHookState;\n\t\t}\n\t}\n\n\treturn hookState._nextValue || hookState._value;\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 3);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent.__hooks._pendingEffects.push(state);\n\t}\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useLayoutEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 4);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent._renderCallbacks.push(state);\n\t}\n}\n\nexport function useRef(initialValue) {\n\tcurrentHook = 5;\n\treturn useMemo(() => ({ current: initialValue }), []);\n}\n\n/**\n * @param {object} ref\n * @param {() => object} createHandle\n * @param {any[]} args\n */\nexport function useImperativeHandle(ref, createHandle, args) {\n\tcurrentHook = 6;\n\tuseLayoutEffect(\n\t\t() => {\n\t\t\tif (typeof ref == 'function') {\n\t\t\t\tref(createHandle());\n\t\t\t\treturn () => ref(null);\n\t\t\t} else if (ref) {\n\t\t\t\tref.current = createHandle();\n\t\t\t\treturn () => (ref.current = null);\n\t\t\t}\n\t\t},\n\t\targs == null ? args : args.concat(ref)\n\t);\n}\n\n/**\n * @param {() => any} factory\n * @param {any[]} args\n */\nexport function useMemo(factory, args) {\n\t/** @type {import('./internal').MemoHookState} */\n\tconst state = getHookState(currentIndex++, 7);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._pendingValue = factory();\n\t\tstate._pendingArgs = args;\n\t\tstate._factory = factory;\n\t\treturn state._pendingValue;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * @param {() => void} callback\n * @param {any[]} args\n */\nexport function useCallback(callback, args) {\n\tcurrentHook = 8;\n\treturn useMemo(() => callback, args);\n}\n\n/**\n * @param {import('./internal').PreactContext} context\n */\nexport function useContext(context) {\n\tconst provider = currentComponent.context[context._id];\n\t// We could skip this call here, but than we'd not call\n\t// `options._hook`. We need to do that in order to make\n\t// the devtools aware of this hook.\n\t/** @type {import('./internal').ContextHookState} */\n\tconst state = getHookState(currentIndex++, 9);\n\t// The devtools needs access to the context object to\n\t// be able to pull of the default value when no provider\n\t// is present in the tree.\n\tstate._context = context;\n\tif (!provider) return context._defaultValue;\n\t// This is probably not safe to convert to \"!\"\n\tif (state._value == null) {\n\t\tstate._value = true;\n\t\tprovider.sub(currentComponent);\n\t}\n\treturn provider.props.value;\n}\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, cb?: (value: T) => string | number) => void}\n */\nexport function useDebugValue(value, formatter) {\n\tif (options.useDebugValue) {\n\t\toptions.useDebugValue(formatter ? formatter(value) : value);\n\t}\n}\n\n/**\n * @param {(error: any, errorInfo: import('preact').ErrorInfo) => void} cb\n */\nexport function useErrorBoundary(cb) {\n\t/** @type {import('./internal').ErrorBoundaryHookState} */\n\tconst state = getHookState(currentIndex++, 10);\n\tconst errState = useState();\n\tstate._value = cb;\n\tif (!currentComponent.componentDidCatch) {\n\t\tcurrentComponent.componentDidCatch = (err, errorInfo) => {\n\t\t\tif (state._value) state._value(err, errorInfo);\n\t\t\terrState[1](err);\n\t\t};\n\t}\n\treturn [\n\t\terrState[0],\n\t\t() => {\n\t\t\terrState[1](undefined);\n\t\t}\n\t];\n}\n\nexport function useId() {\n\tconst state = getHookState(currentIndex++, 11);\n\tif (!state._value) {\n\t\t// Grab either the root node or the nearest async boundary node.\n\t\t/** @type {import('./internal.d').VNode} */\n\t\tlet root = currentComponent._vnode;\n\t\twhile (root !== null && !root._mask && root._parent !== null) {\n\t\t\troot = root._parent;\n\t\t}\n\n\t\tlet mask = root._mask || (root._mask = [0, 0]);\n\t\tstate._value = 'P' + mask[0] + '-' + mask[1]++;\n\t}\n\n\treturn state._value;\n}\n/**\n * After paint effects consumer.\n */\nfunction flushAfterPaintEffects() {\n\tlet component;\n\twhile ((component = afterPaintEffects.shift())) {\n\t\tif (!component._parentDom || !component.__hooks) continue;\n\t\ttry {\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t} catch (e) {\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t}\n}\n\nlet HAS_RAF = typeof requestAnimationFrame == 'function';\n\n/**\n * Schedule a callback to be invoked after the browser has a chance to paint a new frame.\n * Do this by combining requestAnimationFrame (rAF) + setTimeout to invoke a callback after\n * the next browser frame.\n *\n * Also, schedule a timeout in parallel to the the rAF to ensure the callback is invoked\n * even if RAF doesn't fire (for example if the browser tab is not visible)\n *\n * @param {() => void} callback\n */\nfunction afterNextFrame(callback) {\n\tconst done = () => {\n\t\tclearTimeout(timeout);\n\t\tif (HAS_RAF) cancelAnimationFrame(raf);\n\t\tsetTimeout(callback);\n\t};\n\tconst timeout = setTimeout(done, RAF_TIMEOUT);\n\n\tlet raf;\n\tif (HAS_RAF) {\n\t\traf = requestAnimationFrame(done);\n\t}\n}\n\n// Note: if someone used options.debounceRendering = requestAnimationFrame,\n// then effects will ALWAYS run on the NEXT frame instead of the current one, incurring a ~16ms delay.\n// Perhaps this is not such a big deal.\n/**\n * Schedule afterPaintEffects flush after the browser paints\n * @param {number} newQueueLength\n */\nfunction afterPaint(newQueueLength) {\n\tif (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) {\n\t\tprevRaf = options.requestAnimationFrame;\n\t\t(prevRaf || afterNextFrame)(flushAfterPaintEffects);\n\t}\n}\n\n/**\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeCleanup(hook) {\n\t// A hook cleanup can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\tlet cleanup = hook._cleanup;\n\tif (typeof cleanup == 'function') {\n\t\thook._cleanup = undefined;\n\t\tcleanup();\n\t}\n\n\tcurrentComponent = comp;\n}\n\n/**\n * Invoke a Hook's effect\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeEffect(hook) {\n\t// A hook call can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\thook._cleanup = hook._value();\n\tcurrentComponent = comp;\n}\n\n/**\n * @param {any[]} oldArgs\n * @param {any[]} newArgs\n */\nfunction argsChanged(oldArgs, newArgs) {\n\treturn (\n\t\t!oldArgs ||\n\t\toldArgs.length !== newArgs.length ||\n\t\tnewArgs.some((arg, index) => arg !== oldArgs[index])\n\t);\n}\n\nfunction invokeOrReturn(arg, f) {\n\treturn typeof f == 'function' ? f(arg) : f;\n}\n"],"names":["currentIndex","currentComponent","previousComponent","prevRaf","currentHook","afterPaintEffects","EMPTY","oldBeforeDiff","options","__b","oldBeforeRender","__r","oldAfterDiff","diffed","oldCommit","__c","oldBeforeUnmount","unmount","getHookState","index","type","__h","hooks","__H","__","length","push","__V","useState","initialState","useReducer","invokeOrReturn","reducer","init","hookState","_reducer","undefined","action","currentValue","__N","nextValue","setState","_hasScuFromHooks","updateHookState","p","s","c","stateHooks","filter","x","every","prevScu","call","this","shouldUpdate","forEach","hookItem","props","shouldComponentUpdate","prevCWU","componentWillUpdate","__e","tmp","useEffect","callback","args","state","__s","argsChanged","_pendingArgs","useLayoutEffect","useRef","initialValue","useMemo","current","useImperativeHandle","ref","createHandle","concat","factory","useCallback","useContext","context","provider","sub","value","useDebugValue","formatter","useErrorBoundary","cb","errState","componentDidCatch","err","errorInfo","useId","root","__v","__m","mask","flushAfterPaintEffects","component","shift","__P","invokeCleanup","invokeEffect","e","vnode","requestAnimationFrame","afterNextFrame","commitQueue","some","hasErrored","HAS_RAF","raf","done","clearTimeout","timeout","cancelAnimationFrame","setTimeout","hook","comp","cleanup","oldArgs","newArgs","arg","f"],"mappings":"iCAGA,IAAIA,EAGAC,EAGAC,EAiBAC,EAdAC,EAAc,EAGdC,EAAoB,GAEpBC,EAAQ,GAERC,EAAgBC,EAApBC,IACIC,EAAkBF,EAAtBG,IACIC,EAAeJ,EAAQK,OACvBC,EAAYN,EAAhBO,IACIC,EAAmBR,EAAQS,QAqG/B,SAASC,EAAaC,EAAOC,GACxBZ,EAAea,KAClBb,EAAAa,IAAcpB,EAAkBkB,EAAOf,GAAegB,GAEvDhB,EAAc,EAOd,IAAMkB,EACLrB,EAAgBsB,MACftB,EAAgBsB,IAAW,CAC3BC,GAAO,GACPH,IAAiB,KAMnB,OAHIF,GAASG,EAAKE,GAAOC,QACxBH,EAAAE,GAAYE,KAAK,CAAEC,IAAerB,IAE5BgB,KAAYH,EACnB,CAKM,SAASS,EAASC,GAExB,OADAzB,EAAc,EACP0B,EAAWC,EAAgBF,EAClC,CAQeC,SAAAA,EAAWE,EAASH,EAAcI,GAEjD,IAAMC,EAAYhB,EAAalB,IAAgB,GAE/C,GADAkC,EAAUC,EAAWH,GAChBE,EAALnB,MACCmB,EAAAV,GAAmB,CACjBS,EAAiDA,EAAKJ,GAA/CE,OAAeK,EAAWP,GAElC,SAAAQ,GACC,IAAMC,EAAeJ,EAAAK,IAClBL,EAASK,IAAY,GACrBL,EAASV,GAAQ,GACdgB,EAAYN,EAAUC,EAASG,EAAcD,GAE/CC,IAAiBE,IACpBN,EAASK,IAAc,CAACC,EAAWN,EAASV,GAAQ,IACpDU,EAASnB,IAAY0B,SAAS,CAA9B,GAED,GAGFP,EAAAnB,IAAuBd,GAElBA,EAAiByC,GAAkB,CAgC9BC,IAAAA,EAAT,SAAyBC,EAAGC,EAAGC,GAC9B,IAAKZ,EAADnB,IAAAQ,IAA+B,OAAA,EAEnC,IAAMwB,EAAab,EAASnB,IAA0BiC,IAAAA,GAAAA,OACrD,SAAAC,GAAKA,OAAAA,EAAJlC,GAAA,GAKF,GAHsBgC,EAAWG,MAAM,SAAAD,GAAK,OAACA,EAADV,GAAJ,GAIvC,OAAOY,GAAUA,EAAQC,KAAKC,KAAMT,EAAGC,EAAGC,GAM3C,IAAIQ,GAAe,EAUnB,OATAP,EAAWQ,QAAQ,SAAAC,GAClB,GAAIA,MAAqB,CACxB,IAAMlB,EAAekB,KAAgB,GACrCA,EAAQhC,GAAUgC,EAClBA,IAAAA,EAAAjB,SAAsBH,EAClBE,IAAiBkB,EAAQhC,GAAQ,KAAI8B,GAAe,EACxD,CACD,MAEMA,GAAgBpB,EAASnB,IAAY0C,QAAUb,MACnDO,GACCA,EAAQC,KAAKC,KAAMT,EAAGC,EAAGC,GAG7B,EA9DD7C,EAAiByC,GAAmB,EACpC,IAAIS,EAAUlD,EAAiByD,sBACzBC,EAAU1D,EAAiB2D,oBAKjC3D,EAAiB2D,oBAAsB,SAAUhB,EAAGC,EAAGC,GACtD,GAAIO,KAAaQ,IAAA,CAChB,IAAIC,EAAMX,EAEVA,OAAUf,EACVO,EAAgBC,EAAGC,EAAGC,GACtBK,EAAUW,CACV,CAEGH,GAASA,EAAQP,KAAKC,KAAMT,EAAGC,EAAGC,EACtC,EA+CD7C,EAAiByD,sBAAwBf,CACzC,CAGF,OAAOT,EAAAK,KAAwBL,EAAxBV,EACP,CAMeuC,SAAAA,EAAUC,EAAUC,GAEnC,IAAMC,EAAQhD,EAAalB,IAAgB,IACtCQ,EAAD2D,KAAyBC,EAAYF,EAAD3C,IAAc0C,KACrDC,EAAK1C,GAAUwC,EACfE,EAAMG,EAAeJ,EAErBhE,EAAAsB,IAAAF,IAAyCK,KAAKwC,GAE/C,CAMeI,SAAAA,EAAgBN,EAAUC,GAEzC,IAAMC,EAAQhD,EAAalB,IAAgB,IACtCQ,OAAwB4D,EAAYF,EAAD3C,IAAc0C,KACrDC,EAAK1C,GAAUwC,EACfE,EAAMG,EAAeJ,EAErBhE,EAAgBoB,IAAkBK,KAAKwC,GAExC,CAEeK,SAAAA,EAAOC,GAEtB,OADApE,EAAc,EACPqE,EAAQ,WAAO,MAAA,CAAEC,QAASF,EAAlB,EAAmC,GAClD,CAOM,SAASG,EAAoBC,EAAKC,EAAcZ,GACtD7D,EAAc,EACdkE,EACC,WACC,MAAkB,mBAAPM,GACVA,EAAIC,KACG,WAAA,OAAMD,EAAI,KAAV,GACGA,GACVA,EAAIF,QAAUG,IACAD,WAAAA,OAAAA,EAAIF,QAAU,IAArB,QAFGE,CAIX,EACO,MAARX,EAAeA,EAAOA,EAAKa,OAAOF,GAEnC,UAMeH,EAAQM,EAASd,GAEhC,IAAMC,EAAQhD,EAAalB,IAAgB,GAC3C,OAAIoE,EAAYF,EAAaD,IAAAA,IAC5BC,EAAKvC,IAAiBoD,IACtBb,EAAMG,EAAeJ,EACrBC,EAAA7C,IAAiB0D,EACVb,EAAPvC,KAGMuC,EAAP1C,EACA,UAMewD,EAAYhB,EAAUC,GAErC,OADA7D,EAAc,EACPqE,EAAQ,WAAA,OAAMT,CAAN,EAAgBC,EAC/B,CAKM,SAASgB,EAAWC,GAC1B,IAAMC,EAAWlF,EAAiBiF,QAAQA,EAAzBnE,KAKXmD,EAAQhD,EAAalB,IAAgB,GAK3C,OADAkE,EAAKpB,EAAYoC,EACZC,GAEe,MAAhBjB,EAAK1C,KACR0C,EAAK1C,IAAU,EACf2D,EAASC,IAAInF,IAEPkF,EAAS1B,MAAM4B,OANAH,EAEtB1D,EAKA,CAMe8D,SAAAA,EAAcD,EAAOE,GAChC/E,EAAQ8E,eACX9E,EAAQ8E,cAAcC,EAAYA,EAAUF,GAASA,EAEtD,CAKM,SAASG,EAAiBC,GAEhC,IAAMvB,EAAQhD,EAAalB,IAAgB,IACrC0F,EAAW9D,IAQjB,OAPAsC,EAAK1C,GAAUiE,EACVxF,EAAiB0F,oBACrB1F,EAAiB0F,kBAAoB,SAACC,EAAKC,GACtC3B,EAAcA,IAAAA,EAAA1C,GAAaoE,EAAKC,GACpCH,EAAS,GAAGE,EACZ,GAEK,CACNF,EAAS,GACT,WACCA,EAAS,QAAGtD,EACZ,EAEF,CAEM,SAAS0D,IACf,IAAM5B,EAAQhD,EAAalB,IAAgB,IAC3C,IAAKkE,EAAD1C,GAAe,CAIlB,IADA,IAAIuE,EAAO9F,EAAX+F,IACgB,OAATD,IAAkBA,EAADE,KAAgC,OAAjBF,MACtCA,EAAOA,EACPvE,GAED,IAAI0E,EAAOH,EAAAE,MAAeF,EAAIE,IAAS,CAAC,EAAG,IAC3C/B,EAAK1C,GAAU,IAAM0E,EAAK,GAAK,IAAMA,EAAK,IAC1C,CAED,OAAOhC,EAAP1C,EACA,CAID,SAAS2E,IAER,IADA,IAAIC,EACIA,EAAY/F,EAAkBgG,SACrC,GAAKD,EAAwBE,KAACF,EAA9B7E,IACA,IACC6E,EAAA7E,IAAAF,IAAkCkC,QAAQgD,GAC1CH,EAAS7E,QAAyBgC,QAAQiD,GAC1CJ,EAAS7E,QAA2B,EAIpC,CAHC,MAAOkF,GACRL,EAAA7E,IAAAF,IAAoC,GACpCb,EAAOqD,IAAa4C,EAAGL,EACvBJ,IAAA,CAEF,CA9YDxF,EAAOC,IAAS,SAAAiG,GACfzG,EAAmB,KACfM,GAAeA,EAAcmG,EACjC,EAEDlG,EAAAG,IAAkB,SAAA+F,GACbhG,GAAiBA,EAAgBgG,GAGrC1G,EAAe,EAEf,IAAMsB,GAHNrB,EAAmByG,EAAnB3F,KAGWQ,IACPD,IACCpB,IAAsBD,GACzBqB,MAAwB,GACxBrB,EAAAoB,IAAoC,GACpCC,EAAAE,GAAY+B,QAAQ,SAAAC,GACfA,EAAJjB,MACCiB,EAAAhC,GAAkBgC,EAAlBjB,KAEDiB,MAAyBlD,EACzBkD,EAAAjB,IAAsBiB,EAASa,OAAejC,CAC9C,KAEDd,EAAKD,IAAiBkC,QAAQgD,GAC9BjF,EAAAD,IAAsBkC,QAAQiD,GAC9BlF,EAAAD,IAAwB,GACxBrB,EAAe,IAGjBE,EAAoBD,CACpB,EAEDO,EAAQK,OAAS,SAAA6F,GACZ9F,GAAcA,EAAa8F,GAE/B,IAAM5D,EAAI4D,EAAH3F,IACH+B,GAAKA,EAATvB,MACKuB,EAACvB,IAAyBE,IAAAA,SA4YR,IA5Y2BpB,EAAkBqB,KAAKoB,IA4Y7C3C,IAAYK,EAAQmG,yBAC/CxG,EAAUK,EAAQmG,wBACNC,GAAgBT,IA7Y5BrD,EAACvB,OAAegC,QAAQ,SAAAC,GACnBA,EAASa,IACZb,EAAAjC,IAAiBiC,EAASa,GAEvBb,QAA2BlD,IAC9BkD,EAAQhC,GAAUgC,EAAlB7B,KAED6B,EAASa,OAAejC,EACxBoB,EAAQ7B,IAAiBrB,CACzB,IAEFJ,EAAoBD,EAAmB,IACvC,EAEDO,EAAAO,IAAkB,SAAC2F,EAAOG,GACzBA,EAAYC,KAAK,SAAAV,GAChB,IACCA,EAAS/E,IAAkBkC,QAAQgD,GACnCH,MAA6BA,EAAA/E,IAA2B2B,OAAO,SAAAyC,GAAE,OAChEA,EAAAjE,IAAYgF,EAAaf,EADuC,EASjE,CANC,MAAOgB,GACRI,EAAYC,KAAK,SAAAhE,GACZA,EAAoBA,MAAAA,EAAAzB,IAAqB,GAC7C,GACDwF,EAAc,GACdrG,EAAOqD,IAAa4C,EAAGL,EACvBJ,IAAA,CACD,GAEGlF,GAAWA,EAAU4F,EAAOG,EAChC,EAEDrG,EAAQS,QAAU,SAAAyF,GACb1F,GAAkBA,EAAiB0F,GAEvC,IAEKK,EAFCjE,EAAI4D,EAAV3F,IACI+B,GAAKA,EAATvB,MAECuB,EAACvB,IAAegC,GAAAA,QAAQ,SAAAV,GACvB,IACC0D,EAAc1D,EAGd,CAFC,MAAO4D,GACRM,EAAaN,CACb,CACD,GACD3D,EAACvB,SAAWa,EACR2E,GAAYvG,EAAAqD,IAAoBkD,EAAYjE,EAAhCkD,KAEjB,EAwTD,IAAIgB,EAA0C,mBAAzBL,sBAYrB,SAASC,EAAe5C,GACvB,IAOIiD,EAPEC,EAAO,WACZC,aAAaC,GACTJ,GAASK,qBAAqBJ,GAClCK,WAAWtD,EACX,EACKoD,EAAUE,WAAWJ,EAraR,KAwafF,IACHC,EAAMN,sBAAsBO,GAE7B,CAmBD,SAASX,EAAcgB,GAGtB,IAAMC,EAAOvH,EACTwH,EAAUF,EAAdxG,IACsB,mBAAX0G,IACVF,EAAAxG,SAAgBqB,EAChBqF,KAGDxH,EAAmBuH,CACnB,CAMD,SAAShB,EAAae,GAGrB,IAAMC,EAAOvH,EACbsH,EAAAxG,IAAgBwG,EAAI/F,KACpBvB,EAAmBuH,CACnB,CAMD,SAASpD,EAAYsD,EAASC,GAC7B,OACED,GACDA,EAAQjG,SAAWkG,EAAQlG,QAC3BkG,EAAQb,KAAK,SAACc,EAAKzG,GAAUyG,OAAAA,IAAQF,EAAQvG,EAAhC,EAEd,CAED,SAASY,EAAe6F,EAAKC,GAC5B,MAAmB,mBAALA,EAAkBA,EAAED,GAAOC,CACzC"} \ No newline at end of file +{"version":3,"file":"hooks.module.js","sources":["../src/index.js"],"sourcesContent":["import { options as _options } from 'preact';\n\n/** @type {number} */\nlet currentIndex;\n\n/** @type {import('./internal').Component} */\nlet currentComponent;\n\n/** @type {import('./internal').Component} */\nlet previousComponent;\n\n/** @type {number} */\nlet currentHook = 0;\n\n/** @type {Array} */\nlet afterPaintEffects = [];\n\n// Cast to use internal Options type\nconst options = /** @type {import('./internal').Options} */ (_options);\n\nlet oldBeforeDiff = options._diff;\nlet oldBeforeRender = options._render;\nlet oldAfterDiff = options.diffed;\nlet oldCommit = options._commit;\nlet oldBeforeUnmount = options.unmount;\nlet oldRoot = options._root;\n\n// We take the minimum timeout for requestAnimationFrame to ensure that\n// the callback is invoked after the next frame. 35ms is based on a 30hz\n// refresh rate, which is the minimum rate for a smooth user experience.\nconst RAF_TIMEOUT = 35;\nlet prevRaf;\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions._diff = vnode => {\n\tcurrentComponent = null;\n\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n};\n\noptions._root = (vnode, parentDom) => {\n\tif (vnode && parentDom._children && parentDom._children._mask) {\n\t\tvnode._mask = parentDom._children._mask;\n\t}\n\n\tif (oldRoot) oldRoot(vnode, parentDom);\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions._render = vnode => {\n\tif (oldBeforeRender) oldBeforeRender(vnode);\n\n\tcurrentComponent = vnode._component;\n\tcurrentIndex = 0;\n\n\tconst hooks = currentComponent.__hooks;\n\tif (hooks) {\n\t\tif (previousComponent === currentComponent) {\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentComponent._renderCallbacks = [];\n\t\t\thooks._list.forEach(hookItem => {\n\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t}\n\t\t\t\thookItem._pendingArgs = hookItem._nextValue = undefined;\n\t\t\t});\n\t\t} else {\n\t\t\thooks._pendingEffects.forEach(invokeCleanup);\n\t\t\thooks._pendingEffects.forEach(invokeEffect);\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentIndex = 0;\n\t\t}\n\t}\n\tpreviousComponent = currentComponent;\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.diffed = vnode => {\n\tif (oldAfterDiff) oldAfterDiff(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tif (c.__hooks._pendingEffects.length) afterPaint(afterPaintEffects.push(c));\n\t\tc.__hooks._list.forEach(hookItem => {\n\t\t\tif (hookItem._pendingArgs) {\n\t\t\t\thookItem._args = hookItem._pendingArgs;\n\t\t\t}\n\t\t\thookItem._pendingArgs = undefined;\n\t\t});\n\t}\n\tpreviousComponent = currentComponent = null;\n};\n\n// TODO: Improve typing of commitQueue parameter\n/** @type {(vnode: import('./internal').VNode, commitQueue: any) => void} */\noptions._commit = (vnode, commitQueue) => {\n\tcommitQueue.some(component => {\n\t\ttry {\n\t\t\tcomponent._renderCallbacks.forEach(invokeCleanup);\n\t\t\tcomponent._renderCallbacks = component._renderCallbacks.filter(cb =>\n\t\t\t\tcb._value ? invokeEffect(cb) : true\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tcommitQueue.some(c => {\n\t\t\t\tif (c._renderCallbacks) c._renderCallbacks = [];\n\t\t\t});\n\t\t\tcommitQueue = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t});\n\n\tif (oldCommit) oldCommit(vnode, commitQueue);\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.unmount = vnode => {\n\tif (oldBeforeUnmount) oldBeforeUnmount(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tlet hasErrored;\n\t\tc.__hooks._list.forEach(s => {\n\t\t\ttry {\n\t\t\t\tinvokeCleanup(s);\n\t\t\t} catch (e) {\n\t\t\t\thasErrored = e;\n\t\t\t}\n\t\t});\n\t\tc.__hooks = undefined;\n\t\tif (hasErrored) options._catchError(hasErrored, c._vnode);\n\t}\n};\n\n/**\n * Get a hook's state from the currentComponent\n * @param {number} index The index of the hook to get\n * @param {number} type The index of the hook to get\n * @returns {any}\n */\nfunction getHookState(index, type) {\n\tif (options._hook) {\n\t\toptions._hook(currentComponent, index, currentHook || type);\n\t}\n\tcurrentHook = 0;\n\n\t// Largely inspired by:\n\t// * https://github.com/michael-klein/funcy.js/blob/f6be73468e6ec46b0ff5aa3cc4c9baf72a29025a/src/hooks/core_hooks.mjs\n\t// * https://github.com/michael-klein/funcy.js/blob/650beaa58c43c33a74820a3c98b3c7079cf2e333/src/renderer.mjs\n\t// Other implementations to look at:\n\t// * https://codesandbox.io/s/mnox05qp8\n\tconst hooks =\n\t\tcurrentComponent.__hooks ||\n\t\t(currentComponent.__hooks = {\n\t\t\t_list: [],\n\t\t\t_pendingEffects: []\n\t\t});\n\n\tif (index >= hooks._list.length) {\n\t\thooks._list.push({});\n\t}\n\n\treturn hooks._list[index];\n}\n\n/**\n * @template {unknown} S\n * @param {import('./index').Dispatch>} [initialState]\n * @returns {[S, (state: S) => void]}\n */\nexport function useState(initialState) {\n\tcurrentHook = 1;\n\treturn useReducer(invokeOrReturn, initialState);\n}\n\n/**\n * @template {unknown} S\n * @template {unknown} A\n * @param {import('./index').Reducer} reducer\n * @param {import('./index').Dispatch>} initialState\n * @param {(initialState: any) => void} [init]\n * @returns {[ S, (state: S) => void ]}\n */\nexport function useReducer(reducer, initialState, init) {\n\t/** @type {import('./internal').ReducerHookState} */\n\tconst hookState = getHookState(currentIndex++, 2);\n\thookState._reducer = reducer;\n\tif (!hookState._component) {\n\t\thookState._value = [\n\t\t\t!init ? invokeOrReturn(undefined, initialState) : init(initialState),\n\n\t\t\taction => {\n\t\t\t\tconst currentValue = hookState._nextValue\n\t\t\t\t\t? hookState._nextValue[0]\n\t\t\t\t\t: hookState._value[0];\n\t\t\t\tconst nextValue = hookState._reducer(currentValue, action);\n\n\t\t\t\tif (currentValue !== nextValue) {\n\t\t\t\t\thookState._nextValue = [nextValue, hookState._value[1]];\n\t\t\t\t\thookState._component.setState({});\n\t\t\t\t}\n\t\t\t}\n\t\t];\n\n\t\thookState._component = currentComponent;\n\n\t\tif (!currentComponent._hasScuFromHooks) {\n\t\t\tcurrentComponent._hasScuFromHooks = true;\n\t\t\tlet prevScu = currentComponent.shouldComponentUpdate;\n\t\t\tconst prevCWU = currentComponent.componentWillUpdate;\n\n\t\t\t// If we're dealing with a forced update `shouldComponentUpdate` will\n\t\t\t// not be called. But we use that to update the hook values, so we\n\t\t\t// need to call it.\n\t\t\tcurrentComponent.componentWillUpdate = function (p, s, c) {\n\t\t\t\tif (this._force) {\n\t\t\t\t\tlet tmp = prevScu;\n\t\t\t\t\t// Clear to avoid other sCU hooks from being called\n\t\t\t\t\tprevScu = undefined;\n\t\t\t\t\tupdateHookState(p, s, c);\n\t\t\t\t\tprevScu = tmp;\n\t\t\t\t}\n\n\t\t\t\tif (prevCWU) prevCWU.call(this, p, s, c);\n\t\t\t};\n\n\t\t\t// This SCU has the purpose of bailing out after repeated updates\n\t\t\t// to stateful hooks.\n\t\t\t// we store the next value in _nextValue[0] and keep doing that for all\n\t\t\t// state setters, if we have next states and\n\t\t\t// all next states within a component end up being equal to their original state\n\t\t\t// we are safe to bail out for this specific component.\n\t\t\t/**\n\t\t\t *\n\t\t\t * @type {import('./internal').Component[\"shouldComponentUpdate\"]}\n\t\t\t */\n\t\t\t// @ts-ignore - We don't use TS to downtranspile\n\t\t\t// eslint-disable-next-line no-inner-declarations\n\t\t\tfunction updateHookState(p, s, c) {\n\t\t\t\tif (!hookState._component.__hooks) return true;\n\n\t\t\t\t/** @type {(x: import('./internal').HookState) => x is import('./internal').ReducerHookState} */\n\t\t\t\tconst isStateHook = x => !!x._component;\n\t\t\t\tconst stateHooks =\n\t\t\t\t\thookState._component.__hooks._list.filter(isStateHook);\n\n\t\t\t\tconst allHooksEmpty = stateHooks.every(x => !x._nextValue);\n\t\t\t\t// When we have no updated hooks in the component we invoke the previous SCU or\n\t\t\t\t// traverse the VDOM tree further.\n\t\t\t\tif (allHooksEmpty) {\n\t\t\t\t\treturn prevScu ? prevScu.call(this, p, s, c) : true;\n\t\t\t\t}\n\n\t\t\t\t// We check whether we have components with a nextValue set that\n\t\t\t\t// have values that aren't equal to one another this pushes\n\t\t\t\t// us to update further down the tree\n\t\t\t\tlet shouldUpdate = hookState._component.props !== p;\n\t\t\t\tstateHooks.forEach(hookItem => {\n\t\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\t\tconst currentValue = hookItem._value[0];\n\t\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t\t\thookItem._nextValue = undefined;\n\t\t\t\t\t\tif (currentValue !== hookItem._value[0]) shouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\treturn prevScu\n\t\t\t\t\t? prevScu.call(this, p, s, c) || shouldUpdate\n\t\t\t\t\t: shouldUpdate;\n\t\t\t}\n\n\t\t\tcurrentComponent.shouldComponentUpdate = updateHookState;\n\t\t}\n\t}\n\n\treturn hookState._nextValue || hookState._value;\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 3);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent.__hooks._pendingEffects.push(state);\n\t}\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useLayoutEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 4);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent._renderCallbacks.push(state);\n\t}\n}\n\n/** @type {(initialValue: unknown) => unknown} */\nexport function useRef(initialValue) {\n\tcurrentHook = 5;\n\treturn useMemo(() => ({ current: initialValue }), []);\n}\n\n/**\n * @param {object} ref\n * @param {() => object} createHandle\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useImperativeHandle(ref, createHandle, args) {\n\tcurrentHook = 6;\n\tuseLayoutEffect(\n\t\t() => {\n\t\t\tif (typeof ref == 'function') {\n\t\t\t\tconst result = ref(createHandle());\n\t\t\t\treturn () => {\n\t\t\t\t\tref(null);\n\t\t\t\t\tif (result && typeof result == 'function') result();\n\t\t\t\t};\n\t\t\t} else if (ref) {\n\t\t\t\tref.current = createHandle();\n\t\t\t\treturn () => (ref.current = null);\n\t\t\t}\n\t\t},\n\t\targs == null ? args : args.concat(ref)\n\t);\n}\n\n/**\n * @template {unknown} T\n * @param {() => T} factory\n * @param {unknown[]} args\n * @returns {T}\n */\nexport function useMemo(factory, args) {\n\t/** @type {import('./internal').MemoHookState} */\n\tconst state = getHookState(currentIndex++, 7);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._value = factory();\n\t\tstate._args = args;\n\t\tstate._factory = factory;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * @param {() => void} callback\n * @param {unknown[]} args\n * @returns {() => void}\n */\nexport function useCallback(callback, args) {\n\tcurrentHook = 8;\n\treturn useMemo(() => callback, args);\n}\n\n/**\n * @param {import('./internal').PreactContext} context\n */\nexport function useContext(context) {\n\tconst provider = currentComponent.context[context._id];\n\t// We could skip this call here, but than we'd not call\n\t// `options._hook`. We need to do that in order to make\n\t// the devtools aware of this hook.\n\t/** @type {import('./internal').ContextHookState} */\n\tconst state = getHookState(currentIndex++, 9);\n\t// The devtools needs access to the context object to\n\t// be able to pull of the default value when no provider\n\t// is present in the tree.\n\tstate._context = context;\n\tif (!provider) return context._defaultValue;\n\t// This is probably not safe to convert to \"!\"\n\tif (state._value == null) {\n\t\tstate._value = true;\n\t\tprovider.sub(currentComponent);\n\t}\n\treturn provider.props.value;\n}\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, cb?: (value: T) => string | number) => void}\n */\nexport function useDebugValue(value, formatter) {\n\tif (options.useDebugValue) {\n\t\toptions.useDebugValue(\n\t\t\tformatter ? formatter(value) : /** @type {any}*/ (value)\n\t\t);\n\t}\n}\n\n/**\n * @param {(error: unknown, errorInfo: import('preact').ErrorInfo) => void} cb\n * @returns {[unknown, () => void]}\n */\nexport function useErrorBoundary(cb) {\n\t/** @type {import('./internal').ErrorBoundaryHookState} */\n\tconst state = getHookState(currentIndex++, 10);\n\tconst errState = useState();\n\tstate._value = cb;\n\tif (!currentComponent.componentDidCatch) {\n\t\tcurrentComponent.componentDidCatch = (err, errorInfo) => {\n\t\t\tif (state._value) state._value(err, errorInfo);\n\t\t\terrState[1](err);\n\t\t};\n\t}\n\treturn [\n\t\terrState[0],\n\t\t() => {\n\t\t\terrState[1](undefined);\n\t\t}\n\t];\n}\n\n/** @type {() => string} */\nexport function useId() {\n\t/** @type {import('./internal').IdHookState} */\n\tconst state = getHookState(currentIndex++, 11);\n\tif (!state._value) {\n\t\t// Grab either the root node or the nearest async boundary node.\n\t\t/** @type {import('./internal').VNode} */\n\t\tlet root = currentComponent._vnode;\n\t\twhile (root !== null && !root._mask && root._parent !== null) {\n\t\t\troot = root._parent;\n\t\t}\n\n\t\tlet mask = root._mask || (root._mask = [0, 0]);\n\t\tstate._value = 'P' + mask[0] + '-' + mask[1]++;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * After paint effects consumer.\n */\nfunction flushAfterPaintEffects() {\n\tlet component;\n\twhile ((component = afterPaintEffects.shift())) {\n\t\tif (!component._parentDom || !component.__hooks) continue;\n\t\ttry {\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t} catch (e) {\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t}\n}\n\nlet HAS_RAF = typeof requestAnimationFrame == 'function';\n\n/**\n * Schedule a callback to be invoked after the browser has a chance to paint a new frame.\n * Do this by combining requestAnimationFrame (rAF) + setTimeout to invoke a callback after\n * the next browser frame.\n *\n * Also, schedule a timeout in parallel to the the rAF to ensure the callback is invoked\n * even if RAF doesn't fire (for example if the browser tab is not visible)\n *\n * @param {() => void} callback\n */\nfunction afterNextFrame(callback) {\n\tconst done = () => {\n\t\tclearTimeout(timeout);\n\t\tif (HAS_RAF) cancelAnimationFrame(raf);\n\t\tsetTimeout(callback);\n\t};\n\tconst timeout = setTimeout(done, RAF_TIMEOUT);\n\n\tlet raf;\n\tif (HAS_RAF) {\n\t\traf = requestAnimationFrame(done);\n\t}\n}\n\n// Note: if someone used options.debounceRendering = requestAnimationFrame,\n// then effects will ALWAYS run on the NEXT frame instead of the current one, incurring a ~16ms delay.\n// Perhaps this is not such a big deal.\n/**\n * Schedule afterPaintEffects flush after the browser paints\n * @param {number} newQueueLength\n * @returns {void}\n */\nfunction afterPaint(newQueueLength) {\n\tif (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) {\n\t\tprevRaf = options.requestAnimationFrame;\n\t\t(prevRaf || afterNextFrame)(flushAfterPaintEffects);\n\t}\n}\n\n/**\n * @param {import('./internal').HookState} hook\n * @returns {void}\n */\nfunction invokeCleanup(hook) {\n\t// A hook cleanup can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\tlet cleanup = hook._cleanup;\n\tif (typeof cleanup == 'function') {\n\t\thook._cleanup = undefined;\n\t\tcleanup();\n\t}\n\n\tcurrentComponent = comp;\n}\n\n/**\n * Invoke a Hook's effect\n * @param {import('./internal').EffectHookState} hook\n * @returns {void}\n */\nfunction invokeEffect(hook) {\n\t// A hook call can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\thook._cleanup = hook._value();\n\tcurrentComponent = comp;\n}\n\n/**\n * @param {unknown[]} oldArgs\n * @param {unknown[]} newArgs\n * @returns {boolean}\n */\nfunction argsChanged(oldArgs, newArgs) {\n\treturn (\n\t\t!oldArgs ||\n\t\toldArgs.length !== newArgs.length ||\n\t\tnewArgs.some((arg, index) => arg !== oldArgs[index])\n\t);\n}\n\n/**\n * @template Arg\n * @param {Arg} arg\n * @param {(arg: Arg) => any} f\n * @returns {any}\n */\nfunction invokeOrReturn(arg, f) {\n\treturn typeof f == 'function' ? f(arg) : f;\n}\n"],"names":["currentIndex","currentComponent","previousComponent","prevRaf","currentHook","afterPaintEffects","options","_options","oldBeforeDiff","__b","oldBeforeRender","__r","oldAfterDiff","diffed","oldCommit","__c","oldBeforeUnmount","unmount","oldRoot","__","getHookState","index","type","__h","hooks","__H","length","push","useState","initialState","useReducer","invokeOrReturn","reducer","init","hookState","_reducer","undefined","action","currentValue","__N","nextValue","setState","__f","updateHookState","p","s","c","stateHooks","filter","x","every","prevScu","call","this","shouldUpdate","props","forEach","hookItem","shouldComponentUpdate","prevCWU","componentWillUpdate","__e","tmp","useEffect","callback","args","state","__s","argsChanged","_pendingArgs","useLayoutEffect","useRef","initialValue","useMemo","current","useImperativeHandle","ref","createHandle","result","concat","factory","useCallback","useContext","context","provider","sub","value","useDebugValue","formatter","useErrorBoundary","cb","errState","componentDidCatch","err","errorInfo","useId","root","__v","__m","mask","flushAfterPaintEffects","component","shift","__P","invokeCleanup","invokeEffect","e","vnode","parentDom","__k","requestAnimationFrame","afterNextFrame","commitQueue","some","hasErrored","HAS_RAF","raf","done","clearTimeout","timeout","cancelAnimationFrame","setTimeout","hook","comp","cleanup","oldArgs","newArgs","arg","f"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/hooks/dist/hooks.umd.js b/node_modules/preact/hooks/dist/hooks.umd.js index 47ab528..f140f2b 100644 --- a/node_modules/preact/hooks/dist/hooks.umd.js +++ b/node_modules/preact/hooks/dist/hooks.umd.js @@ -1,2 +1,2 @@ -!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("preact")):"function"==typeof define&&define.amd?define(["exports","preact"],t):t((n||self).preactHooks={},n.preact)}(this,function(n,t){var u,r,i,o,f=0,e=[],c=[],a=t.options.__b,v=t.options.__r,l=t.options.diffed,d=t.options.__c,s=t.options.unmount;function p(n,u){t.options.__h&&t.options.__h(r,n,f||u),f=0;var i=r.__H||(r.__H={__:[],__h:[]});return n>=i.__.length&&i.__.push({__V:c}),i.__[n]}function h(n){return f=1,y(g,n)}function y(n,t,i){var o=p(u++,2);if(o.t=n,!o.__c&&(o.__=[i?i(t):g(void 0,t),function(n){var t=o.__N?o.__N[0]:o.__[0],u=o.t(t,n);t!==u&&(o.__N=[u,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,u){if(!o.__c.__H)return!0;var r=o.__c.__H.__.filter(function(n){return n.__c});if(r.every(function(n){return!n.__N}))return!e||e.call(this,n,t,u);var i=!1;return r.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),!(!i&&o.__c.props===n)&&(!e||e.call(this,n,t,u))};r.u=!0;var e=r.shouldComponentUpdate,c=r.componentWillUpdate;r.componentWillUpdate=function(n,t,u){if(this.__e){var r=e;e=void 0,f(n,t,u),e=r}c&&c.call(this,n,t,u)},r.shouldComponentUpdate=f}return o.__N||o.__}function m(n,i){var o=p(u++,4);!t.options.__s&&F(o.__H,i)&&(o.__=n,o.i=i,r.__h.push(o))}function _(n,t){var r=p(u++,7);return F(r.__H,t)?(r.__V=n(),r.i=t,r.__h=n,r.__V):r.__}function T(){for(var n;n=e.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(x),n.__H.__h.forEach(A),n.__H.__h=[]}catch(u){n.__H.__h=[],t.options.__e(u,n.__v)}}t.options.__b=function(n){r=null,a&&a(n)},t.options.__r=function(n){v&&v(n),u=0;var t=(r=n.__c).__H;t&&(i===r?(t.__h=[],r.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=c,n.__N=n.i=void 0})):(t.__h.forEach(x),t.__h.forEach(A),t.__h=[],u=0)),i=r},t.options.diffed=function(n){l&&l(n);var u=n.__c;u&&u.__H&&(u.__H.__h.length&&(1!==e.push(u)&&o===t.options.requestAnimationFrame||((o=t.options.requestAnimationFrame)||q)(T)),u.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==c&&(n.__=n.__V),n.i=void 0,n.__V=c})),i=r=null},t.options.__c=function(n,u){u.some(function(n){try{n.__h.forEach(x),n.__h=n.__h.filter(function(n){return!n.__||A(n)})}catch(r){u.some(function(n){n.__h&&(n.__h=[])}),u=[],t.options.__e(r,n.__v)}}),d&&d(n,u)},t.options.unmount=function(n){s&&s(n);var u,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{x(n)}catch(n){u=n}}),r.__H=void 0,u&&t.options.__e(u,r.__v))};var b="function"==typeof requestAnimationFrame;function q(n){var t,u=function(){clearTimeout(r),b&&cancelAnimationFrame(t),setTimeout(n)},r=setTimeout(u,100);b&&(t=requestAnimationFrame(u))}function x(n){var t=r,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),r=t}function A(n){var t=r;n.__c=n.__(),r=t}function F(n,t){return!n||n.length!==t.length||t.some(function(t,u){return t!==n[u]})}function g(n,t){return"function"==typeof t?t(n):t}n.useCallback=function(n,t){return f=8,_(function(){return n},t)},n.useContext=function(n){var t=r.context[n.__c],i=p(u++,9);return i.c=n,t?(null==i.__&&(i.__=!0,t.sub(r)),t.props.value):n.__},n.useDebugValue=function(n,u){t.options.useDebugValue&&t.options.useDebugValue(u?u(n):n)},n.useEffect=function(n,i){var o=p(u++,3);!t.options.__s&&F(o.__H,i)&&(o.__=n,o.i=i,r.__H.__h.push(o))},n.useErrorBoundary=function(n){var t=p(u++,10),i=h();return t.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,u){t.__&&t.__(n,u),i[1](n)}),[i[0],function(){i[1](void 0)}]},n.useId=function(){var n=p(u++,11);if(!n.__){for(var t=r.__v;null!==t&&!t.__m&&null!==t.__;)t=t.__;var i=t.__m||(t.__m=[0,0]);n.__="P"+i[0]+"-"+i[1]++}return n.__},n.useImperativeHandle=function(n,t,u){f=6,m(function(){return"function"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==u?u:u.concat(n))},n.useLayoutEffect=m,n.useMemo=_,n.useReducer=y,n.useRef=function(n){return f=5,_(function(){return{current:n}},[])},n.useState=h}); +!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("preact")):"function"==typeof define&&define.amd?define(["exports","preact"],t):t((n||self).preactHooks={},n.preact)}(this,function(n,t){var u,i,r,o,f=0,c=[],e=t.options,a=e.__b,v=e.__r,l=e.diffed,d=e.__c,s=e.unmount,p=e.__;function y(n,t){e.__h&&e.__h(i,n,f||t),f=0;var u=i.__H||(i.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function h(n){return f=1,m(j,n)}function m(n,t,r){var o=y(u++,2);if(o.t=n,!o.__c&&(o.__=[r?r(t):j(void 0,t),function(n){var t=o.__N?o.__N[0]:o.__[0],u=o.t(t,n);t!==u&&(o.__N=[u,o.__[1]],o.__c.setState({}))}],o.__c=i,!i.__f)){var f=function(n,t,u){if(!o.__c.__H)return!0;var i=o.__c.__H.__.filter(function(n){return!!n.__c});if(i.every(function(n){return!n.__N}))return!c||c.call(this,n,t,u);var r=o.__c.props!==n;return i.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(r=!0)}}),c&&c.call(this,n,t,u)||r};i.__f=!0;var c=i.shouldComponentUpdate,e=i.componentWillUpdate;i.componentWillUpdate=function(n,t,u){if(this.__e){var i=c;c=void 0,f(n,t,u),c=i}e&&e.call(this,n,t,u)},i.shouldComponentUpdate=f}return o.__N||o.__}function T(n,t){var r=y(u++,4);!e.__s&&g(r.__H,t)&&(r.__=n,r.u=t,i.__h.push(r))}function _(n,t){var i=y(u++,7);return g(i.__H,t)&&(i.__=n(),i.__H=t,i.__h=n),i.__}function b(){for(var n;n=c.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(A),n.__H.__h.forEach(F),n.__H.__h=[]}catch(t){n.__H.__h=[],e.__e(t,n.__v)}}e.__b=function(n){i=null,a&&a(n)},e.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),p&&p(n,t)},e.__r=function(n){v&&v(n),u=0;var t=(i=n.__c).__H;t&&(r===i?(t.__h=[],i.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.forEach(A),t.__h.forEach(F),t.__h=[],u=0)),r=i},e.diffed=function(n){l&&l(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==c.push(t)&&o===e.requestAnimationFrame||((o=e.requestAnimationFrame)||x)(b)),t.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),r=i=null},e.__c=function(n,t){t.some(function(n){try{n.__h.forEach(A),n.__h=n.__h.filter(function(n){return!n.__||F(n)})}catch(u){t.some(function(n){n.__h&&(n.__h=[])}),t=[],e.__e(u,n.__v)}}),d&&d(n,t)},e.unmount=function(n){s&&s(n);var t,u=n.__c;u&&u.__H&&(u.__H.__.forEach(function(n){try{A(n)}catch(n){t=n}}),u.__H=void 0,t&&e.__e(t,u.__v))};var q="function"==typeof requestAnimationFrame;function x(n){var t,u=function(){clearTimeout(i),q&&cancelAnimationFrame(t),setTimeout(n)},i=setTimeout(u,35);q&&(t=requestAnimationFrame(u))}function A(n){var t=i,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),i=t}function F(n){var t=i;n.__c=n.__(),i=t}function g(n,t){return!n||n.length!==t.length||t.some(function(t,u){return t!==n[u]})}function j(n,t){return"function"==typeof t?t(n):t}n.useCallback=function(n,t){return f=8,_(function(){return n},t)},n.useContext=function(n){var t=i.context[n.__c],r=y(u++,9);return r.c=n,t?(null==r.__&&(r.__=!0,t.sub(i)),t.props.value):n.__},n.useDebugValue=function(n,t){e.useDebugValue&&e.useDebugValue(t?t(n):n)},n.useEffect=function(n,t){var r=y(u++,3);!e.__s&&g(r.__H,t)&&(r.__=n,r.u=t,i.__H.__h.push(r))},n.useErrorBoundary=function(n){var t=y(u++,10),r=h();return t.__=n,i.componentDidCatch||(i.componentDidCatch=function(n,u){t.__&&t.__(n,u),r[1](n)}),[r[0],function(){r[1](void 0)}]},n.useId=function(){var n=y(u++,11);if(!n.__){for(var t=i.__v;null!==t&&!t.__m&&null!==t.__;)t=t.__;var r=t.__m||(t.__m=[0,0]);n.__="P"+r[0]+"-"+r[1]++}return n.__},n.useImperativeHandle=function(n,t,u){f=6,T(function(){if("function"==typeof n){var u=n(t());return function(){n(null),u&&"function"==typeof u&&u()}}if(n)return n.current=t(),function(){return n.current=null}},null==u?u:u.concat(n))},n.useLayoutEffect=T,n.useMemo=_,n.useReducer=m,n.useRef=function(n){return f=5,_(function(){return{current:n}},[])},n.useState=h}); //# sourceMappingURL=hooks.umd.js.map diff --git a/node_modules/preact/hooks/dist/hooks.umd.js.map b/node_modules/preact/hooks/dist/hooks.umd.js.map index 5bd84f6..45d93dc 100644 --- a/node_modules/preact/hooks/dist/hooks.umd.js.map +++ b/node_modules/preact/hooks/dist/hooks.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"hooks.umd.js","sources":["../src/index.js"],"sourcesContent":["import { options } from 'preact';\n\n/** @type {number} */\nlet currentIndex;\n\n/** @type {import('./internal').Component} */\nlet currentComponent;\n\n/** @type {import('./internal').Component} */\nlet previousComponent;\n\n/** @type {number} */\nlet currentHook = 0;\n\n/** @type {Array} */\nlet afterPaintEffects = [];\n\nlet EMPTY = [];\n\nlet oldBeforeDiff = options._diff;\nlet oldBeforeRender = options._render;\nlet oldAfterDiff = options.diffed;\nlet oldCommit = options._commit;\nlet oldBeforeUnmount = options.unmount;\n\nconst RAF_TIMEOUT = 100;\nlet prevRaf;\n\noptions._diff = vnode => {\n\tcurrentComponent = null;\n\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n};\n\noptions._render = vnode => {\n\tif (oldBeforeRender) oldBeforeRender(vnode);\n\n\tcurrentComponent = vnode._component;\n\tcurrentIndex = 0;\n\n\tconst hooks = currentComponent.__hooks;\n\tif (hooks) {\n\t\tif (previousComponent === currentComponent) {\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentComponent._renderCallbacks = [];\n\t\t\thooks._list.forEach(hookItem => {\n\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t}\n\t\t\t\thookItem._pendingValue = EMPTY;\n\t\t\t\thookItem._nextValue = hookItem._pendingArgs = undefined;\n\t\t\t});\n\t\t} else {\n\t\t\thooks._pendingEffects.forEach(invokeCleanup);\n\t\t\thooks._pendingEffects.forEach(invokeEffect);\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentIndex = 0;\n\t\t}\n\t}\n\tpreviousComponent = currentComponent;\n};\n\noptions.diffed = vnode => {\n\tif (oldAfterDiff) oldAfterDiff(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tif (c.__hooks._pendingEffects.length) afterPaint(afterPaintEffects.push(c));\n\t\tc.__hooks._list.forEach(hookItem => {\n\t\t\tif (hookItem._pendingArgs) {\n\t\t\t\thookItem._args = hookItem._pendingArgs;\n\t\t\t}\n\t\t\tif (hookItem._pendingValue !== EMPTY) {\n\t\t\t\thookItem._value = hookItem._pendingValue;\n\t\t\t}\n\t\t\thookItem._pendingArgs = undefined;\n\t\t\thookItem._pendingValue = EMPTY;\n\t\t});\n\t}\n\tpreviousComponent = currentComponent = null;\n};\n\noptions._commit = (vnode, commitQueue) => {\n\tcommitQueue.some(component => {\n\t\ttry {\n\t\t\tcomponent._renderCallbacks.forEach(invokeCleanup);\n\t\t\tcomponent._renderCallbacks = component._renderCallbacks.filter(cb =>\n\t\t\t\tcb._value ? invokeEffect(cb) : true\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tcommitQueue.some(c => {\n\t\t\t\tif (c._renderCallbacks) c._renderCallbacks = [];\n\t\t\t});\n\t\t\tcommitQueue = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t});\n\n\tif (oldCommit) oldCommit(vnode, commitQueue);\n};\n\noptions.unmount = vnode => {\n\tif (oldBeforeUnmount) oldBeforeUnmount(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tlet hasErrored;\n\t\tc.__hooks._list.forEach(s => {\n\t\t\ttry {\n\t\t\t\tinvokeCleanup(s);\n\t\t\t} catch (e) {\n\t\t\t\thasErrored = e;\n\t\t\t}\n\t\t});\n\t\tc.__hooks = undefined;\n\t\tif (hasErrored) options._catchError(hasErrored, c._vnode);\n\t}\n};\n\n/**\n * Get a hook's state from the currentComponent\n * @param {number} index The index of the hook to get\n * @param {number} type The index of the hook to get\n * @returns {any}\n */\nfunction getHookState(index, type) {\n\tif (options._hook) {\n\t\toptions._hook(currentComponent, index, currentHook || type);\n\t}\n\tcurrentHook = 0;\n\n\t// Largely inspired by:\n\t// * https://github.com/michael-klein/funcy.js/blob/f6be73468e6ec46b0ff5aa3cc4c9baf72a29025a/src/hooks/core_hooks.mjs\n\t// * https://github.com/michael-klein/funcy.js/blob/650beaa58c43c33a74820a3c98b3c7079cf2e333/src/renderer.mjs\n\t// Other implementations to look at:\n\t// * https://codesandbox.io/s/mnox05qp8\n\tconst hooks =\n\t\tcurrentComponent.__hooks ||\n\t\t(currentComponent.__hooks = {\n\t\t\t_list: [],\n\t\t\t_pendingEffects: []\n\t\t});\n\n\tif (index >= hooks._list.length) {\n\t\thooks._list.push({ _pendingValue: EMPTY });\n\t}\n\treturn hooks._list[index];\n}\n\n/**\n * @param {import('./index').StateUpdater} [initialState]\n */\nexport function useState(initialState) {\n\tcurrentHook = 1;\n\treturn useReducer(invokeOrReturn, initialState);\n}\n\n/**\n * @param {import('./index').Reducer} reducer\n * @param {import('./index').StateUpdater} initialState\n * @param {(initialState: any) => void} [init]\n * @returns {[ any, (state: any) => void ]}\n */\nexport function useReducer(reducer, initialState, init) {\n\t/** @type {import('./internal').ReducerHookState} */\n\tconst hookState = getHookState(currentIndex++, 2);\n\thookState._reducer = reducer;\n\tif (!hookState._component) {\n\t\thookState._value = [\n\t\t\t!init ? invokeOrReturn(undefined, initialState) : init(initialState),\n\n\t\t\taction => {\n\t\t\t\tconst currentValue = hookState._nextValue\n\t\t\t\t\t? hookState._nextValue[0]\n\t\t\t\t\t: hookState._value[0];\n\t\t\t\tconst nextValue = hookState._reducer(currentValue, action);\n\n\t\t\t\tif (currentValue !== nextValue) {\n\t\t\t\t\thookState._nextValue = [nextValue, hookState._value[1]];\n\t\t\t\t\thookState._component.setState({});\n\t\t\t\t}\n\t\t\t}\n\t\t];\n\n\t\thookState._component = currentComponent;\n\n\t\tif (!currentComponent._hasScuFromHooks) {\n\t\t\tcurrentComponent._hasScuFromHooks = true;\n\t\t\tlet prevScu = currentComponent.shouldComponentUpdate;\n\t\t\tconst prevCWU = currentComponent.componentWillUpdate;\n\n\t\t\t// If we're dealing with a forced update `shouldComponentUpdate` will\n\t\t\t// not be called. But we use that to update the hook values, so we\n\t\t\t// need to call it.\n\t\t\tcurrentComponent.componentWillUpdate = function (p, s, c) {\n\t\t\t\tif (this._force) {\n\t\t\t\t\tlet tmp = prevScu;\n\t\t\t\t\t// Clear to avoid other sCU hooks from being called\n\t\t\t\t\tprevScu = undefined;\n\t\t\t\t\tupdateHookState(p, s, c);\n\t\t\t\t\tprevScu = tmp;\n\t\t\t\t}\n\n\t\t\t\tif (prevCWU) prevCWU.call(this, p, s, c);\n\t\t\t};\n\n\t\t\t// This SCU has the purpose of bailing out after repeated updates\n\t\t\t// to stateful hooks.\n\t\t\t// we store the next value in _nextValue[0] and keep doing that for all\n\t\t\t// state setters, if we have next states and\n\t\t\t// all next states within a component end up being equal to their original state\n\t\t\t// we are safe to bail out for this specific component.\n\t\t\t/**\n\t\t\t *\n\t\t\t * @type {import('./internal').Component[\"shouldComponentUpdate\"]}\n\t\t\t */\n\t\t\t// @ts-ignore - We don't use TS to downtranspile\n\t\t\t// eslint-disable-next-line no-inner-declarations\n\t\t\tfunction updateHookState(p, s, c) {\n\t\t\t\tif (!hookState._component.__hooks) return true;\n\n\t\t\t\tconst stateHooks = hookState._component.__hooks._list.filter(\n\t\t\t\t\tx => x._component\n\t\t\t\t);\n\t\t\t\tconst allHooksEmpty = stateHooks.every(x => !x._nextValue);\n\t\t\t\t// When we have no updated hooks in the component we invoke the previous SCU or\n\t\t\t\t// traverse the VDOM tree further.\n\t\t\t\tif (allHooksEmpty) {\n\t\t\t\t\treturn prevScu ? prevScu.call(this, p, s, c) : true;\n\t\t\t\t}\n\n\t\t\t\t// We check whether we have components with a nextValue set that\n\t\t\t\t// have values that aren't equal to one another this pushes\n\t\t\t\t// us to update further down the tree\n\t\t\t\tlet shouldUpdate = false;\n\t\t\t\tstateHooks.forEach(hookItem => {\n\t\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\t\tconst currentValue = hookItem._value[0];\n\t\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t\t\thookItem._nextValue = undefined;\n\t\t\t\t\t\tif (currentValue !== hookItem._value[0]) shouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\treturn shouldUpdate || hookState._component.props !== p\n\t\t\t\t\t? prevScu\n\t\t\t\t\t\t? prevScu.call(this, p, s, c)\n\t\t\t\t\t\t: true\n\t\t\t\t\t: false;\n\t\t\t}\n\n\t\t\tcurrentComponent.shouldComponentUpdate = updateHookState;\n\t\t}\n\t}\n\n\treturn hookState._nextValue || hookState._value;\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 3);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent.__hooks._pendingEffects.push(state);\n\t}\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {any[]} args\n */\nexport function useLayoutEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 4);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent._renderCallbacks.push(state);\n\t}\n}\n\nexport function useRef(initialValue) {\n\tcurrentHook = 5;\n\treturn useMemo(() => ({ current: initialValue }), []);\n}\n\n/**\n * @param {object} ref\n * @param {() => object} createHandle\n * @param {any[]} args\n */\nexport function useImperativeHandle(ref, createHandle, args) {\n\tcurrentHook = 6;\n\tuseLayoutEffect(\n\t\t() => {\n\t\t\tif (typeof ref == 'function') {\n\t\t\t\tref(createHandle());\n\t\t\t\treturn () => ref(null);\n\t\t\t} else if (ref) {\n\t\t\t\tref.current = createHandle();\n\t\t\t\treturn () => (ref.current = null);\n\t\t\t}\n\t\t},\n\t\targs == null ? args : args.concat(ref)\n\t);\n}\n\n/**\n * @param {() => any} factory\n * @param {any[]} args\n */\nexport function useMemo(factory, args) {\n\t/** @type {import('./internal').MemoHookState} */\n\tconst state = getHookState(currentIndex++, 7);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._pendingValue = factory();\n\t\tstate._pendingArgs = args;\n\t\tstate._factory = factory;\n\t\treturn state._pendingValue;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * @param {() => void} callback\n * @param {any[]} args\n */\nexport function useCallback(callback, args) {\n\tcurrentHook = 8;\n\treturn useMemo(() => callback, args);\n}\n\n/**\n * @param {import('./internal').PreactContext} context\n */\nexport function useContext(context) {\n\tconst provider = currentComponent.context[context._id];\n\t// We could skip this call here, but than we'd not call\n\t// `options._hook`. We need to do that in order to make\n\t// the devtools aware of this hook.\n\t/** @type {import('./internal').ContextHookState} */\n\tconst state = getHookState(currentIndex++, 9);\n\t// The devtools needs access to the context object to\n\t// be able to pull of the default value when no provider\n\t// is present in the tree.\n\tstate._context = context;\n\tif (!provider) return context._defaultValue;\n\t// This is probably not safe to convert to \"!\"\n\tif (state._value == null) {\n\t\tstate._value = true;\n\t\tprovider.sub(currentComponent);\n\t}\n\treturn provider.props.value;\n}\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, cb?: (value: T) => string | number) => void}\n */\nexport function useDebugValue(value, formatter) {\n\tif (options.useDebugValue) {\n\t\toptions.useDebugValue(formatter ? formatter(value) : value);\n\t}\n}\n\n/**\n * @param {(error: any, errorInfo: import('preact').ErrorInfo) => void} cb\n */\nexport function useErrorBoundary(cb) {\n\t/** @type {import('./internal').ErrorBoundaryHookState} */\n\tconst state = getHookState(currentIndex++, 10);\n\tconst errState = useState();\n\tstate._value = cb;\n\tif (!currentComponent.componentDidCatch) {\n\t\tcurrentComponent.componentDidCatch = (err, errorInfo) => {\n\t\t\tif (state._value) state._value(err, errorInfo);\n\t\t\terrState[1](err);\n\t\t};\n\t}\n\treturn [\n\t\terrState[0],\n\t\t() => {\n\t\t\terrState[1](undefined);\n\t\t}\n\t];\n}\n\nexport function useId() {\n\tconst state = getHookState(currentIndex++, 11);\n\tif (!state._value) {\n\t\t// Grab either the root node or the nearest async boundary node.\n\t\t/** @type {import('./internal.d').VNode} */\n\t\tlet root = currentComponent._vnode;\n\t\twhile (root !== null && !root._mask && root._parent !== null) {\n\t\t\troot = root._parent;\n\t\t}\n\n\t\tlet mask = root._mask || (root._mask = [0, 0]);\n\t\tstate._value = 'P' + mask[0] + '-' + mask[1]++;\n\t}\n\n\treturn state._value;\n}\n/**\n * After paint effects consumer.\n */\nfunction flushAfterPaintEffects() {\n\tlet component;\n\twhile ((component = afterPaintEffects.shift())) {\n\t\tif (!component._parentDom || !component.__hooks) continue;\n\t\ttry {\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t} catch (e) {\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t}\n}\n\nlet HAS_RAF = typeof requestAnimationFrame == 'function';\n\n/**\n * Schedule a callback to be invoked after the browser has a chance to paint a new frame.\n * Do this by combining requestAnimationFrame (rAF) + setTimeout to invoke a callback after\n * the next browser frame.\n *\n * Also, schedule a timeout in parallel to the the rAF to ensure the callback is invoked\n * even if RAF doesn't fire (for example if the browser tab is not visible)\n *\n * @param {() => void} callback\n */\nfunction afterNextFrame(callback) {\n\tconst done = () => {\n\t\tclearTimeout(timeout);\n\t\tif (HAS_RAF) cancelAnimationFrame(raf);\n\t\tsetTimeout(callback);\n\t};\n\tconst timeout = setTimeout(done, RAF_TIMEOUT);\n\n\tlet raf;\n\tif (HAS_RAF) {\n\t\traf = requestAnimationFrame(done);\n\t}\n}\n\n// Note: if someone used options.debounceRendering = requestAnimationFrame,\n// then effects will ALWAYS run on the NEXT frame instead of the current one, incurring a ~16ms delay.\n// Perhaps this is not such a big deal.\n/**\n * Schedule afterPaintEffects flush after the browser paints\n * @param {number} newQueueLength\n */\nfunction afterPaint(newQueueLength) {\n\tif (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) {\n\t\tprevRaf = options.requestAnimationFrame;\n\t\t(prevRaf || afterNextFrame)(flushAfterPaintEffects);\n\t}\n}\n\n/**\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeCleanup(hook) {\n\t// A hook cleanup can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\tlet cleanup = hook._cleanup;\n\tif (typeof cleanup == 'function') {\n\t\thook._cleanup = undefined;\n\t\tcleanup();\n\t}\n\n\tcurrentComponent = comp;\n}\n\n/**\n * Invoke a Hook's effect\n * @param {import('./internal').EffectHookState} hook\n */\nfunction invokeEffect(hook) {\n\t// A hook call can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\thook._cleanup = hook._value();\n\tcurrentComponent = comp;\n}\n\n/**\n * @param {any[]} oldArgs\n * @param {any[]} newArgs\n */\nfunction argsChanged(oldArgs, newArgs) {\n\treturn (\n\t\t!oldArgs ||\n\t\toldArgs.length !== newArgs.length ||\n\t\tnewArgs.some((arg, index) => arg !== oldArgs[index])\n\t);\n}\n\nfunction invokeOrReturn(arg, f) {\n\treturn typeof f == 'function' ? f(arg) : f;\n}\n"],"names":["currentIndex","currentComponent","previousComponent","prevRaf","currentHook","afterPaintEffects","EMPTY","oldBeforeDiff","options","__b","oldBeforeRender","__r","oldAfterDiff","diffed","oldCommit","__c","oldBeforeUnmount","unmount","getHookState","index","type","__h","hooks","__H","__","length","push","__V","useState","initialState","useReducer","invokeOrReturn","reducer","init","hookState","_reducer","undefined","action","currentValue","__N","nextValue","setState","_hasScuFromHooks","updateHookState","p","s","c","stateHooks","filter","x","every","prevScu","call","this","shouldUpdate","forEach","hookItem","props","shouldComponentUpdate","prevCWU","componentWillUpdate","__e","tmp","useLayoutEffect","callback","args","state","argsChanged","_pendingArgs","useMemo","factory","flushAfterPaintEffects","component","shift","__P","invokeCleanup","invokeEffect","e","__v","vnode","requestAnimationFrame","afterNextFrame","commitQueue","some","cb","hasErrored","HAS_RAF","raf","done","clearTimeout","timeout","cancelAnimationFrame","setTimeout","hook","comp","cleanup","oldArgs","newArgs","arg","f","context","provider","sub","value","useDebugValue","formatter","useEffect","__s","errState","componentDidCatch","err","errorInfo","root","__m","mask","ref","createHandle","current","concat","useRef","initialValue"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"hooks.umd.js","sources":["../src/index.js"],"sourcesContent":["import { options as _options } from 'preact';\n\n/** @type {number} */\nlet currentIndex;\n\n/** @type {import('./internal').Component} */\nlet currentComponent;\n\n/** @type {import('./internal').Component} */\nlet previousComponent;\n\n/** @type {number} */\nlet currentHook = 0;\n\n/** @type {Array} */\nlet afterPaintEffects = [];\n\n// Cast to use internal Options type\nconst options = /** @type {import('./internal').Options} */ (_options);\n\nlet oldBeforeDiff = options._diff;\nlet oldBeforeRender = options._render;\nlet oldAfterDiff = options.diffed;\nlet oldCommit = options._commit;\nlet oldBeforeUnmount = options.unmount;\nlet oldRoot = options._root;\n\n// We take the minimum timeout for requestAnimationFrame to ensure that\n// the callback is invoked after the next frame. 35ms is based on a 30hz\n// refresh rate, which is the minimum rate for a smooth user experience.\nconst RAF_TIMEOUT = 35;\nlet prevRaf;\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions._diff = vnode => {\n\tcurrentComponent = null;\n\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n};\n\noptions._root = (vnode, parentDom) => {\n\tif (vnode && parentDom._children && parentDom._children._mask) {\n\t\tvnode._mask = parentDom._children._mask;\n\t}\n\n\tif (oldRoot) oldRoot(vnode, parentDom);\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions._render = vnode => {\n\tif (oldBeforeRender) oldBeforeRender(vnode);\n\n\tcurrentComponent = vnode._component;\n\tcurrentIndex = 0;\n\n\tconst hooks = currentComponent.__hooks;\n\tif (hooks) {\n\t\tif (previousComponent === currentComponent) {\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentComponent._renderCallbacks = [];\n\t\t\thooks._list.forEach(hookItem => {\n\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t}\n\t\t\t\thookItem._pendingArgs = hookItem._nextValue = undefined;\n\t\t\t});\n\t\t} else {\n\t\t\thooks._pendingEffects.forEach(invokeCleanup);\n\t\t\thooks._pendingEffects.forEach(invokeEffect);\n\t\t\thooks._pendingEffects = [];\n\t\t\tcurrentIndex = 0;\n\t\t}\n\t}\n\tpreviousComponent = currentComponent;\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.diffed = vnode => {\n\tif (oldAfterDiff) oldAfterDiff(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tif (c.__hooks._pendingEffects.length) afterPaint(afterPaintEffects.push(c));\n\t\tc.__hooks._list.forEach(hookItem => {\n\t\t\tif (hookItem._pendingArgs) {\n\t\t\t\thookItem._args = hookItem._pendingArgs;\n\t\t\t}\n\t\t\thookItem._pendingArgs = undefined;\n\t\t});\n\t}\n\tpreviousComponent = currentComponent = null;\n};\n\n// TODO: Improve typing of commitQueue parameter\n/** @type {(vnode: import('./internal').VNode, commitQueue: any) => void} */\noptions._commit = (vnode, commitQueue) => {\n\tcommitQueue.some(component => {\n\t\ttry {\n\t\t\tcomponent._renderCallbacks.forEach(invokeCleanup);\n\t\t\tcomponent._renderCallbacks = component._renderCallbacks.filter(cb =>\n\t\t\t\tcb._value ? invokeEffect(cb) : true\n\t\t\t);\n\t\t} catch (e) {\n\t\t\tcommitQueue.some(c => {\n\t\t\t\tif (c._renderCallbacks) c._renderCallbacks = [];\n\t\t\t});\n\t\t\tcommitQueue = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t});\n\n\tif (oldCommit) oldCommit(vnode, commitQueue);\n};\n\n/** @type {(vnode: import('./internal').VNode) => void} */\noptions.unmount = vnode => {\n\tif (oldBeforeUnmount) oldBeforeUnmount(vnode);\n\n\tconst c = vnode._component;\n\tif (c && c.__hooks) {\n\t\tlet hasErrored;\n\t\tc.__hooks._list.forEach(s => {\n\t\t\ttry {\n\t\t\t\tinvokeCleanup(s);\n\t\t\t} catch (e) {\n\t\t\t\thasErrored = e;\n\t\t\t}\n\t\t});\n\t\tc.__hooks = undefined;\n\t\tif (hasErrored) options._catchError(hasErrored, c._vnode);\n\t}\n};\n\n/**\n * Get a hook's state from the currentComponent\n * @param {number} index The index of the hook to get\n * @param {number} type The index of the hook to get\n * @returns {any}\n */\nfunction getHookState(index, type) {\n\tif (options._hook) {\n\t\toptions._hook(currentComponent, index, currentHook || type);\n\t}\n\tcurrentHook = 0;\n\n\t// Largely inspired by:\n\t// * https://github.com/michael-klein/funcy.js/blob/f6be73468e6ec46b0ff5aa3cc4c9baf72a29025a/src/hooks/core_hooks.mjs\n\t// * https://github.com/michael-klein/funcy.js/blob/650beaa58c43c33a74820a3c98b3c7079cf2e333/src/renderer.mjs\n\t// Other implementations to look at:\n\t// * https://codesandbox.io/s/mnox05qp8\n\tconst hooks =\n\t\tcurrentComponent.__hooks ||\n\t\t(currentComponent.__hooks = {\n\t\t\t_list: [],\n\t\t\t_pendingEffects: []\n\t\t});\n\n\tif (index >= hooks._list.length) {\n\t\thooks._list.push({});\n\t}\n\n\treturn hooks._list[index];\n}\n\n/**\n * @template {unknown} S\n * @param {import('./index').Dispatch>} [initialState]\n * @returns {[S, (state: S) => void]}\n */\nexport function useState(initialState) {\n\tcurrentHook = 1;\n\treturn useReducer(invokeOrReturn, initialState);\n}\n\n/**\n * @template {unknown} S\n * @template {unknown} A\n * @param {import('./index').Reducer} reducer\n * @param {import('./index').Dispatch>} initialState\n * @param {(initialState: any) => void} [init]\n * @returns {[ S, (state: S) => void ]}\n */\nexport function useReducer(reducer, initialState, init) {\n\t/** @type {import('./internal').ReducerHookState} */\n\tconst hookState = getHookState(currentIndex++, 2);\n\thookState._reducer = reducer;\n\tif (!hookState._component) {\n\t\thookState._value = [\n\t\t\t!init ? invokeOrReturn(undefined, initialState) : init(initialState),\n\n\t\t\taction => {\n\t\t\t\tconst currentValue = hookState._nextValue\n\t\t\t\t\t? hookState._nextValue[0]\n\t\t\t\t\t: hookState._value[0];\n\t\t\t\tconst nextValue = hookState._reducer(currentValue, action);\n\n\t\t\t\tif (currentValue !== nextValue) {\n\t\t\t\t\thookState._nextValue = [nextValue, hookState._value[1]];\n\t\t\t\t\thookState._component.setState({});\n\t\t\t\t}\n\t\t\t}\n\t\t];\n\n\t\thookState._component = currentComponent;\n\n\t\tif (!currentComponent._hasScuFromHooks) {\n\t\t\tcurrentComponent._hasScuFromHooks = true;\n\t\t\tlet prevScu = currentComponent.shouldComponentUpdate;\n\t\t\tconst prevCWU = currentComponent.componentWillUpdate;\n\n\t\t\t// If we're dealing with a forced update `shouldComponentUpdate` will\n\t\t\t// not be called. But we use that to update the hook values, so we\n\t\t\t// need to call it.\n\t\t\tcurrentComponent.componentWillUpdate = function (p, s, c) {\n\t\t\t\tif (this._force) {\n\t\t\t\t\tlet tmp = prevScu;\n\t\t\t\t\t// Clear to avoid other sCU hooks from being called\n\t\t\t\t\tprevScu = undefined;\n\t\t\t\t\tupdateHookState(p, s, c);\n\t\t\t\t\tprevScu = tmp;\n\t\t\t\t}\n\n\t\t\t\tif (prevCWU) prevCWU.call(this, p, s, c);\n\t\t\t};\n\n\t\t\t// This SCU has the purpose of bailing out after repeated updates\n\t\t\t// to stateful hooks.\n\t\t\t// we store the next value in _nextValue[0] and keep doing that for all\n\t\t\t// state setters, if we have next states and\n\t\t\t// all next states within a component end up being equal to their original state\n\t\t\t// we are safe to bail out for this specific component.\n\t\t\t/**\n\t\t\t *\n\t\t\t * @type {import('./internal').Component[\"shouldComponentUpdate\"]}\n\t\t\t */\n\t\t\t// @ts-ignore - We don't use TS to downtranspile\n\t\t\t// eslint-disable-next-line no-inner-declarations\n\t\t\tfunction updateHookState(p, s, c) {\n\t\t\t\tif (!hookState._component.__hooks) return true;\n\n\t\t\t\t/** @type {(x: import('./internal').HookState) => x is import('./internal').ReducerHookState} */\n\t\t\t\tconst isStateHook = x => !!x._component;\n\t\t\t\tconst stateHooks =\n\t\t\t\t\thookState._component.__hooks._list.filter(isStateHook);\n\n\t\t\t\tconst allHooksEmpty = stateHooks.every(x => !x._nextValue);\n\t\t\t\t// When we have no updated hooks in the component we invoke the previous SCU or\n\t\t\t\t// traverse the VDOM tree further.\n\t\t\t\tif (allHooksEmpty) {\n\t\t\t\t\treturn prevScu ? prevScu.call(this, p, s, c) : true;\n\t\t\t\t}\n\n\t\t\t\t// We check whether we have components with a nextValue set that\n\t\t\t\t// have values that aren't equal to one another this pushes\n\t\t\t\t// us to update further down the tree\n\t\t\t\tlet shouldUpdate = hookState._component.props !== p;\n\t\t\t\tstateHooks.forEach(hookItem => {\n\t\t\t\t\tif (hookItem._nextValue) {\n\t\t\t\t\t\tconst currentValue = hookItem._value[0];\n\t\t\t\t\t\thookItem._value = hookItem._nextValue;\n\t\t\t\t\t\thookItem._nextValue = undefined;\n\t\t\t\t\t\tif (currentValue !== hookItem._value[0]) shouldUpdate = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\treturn prevScu\n\t\t\t\t\t? prevScu.call(this, p, s, c) || shouldUpdate\n\t\t\t\t\t: shouldUpdate;\n\t\t\t}\n\n\t\t\tcurrentComponent.shouldComponentUpdate = updateHookState;\n\t\t}\n\t}\n\n\treturn hookState._nextValue || hookState._value;\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 3);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent.__hooks._pendingEffects.push(state);\n\t}\n}\n\n/**\n * @param {import('./internal').Effect} callback\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useLayoutEffect(callback, args) {\n\t/** @type {import('./internal').EffectHookState} */\n\tconst state = getHookState(currentIndex++, 4);\n\tif (!options._skipEffects && argsChanged(state._args, args)) {\n\t\tstate._value = callback;\n\t\tstate._pendingArgs = args;\n\n\t\tcurrentComponent._renderCallbacks.push(state);\n\t}\n}\n\n/** @type {(initialValue: unknown) => unknown} */\nexport function useRef(initialValue) {\n\tcurrentHook = 5;\n\treturn useMemo(() => ({ current: initialValue }), []);\n}\n\n/**\n * @param {object} ref\n * @param {() => object} createHandle\n * @param {unknown[]} args\n * @returns {void}\n */\nexport function useImperativeHandle(ref, createHandle, args) {\n\tcurrentHook = 6;\n\tuseLayoutEffect(\n\t\t() => {\n\t\t\tif (typeof ref == 'function') {\n\t\t\t\tconst result = ref(createHandle());\n\t\t\t\treturn () => {\n\t\t\t\t\tref(null);\n\t\t\t\t\tif (result && typeof result == 'function') result();\n\t\t\t\t};\n\t\t\t} else if (ref) {\n\t\t\t\tref.current = createHandle();\n\t\t\t\treturn () => (ref.current = null);\n\t\t\t}\n\t\t},\n\t\targs == null ? args : args.concat(ref)\n\t);\n}\n\n/**\n * @template {unknown} T\n * @param {() => T} factory\n * @param {unknown[]} args\n * @returns {T}\n */\nexport function useMemo(factory, args) {\n\t/** @type {import('./internal').MemoHookState} */\n\tconst state = getHookState(currentIndex++, 7);\n\tif (argsChanged(state._args, args)) {\n\t\tstate._value = factory();\n\t\tstate._args = args;\n\t\tstate._factory = factory;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * @param {() => void} callback\n * @param {unknown[]} args\n * @returns {() => void}\n */\nexport function useCallback(callback, args) {\n\tcurrentHook = 8;\n\treturn useMemo(() => callback, args);\n}\n\n/**\n * @param {import('./internal').PreactContext} context\n */\nexport function useContext(context) {\n\tconst provider = currentComponent.context[context._id];\n\t// We could skip this call here, but than we'd not call\n\t// `options._hook`. We need to do that in order to make\n\t// the devtools aware of this hook.\n\t/** @type {import('./internal').ContextHookState} */\n\tconst state = getHookState(currentIndex++, 9);\n\t// The devtools needs access to the context object to\n\t// be able to pull of the default value when no provider\n\t// is present in the tree.\n\tstate._context = context;\n\tif (!provider) return context._defaultValue;\n\t// This is probably not safe to convert to \"!\"\n\tif (state._value == null) {\n\t\tstate._value = true;\n\t\tprovider.sub(currentComponent);\n\t}\n\treturn provider.props.value;\n}\n\n/**\n * Display a custom label for a custom hook for the devtools panel\n * @type {(value: T, cb?: (value: T) => string | number) => void}\n */\nexport function useDebugValue(value, formatter) {\n\tif (options.useDebugValue) {\n\t\toptions.useDebugValue(\n\t\t\tformatter ? formatter(value) : /** @type {any}*/ (value)\n\t\t);\n\t}\n}\n\n/**\n * @param {(error: unknown, errorInfo: import('preact').ErrorInfo) => void} cb\n * @returns {[unknown, () => void]}\n */\nexport function useErrorBoundary(cb) {\n\t/** @type {import('./internal').ErrorBoundaryHookState} */\n\tconst state = getHookState(currentIndex++, 10);\n\tconst errState = useState();\n\tstate._value = cb;\n\tif (!currentComponent.componentDidCatch) {\n\t\tcurrentComponent.componentDidCatch = (err, errorInfo) => {\n\t\t\tif (state._value) state._value(err, errorInfo);\n\t\t\terrState[1](err);\n\t\t};\n\t}\n\treturn [\n\t\terrState[0],\n\t\t() => {\n\t\t\terrState[1](undefined);\n\t\t}\n\t];\n}\n\n/** @type {() => string} */\nexport function useId() {\n\t/** @type {import('./internal').IdHookState} */\n\tconst state = getHookState(currentIndex++, 11);\n\tif (!state._value) {\n\t\t// Grab either the root node or the nearest async boundary node.\n\t\t/** @type {import('./internal').VNode} */\n\t\tlet root = currentComponent._vnode;\n\t\twhile (root !== null && !root._mask && root._parent !== null) {\n\t\t\troot = root._parent;\n\t\t}\n\n\t\tlet mask = root._mask || (root._mask = [0, 0]);\n\t\tstate._value = 'P' + mask[0] + '-' + mask[1]++;\n\t}\n\n\treturn state._value;\n}\n\n/**\n * After paint effects consumer.\n */\nfunction flushAfterPaintEffects() {\n\tlet component;\n\twhile ((component = afterPaintEffects.shift())) {\n\t\tif (!component._parentDom || !component.__hooks) continue;\n\t\ttry {\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeCleanup);\n\t\t\tcomponent.__hooks._pendingEffects.forEach(invokeEffect);\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t} catch (e) {\n\t\t\tcomponent.__hooks._pendingEffects = [];\n\t\t\toptions._catchError(e, component._vnode);\n\t\t}\n\t}\n}\n\nlet HAS_RAF = typeof requestAnimationFrame == 'function';\n\n/**\n * Schedule a callback to be invoked after the browser has a chance to paint a new frame.\n * Do this by combining requestAnimationFrame (rAF) + setTimeout to invoke a callback after\n * the next browser frame.\n *\n * Also, schedule a timeout in parallel to the the rAF to ensure the callback is invoked\n * even if RAF doesn't fire (for example if the browser tab is not visible)\n *\n * @param {() => void} callback\n */\nfunction afterNextFrame(callback) {\n\tconst done = () => {\n\t\tclearTimeout(timeout);\n\t\tif (HAS_RAF) cancelAnimationFrame(raf);\n\t\tsetTimeout(callback);\n\t};\n\tconst timeout = setTimeout(done, RAF_TIMEOUT);\n\n\tlet raf;\n\tif (HAS_RAF) {\n\t\traf = requestAnimationFrame(done);\n\t}\n}\n\n// Note: if someone used options.debounceRendering = requestAnimationFrame,\n// then effects will ALWAYS run on the NEXT frame instead of the current one, incurring a ~16ms delay.\n// Perhaps this is not such a big deal.\n/**\n * Schedule afterPaintEffects flush after the browser paints\n * @param {number} newQueueLength\n * @returns {void}\n */\nfunction afterPaint(newQueueLength) {\n\tif (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) {\n\t\tprevRaf = options.requestAnimationFrame;\n\t\t(prevRaf || afterNextFrame)(flushAfterPaintEffects);\n\t}\n}\n\n/**\n * @param {import('./internal').HookState} hook\n * @returns {void}\n */\nfunction invokeCleanup(hook) {\n\t// A hook cleanup can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\tlet cleanup = hook._cleanup;\n\tif (typeof cleanup == 'function') {\n\t\thook._cleanup = undefined;\n\t\tcleanup();\n\t}\n\n\tcurrentComponent = comp;\n}\n\n/**\n * Invoke a Hook's effect\n * @param {import('./internal').EffectHookState} hook\n * @returns {void}\n */\nfunction invokeEffect(hook) {\n\t// A hook call can introduce a call to render which creates a new root, this will call options.vnode\n\t// and move the currentComponent away.\n\tconst comp = currentComponent;\n\thook._cleanup = hook._value();\n\tcurrentComponent = comp;\n}\n\n/**\n * @param {unknown[]} oldArgs\n * @param {unknown[]} newArgs\n * @returns {boolean}\n */\nfunction argsChanged(oldArgs, newArgs) {\n\treturn (\n\t\t!oldArgs ||\n\t\toldArgs.length !== newArgs.length ||\n\t\tnewArgs.some((arg, index) => arg !== oldArgs[index])\n\t);\n}\n\n/**\n * @template Arg\n * @param {Arg} arg\n * @param {(arg: Arg) => any} f\n * @returns {any}\n */\nfunction invokeOrReturn(arg, f) {\n\treturn typeof f == 'function' ? f(arg) : f;\n}\n"],"names":["currentIndex","currentComponent","previousComponent","prevRaf","currentHook","afterPaintEffects","options","_options","oldBeforeDiff","__b","oldBeforeRender","__r","oldAfterDiff","diffed","oldCommit","__c","oldBeforeUnmount","unmount","oldRoot","__","getHookState","index","type","__h","hooks","__H","length","push","useState","initialState","useReducer","invokeOrReturn","reducer","init","hookState","_reducer","undefined","action","currentValue","__N","nextValue","setState","__f","updateHookState","p","s","c","stateHooks","filter","x","every","prevScu","call","this","shouldUpdate","props","forEach","hookItem","shouldComponentUpdate","prevCWU","componentWillUpdate","__e","tmp","useLayoutEffect","callback","args","state","__s","argsChanged","_pendingArgs","useMemo","factory","flushAfterPaintEffects","component","shift","__P","invokeCleanup","invokeEffect","e","__v","vnode","parentDom","__k","__m","requestAnimationFrame","afterNextFrame","commitQueue","some","cb","hasErrored","HAS_RAF","raf","done","clearTimeout","timeout","cancelAnimationFrame","setTimeout","hook","comp","cleanup","oldArgs","newArgs","arg","f","context","provider","sub","value","formatter","useDebugValue","errState","componentDidCatch","err","errorInfo","root","mask","ref","createHandle","result","current","concat","initialValue"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/hooks/src/index.d.ts b/node_modules/preact/hooks/src/index.d.ts index 561f034..d7f77db 100644 --- a/node_modules/preact/hooks/src/index.d.ts +++ b/node_modules/preact/hooks/src/index.d.ts @@ -1,21 +1,27 @@ -import { ErrorInfo, PreactContext, Ref as PreactRef } from '../..'; +// Intentionally not using a relative path to take advantage of +// the TS version resolution mechanism +import { ErrorInfo, PreactContext, Ref, RefObject } from 'preact'; type Inputs = ReadonlyArray; -export type StateUpdater = (value: S | ((prevState: S) => S)) => void; +export type Dispatch = (value: A) => void; +export type StateUpdater = S | ((prevState: S) => S); + /** * Returns a stateful value, and a function to update it. * @param initialState The initial value (or a function that returns the initial value) */ -export function useState(initialState: S | (() => S)): [S, StateUpdater]; +export function useState( + initialState: S | (() => S) +): [S, Dispatch>]; export function useState(): [ S | undefined, - StateUpdater + Dispatch> ]; export type Reducer = (prevState: S, action: A) => S; -export type Dispatch = (action: A) => void; + /** * An alternative to `useState`. * @@ -48,9 +54,6 @@ export function useReducer( /** @deprecated Use the `Ref` type instead. */ type PropRef = MutableRef; -interface Ref { - readonly current: T | null; -} interface MutableRef { current: T; @@ -66,7 +69,7 @@ interface MutableRef { * @param initialValue the initial value to store in the ref object */ export function useRef(initialValue: T): MutableRef; -export function useRef(initialValue: T | null): Ref; +export function useRef(initialValue: T | null): RefObject; export function useRef(): MutableRef; type EffectCallback = () => void | (() => void); @@ -88,7 +91,7 @@ type CreateHandle = () => object; * @param inputs If present, effect will only activate if the values in the list change (using ===). */ export function useImperativeHandle( - ref: PreactRef, + ref: Ref, create: () => R, inputs?: Inputs ): void; diff --git a/node_modules/preact/hooks/src/index.js b/node_modules/preact/hooks/src/index.js index 3b611b4..b98b198 100644 --- a/node_modules/preact/hooks/src/index.js +++ b/node_modules/preact/hooks/src/index.js @@ -1,4 +1,4 @@ -import { options } from 'preact'; +import { options as _options } from 'preact'; /** @type {number} */ let currentIndex; @@ -15,22 +15,37 @@ let currentHook = 0; /** @type {Array} */ let afterPaintEffects = []; -let EMPTY = []; +// Cast to use internal Options type +const options = /** @type {import('./internal').Options} */ (_options); let oldBeforeDiff = options._diff; let oldBeforeRender = options._render; let oldAfterDiff = options.diffed; let oldCommit = options._commit; let oldBeforeUnmount = options.unmount; +let oldRoot = options._root; -const RAF_TIMEOUT = 100; +// We take the minimum timeout for requestAnimationFrame to ensure that +// the callback is invoked after the next frame. 35ms is based on a 30hz +// refresh rate, which is the minimum rate for a smooth user experience. +const RAF_TIMEOUT = 35; let prevRaf; +/** @type {(vnode: import('./internal').VNode) => void} */ options._diff = vnode => { currentComponent = null; if (oldBeforeDiff) oldBeforeDiff(vnode); }; +options._root = (vnode, parentDom) => { + if (vnode && parentDom._children && parentDom._children._mask) { + vnode._mask = parentDom._children._mask; + } + + if (oldRoot) oldRoot(vnode, parentDom); +}; + +/** @type {(vnode: import('./internal').VNode) => void} */ options._render = vnode => { if (oldBeforeRender) oldBeforeRender(vnode); @@ -46,8 +61,7 @@ options._render = vnode => { if (hookItem._nextValue) { hookItem._value = hookItem._nextValue; } - hookItem._pendingValue = EMPTY; - hookItem._nextValue = hookItem._pendingArgs = undefined; + hookItem._pendingArgs = hookItem._nextValue = undefined; }); } else { hooks._pendingEffects.forEach(invokeCleanup); @@ -59,6 +73,7 @@ options._render = vnode => { previousComponent = currentComponent; }; +/** @type {(vnode: import('./internal').VNode) => void} */ options.diffed = vnode => { if (oldAfterDiff) oldAfterDiff(vnode); @@ -69,16 +84,14 @@ options.diffed = vnode => { if (hookItem._pendingArgs) { hookItem._args = hookItem._pendingArgs; } - if (hookItem._pendingValue !== EMPTY) { - hookItem._value = hookItem._pendingValue; - } hookItem._pendingArgs = undefined; - hookItem._pendingValue = EMPTY; }); } previousComponent = currentComponent = null; }; +// TODO: Improve typing of commitQueue parameter +/** @type {(vnode: import('./internal').VNode, commitQueue: any) => void} */ options._commit = (vnode, commitQueue) => { commitQueue.some(component => { try { @@ -98,6 +111,7 @@ options._commit = (vnode, commitQueue) => { if (oldCommit) oldCommit(vnode, commitQueue); }; +/** @type {(vnode: import('./internal').VNode) => void} */ options.unmount = vnode => { if (oldBeforeUnmount) oldBeforeUnmount(vnode); @@ -141,13 +155,16 @@ function getHookState(index, type) { }); if (index >= hooks._list.length) { - hooks._list.push({ _pendingValue: EMPTY }); + hooks._list.push({}); } + return hooks._list[index]; } /** - * @param {import('./index').StateUpdater} [initialState] + * @template {unknown} S + * @param {import('./index').Dispatch>} [initialState] + * @returns {[S, (state: S) => void]} */ export function useState(initialState) { currentHook = 1; @@ -155,10 +172,12 @@ export function useState(initialState) { } /** - * @param {import('./index').Reducer} reducer - * @param {import('./index').StateUpdater} initialState + * @template {unknown} S + * @template {unknown} A + * @param {import('./index').Reducer} reducer + * @param {import('./index').Dispatch>} initialState * @param {(initialState: any) => void} [init] - * @returns {[ any, (state: any) => void ]} + * @returns {[ S, (state: S) => void ]} */ export function useReducer(reducer, initialState, init) { /** @type {import('./internal').ReducerHookState} */ @@ -218,9 +237,11 @@ export function useReducer(reducer, initialState, init) { function updateHookState(p, s, c) { if (!hookState._component.__hooks) return true; - const stateHooks = hookState._component.__hooks._list.filter( - x => x._component - ); + /** @type {(x: import('./internal').HookState) => x is import('./internal').ReducerHookState} */ + const isStateHook = x => !!x._component; + const stateHooks = + hookState._component.__hooks._list.filter(isStateHook); + const allHooksEmpty = stateHooks.every(x => !x._nextValue); // When we have no updated hooks in the component we invoke the previous SCU or // traverse the VDOM tree further. @@ -231,7 +252,7 @@ export function useReducer(reducer, initialState, init) { // We check whether we have components with a nextValue set that // have values that aren't equal to one another this pushes // us to update further down the tree - let shouldUpdate = false; + let shouldUpdate = hookState._component.props !== p; stateHooks.forEach(hookItem => { if (hookItem._nextValue) { const currentValue = hookItem._value[0]; @@ -241,11 +262,9 @@ export function useReducer(reducer, initialState, init) { } }); - return shouldUpdate || hookState._component.props !== p - ? prevScu - ? prevScu.call(this, p, s, c) - : true - : false; + return prevScu + ? prevScu.call(this, p, s, c) || shouldUpdate + : shouldUpdate; } currentComponent.shouldComponentUpdate = updateHookState; @@ -257,7 +276,8 @@ export function useReducer(reducer, initialState, init) { /** * @param {import('./internal').Effect} callback - * @param {any[]} args + * @param {unknown[]} args + * @returns {void} */ export function useEffect(callback, args) { /** @type {import('./internal').EffectHookState} */ @@ -272,7 +292,8 @@ export function useEffect(callback, args) { /** * @param {import('./internal').Effect} callback - * @param {any[]} args + * @param {unknown[]} args + * @returns {void} */ export function useLayoutEffect(callback, args) { /** @type {import('./internal').EffectHookState} */ @@ -285,6 +306,7 @@ export function useLayoutEffect(callback, args) { } } +/** @type {(initialValue: unknown) => unknown} */ export function useRef(initialValue) { currentHook = 5; return useMemo(() => ({ current: initialValue }), []); @@ -293,15 +315,19 @@ export function useRef(initialValue) { /** * @param {object} ref * @param {() => object} createHandle - * @param {any[]} args + * @param {unknown[]} args + * @returns {void} */ export function useImperativeHandle(ref, createHandle, args) { currentHook = 6; useLayoutEffect( () => { if (typeof ref == 'function') { - ref(createHandle()); - return () => ref(null); + const result = ref(createHandle()); + return () => { + ref(null); + if (result && typeof result == 'function') result(); + }; } else if (ref) { ref.current = createHandle(); return () => (ref.current = null); @@ -312,17 +338,18 @@ export function useImperativeHandle(ref, createHandle, args) { } /** - * @param {() => any} factory - * @param {any[]} args + * @template {unknown} T + * @param {() => T} factory + * @param {unknown[]} args + * @returns {T} */ export function useMemo(factory, args) { - /** @type {import('./internal').MemoHookState} */ + /** @type {import('./internal').MemoHookState} */ const state = getHookState(currentIndex++, 7); if (argsChanged(state._args, args)) { - state._pendingValue = factory(); - state._pendingArgs = args; + state._value = factory(); + state._args = args; state._factory = factory; - return state._pendingValue; } return state._value; @@ -330,7 +357,8 @@ export function useMemo(factory, args) { /** * @param {() => void} callback - * @param {any[]} args + * @param {unknown[]} args + * @returns {() => void} */ export function useCallback(callback, args) { currentHook = 8; @@ -366,12 +394,15 @@ export function useContext(context) { */ export function useDebugValue(value, formatter) { if (options.useDebugValue) { - options.useDebugValue(formatter ? formatter(value) : value); + options.useDebugValue( + formatter ? formatter(value) : /** @type {any}*/ (value) + ); } } /** - * @param {(error: any, errorInfo: import('preact').ErrorInfo) => void} cb + * @param {(error: unknown, errorInfo: import('preact').ErrorInfo) => void} cb + * @returns {[unknown, () => void]} */ export function useErrorBoundary(cb) { /** @type {import('./internal').ErrorBoundaryHookState} */ @@ -392,11 +423,13 @@ export function useErrorBoundary(cb) { ]; } +/** @type {() => string} */ export function useId() { + /** @type {import('./internal').IdHookState} */ const state = getHookState(currentIndex++, 11); if (!state._value) { // Grab either the root node or the nearest async boundary node. - /** @type {import('./internal.d').VNode} */ + /** @type {import('./internal').VNode} */ let root = currentComponent._vnode; while (root !== null && !root._mask && root._parent !== null) { root = root._parent; @@ -408,6 +441,7 @@ export function useId() { return state._value; } + /** * After paint effects consumer. */ @@ -458,6 +492,7 @@ function afterNextFrame(callback) { /** * Schedule afterPaintEffects flush after the browser paints * @param {number} newQueueLength + * @returns {void} */ function afterPaint(newQueueLength) { if (newQueueLength === 1 || prevRaf !== options.requestAnimationFrame) { @@ -467,7 +502,8 @@ function afterPaint(newQueueLength) { } /** - * @param {import('./internal').EffectHookState} hook + * @param {import('./internal').HookState} hook + * @returns {void} */ function invokeCleanup(hook) { // A hook cleanup can introduce a call to render which creates a new root, this will call options.vnode @@ -485,6 +521,7 @@ function invokeCleanup(hook) { /** * Invoke a Hook's effect * @param {import('./internal').EffectHookState} hook + * @returns {void} */ function invokeEffect(hook) { // A hook call can introduce a call to render which creates a new root, this will call options.vnode @@ -495,8 +532,9 @@ function invokeEffect(hook) { } /** - * @param {any[]} oldArgs - * @param {any[]} newArgs + * @param {unknown[]} oldArgs + * @param {unknown[]} newArgs + * @returns {boolean} */ function argsChanged(oldArgs, newArgs) { return ( @@ -506,6 +544,12 @@ function argsChanged(oldArgs, newArgs) { ); } +/** + * @template Arg + * @param {Arg} arg + * @param {(arg: Arg) => any} f + * @returns {any} + */ function invokeOrReturn(arg, f) { return typeof f == 'function' ? f(arg) : f; } diff --git a/node_modules/preact/hooks/src/internal.d.ts b/node_modules/preact/hooks/src/internal.d.ts index 4d4be51..76cd978 100644 --- a/node_modules/preact/hooks/src/internal.d.ts +++ b/node_modules/preact/hooks/src/internal.d.ts @@ -1,29 +1,27 @@ import { + Options as PreactOptions, Component as PreactComponent, + VNode as PreactVNode, PreactContext, + HookType, ErrorInfo, - VNode as PreactVNode } from '../../src/internal'; -import { Reducer } from '.'; +import { Reducer, StateUpdater } from '.'; export { PreactContext }; -/** - * The type of arguments passed to a Hook function. While this type is not - * strictly necessary, they are given a type name to make it easier to read - * the following types and trace the flow of data. - */ -export type HookArgs = any; - -/** - * The return type of a Hook function. While this type is not - * strictly necessary, they are given a type name to make it easier to read - * the following types and trace the flow of data. - */ -export type HookReturnValue = any; - -/** The public function a user invokes to use a Hook */ -export type Hook = (...args: HookArgs[]) => HookReturnValue; +export interface Options extends PreactOptions { + /** Attach a hook that is invoked before a vnode is diffed. */ + _diff?(vnode: VNode): void; + diffed?(vnode: VNode): void; + /** Attach a hook that is invoked before a vnode has rendered. */ + _render?(vnode: VNode): void; + /** Attach a hook that is invoked after a tree was mounted or was updated. */ + _commit?(vnode: VNode, commitQueue: Component[]): void; + _unmount?(vnode: VNode): void; + /** Attach a hook that is invoked before a hook's state is queried. */ + _hook?(component: Component, index: number, type: HookType): void; +} // Hook tracking @@ -34,12 +32,16 @@ export interface ComponentHooks { _pendingEffects: EffectHookState[]; } -export interface Component extends PreactComponent { +export interface Component extends Omit, '_renderCallbacks'> { __hooks?: ComponentHooks; + // Extend to include HookStates + _renderCallbacks?: Array void)>; + _hasScuFromHooks?: boolean; } -export interface VNode extends PreactVNode { +export interface VNode extends Omit { _mask?: [number, number]; + _component?: Component; // Override with our specific Component type } export type HookState = @@ -47,39 +49,55 @@ export type HookState = | MemoHookState | ReducerHookState | ContextHookState - | ErrorBoundaryHookState; + | ErrorBoundaryHookState + | IdHookState; + +interface BaseHookState { + _value?: unknown; + _nextValue?: unknown; + _pendingValue?: unknown; + _args?: unknown; + _pendingArgs?: unknown; + _component?: unknown; + _cleanup?: unknown; +} export type Effect = () => void | Cleanup; export type Cleanup = () => void; -export interface EffectHookState { +export interface EffectHookState extends BaseHookState { _value?: Effect; - _args?: any[]; - _pendingArgs?: any[]; + _args?: unknown[]; + _pendingArgs?: unknown[]; _cleanup?: Cleanup | void; } -export interface MemoHookState { - _value?: any; - _pendingValue?: any; - _args?: any[]; - _pendingArgs?: any[]; - _factory?: () => any; +export interface MemoHookState extends BaseHookState { + _value?: T; + _pendingValue?: T; + _args?: unknown[]; + _pendingArgs?: unknown[]; + _factory?: () => T; } -export interface ReducerHookState { - _nextValue?: any; - _value?: any; +export interface ReducerHookState + extends BaseHookState { + _nextValue?: [S, StateUpdater]; + _value?: [S, StateUpdater]; _component?: Component; - _reducer?: Reducer; + _reducer?: Reducer; } -export interface ContextHookState { +export interface ContextHookState extends BaseHookState { /** Whether this hooks as subscribed to updates yet */ _value?: boolean; _context?: PreactContext; } -export interface ErrorBoundaryHookState { - _value?: (error: any, errorInfo: ErrorInfo) => void; +export interface ErrorBoundaryHookState extends BaseHookState { + _value?: (error: unknown, errorInfo: ErrorInfo) => void; +} + +export interface IdHookState extends BaseHookState { + _value?: string; } diff --git a/node_modules/preact/jsx-runtime/LICENSE b/node_modules/preact/jsx-runtime/LICENSE deleted file mode 100644 index da5389a..0000000 --- a/node_modules/preact/jsx-runtime/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2015-present Jason Miller - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/node_modules/preact/jsx-runtime/dist/jsxRuntime.js b/node_modules/preact/jsx-runtime/dist/jsxRuntime.js index 29ef1b6..9ed6981 100644 --- a/node_modules/preact/jsx-runtime/dist/jsxRuntime.js +++ b/node_modules/preact/jsx-runtime/dist/jsxRuntime.js @@ -1,2 +1,2 @@ -var r=require("preact"),e=/["&<]/;function t(r){if(0===r.length||!1===e.test(r))return r;for(var t=0,n=0,o="",f="";n} exprs\n * @returns {VNode}\n */\nfunction jsxTemplate(templates, ...exprs) {\n\tconst vnode = createVNode(Fragment, { tpl: templates, exprs });\n\t// Bypass render to string top level Fragment optimization\n\tvnode.key = vnode._vnode;\n\treturn vnode;\n}\n\nconst JS_TO_CSS = {};\nconst CSS_REGEX = /[A-Z]/g;\n\n/**\n * Serialize an HTML attribute to a string. This function is not\n * expected to be used directly, but rather through a precompile\n * JSX transform\n * @param {string} name The attribute name\n * @param {*} value The attribute value\n * @returns {string}\n */\nfunction jsxAttr(name, value) {\n\tif (options.attr) {\n\t\tconst result = options.attr(name, value);\n\t\tif (typeof result === 'string') return result;\n\t}\n\n\tif (name === 'ref' || name === 'key') return '';\n\tif (name === 'style' && typeof value === 'object') {\n\t\tlet str = '';\n\t\tfor (let prop in value) {\n\t\t\tlet val = value[prop];\n\t\t\tif (val != null && val !== '') {\n\t\t\t\tconst name =\n\t\t\t\t\tprop[0] == '-'\n\t\t\t\t\t\t? prop\n\t\t\t\t\t\t: JS_TO_CSS[prop] ||\n\t\t\t\t\t\t (JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase());\n\n\t\t\t\tlet suffix = ';';\n\t\t\t\tif (\n\t\t\t\t\ttypeof val === 'number' &&\n\t\t\t\t\t// Exclude custom-attributes\n\t\t\t\t\t!name.startsWith('--') &&\n\t\t\t\t\t!IS_NON_DIMENSIONAL.test(name)\n\t\t\t\t) {\n\t\t\t\t\tsuffix = 'px;';\n\t\t\t\t}\n\t\t\t\tstr = str + name + ':' + val + suffix;\n\t\t\t}\n\t\t}\n\t\treturn name + '=\"' + str + '\"';\n\t}\n\n\tif (\n\t\tvalue == null ||\n\t\tvalue === false ||\n\t\ttypeof value === 'function' ||\n\t\ttypeof value === 'object'\n\t) {\n\t\treturn '';\n\t} else if (value === true) return name;\n\n\treturn name + '=\"' + encodeEntities(value) + '\"';\n}\n\n/**\n * Escape a dynamic child passed to `jsxTemplate`. This function\n * is not expected to be used directly, but rather through a\n * precompile JSX transform\n * @param {*} value\n * @returns {string | null | VNode | Array}\n */\nfunction jsxEscape(value) {\n\tif (\n\t\tvalue == null ||\n\t\ttypeof value === 'boolean' ||\n\t\ttypeof value === 'function'\n\t) {\n\t\treturn null;\n\t}\n\n\tif (typeof value === 'object') {\n\t\t// Check for VNode\n\t\tif (value.constructor === undefined) return value;\n\n\t\tif (isArray(value)) {\n\t\t\tfor (let i = 0; i < value.length; i++) {\n\t\t\t\tvalue[i] = jsxEscape(value[i]);\n\t\t\t}\n\t\t\treturn value;\n\t\t}\n\t}\n\n\treturn encodeEntities('' + value);\n}\n\nexport {\n\tcreateVNode as jsx,\n\tcreateVNode as jsxs,\n\tcreateVNode as jsxDEV,\n\tFragment,\n\t// precompiled JSX transform\n\tjsxTemplate,\n\tjsxAttr,\n\tjsxEscape\n};\n"],"names":["ENCODED_ENTITIES","encodeEntities","str","length","test","last","i","out","ch","charCodeAt","slice","IS_NON_DIMENSIONAL","vnodeId","isArray","Array","createVNode","type","props","key","isStaticChildren","__source","__self","ref","normalizedProps","vnode","__k","__","__b","__e","__d","undefined","__c","constructor","__v","__i","__u","defaultProps","options","JS_TO_CSS","CSS_REGEX","name","value","attr","result","prop","val","replace","toLowerCase","suffix","startsWith","jsxEscape","templates","Fragment","tpl","exprs","call","arguments"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"jsxRuntime.js","sources":["../src/utils.js","../../src/constants.js","../src/index.js"],"sourcesContent":["const ENCODED_ENTITIES = /[\"&<]/;\n\n/** @param {string} str */\nexport function encodeEntities(str) {\n\t// Skip all work for strings with no entities needing encoding:\n\tif (str.length === 0 || ENCODED_ENTITIES.test(str) === false) return str;\n\n\tlet last = 0,\n\t\ti = 0,\n\t\tout = '',\n\t\tch = '';\n\n\t// Seek forward in str until the next entity char:\n\tfor (; i < str.length; i++) {\n\t\tswitch (str.charCodeAt(i)) {\n\t\t\tcase 34:\n\t\t\t\tch = '"';\n\t\t\t\tbreak;\n\t\t\tcase 38:\n\t\t\t\tch = '&';\n\t\t\t\tbreak;\n\t\t\tcase 60:\n\t\t\t\tch = '<';\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcontinue;\n\t\t}\n\t\t// Append skipped/buffered characters and the encoded entity:\n\t\tif (i !== last) out += str.slice(last, i);\n\t\tout += ch;\n\t\t// Start the next seek/buffer after the entity's offset:\n\t\tlast = i + 1;\n\t}\n\tif (i !== last) out += str.slice(last, i);\n\treturn out;\n}\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 2;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 1;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const SVG_NAMESPACE = 'http://www.w3.org/2000/svg';\nexport const XHTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\nexport const MATH_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\n\nexport const NULL = null;\nexport const UNDEFINED = undefined;\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { options, Fragment } from 'preact';\nimport { encodeEntities } from './utils';\nimport { IS_NON_DIMENSIONAL } from '../../src/constants';\n\nlet vnodeId = 0;\n\nconst isArray = Array.isArray;\n\n/**\n * @fileoverview\n * This file exports various methods that implement Babel's \"automatic\" JSX runtime API:\n * - jsx(type, props, key)\n * - jsxs(type, props, key)\n * - jsxDEV(type, props, key, __source, __self)\n *\n * The implementation of createVNode here is optimized for performance.\n * Benchmarks: https://esbench.com/bench/5f6b54a0b4632100a7dcd2b3\n */\n\n/**\n * JSX.Element factory used by Babel's {runtime:\"automatic\"} JSX transform\n * @param {VNode['type']} type\n * @param {VNode['props']} props\n * @param {VNode['key']} [key]\n * @param {unknown} [isStaticChildren]\n * @param {unknown} [__source]\n * @param {unknown} [__self]\n */\nfunction createVNode(type, props, key, isStaticChildren, __source, __self) {\n\tif (!props) props = {};\n\t// We'll want to preserve `ref` in props to get rid of the need for\n\t// forwardRef components in the future, but that should happen via\n\t// a separate PR.\n\tlet normalizedProps = props,\n\t\tref,\n\t\ti;\n\n\tif ('ref' in normalizedProps) {\n\t\tnormalizedProps = {};\n\t\tfor (i in props) {\n\t\t\tif (i == 'ref') {\n\t\t\t\tref = props[i];\n\t\t\t} else {\n\t\t\t\tnormalizedProps[i] = props[i];\n\t\t\t}\n\t\t}\n\t}\n\n\t/** @type {VNode & { __source: any; __self: any }} */\n\tconst vnode = {\n\t\ttype,\n\t\tprops: normalizedProps,\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_component: null,\n\t\tconstructor: undefined,\n\t\t_original: --vnodeId,\n\t\t_index: -1,\n\t\t_flags: 0,\n\t\t__source,\n\t\t__self\n\t};\n\n\t// If a Component VNode, check for and apply defaultProps.\n\t// Note: `type` is often a String, and can be `undefined` in development.\n\tif (typeof type === 'function' && (ref = type.defaultProps)) {\n\t\tfor (i in ref)\n\t\t\tif (normalizedProps[i] === undefined) {\n\t\t\t\tnormalizedProps[i] = ref[i];\n\t\t\t}\n\t}\n\n\tif (options.vnode) options.vnode(vnode);\n\treturn vnode;\n}\n\n/**\n * Create a template vnode. This function is not expected to be\n * used directly, but rather through a precompile JSX transform\n * @param {string[]} templates\n * @param {Array} exprs\n * @returns {VNode}\n */\nfunction jsxTemplate(templates, ...exprs) {\n\tconst vnode = createVNode(Fragment, { tpl: templates, exprs });\n\t// Bypass render to string top level Fragment optimization\n\tvnode.key = vnode._vnode;\n\treturn vnode;\n}\n\nconst JS_TO_CSS = {};\nconst CSS_REGEX = /[A-Z]/g;\n\n/**\n * Unwrap potential signals.\n * @param {*} value\n * @returns {*}\n */\nfunction normalizeAttrValue(value) {\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.valueOf === 'function'\n\t\t? value.valueOf()\n\t\t: value;\n}\n\n/**\n * Serialize an HTML attribute to a string. This function is not\n * expected to be used directly, but rather through a precompile\n * JSX transform\n * @param {string} name The attribute name\n * @param {*} value The attribute value\n * @returns {string}\n */\nfunction jsxAttr(name, value) {\n\tif (options.attr) {\n\t\tconst result = options.attr(name, value);\n\t\tif (typeof result === 'string') return result;\n\t}\n\n\tvalue = normalizeAttrValue(value);\n\n\tif (name === 'ref' || name === 'key') return '';\n\tif (name === 'style' && typeof value === 'object') {\n\t\tlet str = '';\n\t\tfor (let prop in value) {\n\t\t\tlet val = value[prop];\n\t\t\tif (val != null && val !== '') {\n\t\t\t\tconst name =\n\t\t\t\t\tprop[0] == '-'\n\t\t\t\t\t\t? prop\n\t\t\t\t\t\t: JS_TO_CSS[prop] ||\n\t\t\t\t\t\t\t(JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase());\n\n\t\t\t\tlet suffix = ';';\n\t\t\t\tif (\n\t\t\t\t\ttypeof val === 'number' &&\n\t\t\t\t\t// Exclude custom-attributes\n\t\t\t\t\t!name.startsWith('--') &&\n\t\t\t\t\t!IS_NON_DIMENSIONAL.test(name)\n\t\t\t\t) {\n\t\t\t\t\tsuffix = 'px;';\n\t\t\t\t}\n\t\t\t\tstr = str + name + ':' + val + suffix;\n\t\t\t}\n\t\t}\n\t\treturn name + '=\"' + encodeEntities(str) + '\"';\n\t}\n\n\tif (\n\t\tvalue == null ||\n\t\tvalue === false ||\n\t\ttypeof value === 'function' ||\n\t\ttypeof value === 'object'\n\t) {\n\t\treturn '';\n\t} else if (value === true) return name;\n\n\treturn name + '=\"' + encodeEntities('' + value) + '\"';\n}\n\n/**\n * Escape a dynamic child passed to `jsxTemplate`. This function\n * is not expected to be used directly, but rather through a\n * precompile JSX transform\n * @param {*} value\n * @returns {string | null | VNode | Array}\n */\nfunction jsxEscape(value) {\n\tif (\n\t\tvalue == null ||\n\t\ttypeof value === 'boolean' ||\n\t\ttypeof value === 'function'\n\t) {\n\t\treturn null;\n\t}\n\n\tif (typeof value === 'object') {\n\t\t// Check for VNode\n\t\tif (value.constructor === undefined) return value;\n\n\t\tif (isArray(value)) {\n\t\t\tfor (let i = 0; i < value.length; i++) {\n\t\t\t\tvalue[i] = jsxEscape(value[i]);\n\t\t\t}\n\t\t\treturn value;\n\t\t}\n\t}\n\n\treturn encodeEntities('' + value);\n}\n\nexport {\n\tcreateVNode as jsx,\n\tcreateVNode as jsxs,\n\tcreateVNode as jsxDEV,\n\tFragment,\n\t// precompiled JSX transform\n\tjsxTemplate,\n\tjsxAttr,\n\tjsxEscape\n};\n"],"names":["ENCODED_ENTITIES","encodeEntities","str","length","test","last","i","out","ch","charCodeAt","slice","IS_NON_DIMENSIONAL","vnodeId","isArray","Array","createVNode","type","props","key","isStaticChildren","__source","__self","ref","normalizedProps","vnode","__k","__","__b","__e","__c","constructor","undefined","__v","__i","__u","defaultProps","options","JS_TO_CSS","CSS_REGEX","name","value","attr","result","valueOf","normalizeAttrValue","prop","val","replace","toLowerCase","suffix","startsWith","jsxEscape","templates","Fragment","tpl","exprs","call","arguments"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs b/node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs index fb5c6eb..15cafef 100644 --- a/node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs +++ b/node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs @@ -1,2 +1,2 @@ -import{options as r,Fragment as e}from"preact";export{Fragment}from"preact";var t=/["&<]/;function n(r){if(0===r.length||!1===t.test(r))return r;for(var e=0,n=0,o="",f="";n} exprs\n * @returns {VNode}\n */\nfunction jsxTemplate(templates, ...exprs) {\n\tconst vnode = createVNode(Fragment, { tpl: templates, exprs });\n\t// Bypass render to string top level Fragment optimization\n\tvnode.key = vnode._vnode;\n\treturn vnode;\n}\n\nconst JS_TO_CSS = {};\nconst CSS_REGEX = /[A-Z]/g;\n\n/**\n * Serialize an HTML attribute to a string. This function is not\n * expected to be used directly, but rather through a precompile\n * JSX transform\n * @param {string} name The attribute name\n * @param {*} value The attribute value\n * @returns {string}\n */\nfunction jsxAttr(name, value) {\n\tif (options.attr) {\n\t\tconst result = options.attr(name, value);\n\t\tif (typeof result === 'string') return result;\n\t}\n\n\tif (name === 'ref' || name === 'key') return '';\n\tif (name === 'style' && typeof value === 'object') {\n\t\tlet str = '';\n\t\tfor (let prop in value) {\n\t\t\tlet val = value[prop];\n\t\t\tif (val != null && val !== '') {\n\t\t\t\tconst name =\n\t\t\t\t\tprop[0] == '-'\n\t\t\t\t\t\t? prop\n\t\t\t\t\t\t: JS_TO_CSS[prop] ||\n\t\t\t\t\t\t (JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase());\n\n\t\t\t\tlet suffix = ';';\n\t\t\t\tif (\n\t\t\t\t\ttypeof val === 'number' &&\n\t\t\t\t\t// Exclude custom-attributes\n\t\t\t\t\t!name.startsWith('--') &&\n\t\t\t\t\t!IS_NON_DIMENSIONAL.test(name)\n\t\t\t\t) {\n\t\t\t\t\tsuffix = 'px;';\n\t\t\t\t}\n\t\t\t\tstr = str + name + ':' + val + suffix;\n\t\t\t}\n\t\t}\n\t\treturn name + '=\"' + str + '\"';\n\t}\n\n\tif (\n\t\tvalue == null ||\n\t\tvalue === false ||\n\t\ttypeof value === 'function' ||\n\t\ttypeof value === 'object'\n\t) {\n\t\treturn '';\n\t} else if (value === true) return name;\n\n\treturn name + '=\"' + encodeEntities(value) + '\"';\n}\n\n/**\n * Escape a dynamic child passed to `jsxTemplate`. This function\n * is not expected to be used directly, but rather through a\n * precompile JSX transform\n * @param {*} value\n * @returns {string | null | VNode | Array}\n */\nfunction jsxEscape(value) {\n\tif (\n\t\tvalue == null ||\n\t\ttypeof value === 'boolean' ||\n\t\ttypeof value === 'function'\n\t) {\n\t\treturn null;\n\t}\n\n\tif (typeof value === 'object') {\n\t\t// Check for VNode\n\t\tif (value.constructor === undefined) return value;\n\n\t\tif (isArray(value)) {\n\t\t\tfor (let i = 0; i < value.length; i++) {\n\t\t\t\tvalue[i] = jsxEscape(value[i]);\n\t\t\t}\n\t\t\treturn value;\n\t\t}\n\t}\n\n\treturn encodeEntities('' + value);\n}\n\nexport {\n\tcreateVNode as jsx,\n\tcreateVNode as jsxs,\n\tcreateVNode as jsxDEV,\n\tFragment,\n\t// precompiled JSX transform\n\tjsxTemplate,\n\tjsxAttr,\n\tjsxEscape\n};\n"],"names":["ENCODED_ENTITIES","encodeEntities","str","length","test","last","i","out","ch","charCodeAt","slice","IS_NON_DIMENSIONAL","vnodeId","isArray","Array","createVNode","type","props","key","isStaticChildren","__source","__self","ref","normalizedProps","vnode","__k","__","__b","__e","__d","undefined","__c","constructor","__v","__i","__u","defaultProps","options","jsxTemplate","templates","Fragment","tpl","exprs","call","arguments","JS_TO_CSS","CSS_REGEX","jsxAttr","name","value","attr","result","prop","val","replace","toLowerCase","suffix","startsWith","jsxEscape"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"jsxRuntime.module.js","sources":["../src/utils.js","../../src/constants.js","../src/index.js"],"sourcesContent":["const ENCODED_ENTITIES = /[\"&<]/;\n\n/** @param {string} str */\nexport function encodeEntities(str) {\n\t// Skip all work for strings with no entities needing encoding:\n\tif (str.length === 0 || ENCODED_ENTITIES.test(str) === false) return str;\n\n\tlet last = 0,\n\t\ti = 0,\n\t\tout = '',\n\t\tch = '';\n\n\t// Seek forward in str until the next entity char:\n\tfor (; i < str.length; i++) {\n\t\tswitch (str.charCodeAt(i)) {\n\t\t\tcase 34:\n\t\t\t\tch = '"';\n\t\t\t\tbreak;\n\t\t\tcase 38:\n\t\t\t\tch = '&';\n\t\t\t\tbreak;\n\t\t\tcase 60:\n\t\t\t\tch = '<';\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcontinue;\n\t\t}\n\t\t// Append skipped/buffered characters and the encoded entity:\n\t\tif (i !== last) out += str.slice(last, i);\n\t\tout += ch;\n\t\t// Start the next seek/buffer after the entity's offset:\n\t\tlast = i + 1;\n\t}\n\tif (i !== last) out += str.slice(last, i);\n\treturn out;\n}\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 2;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 1;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const SVG_NAMESPACE = 'http://www.w3.org/2000/svg';\nexport const XHTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\nexport const MATH_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\n\nexport const NULL = null;\nexport const UNDEFINED = undefined;\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { options, Fragment } from 'preact';\nimport { encodeEntities } from './utils';\nimport { IS_NON_DIMENSIONAL } from '../../src/constants';\n\nlet vnodeId = 0;\n\nconst isArray = Array.isArray;\n\n/**\n * @fileoverview\n * This file exports various methods that implement Babel's \"automatic\" JSX runtime API:\n * - jsx(type, props, key)\n * - jsxs(type, props, key)\n * - jsxDEV(type, props, key, __source, __self)\n *\n * The implementation of createVNode here is optimized for performance.\n * Benchmarks: https://esbench.com/bench/5f6b54a0b4632100a7dcd2b3\n */\n\n/**\n * JSX.Element factory used by Babel's {runtime:\"automatic\"} JSX transform\n * @param {VNode['type']} type\n * @param {VNode['props']} props\n * @param {VNode['key']} [key]\n * @param {unknown} [isStaticChildren]\n * @param {unknown} [__source]\n * @param {unknown} [__self]\n */\nfunction createVNode(type, props, key, isStaticChildren, __source, __self) {\n\tif (!props) props = {};\n\t// We'll want to preserve `ref` in props to get rid of the need for\n\t// forwardRef components in the future, but that should happen via\n\t// a separate PR.\n\tlet normalizedProps = props,\n\t\tref,\n\t\ti;\n\n\tif ('ref' in normalizedProps) {\n\t\tnormalizedProps = {};\n\t\tfor (i in props) {\n\t\t\tif (i == 'ref') {\n\t\t\t\tref = props[i];\n\t\t\t} else {\n\t\t\t\tnormalizedProps[i] = props[i];\n\t\t\t}\n\t\t}\n\t}\n\n\t/** @type {VNode & { __source: any; __self: any }} */\n\tconst vnode = {\n\t\ttype,\n\t\tprops: normalizedProps,\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_component: null,\n\t\tconstructor: undefined,\n\t\t_original: --vnodeId,\n\t\t_index: -1,\n\t\t_flags: 0,\n\t\t__source,\n\t\t__self\n\t};\n\n\t// If a Component VNode, check for and apply defaultProps.\n\t// Note: `type` is often a String, and can be `undefined` in development.\n\tif (typeof type === 'function' && (ref = type.defaultProps)) {\n\t\tfor (i in ref)\n\t\t\tif (normalizedProps[i] === undefined) {\n\t\t\t\tnormalizedProps[i] = ref[i];\n\t\t\t}\n\t}\n\n\tif (options.vnode) options.vnode(vnode);\n\treturn vnode;\n}\n\n/**\n * Create a template vnode. This function is not expected to be\n * used directly, but rather through a precompile JSX transform\n * @param {string[]} templates\n * @param {Array} exprs\n * @returns {VNode}\n */\nfunction jsxTemplate(templates, ...exprs) {\n\tconst vnode = createVNode(Fragment, { tpl: templates, exprs });\n\t// Bypass render to string top level Fragment optimization\n\tvnode.key = vnode._vnode;\n\treturn vnode;\n}\n\nconst JS_TO_CSS = {};\nconst CSS_REGEX = /[A-Z]/g;\n\n/**\n * Unwrap potential signals.\n * @param {*} value\n * @returns {*}\n */\nfunction normalizeAttrValue(value) {\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.valueOf === 'function'\n\t\t? value.valueOf()\n\t\t: value;\n}\n\n/**\n * Serialize an HTML attribute to a string. This function is not\n * expected to be used directly, but rather through a precompile\n * JSX transform\n * @param {string} name The attribute name\n * @param {*} value The attribute value\n * @returns {string}\n */\nfunction jsxAttr(name, value) {\n\tif (options.attr) {\n\t\tconst result = options.attr(name, value);\n\t\tif (typeof result === 'string') return result;\n\t}\n\n\tvalue = normalizeAttrValue(value);\n\n\tif (name === 'ref' || name === 'key') return '';\n\tif (name === 'style' && typeof value === 'object') {\n\t\tlet str = '';\n\t\tfor (let prop in value) {\n\t\t\tlet val = value[prop];\n\t\t\tif (val != null && val !== '') {\n\t\t\t\tconst name =\n\t\t\t\t\tprop[0] == '-'\n\t\t\t\t\t\t? prop\n\t\t\t\t\t\t: JS_TO_CSS[prop] ||\n\t\t\t\t\t\t\t(JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase());\n\n\t\t\t\tlet suffix = ';';\n\t\t\t\tif (\n\t\t\t\t\ttypeof val === 'number' &&\n\t\t\t\t\t// Exclude custom-attributes\n\t\t\t\t\t!name.startsWith('--') &&\n\t\t\t\t\t!IS_NON_DIMENSIONAL.test(name)\n\t\t\t\t) {\n\t\t\t\t\tsuffix = 'px;';\n\t\t\t\t}\n\t\t\t\tstr = str + name + ':' + val + suffix;\n\t\t\t}\n\t\t}\n\t\treturn name + '=\"' + encodeEntities(str) + '\"';\n\t}\n\n\tif (\n\t\tvalue == null ||\n\t\tvalue === false ||\n\t\ttypeof value === 'function' ||\n\t\ttypeof value === 'object'\n\t) {\n\t\treturn '';\n\t} else if (value === true) return name;\n\n\treturn name + '=\"' + encodeEntities('' + value) + '\"';\n}\n\n/**\n * Escape a dynamic child passed to `jsxTemplate`. This function\n * is not expected to be used directly, but rather through a\n * precompile JSX transform\n * @param {*} value\n * @returns {string | null | VNode | Array}\n */\nfunction jsxEscape(value) {\n\tif (\n\t\tvalue == null ||\n\t\ttypeof value === 'boolean' ||\n\t\ttypeof value === 'function'\n\t) {\n\t\treturn null;\n\t}\n\n\tif (typeof value === 'object') {\n\t\t// Check for VNode\n\t\tif (value.constructor === undefined) return value;\n\n\t\tif (isArray(value)) {\n\t\t\tfor (let i = 0; i < value.length; i++) {\n\t\t\t\tvalue[i] = jsxEscape(value[i]);\n\t\t\t}\n\t\t\treturn value;\n\t\t}\n\t}\n\n\treturn encodeEntities('' + value);\n}\n\nexport {\n\tcreateVNode as jsx,\n\tcreateVNode as jsxs,\n\tcreateVNode as jsxDEV,\n\tFragment,\n\t// precompiled JSX transform\n\tjsxTemplate,\n\tjsxAttr,\n\tjsxEscape\n};\n"],"names":["ENCODED_ENTITIES","encodeEntities","str","length","test","last","i","out","ch","charCodeAt","slice","IS_NON_DIMENSIONAL","vnodeId","isArray","Array","createVNode","type","props","key","isStaticChildren","__source","__self","ref","normalizedProps","vnode","__k","__","__b","__e","__c","constructor","undefined","__v","__i","__u","defaultProps","options","jsxTemplate","templates","Fragment","tpl","exprs","call","arguments","JS_TO_CSS","CSS_REGEX","jsxAttr","name","value","attr","result","valueOf","normalizeAttrValue","prop","val","replace","toLowerCase","suffix","startsWith","jsxEscape"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js b/node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js index c6aaf62..0ff5a2f 100644 --- a/node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js +++ b/node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js @@ -1,2 +1,2 @@ -!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("preact")):"function"==typeof define&&define.amd?define(["exports","preact"],r):r((e||self).jsxRuntime={},e.preact)}(this,function(e,r){var n=/["&<]/;function t(e){if(0===e.length||!1===n.test(e))return e;for(var r=0,t=0,o="",f="";t} exprs\n * @returns {VNode}\n */\nfunction jsxTemplate(templates, ...exprs) {\n\tconst vnode = createVNode(Fragment, { tpl: templates, exprs });\n\t// Bypass render to string top level Fragment optimization\n\tvnode.key = vnode._vnode;\n\treturn vnode;\n}\n\nconst JS_TO_CSS = {};\nconst CSS_REGEX = /[A-Z]/g;\n\n/**\n * Serialize an HTML attribute to a string. This function is not\n * expected to be used directly, but rather through a precompile\n * JSX transform\n * @param {string} name The attribute name\n * @param {*} value The attribute value\n * @returns {string}\n */\nfunction jsxAttr(name, value) {\n\tif (options.attr) {\n\t\tconst result = options.attr(name, value);\n\t\tif (typeof result === 'string') return result;\n\t}\n\n\tif (name === 'ref' || name === 'key') return '';\n\tif (name === 'style' && typeof value === 'object') {\n\t\tlet str = '';\n\t\tfor (let prop in value) {\n\t\t\tlet val = value[prop];\n\t\t\tif (val != null && val !== '') {\n\t\t\t\tconst name =\n\t\t\t\t\tprop[0] == '-'\n\t\t\t\t\t\t? prop\n\t\t\t\t\t\t: JS_TO_CSS[prop] ||\n\t\t\t\t\t\t (JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase());\n\n\t\t\t\tlet suffix = ';';\n\t\t\t\tif (\n\t\t\t\t\ttypeof val === 'number' &&\n\t\t\t\t\t// Exclude custom-attributes\n\t\t\t\t\t!name.startsWith('--') &&\n\t\t\t\t\t!IS_NON_DIMENSIONAL.test(name)\n\t\t\t\t) {\n\t\t\t\t\tsuffix = 'px;';\n\t\t\t\t}\n\t\t\t\tstr = str + name + ':' + val + suffix;\n\t\t\t}\n\t\t}\n\t\treturn name + '=\"' + str + '\"';\n\t}\n\n\tif (\n\t\tvalue == null ||\n\t\tvalue === false ||\n\t\ttypeof value === 'function' ||\n\t\ttypeof value === 'object'\n\t) {\n\t\treturn '';\n\t} else if (value === true) return name;\n\n\treturn name + '=\"' + encodeEntities(value) + '\"';\n}\n\n/**\n * Escape a dynamic child passed to `jsxTemplate`. This function\n * is not expected to be used directly, but rather through a\n * precompile JSX transform\n * @param {*} value\n * @returns {string | null | VNode | Array}\n */\nfunction jsxEscape(value) {\n\tif (\n\t\tvalue == null ||\n\t\ttypeof value === 'boolean' ||\n\t\ttypeof value === 'function'\n\t) {\n\t\treturn null;\n\t}\n\n\tif (typeof value === 'object') {\n\t\t// Check for VNode\n\t\tif (value.constructor === undefined) return value;\n\n\t\tif (isArray(value)) {\n\t\t\tfor (let i = 0; i < value.length; i++) {\n\t\t\t\tvalue[i] = jsxEscape(value[i]);\n\t\t\t}\n\t\t\treturn value;\n\t\t}\n\t}\n\n\treturn encodeEntities('' + value);\n}\n\nexport {\n\tcreateVNode as jsx,\n\tcreateVNode as jsxs,\n\tcreateVNode as jsxDEV,\n\tFragment,\n\t// precompiled JSX transform\n\tjsxTemplate,\n\tjsxAttr,\n\tjsxEscape\n};\n"],"names":["ENCODED_ENTITIES","encodeEntities","str","length","test","last","i","out","ch","charCodeAt","slice","IS_NON_DIMENSIONAL","vnodeId","isArray","Array","createVNode","type","props","key","isStaticChildren","__source","__self","ref","normalizedProps","vnode","__k","__","__b","__e","__d","undefined","__c","constructor","__v","__i","__u","defaultProps","options","JS_TO_CSS","CSS_REGEX","name","value","attr","result","prop","val","replace","toLowerCase","suffix","startsWith","jsxEscape","templates","Fragment","tpl","exprs","call","arguments"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"jsxRuntime.umd.js","sources":["../src/utils.js","../../src/constants.js","../src/index.js"],"sourcesContent":["const ENCODED_ENTITIES = /[\"&<]/;\n\n/** @param {string} str */\nexport function encodeEntities(str) {\n\t// Skip all work for strings with no entities needing encoding:\n\tif (str.length === 0 || ENCODED_ENTITIES.test(str) === false) return str;\n\n\tlet last = 0,\n\t\ti = 0,\n\t\tout = '',\n\t\tch = '';\n\n\t// Seek forward in str until the next entity char:\n\tfor (; i < str.length; i++) {\n\t\tswitch (str.charCodeAt(i)) {\n\t\t\tcase 34:\n\t\t\t\tch = '"';\n\t\t\t\tbreak;\n\t\t\tcase 38:\n\t\t\t\tch = '&';\n\t\t\t\tbreak;\n\t\t\tcase 60:\n\t\t\t\tch = '<';\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcontinue;\n\t\t}\n\t\t// Append skipped/buffered characters and the encoded entity:\n\t\tif (i !== last) out += str.slice(last, i);\n\t\tout += ch;\n\t\t// Start the next seek/buffer after the entity's offset:\n\t\tlast = i + 1;\n\t}\n\tif (i !== last) out += str.slice(last, i);\n\treturn out;\n}\n","/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Indicates that this node needs to be inserted while patching children */\nexport const INSERT_VNODE = 1 << 2;\n/** Indicates a VNode has been matched with another VNode in the diff */\nexport const MATCHED = 1 << 1;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED);\n\nexport const SVG_NAMESPACE = 'http://www.w3.org/2000/svg';\nexport const XHTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';\nexport const MATH_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';\n\nexport const NULL = null;\nexport const UNDEFINED = undefined;\nexport const EMPTY_OBJ = /** @type {any} */ ({});\nexport const EMPTY_ARR = [];\nexport const IS_NON_DIMENSIONAL =\n\t/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { options, Fragment } from 'preact';\nimport { encodeEntities } from './utils';\nimport { IS_NON_DIMENSIONAL } from '../../src/constants';\n\nlet vnodeId = 0;\n\nconst isArray = Array.isArray;\n\n/**\n * @fileoverview\n * This file exports various methods that implement Babel's \"automatic\" JSX runtime API:\n * - jsx(type, props, key)\n * - jsxs(type, props, key)\n * - jsxDEV(type, props, key, __source, __self)\n *\n * The implementation of createVNode here is optimized for performance.\n * Benchmarks: https://esbench.com/bench/5f6b54a0b4632100a7dcd2b3\n */\n\n/**\n * JSX.Element factory used by Babel's {runtime:\"automatic\"} JSX transform\n * @param {VNode['type']} type\n * @param {VNode['props']} props\n * @param {VNode['key']} [key]\n * @param {unknown} [isStaticChildren]\n * @param {unknown} [__source]\n * @param {unknown} [__self]\n */\nfunction createVNode(type, props, key, isStaticChildren, __source, __self) {\n\tif (!props) props = {};\n\t// We'll want to preserve `ref` in props to get rid of the need for\n\t// forwardRef components in the future, but that should happen via\n\t// a separate PR.\n\tlet normalizedProps = props,\n\t\tref,\n\t\ti;\n\n\tif ('ref' in normalizedProps) {\n\t\tnormalizedProps = {};\n\t\tfor (i in props) {\n\t\t\tif (i == 'ref') {\n\t\t\t\tref = props[i];\n\t\t\t} else {\n\t\t\t\tnormalizedProps[i] = props[i];\n\t\t\t}\n\t\t}\n\t}\n\n\t/** @type {VNode & { __source: any; __self: any }} */\n\tconst vnode = {\n\t\ttype,\n\t\tprops: normalizedProps,\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_component: null,\n\t\tconstructor: undefined,\n\t\t_original: --vnodeId,\n\t\t_index: -1,\n\t\t_flags: 0,\n\t\t__source,\n\t\t__self\n\t};\n\n\t// If a Component VNode, check for and apply defaultProps.\n\t// Note: `type` is often a String, and can be `undefined` in development.\n\tif (typeof type === 'function' && (ref = type.defaultProps)) {\n\t\tfor (i in ref)\n\t\t\tif (normalizedProps[i] === undefined) {\n\t\t\t\tnormalizedProps[i] = ref[i];\n\t\t\t}\n\t}\n\n\tif (options.vnode) options.vnode(vnode);\n\treturn vnode;\n}\n\n/**\n * Create a template vnode. This function is not expected to be\n * used directly, but rather through a precompile JSX transform\n * @param {string[]} templates\n * @param {Array} exprs\n * @returns {VNode}\n */\nfunction jsxTemplate(templates, ...exprs) {\n\tconst vnode = createVNode(Fragment, { tpl: templates, exprs });\n\t// Bypass render to string top level Fragment optimization\n\tvnode.key = vnode._vnode;\n\treturn vnode;\n}\n\nconst JS_TO_CSS = {};\nconst CSS_REGEX = /[A-Z]/g;\n\n/**\n * Unwrap potential signals.\n * @param {*} value\n * @returns {*}\n */\nfunction normalizeAttrValue(value) {\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.valueOf === 'function'\n\t\t? value.valueOf()\n\t\t: value;\n}\n\n/**\n * Serialize an HTML attribute to a string. This function is not\n * expected to be used directly, but rather through a precompile\n * JSX transform\n * @param {string} name The attribute name\n * @param {*} value The attribute value\n * @returns {string}\n */\nfunction jsxAttr(name, value) {\n\tif (options.attr) {\n\t\tconst result = options.attr(name, value);\n\t\tif (typeof result === 'string') return result;\n\t}\n\n\tvalue = normalizeAttrValue(value);\n\n\tif (name === 'ref' || name === 'key') return '';\n\tif (name === 'style' && typeof value === 'object') {\n\t\tlet str = '';\n\t\tfor (let prop in value) {\n\t\t\tlet val = value[prop];\n\t\t\tif (val != null && val !== '') {\n\t\t\t\tconst name =\n\t\t\t\t\tprop[0] == '-'\n\t\t\t\t\t\t? prop\n\t\t\t\t\t\t: JS_TO_CSS[prop] ||\n\t\t\t\t\t\t\t(JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase());\n\n\t\t\t\tlet suffix = ';';\n\t\t\t\tif (\n\t\t\t\t\ttypeof val === 'number' &&\n\t\t\t\t\t// Exclude custom-attributes\n\t\t\t\t\t!name.startsWith('--') &&\n\t\t\t\t\t!IS_NON_DIMENSIONAL.test(name)\n\t\t\t\t) {\n\t\t\t\t\tsuffix = 'px;';\n\t\t\t\t}\n\t\t\t\tstr = str + name + ':' + val + suffix;\n\t\t\t}\n\t\t}\n\t\treturn name + '=\"' + encodeEntities(str) + '\"';\n\t}\n\n\tif (\n\t\tvalue == null ||\n\t\tvalue === false ||\n\t\ttypeof value === 'function' ||\n\t\ttypeof value === 'object'\n\t) {\n\t\treturn '';\n\t} else if (value === true) return name;\n\n\treturn name + '=\"' + encodeEntities('' + value) + '\"';\n}\n\n/**\n * Escape a dynamic child passed to `jsxTemplate`. This function\n * is not expected to be used directly, but rather through a\n * precompile JSX transform\n * @param {*} value\n * @returns {string | null | VNode | Array}\n */\nfunction jsxEscape(value) {\n\tif (\n\t\tvalue == null ||\n\t\ttypeof value === 'boolean' ||\n\t\ttypeof value === 'function'\n\t) {\n\t\treturn null;\n\t}\n\n\tif (typeof value === 'object') {\n\t\t// Check for VNode\n\t\tif (value.constructor === undefined) return value;\n\n\t\tif (isArray(value)) {\n\t\t\tfor (let i = 0; i < value.length; i++) {\n\t\t\t\tvalue[i] = jsxEscape(value[i]);\n\t\t\t}\n\t\t\treturn value;\n\t\t}\n\t}\n\n\treturn encodeEntities('' + value);\n}\n\nexport {\n\tcreateVNode as jsx,\n\tcreateVNode as jsxs,\n\tcreateVNode as jsxDEV,\n\tFragment,\n\t// precompiled JSX transform\n\tjsxTemplate,\n\tjsxAttr,\n\tjsxEscape\n};\n"],"names":["ENCODED_ENTITIES","encodeEntities","str","length","test","last","i","out","ch","charCodeAt","slice","IS_NON_DIMENSIONAL","vnodeId","isArray","Array","createVNode","type","props","key","isStaticChildren","__source","__self","ref","normalizedProps","vnode","__k","__","__b","__e","__c","constructor","undefined","__v","__i","__u","defaultProps","options","JS_TO_CSS","CSS_REGEX","name","value","attr","result","valueOf","normalizeAttrValue","prop","val","replace","toLowerCase","suffix","startsWith","jsxEscape","templates","Fragment","tpl","exprs","call","arguments"],"mappings":"0QAAA,IAAMA,EAAmB,QAGlB,SAASC,EAAeC,GAE9B,GAAmB,IAAfA,EAAIC,SAA+C,IAA/BH,EAAiBI,KAAKF,GAAgB,OAAOA,EAQrE,IANA,IAAIG,EAAO,EACVC,EAAI,EACJC,EAAM,GACNC,EAAK,GAGCF,EAAIJ,EAAIC,OAAQG,IAAK,CAC3B,OAAQJ,EAAIO,WAAWH,IACtB,KAAK,GACJE,EAAK,SACL,MACD,KAAO,GACNA,EAAK,QACL,MACD,KAAK,GACJA,EAAK,OACL,MACD,QACC,SAGEF,IAAMD,IAAME,GAAOL,EAAIQ,MAAML,EAAMC,IACvCC,GAAOC,EAEPH,EAAOC,EAAI,CACZ,CAEA,OADIA,IAAMD,IAAME,GAAOL,EAAIQ,MAAML,EAAMC,IAChCC,CACR,CCfa,IAAAI,EACZ,oECjBGC,EAAU,EAERC,EAAUC,MAAMD,QAsBtB,SAASE,EAAYC,EAAMC,EAAOC,EAAKC,EAAkBC,EAAUC,GAC7DJ,IAAOA,EAAQ,IAIpB,IACCK,EACAhB,EAFGiB,EAAkBN,EAItB,GAAI,QAASM,EAEZ,IAAKjB,KADLiB,EAAkB,GACRN,EACA,OAALX,EACHgB,EAAML,EAAMX,GAEZiB,EAAgBjB,GAAKW,EAAMX,GAM9B,IAAMkB,EAAQ,CACbR,KAAAA,EACAC,MAAOM,EACPL,IAAAA,EACAI,IAAAA,EACAG,IAAW,KACXC,GAAS,KACTC,IAAQ,EACRC,IAAM,KACNC,IAAY,KACZC,iBAAaC,EACbC,MAAapB,EACbqB,KAAS,EACTC,IAAQ,EACRd,SAAAA,EACAC,OAAAA,GAKD,GAAoB,mBAATL,IAAwBM,EAAMN,EAAKmB,cAC7C,IAAK7B,KAAKgB,OACkBS,IAAvBR,EAAgBjB,KACnBiB,EAAgBjB,GAAKgB,EAAIhB,IAK5B,OADI8B,EAAOA,QAACZ,OAAOY,EAAAA,QAAQZ,MAAMA,GAC1BA,CACR,CAgBA,IAAMa,EAAY,CAAE,EACdC,EAAY,iHAuBlB,SAAiBC,EAAMC,GACtB,GAAIJ,EAAOA,QAACK,KAAM,CACjB,IAAMC,EAASN,EAAAA,QAAQK,KAAKF,EAAMC,GAClC,GAAsB,iBAAXE,EAAqB,OAAOA,CACxC,CAIA,GAFAF,EAtBD,SAA4BA,GAC3B,OAAiB,OAAVA,GACW,iBAAVA,GACkB,mBAAlBA,EAAMG,QACXH,EAAMG,UACNH,CACJ,CAgBSI,CAAmBJ,GAEd,QAATD,GAA2B,QAATA,EAAgB,MAAO,GAC7C,GAAa,UAATA,GAAqC,iBAAVC,EAAoB,CAClD,IAAItC,EAAM,GACV,IAAK,IAAI2C,KAAQL,EAAO,CACvB,IAAIM,EAAMN,EAAMK,GAChB,GAAW,MAAPC,GAAuB,KAARA,EAAY,CAC9B,IAAMP,EACM,KAAXM,EAAK,GACFA,EACAR,EAAUQ,KACVR,EAAUQ,GAAQA,EAAKE,QAAQT,EAAW,OAAOU,eAEjDC,EAAS,IAEG,iBAARH,GAENP,EAAKW,WAAW,OAChBvC,EAAmBP,KAAKmC,KAEzBU,EAAS,OAEV/C,EAAMA,EAAMqC,EAAO,IAAMO,EAAMG,CAChC,CACD,CACA,OAAOV,EAAO,KAAOtC,EAAeC,GAAO,GAC5C,CAEA,OACU,MAATsC,IACU,IAAVA,GACiB,mBAAVA,GACU,iBAAVA,EAEA,IACa,IAAVA,EAAuBD,EAE3BA,EAAO,KAAOtC,EAAe,GAAKuC,GAAS,GACnD,yBASA,SAASW,EAAUX,GAClB,GACU,MAATA,GACiB,kBAAVA,GACU,mBAAVA,EAEP,OACD,KAEA,GAAqB,iBAAVA,EAAoB,CAE9B,QAA0BT,IAAtBS,EAAMV,YAA2B,OAAOU,EAE5C,GAAI3B,EAAQ2B,GAAQ,CACnB,IAAK,IAAIlC,EAAI,EAAGA,EAAIkC,EAAMrC,OAAQG,IACjCkC,EAAMlC,GAAK6C,EAAUX,EAAMlC,IAE5B,OAAOkC,CACR,CACD,CAEA,OAAOvC,EAAe,GAAKuC,EAC5B,gBA3GA,SAAqBY,GACpB,IAAM5B,EAAQT,EAAYsC,EAAQA,SAAE,CAAEC,IAAKF,EAAWG,SAAK7C,MAAA8C,KAAAC,UAAC,KAG5D,OADAjC,EAAMN,IAAMM,EAAKQ,IACVR,CACR"} \ No newline at end of file diff --git a/node_modules/preact/jsx-runtime/src/index.d.ts b/node_modules/preact/jsx-runtime/src/index.d.ts index 03845a1..46649e8 100644 --- a/node_modules/preact/jsx-runtime/src/index.d.ts +++ b/node_modules/preact/jsx-runtime/src/index.d.ts @@ -1,11 +1,13 @@ -export { Fragment } from '../../'; +// Intentionally not using a relative path to take advantage of +// the TS version resolution mechanism +export { Fragment } from 'preact'; import { ComponentType, ComponentChild, ComponentChildren, VNode, Attributes -} from '../../'; +} from 'preact'; import { JSXInternal } from '../../src/jsx'; export function jsx( diff --git a/node_modules/preact/jsx-runtime/src/index.js b/node_modules/preact/jsx-runtime/src/index.js index 8cbe9ea..bfd17bd 100644 --- a/node_modules/preact/jsx-runtime/src/index.js +++ b/node_modules/preact/jsx-runtime/src/index.js @@ -27,17 +27,22 @@ const isArray = Array.isArray; * @param {unknown} [__self] */ function createVNode(type, props, key, isStaticChildren, __source, __self) { + if (!props) props = {}; // We'll want to preserve `ref` in props to get rid of the need for // forwardRef components in the future, but that should happen via // a separate PR. - let normalizedProps = {}, + let normalizedProps = props, ref, i; - for (i in props) { - if (i == 'ref') { - ref = props[i]; - } else { - normalizedProps[i] = props[i]; + + if ('ref' in normalizedProps) { + normalizedProps = {}; + for (i in props) { + if (i == 'ref') { + ref = props[i]; + } else { + normalizedProps[i] = props[i]; + } } } @@ -51,7 +56,6 @@ function createVNode(type, props, key, isStaticChildren, __source, __self) { _parent: null, _depth: 0, _dom: null, - _nextDom: undefined, _component: null, constructor: undefined, _original: --vnodeId, @@ -65,7 +69,7 @@ function createVNode(type, props, key, isStaticChildren, __source, __self) { // Note: `type` is often a String, and can be `undefined` in development. if (typeof type === 'function' && (ref = type.defaultProps)) { for (i in ref) - if (typeof normalizedProps[i] === 'undefined') { + if (normalizedProps[i] === undefined) { normalizedProps[i] = ref[i]; } } @@ -91,6 +95,19 @@ function jsxTemplate(templates, ...exprs) { const JS_TO_CSS = {}; const CSS_REGEX = /[A-Z]/g; +/** + * Unwrap potential signals. + * @param {*} value + * @returns {*} + */ +function normalizeAttrValue(value) { + return value !== null && + typeof value === 'object' && + typeof value.valueOf === 'function' + ? value.valueOf() + : value; +} + /** * Serialize an HTML attribute to a string. This function is not * expected to be used directly, but rather through a precompile @@ -105,6 +122,8 @@ function jsxAttr(name, value) { if (typeof result === 'string') return result; } + value = normalizeAttrValue(value); + if (name === 'ref' || name === 'key') return ''; if (name === 'style' && typeof value === 'object') { let str = ''; @@ -115,7 +134,7 @@ function jsxAttr(name, value) { prop[0] == '-' ? prop : JS_TO_CSS[prop] || - (JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase()); + (JS_TO_CSS[prop] = prop.replace(CSS_REGEX, '-$&').toLowerCase()); let suffix = ';'; if ( @@ -129,7 +148,7 @@ function jsxAttr(name, value) { str = str + name + ':' + val + suffix; } } - return name + '="' + str + '"'; + return name + '="' + encodeEntities(str) + '"'; } if ( @@ -141,7 +160,7 @@ function jsxAttr(name, value) { return ''; } else if (value === true) return name; - return name + '="' + encodeEntities(value) + '"'; + return name + '="' + encodeEntities('' + value) + '"'; } /** diff --git a/node_modules/preact/package.json b/node_modules/preact/package.json index a2d6871..7dcbc25 100644 --- a/node_modules/preact/package.json +++ b/node_modules/preact/package.json @@ -1,7 +1,7 @@ { "name": "preact", "amdName": "preact", - "version": "10.19.3", + "version": "10.28.3", "private": false, "description": "Fast 3kb React-compatible Virtual DOM library.", "main": "dist/preact.js", @@ -9,8 +9,16 @@ "umd:main": "dist/preact.umd.js", "unpkg": "dist/preact.min.js", "source": "src/index.js", + "typesVersions": { + "<=5.0": { + ".": ["./src/index-5.d.ts"] + } + }, "exports": { ".": { + "types@<=5.0": { + "types": "./src/index-5.d.ts" + }, "types": "./src/index.d.ts", "browser": "./dist/preact.module.js", "umd": "./dist/preact.umd.js", @@ -52,6 +60,13 @@ "import": "./test-utils/dist/testUtils.mjs", "require": "./test-utils/dist/testUtils.js" }, + "./compat/test-utils": { + "types": "./test-utils/src/index.d.ts", + "browser": "./test-utils/dist/testUtils.module.js", + "umd": "./test-utils/dist/testUtils.umd.js", + "import": "./test-utils/dist/testUtils.mjs", + "require": "./test-utils/dist/testUtils.js" + }, "./jsx-runtime": { "types": "./jsx-runtime/src/index.d.ts", "browser": "./jsx-runtime/dist/jsxRuntime.module.js", @@ -67,6 +82,7 @@ "require": "./jsx-runtime/dist/jsxRuntime.js" }, "./compat/client": { + "types": "./compat/client.d.ts", "import": "./compat/client.mjs", "require": "./compat/client.js" }, @@ -75,6 +91,10 @@ "import": "./compat/server.mjs", "require": "./compat/server.js" }, + "./compat/server.browser": { + "types": "./compat/server.d.ts", + "default": "./compat/server.browser.js" + }, "./compat/jsx-runtime": { "types": "./jsx-runtime/src/index.d.ts", "import": "./compat/jsx-runtime.mjs", @@ -104,110 +124,47 @@ }, "types": "src/index.d.ts", "scripts": { - "prepare": "run-s build && check-export-map", - "build": "npm-run-all --parallel build:*", + "prepare": "husky && run-s build", + "build": "npm-run-all --parallel 'build:*'", "build:core": "microbundle build --raw --no-generateTypes -f cjs,esm,umd", "build:core-min": "microbundle build --raw --no-generateTypes -f cjs,esm,umd,iife src/cjs.js -o dist/preact.min.js", "build:debug": "microbundle build --raw --no-generateTypes -f cjs,esm,umd --cwd debug", "build:devtools": "microbundle build --raw --no-generateTypes -f cjs,esm,umd --cwd devtools", "build:hooks": "microbundle build --raw --no-generateTypes -f cjs,esm,umd --cwd hooks", "build:test-utils": "microbundle build --raw --no-generateTypes -f cjs,esm,umd --cwd test-utils", - "build:compat": "microbundle build src/index.js src/scheduler.js --raw --no-generateTypes -f cjs,esm,umd --cwd compat --globals 'preact/hooks=preactHooks'", + "build:compat": "microbundle build --raw --no-generateTypes -f cjs,esm,umd --cwd compat --globals 'preact/hooks=preactHooks'", "build:jsx": "microbundle build --raw --no-generateTypes -f cjs,esm,umd --cwd jsx-runtime", "postbuild": "node ./config/node-13-exports.js && node ./config/compat-entries.js", "dev": "microbundle watch --raw --no-generateTypes --format cjs", "dev:hooks": "microbundle watch --raw --no-generateTypes --format cjs --cwd hooks", "dev:compat": "microbundle watch --raw --no-generateTypes --format cjs --cwd compat --globals 'preact/hooks=preactHooks'", "test": "npm-run-all build lint test:unit", - "test:unit": "run-p test:mocha test:karma:minify test:ts", - "test:ts": "run-p test:ts:*", + "test:unit": "run-p test:mocha test:vitest:min test:ts", + "test:vitest": "cross-env COVERAGE=true vitest run", + "test:vitest:min": "cross-env MINIFY=true vitest run", + "test:vitest:watch": "vitest", + "test:ts": "run-p 'test:ts:*'", "test:ts:core": "tsc -p test/ts/ && mocha --require \"@babel/register\" test/ts/**/*-test.js", "test:ts:compat": "tsc -p compat/test/ts/", "test:mocha": "mocha --recursive --require \"@babel/register\" test/shared test/node", "test:mocha:watch": "npm run test:mocha -- --watch", - "test:karma": "cross-env COVERAGE=true BABEL_NO_MODULES=true karma start karma.conf.js --single-run", - "test:karma:minify": "cross-env COVERAGE=true MINIFY=true BABEL_NO_MODULES=true karma start karma.conf.js --single-run", - "test:karma:watch": "cross-env BABEL_NO_MODULES=true karma start karma.conf.js --no-single-run", - "test:karma:hooks": "cross-env COVERAGE=false BABEL_NO_MODULES=true karma start karma.conf.js --grep=hooks/test/browser/**.js --no-single-run", - "test:karma:test-utils": "cross-env PERFORMANCE=false COVERAGE=false BABEL_NO_MODULES=true karma start karma.conf.js --grep=test-utils/test/shared/**.js --no-single-run", - "test:karma:bench": "cross-env PERFORMANCE=true COVERAGE=false BABEL_NO_MODULES=true karma start karma.conf.js --grep=test/benchmarks/**.js --single-run", - "benchmark": "npm run test:karma:bench -- no-single-run", - "lint": "run-s eslint tsc", + "lint": "run-s oxlint tsc", "tsc": "tsc -p jsconfig-lint.json", - "eslint": "eslint src test debug compat hooks test-utils", - "format": "prettier --write \"**/*.{js,jsx,mjs,cjs,ts,tsx,yml,json,html,md,css,scss}\"", - "format:check": "prettier --check '**/*.{js,jsx,mjs,cjs,ts,tsx,yml,json,html,md,css,scss}'" + "oxlint": "oxlint -c oxlint.json src test/browser test/node test/shared debug compat hooks test-utils", + "format": "biome format --write .", + "format:check": "biome format ." }, - "eslintConfig": { - "extends": [ - "developit", - "prettier" - ], - "settings": { - "react": { - "pragma": "createElement" - } - }, - "rules": { - "camelcase": [ - 1, - { - "allow": [ - "__test__*", - "unstable_*", - "UNSAFE_*" - ] - } - ], - "no-unused-vars": [ - 2, - { - "args": "none", - "varsIgnorePattern": "^h|React$" - } - ], - "prefer-rest-params": 0, - "prefer-spread": 0, - "no-cond-assign": 0, - "react/jsx-no-bind": 0, - "react/no-danger": "off", - "react/prefer-stateless-function": 0, - "react/sort-comp": 0, - "jest/valid-expect": 0, - "jest/no-disabled-tests": 0, - "jest/no-test-callback": 0, - "jest/expect-expect": 0, - "jest/no-standalone-expect": 0, - "jest/no-export": 0, - "react/no-find-dom-node": 0 - } - }, - "eslintIgnore": [ - "test/fixtures", - "test/ts/", - "*.ts", - "dist" - ], - "prettier": { - "singleQuote": true, - "trailingComma": "none", - "arrowParens": "avoid" - }, - "lint-staged": { + "nano-staged": { "**/*.{js,jsx,mjs,cjs,ts,tsx,yml,json,html,md,css,scss}": [ - "prettier --write" + "biome format --write --no-errors-on-unmatched" ] }, - "husky": { - "hooks": { - "pre-commit": "lint-staged" - } - }, "files": [ "src", "dist", "compat/dist", "compat/src", + "compat/client.d.ts", "compat/client.js", "compat/client.mjs", "compat/server.browser.js", @@ -216,6 +173,7 @@ "compat/scheduler.js", "compat/scheduler.mjs", "compat/test-utils.js", + "compat/test-utils.mjs", "compat/jsx-runtime.js", "compat/jsx-runtime.mjs", "compat/jsx-dev-runtime.js", @@ -256,63 +214,45 @@ "bugs": "https://github.com/preactjs/preact/issues", "homepage": "https://preactjs.com", "devDependencies": { - "@actions/github": "^5.0.0", - "@actions/glob": "^0.2.0", - "@babel/core": "^7.7.0", - "@babel/plugin-proposal-object-rest-spread": "^7.6.2", - "@babel/plugin-transform-react-jsx": "^7.7.0", - "@babel/plugin-transform-react-jsx-source": "^7.7.4", - "@babel/preset-env": "^7.7.1", - "@babel/register": "^7.7.0", - "@types/chai": "^4.1.2", - "@types/mocha": "^5.0.0", - "@types/node": "^14.14.10", - "babel-plugin-istanbul": "^6.0.0", - "babel-plugin-transform-async-to-promises": "^0.8.15", + "@actions/github": "^6.0.0", + "@actions/glob": "^0.5.0", + "@babel/core": "^7.26.0", + "@babel/plugin-transform-react-jsx": "^7.25.9", + "@babel/plugin-transform-react-jsx-source": "^7.25.9", + "@babel/preset-env": "^7.26.0", + "@babel/register": "^7.25.9", + "@biomejs/biome": "^1.9.4", + "@types/chai": "^5.0.1", + "@types/mocha": "^10.0.0", + "@types/node": "^18.19.87", + "@types/sinon": "^17.0.3", + "@vitest/browser": "^3.2.1", + "@vitest/coverage-istanbul": "^3.2.1", "babel-plugin-transform-rename-properties": "0.1.0", - "benchmark": "^2.1.4", - "chai": "^4.1.2", - "check-export-map": "^1.3.0", - "coveralls": "^3.0.0", - "cross-env": "^7.0.2", - "diff": "^5.0.0", - "errorstacks": "^2.4.0", - "esbuild": "^0.14.50", - "eslint": "5.15.1", - "eslint-config-developit": "^1.1.1", - "eslint-config-prettier": "^6.5.0", - "eslint-plugin-react": "7.12.4", - "husky": "^4.3.0", - "karma": "^6.3.16", - "karma-chai-sinon": "^0.1.5", - "karma-chrome-launcher": "^3.1.0", - "karma-coverage": "^2.1.0", - "karma-esbuild": "^2.2.4", - "karma-mocha": "^2.0.1", - "karma-mocha-reporter": "^2.2.5", - "karma-sauce-launcher": "^4.3.4", - "karma-sinon": "^1.0.5", - "karma-sourcemap-loader": "^0.3.7", - "kolorist": "^1.2.10", - "lint-staged": "^10.5.2", - "lodash": "^4.17.20", + "chai": "^5.2.0", + "coveralls": "^3.1.1", + "cross-env": "^7.0.3", + "errorstacks": "^2.4.1", + "esbuild": "^0.24.0", + "husky": "^9.1.7", + "kolorist": "^1.8.0", "microbundle": "^0.15.1", - "mocha": "^8.2.1", - "npm-merge-driver-install": "^1.1.1", - "npm-run-all": "^4.0.0", - "preact-render-to-string": "^5.2.5", - "prettier": "^2.8.6", - "prop-types": "^15.7.2", - "sade": "^1.7.4", - "sinon": "^9.2.3", - "sinon-chai": "^3.5.0", - "typescript": "^4.9.5", - "undici": "^4.12.0" - }, - "overrides": { - "webdriverio": "7.30.2" + "mocha": "^11.0.0", + "npm-run-all2": "^7.0.0", + "oxlint": "^0.15.12", + "preact-render-to-string": "^6.5.0", + "prop-types": "^15.8.1", + "sade": "^1.8.1", + "sinon": "^19.0.2", + "sinon-chai": "^4.0.0", + "terser": "5.16.0", + "typescript": "5.1.6", + "undici": "^4.12.0", + "vite": "^6.2.0", + "vitest": "^3.2.1", + "webdriverio": "^9.15.0" }, "volta": { - "node": "20.9.0" + "node": "20.19.1" } } diff --git a/node_modules/preact/src/clone-element.js b/node_modules/preact/src/clone-element.js index 5facb7e..671eb4e 100644 --- a/node_modules/preact/src/clone-element.js +++ b/node_modules/preact/src/clone-element.js @@ -1,14 +1,15 @@ import { assign, slice } from './util'; import { createVNode } from './create-element'; +import { NULL, UNDEFINED } from './constants'; /** * Clones the given VNode, optionally adding attributes/props and replacing its * children. - * @param {VNode} vnode The virtual DOM element to clone + * @param {import('./internal').VNode} vnode The virtual DOM element to clone * @param {object} props Attributes/props to add when cloning - * @param {Array} rest Any additional arguments will be used + * @param {Array} rest Any additional arguments will be used * as replacement children. - * @returns {VNode} + * @returns {import('./internal').VNode} */ export function cloneElement(vnode, props, children) { let normalizedProps = assign({}, vnode.props), @@ -25,7 +26,7 @@ export function cloneElement(vnode, props, children) { for (i in props) { if (i == 'key') key = props[i]; else if (i == 'ref') ref = props[i]; - else if (props[i] === undefined && defaultProps !== undefined) { + else if (props[i] === UNDEFINED && defaultProps != UNDEFINED) { normalizedProps[i] = defaultProps[i]; } else { normalizedProps[i] = props[i]; @@ -42,6 +43,6 @@ export function cloneElement(vnode, props, children) { normalizedProps, key || vnode.key, ref || vnode.ref, - null + NULL ); } diff --git a/node_modules/preact/src/component.js b/node_modules/preact/src/component.js index 48520bb..23f3f31 100644 --- a/node_modules/preact/src/component.js +++ b/node_modules/preact/src/component.js @@ -2,7 +2,7 @@ import { assign } from './util'; import { diff, commitRoot } from './diff/index'; import options from './options'; import { Fragment } from './create-element'; -import { MODE_HYDRATE } from './constants'; +import { MODE_HYDRATE, NULL } from './constants'; /** * Base Component class. Provides `setState()` and `forceUpdate()`, which @@ -18,7 +18,7 @@ export function BaseComponent(props, context) { /** * Update component state and schedule a re-render. - * @this {Component} + * @this {import('./internal').Component} * @param {object | ((s: object, p: object) => object)} update A hash of state * properties to update with new values or a function that given the current * state and props returns a new partial state @@ -28,7 +28,7 @@ export function BaseComponent(props, context) { BaseComponent.prototype.setState = function (update, callback) { // only clone state when copying to nextState the first time. let s; - if (this._nextState != null && this._nextState !== this.state) { + if (this._nextState != NULL && this._nextState != this.state) { s = this._nextState; } else { s = this._nextState = assign({}, this.state); @@ -45,7 +45,7 @@ BaseComponent.prototype.setState = function (update, callback) { } // Skip update if updater function returned null - if (update == null) return; + if (update == NULL) return; if (this._vnode) { if (callback) { @@ -57,7 +57,7 @@ BaseComponent.prototype.setState = function (update, callback) { /** * Immediately perform a synchronous re-render of the component - * @this {Component} + * @this {import('./internal').Component} * @param {() => void} [callback] A function to be called after component is * re-rendered */ @@ -74,7 +74,7 @@ BaseComponent.prototype.forceUpdate = function (callback) { /** * Accepts `props` and `state`, and returns a new Virtual DOM tree to build. - * Virtual DOM is generally constructed via [JSX](http://jasonformat.com/wtf-is-jsx). + * Virtual DOM is generally constructed via [JSX](https://jasonformat.com/wtf-is-jsx). * @param {object} props Props (eg: JSX attributes) received from parent * element/component * @param {object} state The component's current state @@ -85,22 +85,22 @@ BaseComponent.prototype.forceUpdate = function (callback) { BaseComponent.prototype.render = Fragment; /** - * @param {VNode} vnode + * @param {import('./internal').VNode} vnode * @param {number | null} [childIndex] */ export function getDomSibling(vnode, childIndex) { - if (childIndex == null) { + if (childIndex == NULL) { // Use childIndex==null as a signal to resume the search from the vnode's sibling return vnode._parent ? getDomSibling(vnode._parent, vnode._index + 1) - : null; + : NULL; } let sibling; for (; childIndex < vnode._children.length; childIndex++) { sibling = vnode._children[childIndex]; - if (sibling != null && sibling._dom != null) { + if (sibling != NULL && sibling._dom != NULL) { // Since updateParentDomPointers keeps _dom pointer correct, // we can rely on _dom to tell us if this subtree contains a // rendered DOM node, and what the first rendered DOM node is @@ -113,40 +113,41 @@ export function getDomSibling(vnode, childIndex) { // Only climb up and search the parent if we aren't searching through a DOM // VNode (meaning we reached the DOM parent of the original vnode that began // the search) - return typeof vnode.type == 'function' ? getDomSibling(vnode) : null; + return typeof vnode.type == 'function' ? getDomSibling(vnode) : NULL; } /** * Trigger in-place re-rendering of a component. - * @param {Component} component The component to rerender + * @param {import('./internal').Component} component The component to rerender */ function renderComponent(component) { let oldVNode = component._vnode, oldDom = oldVNode._dom, - parentDom = component._parentDom, commitQueue = [], refQueue = []; - if (parentDom) { + if (component._parentDom) { const newVNode = assign({}, oldVNode); newVNode._original = oldVNode._original + 1; if (options.vnode) options.vnode(newVNode); diff( - parentDom, + component._parentDom, newVNode, oldVNode, component._globalContext, - parentDom.ownerSVGElement !== undefined, - oldVNode._flags & MODE_HYDRATE ? [oldDom] : null, + component._parentDom.namespaceURI, + oldVNode._flags & MODE_HYDRATE ? [oldDom] : NULL, commitQueue, - oldDom == null ? getDomSibling(oldVNode) : oldDom, + oldDom == NULL ? getDomSibling(oldVNode) : oldDom, !!(oldVNode._flags & MODE_HYDRATE), refQueue ); + newVNode._original = oldVNode._original; newVNode._parent._children[newVNode._index] = newVNode; commitRoot(commitQueue, newVNode, refQueue); + oldVNode._dom = oldVNode._parent = null; if (newVNode._dom != oldDom) { updateParentDomPointers(newVNode); @@ -155,14 +156,14 @@ function renderComponent(component) { } /** - * @param {VNode} vnode + * @param {import('./internal').VNode} vnode */ function updateParentDomPointers(vnode) { - if ((vnode = vnode._parent) != null && vnode._component != null) { - vnode._dom = vnode._component.base = null; + if ((vnode = vnode._parent) != NULL && vnode._component != NULL) { + vnode._dom = vnode._component.base = NULL; for (let i = 0; i < vnode._children.length; i++) { let child = vnode._children[i]; - if (child != null && child._dom != null) { + if (child != NULL && child._dom != NULL) { vnode._dom = vnode._component.base = child._dom; break; } @@ -174,7 +175,7 @@ function updateParentDomPointers(vnode) { /** * The render queue - * @type {Array} + * @type {Array} */ let rerenderQueue = []; @@ -196,7 +197,7 @@ const defer = /** * Enqueue a rerender of a component - * @param {Component} c The component to rerender + * @param {import('./internal').Component} c The component to rerender */ export function enqueueRender(c) { if ( @@ -204,7 +205,7 @@ export function enqueueRender(c) { (c._dirty = true) && rerenderQueue.push(c) && !process._rerenderCount++) || - prevDebounce !== options.debounceRendering + prevDebounce != options.debounceRendering ) { prevDebounce = options.debounceRendering; (prevDebounce || defer)(process); @@ -212,27 +213,34 @@ export function enqueueRender(c) { } /** - * @param {Component} a - * @param {Component} b + * @param {import('./internal').Component} a + * @param {import('./internal').Component} b */ const depthSort = (a, b) => a._vnode._depth - b._vnode._depth; /** Flush the render queue by rerendering all queued components */ function process() { - let c; - rerenderQueue.sort(depthSort); + let c, + l = 1; + // Don't update `renderCount` yet. Keep its value non-zero to prevent unnecessary // process() calls from getting scheduled while `queue` is still being consumed. - while ((c = rerenderQueue.shift())) { + while (rerenderQueue.length) { + // Keep the rerender queue sorted by (depth, insertion order). The queue + // will initially be sorted on the first iteration only if it has more than 1 item. + // + // New items can be added to the queue e.g. when rerendering a provider, so we want to + // keep the order from top to bottom with those new items so we can handle them in a + // single pass + if (rerenderQueue.length > l) { + rerenderQueue.sort(depthSort); + } + + c = rerenderQueue.shift(); + l = rerenderQueue.length; + if (c._dirty) { - let renderQueueLength = rerenderQueue.length; renderComponent(c); - if (rerenderQueue.length > renderQueueLength) { - // When i.e. rerendering a provider additional new items can be injected, we want to - // keep the order from top to bottom with those new items so we can handle them in a - // single pass - rerenderQueue.sort(depthSort); - } } } process._rerenderCount = 0; diff --git a/node_modules/preact/src/constants.js b/node_modules/preact/src/constants.js index 3bcec6c..c60df07 100644 --- a/node_modules/preact/src/constants.js +++ b/node_modules/preact/src/constants.js @@ -3,13 +3,19 @@ export const MODE_HYDRATE = 1 << 5; /** Signifies this VNode suspended on the previous render */ export const MODE_SUSPENDED = 1 << 7; /** Indicates that this node needs to be inserted while patching children */ -export const INSERT_VNODE = 1 << 16; +export const INSERT_VNODE = 1 << 2; /** Indicates a VNode has been matched with another VNode in the diff */ -export const MATCHED = 1 << 17; +export const MATCHED = 1 << 1; /** Reset all mode flags */ export const RESET_MODE = ~(MODE_HYDRATE | MODE_SUSPENDED); +export const SVG_NAMESPACE = 'http://www.w3.org/2000/svg'; +export const XHTML_NAMESPACE = 'http://www.w3.org/1999/xhtml'; +export const MATH_NAMESPACE = 'http://www.w3.org/1998/Math/MathML'; + +export const NULL = null; +export const UNDEFINED = undefined; export const EMPTY_OBJ = /** @type {any} */ ({}); export const EMPTY_ARR = []; export const IS_NON_DIMENSIONAL = diff --git a/node_modules/preact/src/create-context.js b/node_modules/preact/src/create-context.js index 57508fe..851b95a 100644 --- a/node_modules/preact/src/create-context.js +++ b/node_modules/preact/src/create-context.js @@ -1,73 +1,60 @@ import { enqueueRender } from './component'; +import { NULL } from './constants'; export let i = 0; -export function createContext(defaultValue, contextId) { - contextId = '__cC' + i++; +export function createContext(defaultValue) { + function Context(props) { + if (!this.getChildContext) { + /** @type {Set | null} */ + let subs = new Set(); + let ctx = {}; + ctx[Context._id] = this; - const context = { - _id: contextId, - _defaultValue: defaultValue, - /** @type {FunctionComponent} */ - Consumer(props, contextValue) { - // return props.children( - // context[contextId] ? context[contextId].props.value : defaultValue - // ); - return props.children(contextValue); - }, - /** @type {FunctionComponent} */ - Provider(props) { - if (!this.getChildContext) { - /** @type {Component[]} */ - let subs = []; - let ctx = {}; - ctx[contextId] = this; + this.getChildContext = () => ctx; - this.getChildContext = () => ctx; + this.componentWillUnmount = () => { + subs = NULL; + }; - this.shouldComponentUpdate = function (_props) { - if (this.props.value !== _props.value) { - // I think the forced value propagation here was only needed when `options.debounceRendering` was being bypassed: - // https://github.com/preactjs/preact/commit/4d339fb803bea09e9f198abf38ca1bf8ea4b7771#diff-54682ce380935a717e41b8bfc54737f6R358 - // In those cases though, even with the value corrected, we're double-rendering all nodes. - // It might be better to just tell folks not to use force-sync mode. - // Currently, using `useContext()` in a class component will overwrite its `this.context` value. - // subs.some(c => { - // c.context = _props.value; - // enqueueRender(c); - // }); + this.shouldComponentUpdate = function (_props) { + // @ts-expect-error even + if (this.props.value != _props.value) { + subs.forEach(c => { + c._force = true; + enqueueRender(c); + }); + } + }; - // subs.some(c => { - // c.context[contextId] = _props.value; - // enqueueRender(c); - // }); - subs.some(c => { - c._force = true; - enqueueRender(c); - }); + this.sub = c => { + subs.add(c); + let old = c.componentWillUnmount; + c.componentWillUnmount = () => { + if (subs) { + subs.delete(c); } + if (old) old.call(c); }; - - this.sub = c => { - subs.push(c); - let old = c.componentWillUnmount; - c.componentWillUnmount = () => { - subs.splice(subs.indexOf(c), 1); - if (old) old.call(c); - }; - }; - } - - return props.children; + }; } + + return props.children; + } + + Context._id = '__cC' + i++; + Context._defaultValue = defaultValue; + + /** @type {import('./internal').FunctionComponent} */ + Context.Consumer = (props, contextValue) => { + return props.children(contextValue); }; - // Devtools needs access to the context object when it - // encounters a Provider. This is necessary to support - // setting `displayName` on the context object instead - // of on the component itself. See: - // https://reactjs.org/docs/context.html#contextdisplayname + // we could also get rid of _contextRef entirely + Context.Provider = + Context._contextRef = + Context.Consumer.contextType = + Context; - return (context.Provider._contextRef = context.Consumer.contextType = - context); + return Context; } diff --git a/node_modules/preact/src/create-element.js b/node_modules/preact/src/create-element.js index 66898b2..5337638 100644 --- a/node_modules/preact/src/create-element.js +++ b/node_modules/preact/src/create-element.js @@ -1,16 +1,17 @@ import { slice } from './util'; import options from './options'; +import { NULL, UNDEFINED } from './constants'; let vnodeId = 0; /** * Create an virtual node (used for JSX) - * @param {VNode["type"]} type The node name or Component constructor for this + * @param {import('./internal').VNode["type"]} type The node name or Component constructor for this * virtual node * @param {object | null | undefined} [props] The properties of the virtual node * @param {Array} [children] The children of the * virtual node - * @returns {VNode} + * @returns {import('./internal').VNode} */ export function createElement(type, props, children) { let normalizedProps = {}, @@ -30,62 +31,57 @@ export function createElement(type, props, children) { // If a Component VNode, check for and apply defaultProps // Note: type may be undefined in development, must never error here. - if (typeof type == 'function' && type.defaultProps != null) { + if (typeof type == 'function' && type.defaultProps != NULL) { for (i in type.defaultProps) { - if (normalizedProps[i] === undefined) { + if (normalizedProps[i] === UNDEFINED) { normalizedProps[i] = type.defaultProps[i]; } } } - return createVNode(type, normalizedProps, key, ref, null); + return createVNode(type, normalizedProps, key, ref, NULL); } /** * Create a VNode (used internally by Preact) - * @param {VNode["type"]} type The node name or Component + * @param {import('./internal').VNode["type"]} type The node name or Component * Constructor for this virtual node * @param {object | string | number | null} props The properties of this virtual node. * If this virtual node represents a text node, this is the text of the node (string or number). * @param {string | number | null} key The key for this virtual node, used when * diffing it against its children - * @param {VNode["ref"]} ref The ref property that will + * @param {import('./internal').VNode["ref"]} ref The ref property that will * receive a reference to its created child - * @returns {VNode} + * @returns {import('./internal').VNode} */ export function createVNode(type, props, key, ref, original) { // V8 seems to be better at detecting type shapes if the object is allocated from the same call site // Do not inline into createElement and coerceToVNode! - /** @type {VNode} */ + /** @type {import('./internal').VNode} */ const vnode = { type, props, key, ref, - _children: null, - _parent: null, + _children: NULL, + _parent: NULL, _depth: 0, - _dom: null, - // _nextDom must be initialized to undefined b/c it will eventually - // be set to dom.nextSibling which can return `null` and it is important - // to be able to distinguish between an uninitialized _nextDom and - // a _nextDom that has been set to `null` - _nextDom: undefined, - _component: null, - constructor: undefined, - _original: original == null ? ++vnodeId : original, + _dom: NULL, + _component: NULL, + constructor: UNDEFINED, + _original: original == NULL ? ++vnodeId : original, _index: -1, _flags: 0 }; // Only invoke the vnode hook if this was *not* a direct copy: - if (original == null && options.vnode != null) options.vnode(vnode); + if (original == NULL && options.vnode != NULL) options.vnode(vnode); return vnode; } export function createRef() { - return { current: null }; + return { current: NULL }; } export function Fragment(props) { @@ -98,4 +94,4 @@ export function Fragment(props) { * @returns {vnode is VNode} */ export const isValidElement = vnode => - vnode != null && vnode.constructor == undefined; + vnode != NULL && vnode.constructor === UNDEFINED; diff --git a/node_modules/preact/src/diff/catch-error.js b/node_modules/preact/src/diff/catch-error.js index 1dd63db..ada46f1 100644 --- a/node_modules/preact/src/diff/catch-error.js +++ b/node_modules/preact/src/diff/catch-error.js @@ -1,16 +1,18 @@ +import { NULL } from '../constants'; + /** * Find the closest error boundary to a thrown error and call it * @param {object} error The thrown value - * @param {VNode} vnode The vnode that threw the error that was caught (except + * @param {import('../internal').VNode} vnode The vnode that threw the error that was caught (except * for unmounting when this parameter is the highest parent that was being * unmounted) - * @param {VNode} [oldVNode] - * @param {ErrorInfo} [errorInfo] + * @param {import('../internal').VNode} [oldVNode] + * @param {import('../internal').ErrorInfo} [errorInfo] */ export function _catchError(error, vnode, oldVNode, errorInfo) { - /** @type {Component} */ + /** @type {import('../internal').Component} */ let component, - /** @type {ComponentType} */ + /** @type {import('../internal').ComponentType} */ ctor, /** @type {boolean} */ handled; @@ -20,12 +22,12 @@ export function _catchError(error, vnode, oldVNode, errorInfo) { try { ctor = component.constructor; - if (ctor && ctor.getDerivedStateFromError != null) { + if (ctor && ctor.getDerivedStateFromError != NULL) { component.setState(ctor.getDerivedStateFromError(error)); handled = component._dirty; } - if (component.componentDidCatch != null) { + if (component.componentDidCatch != NULL) { component.componentDidCatch(error, errorInfo || {}); handled = component._dirty; } diff --git a/node_modules/preact/src/diff/children.js b/node_modules/preact/src/diff/children.js index 369014a..e8965f2 100644 --- a/node_modules/preact/src/diff/children.js +++ b/node_modules/preact/src/diff/children.js @@ -1,9 +1,23 @@ import { diff, unmount, applyRef } from './index'; import { createVNode, Fragment } from '../create-element'; -import { EMPTY_OBJ, EMPTY_ARR, INSERT_VNODE, MATCHED } from '../constants'; +import { + EMPTY_OBJ, + EMPTY_ARR, + INSERT_VNODE, + MATCHED, + UNDEFINED, + NULL +} from '../constants'; import { isArray } from '../util'; import { getDomSibling } from '../component'; +/** + * @typedef {import('../internal').ComponentChildren} ComponentChildren + * @typedef {import('../internal').Component} Component + * @typedef {import('../internal').PreactElement} PreactElement + * @typedef {import('../internal').VNode} VNode + */ + /** * Diff the children of a virtual node * @param {PreactElement} parentDom The DOM element whose children are being @@ -15,7 +29,7 @@ import { getDomSibling } from '../component'; * diff'ed against newParentVNode * @param {object} globalContext The current context object - modified by * getChildContext - * @param {boolean} isSvg Whether or not this DOM node is an SVG node + * @param {string} namespace Current namespace of the DOM node (HTML, SVG, or MathML) * @param {Array} excessDomChildren * @param {Array} commitQueue List of components which have callbacks * to invoke in commitRoot @@ -32,7 +46,7 @@ export function diffChildren( newParentVNode, oldParentVNode, globalContext, - isSvg, + namespace, excessDomChildren, commitQueue, oldDom, @@ -56,24 +70,21 @@ export function diffChildren( let newChildrenLength = renderResult.length; - newParentVNode._nextDom = oldDom; - constructNewChildrenArray(newParentVNode, renderResult, oldChildren); - oldDom = newParentVNode._nextDom; + oldDom = constructNewChildrenArray( + newParentVNode, + renderResult, + oldChildren, + oldDom, + newChildrenLength + ); for (i = 0; i < newChildrenLength; i++) { childVNode = newParentVNode._children[i]; - - if ( - childVNode == null || - typeof childVNode == 'boolean' || - typeof childVNode == 'function' - ) { - continue; - } + if (childVNode == NULL) continue; // At this point, constructNewChildrenArray has assigned _index to be the // matchingIndex for this VNode's oldVNode (or -1 if there is no oldVNode). - if (childVNode._index === -1) { + if (childVNode._index == -1) { oldVNode = EMPTY_OBJ; } else { oldVNode = oldChildren[childVNode._index] || EMPTY_OBJ; @@ -83,12 +94,12 @@ export function diffChildren( childVNode._index = i; // Morph the old element into the new one, but don't append it to the dom yet - diff( + let result = diff( parentDom, childVNode, oldVNode, globalContext, - isSvg, + namespace, excessDomChildren, commitQueue, oldDom, @@ -100,7 +111,7 @@ export function diffChildren( newDom = childVNode._dom; if (childVNode.ref && oldVNode.ref != childVNode.ref) { if (oldVNode.ref) { - applyRef(oldVNode.ref, null, childVNode); + applyRef(oldVNode.ref, NULL, childVNode); } refQueue.push( childVNode.ref, @@ -109,50 +120,26 @@ export function diffChildren( ); } - if (firstChildDom == null && newDom != null) { + if (firstChildDom == NULL && newDom != NULL) { firstChildDom = newDom; } - if ( - childVNode._flags & INSERT_VNODE || - oldVNode._children === childVNode._children - ) { - oldDom = insert(childVNode, oldDom, parentDom); - } else if ( - typeof childVNode.type == 'function' && - childVNode._nextDom !== undefined - ) { - // Since Fragments or components that return Fragment like VNodes can - // contain multiple DOM nodes as the same level, continue the diff from - // the sibling of last DOM child of this child VNode - oldDom = childVNode._nextDom; + let shouldPlace = !!(childVNode._flags & INSERT_VNODE); + if (shouldPlace || oldVNode._children === childVNode._children) { + oldDom = insert(childVNode, oldDom, parentDom, shouldPlace); + } else if (typeof childVNode.type == 'function' && result !== UNDEFINED) { + oldDom = result; } else if (newDom) { oldDom = newDom.nextSibling; } - // Eagerly cleanup _nextDom. We don't need to persist the value because it - // is only used by `diffChildren` to determine where to resume the diff - // after diffing Components and Fragments. Once we store it the nextDOM - // local var, we can clean up the property. Also prevents us hanging on to - // DOM nodes that may have been unmounted. - childVNode._nextDom = undefined; - // Unset diffing flags childVNode._flags &= ~(INSERT_VNODE | MATCHED); } - // TODO: With new child diffing algo, consider alt ways to diff Fragments. - // Such as dropping oldDom and moving fragments in place - // - // Because the newParentVNode is Fragment-like, we need to set it's - // _nextDom property to the nextSibling of its last child DOM node. - // - // `oldDom` contains the correct value here because if the last child - // is a Fragment-like, then oldDom has already been set to that child's _nextDom. - // If the last child is a DOM VNode, then oldDom will be set to that DOM - // node's nextSibling. - newParentVNode._nextDom = oldDom; newParentVNode._dom = firstChildDom; + + return oldDom; } /** @@ -160,7 +147,13 @@ export function diffChildren( * @param {ComponentChildren[]} renderResult * @param {VNode[]} oldChildren */ -function constructNewChildrenArray(newParentVNode, renderResult, oldChildren) { +function constructNewChildrenArray( + newParentVNode, + renderResult, + oldChildren, + oldDom, + newChildrenLength +) { /** @type {number} */ let i; /** @type {VNode} */ @@ -168,24 +161,24 @@ function constructNewChildrenArray(newParentVNode, renderResult, oldChildren) { /** @type {VNode} */ let oldVNode; - const newChildrenLength = renderResult.length; let oldChildrenLength = oldChildren.length, remainingOldChildren = oldChildrenLength; let skew = 0; - newParentVNode._children = []; + newParentVNode._children = new Array(newChildrenLength); for (i = 0; i < newChildrenLength; i++) { // @ts-expect-error We are reusing the childVNode variable to hold both the // pre and post normalized childVNode childVNode = renderResult[i]; if ( - childVNode == null || + childVNode == NULL || typeof childVNode == 'boolean' || typeof childVNode == 'function' ) { - childVNode = newParentVNode._children[i] = null; + newParentVNode._children[i] = NULL; + continue; } // If this newVNode is being reused (e.g.
{reuse}{reuse}
) in the same diff, // or we are rendering a component (e.g. setState) copy the oldVNodes so it can have @@ -198,21 +191,21 @@ function constructNewChildrenArray(newParentVNode, renderResult, oldChildren) { childVNode.constructor == String ) { childVNode = newParentVNode._children[i] = createVNode( - null, + NULL, childVNode, - null, - null, - childVNode + NULL, + NULL, + NULL ); } else if (isArray(childVNode)) { childVNode = newParentVNode._children[i] = createVNode( Fragment, { children: childVNode }, - null, - null, - null + NULL, + NULL, + NULL ); - } else if (childVNode.constructor === undefined && childVNode._depth > 0) { + } else if (childVNode.constructor === UNDEFINED && childVNode._depth > 0) { // VNode is already in use, clone it. This can happen in the following // scenario: // const reuse =
@@ -221,57 +214,29 @@ function constructNewChildrenArray(newParentVNode, renderResult, oldChildren) { childVNode.type, childVNode.props, childVNode.key, - childVNode.ref ? childVNode.ref : null, + childVNode.ref ? childVNode.ref : NULL, childVNode._original ); } else { - childVNode = newParentVNode._children[i] = childVNode; + newParentVNode._children[i] = childVNode; } - // Handle unmounting null placeholders, i.e. VNode => null in unkeyed children - if (childVNode == null) { - oldVNode = oldChildren[i]; - if (oldVNode && oldVNode.key == null && oldVNode._dom) { - if (oldVNode._dom == newParentVNode._nextDom) { - newParentVNode._nextDom = getDomSibling(oldVNode); - } - - unmount(oldVNode, oldVNode, false); - - // Explicitly nullify this position in oldChildren instead of just - // setting `_match=true` to prevent other routines (e.g. - // `findMatchingIndex` or `getDomSibling`) from thinking VNodes or DOM - // nodes in this position are still available to be used in diffing when - // they have actually already been unmounted. For example, by only - // setting `_match=true` here, the unmounting loop later would attempt - // to unmount this VNode again seeing `_match==true`. Further, - // getDomSibling doesn't know about _match and so would incorrectly - // assume DOM nodes in this subtree are mounted and usable. - oldChildren[i] = null; - remainingOldChildren--; - } - - continue; - } - - childVNode._parent = newParentVNode; - childVNode._depth = newParentVNode._depth + 1; - const skewedIndex = i + skew; - const matchingIndex = findMatchingIndex( - childVNode, - oldChildren, - skewedIndex, - remainingOldChildren - ); + childVNode._parent = newParentVNode; + childVNode._depth = newParentVNode._depth + 1; // Temporarily store the matchingIndex on the _index property so we can pull // out the oldVNode in diffChildren. We'll override this to the VNode's // final index after using this property to get the oldVNode - childVNode._index = matchingIndex; + const matchingIndex = (childVNode._index = findMatchingIndex( + childVNode, + oldChildren, + skewedIndex, + remainingOldChildren + )); - oldVNode = null; - if (matchingIndex !== -1) { + oldVNode = NULL; + if (matchingIndex != -1) { oldVNode = oldChildren[matchingIndex]; remainingOldChildren--; if (oldVNode) { @@ -281,41 +246,67 @@ function constructNewChildrenArray(newParentVNode, renderResult, oldChildren) { // Here, we define isMounting for the purposes of the skew diffing // algorithm. Nodes that are unsuspending are considered mounting and we detect - // this by checking if oldVNode._original === null - const isMounting = oldVNode == null || oldVNode._original === null; + // this by checking if oldVNode._original == null + const isMounting = oldVNode == NULL || oldVNode._original == NULL; if (isMounting) { if (matchingIndex == -1) { - skew--; + // When the array of children is growing we need to decrease the skew + // as we are adding a new element to the array. + // Example: + // [1, 2, 3] --> [0, 1, 2, 3] + // oldChildren newChildren + // + // The new element is at index 0, so our skew is 0, + // we need to decrease the skew as we are adding a new element. + // The decrease will cause us to compare the element at position 1 + // with value 1 with the element at position 0 with value 0. + // + // A linear concept is applied when the array is shrinking, + // if the length is unchanged we can assume that no skew + // changes are needed. + if (newChildrenLength > oldChildrenLength) { + skew--; + } else if (newChildrenLength < oldChildrenLength) { + skew++; + } } // If we are mounting a DOM VNode, mark it for insertion if (typeof childVNode.type != 'function') { childVNode._flags |= INSERT_VNODE; } - } else if (matchingIndex !== skewedIndex) { - if (matchingIndex === skewedIndex + 1) { + } else if (matchingIndex != skewedIndex) { + // When we move elements around i.e. [0, 1, 2] --> [1, 0, 2] + // --> we diff 1, we find it at position 1 while our skewed index is 0 and our skew is 0 + // we set the skew to 1 as we found an offset. + // --> we diff 0, we find it at position 0 while our skewed index is at 2 and our skew is 1 + // this makes us increase the skew again. + // --> we diff 2, we find it at position 2 while our skewed index is at 4 and our skew is 2 + // + // this becomes an optimization question where currently we see a 1 element offset as an insertion + // or deletion i.e. we optimize for [0, 1, 2] --> [9, 0, 1, 2] + // while a more than 1 offset we see as a swap. + // We could probably build heuristics for having an optimized course of action here as well, but + // might go at the cost of some bytes. + // + // If we wanted to optimize for i.e. only swaps we'd just do the last two code-branches and have + // only the first item be a re-scouting and all the others fall in their skewed counter-part. + // We could also further optimize for swaps + if (matchingIndex == skewedIndex - 1) { + skew--; + } else if (matchingIndex == skewedIndex + 1) { skew++; - } else if (matchingIndex > skewedIndex) { - if (remainingOldChildren > newChildrenLength - skewedIndex) { - skew += matchingIndex - skewedIndex; - } else { - // ### Change from keyed: I think this was missing from the algo... - skew--; - } - } else if (matchingIndex < skewedIndex) { - if (matchingIndex == skewedIndex - 1) { - skew = matchingIndex - skewedIndex; - } else { - skew = 0; - } } else { - skew = 0; - } + if (matchingIndex > skewedIndex) { + skew--; + } else { + skew++; + } - // Move this VNode's DOM if the original index (matchingIndex) doesn't - // match the new skew index (i + new skew) - if (matchingIndex !== i + skew) { + // Move this VNode's DOM if the original index (matchingIndex) doesn't + // match the new skew index (i + new skew) + // In the former two branches we know that it matches after skewing childVNode._flags |= INSERT_VNODE; } } @@ -328,24 +319,27 @@ function constructNewChildrenArray(newParentVNode, renderResult, oldChildren) { if (remainingOldChildren) { for (i = 0; i < oldChildrenLength; i++) { oldVNode = oldChildren[i]; - if (oldVNode != null && (oldVNode._flags & MATCHED) === 0) { - if (oldVNode._dom == newParentVNode._nextDom) { - newParentVNode._nextDom = getDomSibling(oldVNode); + if (oldVNode != NULL && (oldVNode._flags & MATCHED) == 0) { + if (oldVNode._dom == oldDom) { + oldDom = getDomSibling(oldVNode); } unmount(oldVNode, oldVNode); } } } + + return oldDom; } /** * @param {VNode} parentVNode * @param {PreactElement} oldDom * @param {PreactElement} parentDom + * @param {boolean} shouldPlace * @returns {PreactElement} */ -function insert(parentVNode, oldDom, parentDom) { +function insert(parentVNode, oldDom, parentDom, shouldPlace) { // Note: VNodes in nested suspended trees may be missing _children. if (typeof parentVNode.type == 'function') { @@ -357,17 +351,26 @@ function insert(parentVNode, oldDom, parentDom) { // children's _parent pointer to point to the newVNode (parentVNode // here). children[i]._parent = parentVNode; - oldDom = insert(children[i], oldDom, parentDom); + oldDom = insert(children[i], oldDom, parentDom, shouldPlace); } } return oldDom; } else if (parentVNode._dom != oldDom) { - parentDom.insertBefore(parentVNode._dom, oldDom || null); + if (shouldPlace) { + if (oldDom && parentVNode.type && !oldDom.parentNode) { + oldDom = getDomSibling(parentVNode); + } + parentDom.insertBefore(parentVNode._dom, oldDom || NULL); + } oldDom = parentVNode._dom; } - return oldDom && oldDom.nextSibling; + do { + oldDom = oldDom && oldDom.nextSibling; + } while (oldDom != NULL && oldDom.nodeType == 8); + + return oldDom; } /** @@ -378,7 +381,7 @@ function insert(parentVNode, oldDom, parentDom) { */ export function toChildArray(children, out) { out = out || []; - if (children == null || typeof children == 'boolean') { + if (children == NULL || typeof children == 'boolean') { } else if (isArray(children)) { children.some(child => { toChildArray(child, out); @@ -404,9 +407,8 @@ function findMatchingIndex( ) { const key = childVNode.key; const type = childVNode.type; - let x = skewedIndex - 1; - let y = skewedIndex + 1; let oldVNode = oldChildren[skewedIndex]; + const matched = oldVNode != NULL && (oldVNode._flags & MATCHED) == 0; // We only need to perform a search if there are more children // (remainingOldChildren) to search. However, if the oldVNode we just looked @@ -416,41 +418,31 @@ function findMatchingIndex( // remainingOldChildren > 1 if the oldVNode is not already used/matched. Else // if the oldVNode was null or matched, then there could needs to be at least // 1 (aka `remainingOldChildren > 0`) children to find and compare against. + // + // If there is an unkeyed functional VNode, that isn't a built-in like our Fragment, + // we should not search as we risk re-using state of an unrelated VNode. (reverted for now) let shouldSearch = - remainingOldChildren > - (oldVNode != null && (oldVNode._flags & MATCHED) === 0 ? 1 : 0); + // (typeof type != 'function' || type === Fragment || key) && + remainingOldChildren > (matched ? 1 : 0); if ( - oldVNode === null || - (oldVNode && key == oldVNode.key && type === oldVNode.type) + (oldVNode === NULL && key == null) || + (matched && key == oldVNode.key && type == oldVNode.type) ) { return skewedIndex; } else if (shouldSearch) { + let x = skewedIndex - 1; + let y = skewedIndex + 1; while (x >= 0 || y < oldChildren.length) { - if (x >= 0) { - oldVNode = oldChildren[x]; - if ( - oldVNode && - (oldVNode._flags & MATCHED) === 0 && - key == oldVNode.key && - type === oldVNode.type - ) { - return x; - } - x--; - } - - if (y < oldChildren.length) { - oldVNode = oldChildren[y]; - if ( - oldVNode && - (oldVNode._flags & MATCHED) === 0 && - key == oldVNode.key && - type === oldVNode.type - ) { - return y; - } - y++; + const childIndex = x >= 0 ? x-- : y++; + oldVNode = oldChildren[childIndex]; + if ( + oldVNode != NULL && + (oldVNode._flags & MATCHED) == 0 && + key == oldVNode.key && + type == oldVNode.type + ) { + return childIndex; } } } diff --git a/node_modules/preact/src/diff/index.js b/node_modules/preact/src/diff/index.js index b5bbb49..1972ccd 100644 --- a/node_modules/preact/src/diff/index.js +++ b/node_modules/preact/src/diff/index.js @@ -1,8 +1,13 @@ import { EMPTY_OBJ, + MATH_NAMESPACE, MODE_HYDRATE, MODE_SUSPENDED, - RESET_MODE + NULL, + RESET_MODE, + SVG_NAMESPACE, + UNDEFINED, + XHTML_NAMESPACE } from '../constants'; import { BaseComponent, getDomSibling } from '../component'; import { Fragment } from '../create-element'; @@ -11,6 +16,18 @@ import { setProperty } from './props'; import { assign, isArray, removeNode, slice } from '../util'; import options from '../options'; +/** + * @typedef {import('../internal').ComponentChildren} ComponentChildren + * @typedef {import('../internal').Component} Component + * @typedef {import('../internal').PreactElement} PreactElement + * @typedef {import('../internal').VNode} VNode + */ + +/** + * @template {any} T + * @typedef {import('../internal').Ref} Ref + */ + /** * Diff two virtual nodes and apply proper changes to the DOM * @param {PreactElement} parentDom The parent of the DOM element @@ -18,7 +35,7 @@ import options from '../options'; * @param {VNode} oldVNode The old virtual node * @param {object} globalContext The current context object. Modified by * getChildContext - * @param {boolean} isSvg Whether or not this element is an SVG node + * @param {string} namespace Current namespace of the DOM node (HTML, SVG, or MathML) * @param {Array} excessDomChildren * @param {Array} commitQueue List of components which have callbacks * to invoke in commitRoot @@ -34,7 +51,7 @@ export function diff( newVNode, oldVNode, globalContext, - isSvg, + namespace, excessDomChildren, commitQueue, oldDom, @@ -47,7 +64,7 @@ export function diff( // When passing through createElement it assigns the object // constructor as undefined. This to prevent JSON-injection. - if (newVNode.constructor !== undefined) return null; + if (newVNode.constructor !== UNDEFINED) return NULL; // If the previous diff bailed out, resume creating/hydrating. if (oldVNode._flags & MODE_SUSPENDED) { @@ -62,6 +79,8 @@ export function diff( try { let c, isNew, oldProps, oldState, snapshot, clearProcessingException; let newProps = newVNode.props; + const isClassComponent = + 'prototype' in newType && newType.prototype.render; // Necessary for createContext api. Setting this property will pass // the context value as `this.context` just for this component. @@ -79,7 +98,7 @@ export function diff( clearProcessingException = c._processingException = c._pendingError; } else { // Instantiate the new component - if ('prototype' in newType && newType.prototype.render) { + if (isClassComponent) { // @ts-expect-error The check above verifies that newType is suppose to be constructed newVNode._component = c = new newType(newProps, componentContext); // eslint-disable-line new-cap } else { @@ -93,9 +112,7 @@ export function diff( } if (provider) provider.sub(c); - c.props = newProps; if (!c.state) c.state = {}; - c.context = componentContext; c._globalContext = globalContext; isNew = c._dirty = true; c._renderCallbacks = []; @@ -103,11 +120,11 @@ export function diff( } // Invoke getDerivedStateFromProps - if (c._nextState == null) { + if (isClassComponent && c._nextState == NULL) { c._nextState = c.state; } - if (newType.getDerivedStateFromProps != null) { + if (isClassComponent && newType.getDerivedStateFromProps != NULL) { if (c._nextState == c.state) { c._nextState = assign({}, c._nextState); } @@ -125,36 +142,38 @@ export function diff( // Invoke pre-render lifecycle methods if (isNew) { if ( - newType.getDerivedStateFromProps == null && - c.componentWillMount != null + isClassComponent && + newType.getDerivedStateFromProps == NULL && + c.componentWillMount != NULL ) { c.componentWillMount(); } - if (c.componentDidMount != null) { + if (isClassComponent && c.componentDidMount != NULL) { c._renderCallbacks.push(c.componentDidMount); } } else { if ( - newType.getDerivedStateFromProps == null && + isClassComponent && + newType.getDerivedStateFromProps == NULL && newProps !== oldProps && - c.componentWillReceiveProps != null + c.componentWillReceiveProps != NULL ) { c.componentWillReceiveProps(newProps, componentContext); } if ( - !c._force && - ((c.shouldComponentUpdate != null && + newVNode._original == oldVNode._original || + (!c._force && + c.shouldComponentUpdate != NULL && c.shouldComponentUpdate( newProps, c._nextState, componentContext - ) === false) || - newVNode._original === oldVNode._original) + ) === false) ) { // More info about this here: https://gist.github.com/JoviDeCroock/bec5f2ce93544d2e6070ef8e0036e4e8 - if (newVNode._original !== oldVNode._original) { + if (newVNode._original != oldVNode._original) { // When we are dealing with a bail because of sCU we have to update // the props, state and dirty-state. // when we are dealing with strict-equality we don't as the child could still @@ -166,7 +185,7 @@ export function diff( newVNode._dom = oldVNode._dom; newVNode._children = oldVNode._children; - newVNode._children.forEach(vnode => { + newVNode._children.some(vnode => { if (vnode) vnode._parent = newVNode; }); @@ -182,11 +201,11 @@ export function diff( break outer; } - if (c.componentWillUpdate != null) { + if (c.componentWillUpdate != NULL) { c.componentWillUpdate(newProps, c._nextState, componentContext); } - if (c.componentDidUpdate != null) { + if (isClassComponent && c.componentDidUpdate != NULL) { c._renderCallbacks.push(() => { c.componentDidUpdate(oldProps, oldState, snapshot); }); @@ -200,7 +219,7 @@ export function diff( let renderHook = options._render, count = 0; - if ('prototype' in newType && newType.prototype.render) { + if (isClassComponent) { c.state = c._nextState; c._dirty = false; @@ -227,25 +246,29 @@ export function diff( // Handle setState called in render, see #2553 c.state = c._nextState; - if (c.getChildContext != null) { + if (c.getChildContext != NULL) { globalContext = assign(assign({}, globalContext), c.getChildContext()); } - if (!isNew && c.getSnapshotBeforeUpdate != null) { + if (isClassComponent && !isNew && c.getSnapshotBeforeUpdate != NULL) { snapshot = c.getSnapshotBeforeUpdate(oldProps, oldState); } let isTopLevelFragment = - tmp != null && tmp.type === Fragment && tmp.key == null; - let renderResult = isTopLevelFragment ? tmp.props.children : tmp; + tmp != NULL && tmp.type === Fragment && tmp.key == NULL; + let renderResult = tmp; - diffChildren( + if (isTopLevelFragment) { + renderResult = cloneNode(tmp.props.children); + } + + oldDom = diffChildren( parentDom, isArray(renderResult) ? renderResult : [renderResult], newVNode, oldVNode, globalContext, - isSvg, + namespace, excessDomChildren, commitQueue, oldDom, @@ -263,38 +286,49 @@ export function diff( } if (clearProcessingException) { - c._pendingError = c._processingException = null; + c._pendingError = c._processingException = NULL; } } catch (e) { - newVNode._original = null; + newVNode._original = NULL; // if hydrating or creating initial tree, bailout preserves DOM: - if (isHydrating || excessDomChildren != null) { - newVNode._dom = oldDom; - newVNode._flags |= isHydrating - ? MODE_HYDRATE | MODE_SUSPENDED - : MODE_HYDRATE; - excessDomChildren[excessDomChildren.indexOf(oldDom)] = null; - // ^ could possibly be simplified to: - // excessDomChildren.length = 0; + if (isHydrating || excessDomChildren != NULL) { + if (e.then) { + newVNode._flags |= isHydrating + ? MODE_HYDRATE | MODE_SUSPENDED + : MODE_SUSPENDED; + + while (oldDom && oldDom.nodeType == 8 && oldDom.nextSibling) { + oldDom = oldDom.nextSibling; + } + + excessDomChildren[excessDomChildren.indexOf(oldDom)] = NULL; + newVNode._dom = oldDom; + } else { + for (let i = excessDomChildren.length; i--; ) { + removeNode(excessDomChildren[i]); + } + markAsForce(newVNode); + } } else { newVNode._dom = oldVNode._dom; newVNode._children = oldVNode._children; + if (!e.then) markAsForce(newVNode); } options._catchError(e, newVNode, oldVNode); } } else if ( - excessDomChildren == null && - newVNode._original === oldVNode._original + excessDomChildren == NULL && + newVNode._original == oldVNode._original ) { newVNode._children = oldVNode._children; newVNode._dom = oldVNode._dom; } else { - newVNode._dom = diffElementNodes( + oldDom = newVNode._dom = diffElementNodes( oldVNode._dom, newVNode, oldVNode, globalContext, - isSvg, + namespace, excessDomChildren, commitQueue, isHydrating, @@ -303,6 +337,13 @@ export function diff( } if ((tmp = options.diffed)) tmp(newVNode); + + return newVNode._flags & MODE_SUSPENDED ? undefined : oldDom; +} + +function markAsForce(vnode) { + if (vnode && vnode._component) vnode._component._force = true; + if (vnode && vnode._children) vnode._children.forEach(markAsForce); } /** @@ -311,8 +352,6 @@ export function diff( * @param {VNode} root */ export function commitRoot(commitQueue, root, refQueue) { - root._nextDom = undefined; - for (let i = 0; i < refQueue.length; i++) { applyRef(refQueue[i], refQueue[++i], refQueue[++i]); } @@ -334,6 +373,22 @@ export function commitRoot(commitQueue, root, refQueue) { }); } +function cloneNode(node) { + if ( + typeof node != 'object' || + node == NULL || + (node._depth && node._depth > 0) + ) { + return node; + } + + if (isArray(node)) { + return node.map(cloneNode); + } + + return assign({}, node); +} + /** * Diff two virtual nodes representing DOM element * @param {PreactElement} dom The DOM element representing the virtual nodes @@ -341,7 +396,7 @@ export function commitRoot(commitQueue, root, refQueue) { * @param {VNode} newVNode The new virtual node * @param {VNode} oldVNode The old virtual node * @param {object} globalContext The current context object - * @param {boolean} isSvg Whether or not this DOM node is an SVG node + * @param {string} namespace Current namespace of the DOM node (HTML, SVG, or MathML) * @param {Array} excessDomChildren * @param {Array} commitQueue List of components which have callbacks * to invoke in commitRoot @@ -354,13 +409,13 @@ function diffElementNodes( newVNode, oldVNode, globalContext, - isSvg, + namespace, excessDomChildren, commitQueue, isHydrating, refQueue ) { - let oldProps = oldVNode.props; + let oldProps = oldVNode.props || EMPTY_OBJ; let newProps = newVNode.props; let nodeType = /** @type {string} */ (newVNode.type); /** @type {any} */ @@ -375,10 +430,12 @@ function diffElementNodes( let inputValue; let checked; - // Tracks entering and exiting SVG namespace when descending through the tree. - if (nodeType === 'svg') isSvg = true; + // Tracks entering and exiting namespaces when descending through the tree. + if (nodeType == 'svg') namespace = SVG_NAMESPACE; + else if (nodeType == 'math') namespace = MATH_NAMESPACE; + else if (!namespace) namespace = XHTML_NAMESPACE; - if (excessDomChildren != null) { + if (excessDomChildren != NULL) { for (i = 0; i < excessDomChildren.length; i++) { value = excessDomChildren[i]; @@ -387,49 +444,51 @@ function diffElementNodes( // excessDomChildren so it isn't later removed in diffChildren if ( value && - 'setAttribute' in value === !!nodeType && - (nodeType ? value.localName === nodeType : value.nodeType === 3) + 'setAttribute' in value == !!nodeType && + (nodeType ? value.localName == nodeType : value.nodeType == 3) ) { dom = value; - excessDomChildren[i] = null; + excessDomChildren[i] = NULL; break; } } } - if (dom == null) { - if (nodeType === null) { + if (dom == NULL) { + if (nodeType == NULL) { return document.createTextNode(newProps); } - if (isSvg) { - dom = document.createElementNS('http://www.w3.org/2000/svg', nodeType); - } else { - dom = document.createElement(nodeType, newProps.is && newProps); - } + dom = document.createElementNS( + namespace, + nodeType, + newProps.is && newProps + ); - // we created a new parent, so none of the previously attached children can be reused: - excessDomChildren = null; // we are creating a new node, so we can assume this is a new subtree (in // case we are hydrating), this deopts the hydrate - isHydrating = false; + if (isHydrating) { + if (options._hydrationMismatch) + options._hydrationMismatch(newVNode, excessDomChildren); + isHydrating = false; + } + // we created a new parent, so none of the previously attached children can be reused: + excessDomChildren = NULL; } - if (nodeType === null) { + if (nodeType == NULL) { // During hydration, we still have to split merged text from SSR'd HTML. - if (oldProps !== newProps && (!isHydrating || dom.data !== newProps)) { + if (oldProps !== newProps && (!isHydrating || dom.data != newProps)) { dom.data = newProps; } } else { // If excessDomChildren was not null, repopulate it with the current element's children: excessDomChildren = excessDomChildren && slice.call(dom.childNodes); - oldProps = oldVNode.props || EMPTY_OBJ; - // If we are in a situation where we are not hydrating but are using // existing DOM (e.g. replaceNode) we should read the existing DOM // attributes to diff them - if (!isHydrating && excessDomChildren != null) { + if (!isHydrating && excessDomChildren != NULL) { oldProps = {}; for (i = 0; i < dom.attributes.length; i++) { value = dom.attributes[i]; @@ -442,8 +501,14 @@ function diffElementNodes( if (i == 'children') { } else if (i == 'dangerouslySetInnerHTML') { oldHtml = value; - } else if (i !== 'key' && !(i in newProps)) { - setProperty(dom, i, null, value, isSvg); + } else if (!(i in newProps)) { + if ( + (i == 'value' && 'defaultValue' in newProps) || + (i == 'checked' && 'defaultChecked' in newProps) + ) { + continue; + } + setProperty(dom, i, NULL, value, namespace); } } @@ -460,11 +525,10 @@ function diffElementNodes( } else if (i == 'checked') { checked = value; } else if ( - i !== 'key' && (!isHydrating || typeof value == 'function') && oldProps[i] !== value ) { - setProperty(dom, i, value, oldProps[i], isSvg); + setProperty(dom, i, value, oldProps[i], namespace); } } @@ -474,8 +538,7 @@ function diffElementNodes( if ( !isHydrating && (!oldHtml || - (newHtml.__html !== oldHtml.__html && - newHtml.__html !== dom.innerHTML)) + (newHtml.__html != oldHtml.__html && newHtml.__html != dom.innerHTML)) ) { dom.innerHTML = newHtml.__html; } @@ -485,12 +548,13 @@ function diffElementNodes( if (oldHtml) dom.innerHTML = ''; diffChildren( - dom, + // @ts-expect-error + newVNode.type == 'template' ? dom.content : dom, isArray(newChildren) ? newChildren : [newChildren], newVNode, oldVNode, globalContext, - isSvg && nodeType !== 'foreignObject', + nodeType == 'foreignObject' ? XHTML_NAMESPACE : namespace, excessDomChildren, commitQueue, excessDomChildren @@ -501,9 +565,9 @@ function diffElementNodes( ); // Remove children that are not part of any vnode. - if (excessDomChildren != null) { + if (excessDomChildren != NULL) { for (i = excessDomChildren.length; i--; ) { - if (excessDomChildren[i] != null) removeNode(excessDomChildren[i]); + removeNode(excessDomChildren[i]); } } } @@ -511,25 +575,27 @@ function diffElementNodes( // As above, don't diff props during hydration if (!isHydrating) { i = 'value'; - if ( - inputValue !== undefined && + if (nodeType == 'progress' && inputValue == NULL) { + dom.removeAttribute('value'); + } else if ( + inputValue != UNDEFINED && // #2756 For the -element the initial value is 0, // despite the attribute not being present. When the attribute // is missing the progress bar is treated as indeterminate. // To fix that we'll always update it when it is 0 for progress elements (inputValue !== dom[i] || - (nodeType === 'progress' && !inputValue) || + (nodeType == 'progress' && !inputValue) || // This is only for IE 11 to fix
` and ``. Use `scope` on `` - background: null, // ``. Use CSS `background-image` instead - bgColor: null, // `` and table elements. Use CSS `background-color` instead - border: number, // ``. Use CSS `border-width` instead, - borderColor: null, // `
`. Use CSS `border-color` instead, - bottomMargin: number, // `` - cellPadding: null, // `
` - cellSpacing: null, // `
` - char: null, // Several table elements. When `align=char`, sets the character to align on - charOff: null, // Several table elements. When `char`, offsets the alignment - classId: null, // `` - clear: null, // `
`. Use CSS `clear` instead - code: null, // `` - codeBase: null, // `` - codeType: null, // `` - color: null, // `` and `
`. Use CSS instead - compact: boolean, // Lists. Use CSS to reduce space between items instead - declare: boolean, // `` - event: null, // `

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⪻`H^g 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