From e7a0803b7b7c9fe0d136623b150ebc6373b0b771 Mon Sep 17 00:00:00 2001 From: EternityDev <64758801+imezx@users.noreply.github.com> Date: Wed, 8 Apr 2026 17:01:20 +0700 Subject: [PATCH 01/14] Delete node_modules directory --- .../@algolia/autocomplete-core/README.md | 17 - .../dist/esm/checkOptions.d.ts | 2 - .../dist/esm/checkOptions.js | 4 - .../dist/esm/createAutocomplete.d.ts | 8 - .../dist/esm/createAutocomplete.js | 106 - .../dist/esm/createStore.d.ts | 7 - .../autocomplete-core/dist/esm/createStore.js | 28 - .../dist/esm/getAutocompleteSetters.d.ts | 13 - .../dist/esm/getAutocompleteSetters.js | 48 - .../dist/esm/getCompletion.d.ts | 6 - .../dist/esm/getCompletion.js | 9 - .../dist/esm/getDefaultProps.d.ts | 2 - .../dist/esm/getDefaultProps.js | 130 - .../dist/esm/getPropGetters.d.ts | 16 - .../dist/esm/getPropGetters.js | 335 - .../autocomplete-core/dist/esm/index.d.ts | 3 - .../autocomplete-core/dist/esm/index.js | 3 - .../autocomplete-core/dist/esm/metadata.d.ts | 33 - .../autocomplete-core/dist/esm/metadata.js | 41 - .../autocomplete-core/dist/esm/onInput.d.ts | 18 - .../autocomplete-core/dist/esm/onInput.js | 143 - .../autocomplete-core/dist/esm/onKeyDown.d.ts | 8 - .../autocomplete-core/dist/esm/onKeyDown.js | 196 - .../autocomplete-core/dist/esm/reshape.d.ts | 11 - .../autocomplete-core/dist/esm/reshape.js | 45 - .../autocomplete-core/dist/esm/resolve.d.ts | 43 - .../autocomplete-core/dist/esm/resolve.js | 114 - .../dist/esm/stateReducer.d.ts | 2 - .../dist/esm/stateReducer.js | 145 - .../dist/esm/types/AutocompleteStore.d.ts | 15 - .../dist/esm/types/AutocompleteStore.js | 1 - .../esm/types/AutocompleteSubscribers.d.ts | 7 - .../dist/esm/types/AutocompleteSubscribers.js | 1 - .../dist/esm/types/index.d.ts | 22 - .../autocomplete-core/dist/esm/types/index.js | 4 - .../esm/utils/createCancelablePromise.d.ts | 15 - .../dist/esm/utils/createCancelablePromise.js | 62 - .../utils/createCancelablePromiseList.d.ts | 21 - .../esm/utils/createCancelablePromiseList.js | 21 - .../utils/createConcurrentSafePromise.d.ts | 8 - .../esm/utils/createConcurrentSafePromise.js | 36 - .../dist/esm/utils/getActiveItem.d.ts | 7 - .../dist/esm/utils/getActiveItem.js | 77 - .../dist/esm/utils/getNextActiveItemId.d.ts | 17 - .../dist/esm/utils/getNextActiveItemId.js | 29 - .../dist/esm/utils/getNormalizedSources.d.ts | 2 - .../dist/esm/utils/getNormalizedSources.js | 48 - .../dist/esm/utils/index.d.ts | 11 - .../autocomplete-core/dist/esm/utils/index.js | 11 - .../dist/esm/utils/isOrContainsNode.d.ts | 1 - .../dist/esm/utils/isOrContainsNode.js | 3 - .../dist/esm/utils/isSamsung.d.ts | 1 - .../dist/esm/utils/isSamsung.js | 4 - .../dist/esm/utils/mapToAlgoliaResponse.d.ts | 15 - .../dist/esm/utils/mapToAlgoliaResponse.js | 23 - .../dist/umd/index.development.js | 2616 - .../dist/umd/index.development.js.map | 1 - .../dist/umd/index.production.js | 3 - .../dist/umd/index.production.js.map | 1 - .../@algolia/autocomplete-core/package.json | 42 - .../README.md | 15 - .../dist/esm/createAlgoliaInsightsPlugin.d.ts | 47 - .../dist/esm/createAlgoliaInsightsPlugin.js | 269 - .../dist/esm/createClickedEvent.d.ts | 9 - .../dist/esm/createClickedEvent.js | 14 - .../dist/esm/createSearchInsightsApi.d.ts | 66 - .../dist/esm/createSearchInsightsApi.js | 206 - .../dist/esm/createViewedEvents.d.ts | 6 - .../dist/esm/createViewedEvents.js | 16 - .../dist/esm/index.d.js | 1 - .../dist/esm/index.d.ts | 2 - .../dist/esm/index.js | 2 - .../dist/esm/isAlgoliaInsightsHit.d.ts | 2 - .../dist/esm/isAlgoliaInsightsHit.js | 3 - .../dist/esm/isModernInsightsClient.d.ts | 6 - .../dist/esm/isModernInsightsClient.js | 23 - .../dist/esm/types/AlgoliaInsightsHit.d.ts | 9 - .../dist/esm/types/AlgoliaInsightsHit.js | 1 - .../esm/types/AutocompleteInsightsApi.d.ts | 64 - .../dist/esm/types/AutocompleteInsightsApi.js | 1 - .../dist/esm/types/EventParams.d.ts | 20 - .../dist/esm/types/EventParams.js | 1 - .../dist/esm/types/InsightsClient.d.ts | 17 - .../dist/esm/types/InsightsClient.js | 1 - .../dist/esm/types/index.d.ts | 4 - .../dist/esm/types/index.js | 4 - .../dist/umd/index.development.js | 710 - .../dist/umd/index.development.js.map | 1 - .../dist/umd/index.production.js | 3 - .../dist/umd/index.production.js.map | 1 - .../package.json | 39 - .../autocomplete-preset-algolia/README.md | 15 - .../dist/esm/constants/index.d.ts | 2 - .../dist/esm/constants/index.js | 2 - .../dist/esm/highlight/HighlightedHit.d.ts | 4 - .../dist/esm/highlight/HighlightedHit.js | 1 - .../esm/highlight/ParseAlgoliaHitParams.d.ts | 4 - .../esm/highlight/ParseAlgoliaHitParams.js | 1 - .../dist/esm/highlight/ParsedAttribute.d.ts | 4 - .../dist/esm/highlight/ParsedAttribute.js | 1 - .../dist/esm/highlight/SnippetedHit.d.ts | 4 - .../dist/esm/highlight/SnippetedHit.js | 1 - .../dist/esm/highlight/index.d.ts | 6 - .../dist/esm/highlight/index.js | 6 - .../dist/esm/highlight/isPartHighlighted.d.ts | 2 - .../dist/esm/highlight/isPartHighlighted.js | 25 - .../highlight/parseAlgoliaHitHighlight.d.ts | 4 - .../esm/highlight/parseAlgoliaHitHighlight.js | 21 - .../parseAlgoliaHitReverseHighlight.d.ts | 4 - .../parseAlgoliaHitReverseHighlight.js | 5 - .../parseAlgoliaHitReverseSnippet.d.ts | 4 - .../parseAlgoliaHitReverseSnippet.js | 5 - .../esm/highlight/parseAlgoliaHitSnippet.d.ts | 4 - .../esm/highlight/parseAlgoliaHitSnippet.js | 21 - .../dist/esm/highlight/parseAttribute.d.ts | 6 - .../dist/esm/highlight/parseAttribute.js | 48 - .../highlight/reverseHighlightedParts.d.ts | 5 - .../esm/highlight/reverseHighlightedParts.js | 24 - .../dist/esm/index.d.ts | 4 - .../dist/esm/index.js | 4 - .../esm/requester/createAlgoliaRequester.d.ts | 1 - .../esm/requester/createAlgoliaRequester.js | 3 - .../dist/esm/requester/createRequester.d.ts | 2 - .../dist/esm/requester/createRequester.js | 35 - .../dist/esm/requester/getAlgoliaFacets.d.ts | 5 - .../dist/esm/requester/getAlgoliaFacets.js | 28 - .../dist/esm/requester/getAlgoliaResults.d.ts | 5 - .../dist/esm/requester/getAlgoliaResults.js | 16 - .../dist/esm/requester/index.d.ts | 3 - .../dist/esm/requester/index.js | 3 - .../dist/esm/search/fetchAlgoliaResults.d.ts | 3 - .../dist/esm/search/fetchAlgoliaResults.js | 65 - .../dist/esm/search/index.d.ts | 1 - .../dist/esm/search/index.js | 1 - .../dist/esm/types/index.d.ts | 2 - .../dist/esm/types/index.js | 2 - .../dist/esm/utils/getAppIdAndApiKey.d.ts | 4 - .../dist/esm/utils/getAppIdAndApiKey.js | 14 - .../dist/esm/utils/index.d.ts | 1 - .../dist/esm/utils/index.js | 1 - .../dist/umd/index.development.js | 437 - .../dist/umd/index.development.js.map | 1 - .../dist/umd/index.production.js | 3 - .../dist/umd/index.production.js.map | 1 - .../autocomplete-preset-algolia/package.json | 43 - .../dist/esm/MaybePromise.d.ts | 1 - .../dist/esm/MaybePromise.js | 1 - .../dist/esm/UserAgent.d.ts | 4 - .../autocomplete-shared/dist/esm/UserAgent.js | 1 - .../dist/esm/core/AutocompleteApi.d.ts | 15 - .../dist/esm/core/AutocompleteApi.js | 1 - .../dist/esm/core/AutocompleteCollection.d.ts | 10 - .../dist/esm/core/AutocompleteCollection.js | 1 - .../dist/esm/core/AutocompleteContext.d.ts | 3 - .../dist/esm/core/AutocompleteContext.js | 1 - .../esm/core/AutocompleteEnvironment.d.ts | 13 - .../dist/esm/core/AutocompleteEnvironment.js | 1 - .../dist/esm/core/AutocompleteNavigator.d.ts | 28 - .../dist/esm/core/AutocompleteNavigator.js | 1 - .../dist/esm/core/AutocompleteOptions.d.ts | 202 - .../dist/esm/core/AutocompleteOptions.js | 1 - .../dist/esm/core/AutocompletePlugin.d.ts | 43 - .../dist/esm/core/AutocompletePlugin.js | 1 - .../esm/core/AutocompletePropGetters.d.ts | 101 - .../dist/esm/core/AutocompletePropGetters.js | 1 - .../dist/esm/core/AutocompleteReshape.d.ts | 25 - .../dist/esm/core/AutocompleteReshape.js | 1 - .../dist/esm/core/AutocompleteSetters.d.ts | 46 - .../dist/esm/core/AutocompleteSetters.js | 1 - .../dist/esm/core/AutocompleteSource.d.ts | 77 - .../dist/esm/core/AutocompleteSource.js | 1 - .../dist/esm/core/AutocompleteState.d.ts | 12 - .../dist/esm/core/AutocompleteState.js | 1 - .../dist/esm/core/index.d.ts | 11 - .../dist/esm/core/index.js | 11 - .../dist/esm/createRef.d.ts | 3 - .../autocomplete-shared/dist/esm/createRef.js | 5 - .../dist/esm/debounce.d.ts | 1 - .../autocomplete-shared/dist/esm/debounce.js | 14 - .../autocomplete-shared/dist/esm/decycle.d.ts | 5 - .../autocomplete-shared/dist/esm/decycle.js | 32 - .../autocomplete-shared/dist/esm/flatten.d.ts | 1 - .../autocomplete-shared/dist/esm/flatten.js | 5 - .../dist/esm/generateAutocompleteId.d.ts | 1 - .../dist/esm/generateAutocompleteId.js | 4 - .../dist/esm/getAttributeValueByPath.d.ts | 1 - .../dist/esm/getAttributeValueByPath.js | 5 - .../dist/esm/getItemsCount.d.ts | 3 - .../dist/esm/getItemsCount.js | 8 - .../autocomplete-shared/dist/esm/index.d.ts | 18 - .../autocomplete-shared/dist/esm/index.js | 18 - .../dist/esm/invariant.d.ts | 6 - .../autocomplete-shared/dist/esm/invariant.js | 13 - .../autocomplete-shared/dist/esm/isEqual.d.ts | 1 - .../autocomplete-shared/dist/esm/isEqual.js | 24 - .../dist/esm/js/AutocompleteClassNames.d.ts | 28 - .../dist/esm/js/AutocompleteClassNames.js | 1 - .../dist/esm/js/AutocompleteCollection.d.ts | 6 - .../dist/esm/js/AutocompleteCollection.js | 1 - .../dist/esm/js/AutocompleteComponents.d.ts | 23 - .../dist/esm/js/AutocompleteComponents.js | 1 - .../dist/esm/js/AutocompleteOptions.d.ts | 106 - .../dist/esm/js/AutocompleteOptions.js | 1 - .../dist/esm/js/AutocompletePlugin.d.ts | 13 - .../dist/esm/js/AutocompletePlugin.js | 1 - .../dist/esm/js/AutocompletePropGetters.d.ts | 33 - .../dist/esm/js/AutocompletePropGetters.js | 1 - .../dist/esm/js/AutocompleteRender.d.ts | 15 - .../dist/esm/js/AutocompleteRender.js | 1 - .../dist/esm/js/AutocompleteRenderer.d.ts | 33 - .../dist/esm/js/AutocompleteRenderer.js | 1 - .../dist/esm/js/AutocompleteSource.d.ts | 74 - .../dist/esm/js/AutocompleteSource.js | 1 - .../dist/esm/js/AutocompleteState.d.ts | 10 - .../dist/esm/js/AutocompleteState.js | 1 - .../dist/esm/js/AutocompleteTranslations.d.ts | 6 - .../dist/esm/js/AutocompleteTranslations.js | 1 - .../dist/esm/js/HighlightHitParams.d.ts | 18 - .../dist/esm/js/HighlightHitParams.js | 1 - .../dist/esm/js/index.d.ts | 12 - .../autocomplete-shared/dist/esm/js/index.js | 12 - .../autocomplete-shared/dist/esm/noop.d.ts | 1 - .../autocomplete-shared/dist/esm/noop.js | 1 - .../esm/preset-algolia/algoliasearch.d.ts | 60 - .../dist/esm/preset-algolia/algoliasearch.js | 1 - .../esm/preset-algolia/createRequester.d.ts | 90 - .../esm/preset-algolia/createRequester.js | 1 - .../dist/esm/safelyRunOnBrowser.d.ts | 8 - .../dist/esm/safelyRunOnBrowser.js | 11 - .../dist/esm/userAgents.d.ts | 4 - .../dist/esm/userAgents.js | 5 - .../autocomplete-shared/dist/esm/version.d.ts | 1 - .../autocomplete-shared/dist/esm/version.js | 1 - .../autocomplete-shared/dist/esm/warn.d.ts | 8 - .../autocomplete-shared/dist/esm/warn.js | 24 - .../@algolia/autocomplete-shared/package.json | 37 - .../@algolia/client-analytics/index.js | 1 - .../@algolia/client-analytics/package.json | 69 - node_modules/@algolia/client-common/index.js | 1 - .../@algolia/client-common/package.json | 51 - .../@algolia/client-personalization/index.js | 1 - .../client-personalization/package.json | 69 - node_modules/@algolia/client-search/index.js | 1 - .../@algolia/client-search/package.json | 69 - .../@algolia/requester-browser-xhr/index.js | 1 - .../requester-browser-xhr/package.json | 51 - .../@algolia/requester-node-http/index.js | 1 - .../@algolia/requester-node-http/package.json | 53 - node_modules/@babel/parser/CHANGELOG.md | 1073 - node_modules/@babel/parser/LICENSE | 19 - node_modules/@babel/parser/README.md | 19 - .../@babel/parser/bin/babel-parser.js | 15 - node_modules/@babel/parser/lib/index.js | 14582 ----- node_modules/@babel/parser/lib/index.js.map | 1 - node_modules/@babel/parser/package.json | 50 - .../@babel/parser/typings/babel-parser.d.ts | 262 - node_modules/@docsearch/css/README.md | 27 - .../@docsearch/css/dist/_variables.css | 2 - node_modules/@docsearch/css/dist/button.css | 2 - node_modules/@docsearch/css/dist/modal.css | 4 - node_modules/@docsearch/css/dist/style.css | 4 - node_modules/@docsearch/css/package.json | 31 - node_modules/@docsearch/js/README.md | 46 - .../@docsearch/js/dist/esm/index.d.ts | 8781 --- node_modules/@docsearch/js/dist/esm/index.js | 7 - .../@docsearch/js/dist/esm/index.js.map | 1 - node_modules/@docsearch/js/dist/umd/index.js | 7 - .../@docsearch/js/dist/umd/index.js.map | 1 - node_modules/@docsearch/js/package.json | 50 - node_modules/@docsearch/react/README.md | 43 - node_modules/@docsearch/react/button.js | 1 - .../@docsearch/react/dist/esm/index.d.ts | 208 - .../@docsearch/react/dist/esm/index.js | 1 - .../@docsearch/react/dist/umd/index.js | 3 - .../@docsearch/react/dist/umd/index.js.map | 1 - node_modules/@docsearch/react/modal.js | 1 - node_modules/@docsearch/react/package.json | 70 - node_modules/@docsearch/react/style/button.js | 1 - node_modules/@docsearch/react/style/index.js | 1 - node_modules/@docsearch/react/style/modal.js | 1 - .../@docsearch/react/style/variables.js | 1 - node_modules/@esbuild/win32-x64/README.md | 3 - node_modules/@esbuild/win32-x64/package.json | 20 - .../@jridgewell/sourcemap-codec/LICENSE | 19 - .../@jridgewell/sourcemap-codec/README.md | 264 - .../sourcemap-codec/dist/sourcemap-codec.mjs | 423 - .../dist/sourcemap-codec.mjs.map | 6 - .../dist/sourcemap-codec.umd.js | 464 - .../dist/sourcemap-codec.umd.js.map | 6 - .../@jridgewell/sourcemap-codec/package.json | 63 - .../@rollup/rollup-win32-x64-msvc/README.md | 3 - .../rollup-win32-x64-msvc/package.json | 22 - .../rollup.win32-x64-msvc.node | Bin 2527232 -> 0 bytes node_modules/@types/estree/LICENSE | 21 - node_modules/@types/estree/README.md | 15 - node_modules/@types/estree/flow.d.ts | 167 - node_modules/@types/estree/index.d.ts | 694 - node_modules/@types/estree/package.json | 27 - node_modules/@types/linkify-it/LICENSE | 21 - node_modules/@types/linkify-it/README.md | 15 - node_modules/@types/linkify-it/index.d.ts | 3 - node_modules/@types/linkify-it/package.json | 50 - node_modules/@types/markdown-it/LICENSE | 21 - node_modules/@types/markdown-it/README.md | 15 - node_modules/@types/markdown-it/index.d.ts | 3 - node_modules/@types/markdown-it/package.json | 54 - node_modules/@types/mdurl/LICENSE | 21 - node_modules/@types/mdurl/README.md | 15 - node_modules/@types/mdurl/index.d.ts | 3 - node_modules/@types/mdurl/package.json | 36 - node_modules/@types/web-bluetooth/LICENSE | 21 - node_modules/@types/web-bluetooth/README.md | 15 - node_modules/@types/web-bluetooth/index.d.ts | 265 - .../@types/web-bluetooth/package.json | 46 - node_modules/@vitejs/plugin-vue/LICENSE | 21 - node_modules/@vitejs/plugin-vue/README.md | 278 - .../@vitejs/plugin-vue/dist/index.d.mts | 120 - .../@vitejs/plugin-vue/dist/index.mjs | 1745 - node_modules/@vitejs/plugin-vue/package.json | 65 - node_modules/@vue/compiler-core/LICENSE | 21 - node_modules/@vue/compiler-core/README.md | 1 - .../compiler-core/dist/compiler-core.cjs.js | 6888 --- .../dist/compiler-core.cjs.prod.js | 6763 -- .../compiler-core/dist/compiler-core.d.ts | 1100 - .../dist/compiler-core.esm-bundler.js | 5835 -- node_modules/@vue/compiler-core/index.js | 7 - node_modules/@vue/compiler-core/package.json | 58 - node_modules/@vue/compiler-dom/LICENSE | 21 - node_modules/@vue/compiler-dom/README.md | 1 - .../compiler-dom/dist/compiler-dom.cjs.js | 934 - .../dist/compiler-dom.cjs.prod.js | 689 - .../@vue/compiler-dom/dist/compiler-dom.d.ts | 45 - .../dist/compiler-dom.esm-browser.js | 6644 -- .../dist/compiler-dom.esm-browser.prod.js | 14 - .../dist/compiler-dom.esm-bundler.js | 690 - .../compiler-dom/dist/compiler-dom.global.js | 6814 --- .../dist/compiler-dom.global.prod.js | 14 - node_modules/@vue/compiler-dom/index.js | 7 - node_modules/@vue/compiler-dom/package.json | 57 - node_modules/@vue/compiler-sfc/LICENSE | 21 - node_modules/@vue/compiler-sfc/README.md | 79 - .../compiler-sfc/dist/compiler-sfc.cjs.js | 25235 -------- .../@vue/compiler-sfc/dist/compiler-sfc.d.ts | 487 - .../dist/compiler-sfc.esm-browser.js | 50788 ---------------- node_modules/@vue/compiler-sfc/package.json | 67 - node_modules/@vue/compiler-ssr/LICENSE | 21 - node_modules/@vue/compiler-ssr/README.md | 1 - .../compiler-ssr/dist/compiler-ssr.cjs.js | 1413 - .../@vue/compiler-ssr/dist/compiler-ssr.d.ts | 4 - node_modules/@vue/compiler-ssr/package.json | 34 - node_modules/@vue/devtools-api/package.json | 34 - node_modules/@vue/reactivity/LICENSE | 21 - node_modules/@vue/reactivity/README.md | 19 - .../@vue/reactivity/dist/reactivity.cjs.js | 2026 - .../reactivity/dist/reactivity.cjs.prod.js | 1870 - .../@vue/reactivity/dist/reactivity.d.ts | 754 - .../reactivity/dist/reactivity.esm-browser.js | 2024 - .../dist/reactivity.esm-browser.prod.js | 5 - .../reactivity/dist/reactivity.esm-bundler.js | 1983 - .../@vue/reactivity/dist/reactivity.global.js | 2080 - .../reactivity/dist/reactivity.global.prod.js | 5 - node_modules/@vue/reactivity/index.js | 7 - node_modules/@vue/reactivity/package.json | 55 - node_modules/@vue/runtime-core/LICENSE | 21 - node_modules/@vue/runtime-core/README.md | 28 - .../runtime-core/dist/runtime-core.cjs.js | 8651 --- .../dist/runtime-core.cjs.prod.js | 6798 --- .../@vue/runtime-core/dist/runtime-core.d.ts | 1839 - .../dist/runtime-core.esm-bundler.js | 8580 --- node_modules/@vue/runtime-core/index.js | 7 - node_modules/@vue/runtime-core/package.json | 52 - node_modules/@vue/runtime-dom/LICENSE | 21 - node_modules/@vue/runtime-dom/README.md | 13 - .../@vue/runtime-dom/dist/runtime-dom.cjs.js | 1898 - .../runtime-dom/dist/runtime-dom.cjs.prod.js | 1750 - .../@vue/runtime-dom/dist/runtime-dom.d.ts | 1442 - .../dist/runtime-dom.esm-browser.js | 12672 ---- .../dist/runtime-dom.esm-browser.prod.js | 7 - .../dist/runtime-dom.esm-bundler.js | 1937 - .../runtime-dom/dist/runtime-dom.global.js | 12725 ---- .../dist/runtime-dom.global.prod.js | 7 - node_modules/@vue/runtime-dom/index.js | 7 - node_modules/@vue/runtime-dom/package.json | 60 - node_modules/@vue/server-renderer/LICENSE | 21 - node_modules/@vue/server-renderer/README.md | 178 - .../dist/server-renderer.cjs.js | 1153 - .../dist/server-renderer.cjs.prod.js | 879 - .../server-renderer/dist/server-renderer.d.ts | 65 - .../dist/server-renderer.esm-browser.js | 8571 --- .../dist/server-renderer.esm-browser.prod.js | 5 - .../dist/server-renderer.esm-bundler.js | 1091 - node_modules/@vue/server-renderer/index.js | 7 - .../@vue/server-renderer/package.json | 55 - node_modules/@vue/shared/LICENSE | 21 - node_modules/@vue/shared/README.md | 3 - node_modules/@vue/shared/dist/shared.cjs.js | 612 - .../@vue/shared/dist/shared.cjs.prod.js | 604 - node_modules/@vue/shared/dist/shared.d.ts | 334 - .../@vue/shared/dist/shared.esm-bundler.js | 536 - node_modules/@vue/shared/index.js | 7 - node_modules/@vue/shared/package.json | 47 - node_modules/@vueuse/core/LICENSE | 21 - node_modules/@vueuse/core/package.json | 49 - node_modules/@vueuse/integrations/LICENSE | 21 - node_modules/@vueuse/integrations/README.md | 46 - .../@vueuse/integrations/package.json | 129 - node_modules/@vueuse/metadata/LICENSE | 21 - node_modules/@vueuse/metadata/package.json | 38 - node_modules/@vueuse/shared/LICENSE | 21 - node_modules/@vueuse/shared/package.json | 42 - node_modules/algoliasearch/README.md | 82 - .../algoliasearch/dist/algoliasearch.umd.js | 25 - node_modules/algoliasearch/index.d.ts | 1 - node_modules/algoliasearch/index.js | 1 - node_modules/algoliasearch/lite.d.ts | 1 - node_modules/algoliasearch/lite.js | 1 - node_modules/algoliasearch/package.json | 109 - node_modules/csstype/LICENSE | 19 - node_modules/csstype/README.md | 291 - node_modules/csstype/index.d.ts | 22569 ------- node_modules/csstype/index.js.flow | 6863 --- node_modules/csstype/package.json | 70 - node_modules/entities/LICENSE | 11 - node_modules/entities/package.json | 120 - node_modules/entities/readme.md | 143 - node_modules/esbuild/LICENSE.md | 21 - node_modules/esbuild/README.md | 3 - node_modules/esbuild/bin/esbuild | 223 - node_modules/esbuild/install.js | 289 - node_modules/esbuild/lib/main.d.ts | 716 - node_modules/esbuild/lib/main.js | 2242 - node_modules/esbuild/package.json | 49 - node_modules/estree-walker/CHANGELOG.md | 92 - node_modules/estree-walker/LICENSE | 7 - node_modules/estree-walker/README.md | 48 - .../estree-walker/dist/esm/estree-walker.js | 333 - .../estree-walker/dist/esm/package.json | 1 - .../estree-walker/dist/umd/estree-walker.js | 344 - node_modules/estree-walker/package.json | 37 - node_modules/estree-walker/src/async.js | 118 - node_modules/estree-walker/src/index.js | 35 - node_modules/estree-walker/src/package.json | 1 - node_modules/estree-walker/src/sync.js | 118 - node_modules/estree-walker/src/walker.js | 61 - node_modules/estree-walker/types/async.d.ts | 53 - node_modules/estree-walker/types/index.d.ts | 56 - node_modules/estree-walker/types/sync.d.ts | 53 - .../estree-walker/types/tsconfig.tsbuildinfo | 345 - node_modules/estree-walker/types/walker.d.ts | 37 - node_modules/focus-trap/CHANGELOG.md | 521 - node_modules/focus-trap/LICENSE | 21 - node_modules/focus-trap/README.md | 633 - node_modules/focus-trap/SECURITY.md | 37 - .../focus-trap/dist/focus-trap.esm.js | 1216 - .../focus-trap/dist/focus-trap.esm.js.map | 1 - .../focus-trap/dist/focus-trap.esm.min.js | 6 - .../focus-trap/dist/focus-trap.esm.min.js.map | 1 - node_modules/focus-trap/dist/focus-trap.js | 1218 - .../focus-trap/dist/focus-trap.js.map | 1 - .../focus-trap/dist/focus-trap.min.js | 6 - .../focus-trap/dist/focus-trap.min.js.map | 1 - .../focus-trap/dist/focus-trap.umd.js | 1227 - .../focus-trap/dist/focus-trap.umd.js.map | 1 - .../focus-trap/dist/focus-trap.umd.min.js | 6 - .../focus-trap/dist/focus-trap.umd.min.js.map | 1 - node_modules/focus-trap/index.d.ts | 280 - node_modules/focus-trap/index.js | 1292 - node_modules/focus-trap/package.json | 119 - node_modules/magic-string/LICENSE | 7 - node_modules/magic-string/README.md | 325 - .../magic-string/dist/magic-string.cjs.d.ts | 289 - .../magic-string/dist/magic-string.cjs.js | 1594 - .../magic-string/dist/magic-string.cjs.js.map | 1 - .../magic-string/dist/magic-string.es.d.mts | 289 - .../magic-string/dist/magic-string.es.mjs | 1588 - .../magic-string/dist/magic-string.es.mjs.map | 1 - .../magic-string/dist/magic-string.umd.js | 1682 - .../magic-string/dist/magic-string.umd.js.map | 1 - node_modules/magic-string/package.json | 67 - node_modules/mark.js/.editorconfig | 9 - node_modules/mark.js/.eslintrc | 120 - node_modules/mark.js/.gitattributes | 173 - node_modules/mark.js/.jsbeautifyrc | 36 - node_modules/mark.js/.npmignore | 19 - node_modules/mark.js/.travis.yml | 6 - node_modules/mark.js/CONTRIBUTING.md | 99 - node_modules/mark.js/ISSUE_TEMPLATE.md | 11 - node_modules/mark.js/LICENSE | 21 - node_modules/mark.js/README.md | 54 - node_modules/mark.js/bower.json | 42 - node_modules/mark.js/build/karma.config-ci.js | 226 - node_modules/mark.js/build/karma.config.js | 68 - node_modules/mark.js/build/rollup.config.js | 143 - .../mark.js/build/templates/copyright.hbs | 6 - node_modules/mark.js/dist/jquery.mark.es6.js | 925 - .../mark.js/dist/jquery.mark.es6.min.js | 7 - node_modules/mark.js/dist/jquery.mark.js | 1064 - node_modules/mark.js/dist/jquery.mark.min.js | 7 - node_modules/mark.js/dist/mark.es6.js | 927 - node_modules/mark.js/dist/mark.es6.min.js | 7 - node_modules/mark.js/dist/mark.js | 1068 - node_modules/mark.js/dist/mark.min.js | 7 - node_modules/mark.js/package.json | 69 - node_modules/mark.js/src/jquery.js | 21 - node_modules/mark.js/src/lib/domiterator.js | 569 - node_modules/mark.js/src/lib/mark.js | 1266 - node_modules/mark.js/src/vanilla.js | 22 - node_modules/mark.js/test/.eslintrc | 6 - .../basic/accuracy-exactly.html | 23 - .../fixtures/across-elements/basic/empty.html | 1 - .../across-elements/basic/filter.html | 12 - .../across-elements/basic/ignore-joiners.html | 13 - .../fixtures/across-elements/basic/main.html | 13 - .../across-elements/basic/merge-blanks.html | 29 - .../across-elements/iframes/across.html | 25 - .../fixtures/across-elements/iframes/inc.html | 26 - .../across-elements/iframes/main.html | 23 - .../across-elements/iframes/nested-inc.html | 37 - .../across-elements/iframes/nested.html | 23 - .../fixtures/across-elements/nested/main.html | 13 - .../across-elements/regexp/filter.html | 12 - .../across-elements/regexp/ignore-groups.html | 26 - .../across-elements/regexp/infinite.html | 13 - .../fixtures/across-elements/regexp/main.html | 13 - .../accuracy-complementary-limiters.html | 5 - .../basic/accuracy-complementary.html | 28 - .../basic/accuracy-exactly-limiters.html | 5 - .../test/fixtures/basic/accuracy-exactly.html | 23 - .../fixtures/basic/accuracy-partially.html | 12 - .../test/fixtures/basic/array-keyword.html | 12 - .../basic/case-sensitive-diacritics.html | 24 - .../case-sensitive-synonyms-diacritics.html | 37 - .../basic/case-sensitive-synonyms.html | 21 - .../test/fixtures/basic/case-sensitive.html | 28 - .../test/fixtures/basic/context-array.html | 24 - .../test/fixtures/basic/context-direct.html | 10 - .../test/fixtures/basic/context-nodelist.html | 24 - .../test/fixtures/basic/context-string.html | 24 - .../fixtures/basic/custom-element-class.html | 26 - .../fixtures/basic/diacritics-vietnamese.html | 10 - .../test/fixtures/basic/diacritics.html | 12 - .../fixtures/basic/duplicate-context.html | 27 - .../fixtures/basic/duplicate-keywords.html | 26 - .../mark.js/test/fixtures/basic/empty.html | 1 - .../mark.js/test/fixtures/basic/entities.html | 27 - .../mark.js/test/fixtures/basic/escape.html | 7 - .../mark.js/test/fixtures/basic/events.html | 13 - .../mark.js/test/fixtures/basic/exclude.html | 16 - .../mark.js/test/fixtures/basic/filter.html | 12 - .../basic/ignore-joiners-diacritics.html | 21 - .../fixtures/basic/ignore-joiners-escape.html | 13 - .../ignore-joiners-synonyms-diacritics.html | 22 - .../basic/ignore-joiners-synonyms.html | 22 - .../test/fixtures/basic/ignore-joiners.html | 27 - .../basic/ignore-punctuation-accuracy.html | 28 - .../ignore-punctuation-ignore-joiners.html | 28 - ...nore-punctuation-separate-word-search.html | 28 - ...gnore-punctuation-synonyms-diacritics.html | 22 - .../basic/ignore-punctuation-synonyms.html | 21 - .../fixtures/basic/ignore-punctuation.html | 41 - .../test/fixtures/basic/large-document.html | 9571 --- .../mark.js/test/fixtures/basic/main.html | 12 - .../test/fixtures/basic/manipulated-mark.html | 12 - .../test/fixtures/basic/merge-blanks.html | 28 - .../test/fixtures/basic/nested-mark.html | 12 - .../test/fixtures/basic/no-options.html | 12 - .../test/fixtures/basic/same-keywords.html | 12 - .../test/fixtures/basic/script-style.html | 20 - .../basic/separate-word-search-blank.html | 38 - .../fixtures/basic/separate-word-search.html | 26 - .../fixtures/basic/synonyms-diacritics.html | 25 - .../fixtures/basic/synonyms-merge-blanks.html | 6 - .../fixtures/basic/synonyms-no-match.html | 5 - .../fixtures/basic/synonyms-not-empty.html | 14 - .../mark.js/test/fixtures/basic/synonyms.html | 20 - .../test/fixtures/basic/unmark-exclude.html | 16 - .../basic/wildcards-between-words.html | 54 - .../fixtures/basic/wildcards-diacritics.html | 46 - .../fixtures/basic/wildcards-escaped.html | 33 - .../wildcards-ignore-joiners-synonyms.html | 24 - .../fixtures/basic/wildcards-synonyms.html | 22 - .../test/fixtures/basic/wildcards.html | 42 - .../test/fixtures/iframes/disabled.html | 20 - .../test/fixtures/iframes/exclude.html | 21 - .../test/fixtures/iframes/inaccessible.html | 20 - .../mark.js/test/fixtures/iframes/inc.html | 26 - .../mark.js/test/fixtures/iframes/main.html | 20 - .../test/fixtures/iframes/nested-inc.html | 35 - .../mark.js/test/fixtures/iframes/nested.html | 21 - .../test/fixtures/iframes/onload-inc.html | 6341 -- .../mark.js/test/fixtures/iframes/onload.html | 19 - .../mark.js/test/fixtures/iframes/order.html | 13 - .../test/fixtures/iframes/readystate.html | 19 - .../iframes/unmark-same-instance.html | 20 - .../mark.js/test/fixtures/nested/main.html | 19 - .../test/fixtures/ranges/across-elements.html | 15 - .../mark.js/test/fixtures/ranges/each.html | 12 - .../mark.js/test/fixtures/ranges/filter.html | 12 - .../mark.js/test/fixtures/ranges/iframes.html | 13 - .../mark.js/test/fixtures/ranges/inc.html | 19 - .../mark.js/test/fixtures/ranges/main.html | 26 - .../test/fixtures/ranges/no-match.html | 38 - .../mark.js/test/fixtures/ranges/overlap.html | 12 - .../mark.js/test/fixtures/regexp/filter.html | 12 - .../test/fixtures/regexp/ignore-groups.html | 26 - .../test/fixtures/regexp/infinite.html | 26 - .../mark.js/test/fixtures/regexp/main.html | 26 - node_modules/mark.js/test/manual.html | 48 - .../across-elements/basic/accuracy-exactly.js | 53 - .../test/specs/across-elements/basic/done.js | 30 - .../test/specs/across-elements/basic/each.js | 23 - .../test/specs/across-elements/basic/empty.js | 32 - .../specs/across-elements/basic/filter.js | 48 - .../across-elements/basic/ignore-joiners.js | 20 - .../test/specs/across-elements/basic/main.js | 19 - .../across-elements/basic/merge-blanks.js | 28 - .../specs/across-elements/iframes/across.js | 30 - .../specs/across-elements/iframes/main.js | 38 - .../specs/across-elements/iframes/nested.js | 30 - .../test/specs/across-elements/nested/main.js | 19 - .../specs/across-elements/regexp/filter.js | 38 - .../across-elements/regexp/ignore-groups.js | 38 - .../specs/across-elements/regexp/infinite.js | 23 - .../test/specs/across-elements/regexp/main.js | 17 - .../basic/accuracy-complementary-limiters.js | 27 - .../specs/basic/accuracy-complementary.js | 36 - .../specs/basic/accuracy-exactly-limiters.js | 26 - .../test/specs/basic/accuracy-exactly.js | 50 - .../test/specs/basic/accuracy-partially.js | 21 - .../mark.js/test/specs/basic/array-keyword.js | 25 - .../specs/basic/case-sensitive-diacritics.js | 18 - .../case-sensitive-synonyms-diacritics.js | 22 - .../specs/basic/case-sensitive-synonyms.js | 36 - .../test/specs/basic/case-sensitive.js | 29 - .../mark.js/test/specs/basic/context-array.js | 18 - .../test/specs/basic/context-direct.js | 20 - .../test/specs/basic/context-nodelist.js | 19 - .../test/specs/basic/context-string.js | 18 - .../basic/custom-element-class-unmark.js | 27 - .../test/specs/basic/custom-element-class.js | 31 - .../mark.js/test/specs/basic/debug.js | 30 - .../test/specs/basic/diacritics-vietnamese.js | 19 - .../mark.js/test/specs/basic/diacritics.js | 21 - node_modules/mark.js/test/specs/basic/done.js | 29 - .../test/specs/basic/duplicate-context.js | 45 - .../test/specs/basic/duplicate-keyword.js | 45 - node_modules/mark.js/test/specs/basic/each.js | 24 - .../mark.js/test/specs/basic/empty.js | 31 - .../mark.js/test/specs/basic/entities.js | 28 - .../mark.js/test/specs/basic/escape.js | 29 - .../mark.js/test/specs/basic/events.js | 31 - .../mark.js/test/specs/basic/exclude.js | 24 - .../mark.js/test/specs/basic/filter.js | 47 - .../specs/basic/ignore-joiners-diacritics.js | 19 - .../test/specs/basic/ignore-joiners-escape.js | 32 - .../ignore-joiners-synonyms-diacritics.js | 26 - .../specs/basic/ignore-joiners-synonyms.js | 36 - .../test/specs/basic/ignore-joiners.js | 28 - .../basic/ignore-punctuation-accuracy.js | 61 - .../ignore-punctuation-ignore-joiners.js | 58 - ...ignore-punctuation-separate-word-search.js | 54 - .../ignore-punctuation-synonyms-diacritics.js | 32 - .../basic/ignore-punctuation-synonyms.js | 42 - .../test/specs/basic/ignore-punctuation.js | 64 - .../mark.js/test/specs/basic/jquery.js | 27 - .../test/specs/basic/large-document.js | 50 - node_modules/mark.js/test/specs/basic/main.js | 29 - .../test/specs/basic/manipulated-mark.js | 29 - .../mark.js/test/specs/basic/merge-blanks.js | 26 - .../mark.js/test/specs/basic/nested-mark.js | 52 - .../mark.js/test/specs/basic/no-match.js | 24 - .../mark.js/test/specs/basic/no-options.js | 22 - .../mark.js/test/specs/basic/same-keywords.js | 20 - .../mark.js/test/specs/basic/script-style.js | 24 - .../specs/basic/separate-word-search-blank.js | 36 - .../test/specs/basic/separate-word-search.js | 33 - .../test/specs/basic/synonyms-diacritics.js | 30 - .../test/specs/basic/synonyms-merge-blanks.js | 21 - .../test/specs/basic/synonyms-no-match.js | 27 - .../test/specs/basic/synonyms-not-empty.js | 20 - .../mark.js/test/specs/basic/synonyms.js | 34 - .../test/specs/basic/unmark-exclude.js | 28 - .../mark.js/test/specs/basic/unmark-jquery.js | 31 - .../mark.js/test/specs/basic/unmark.js | 40 - .../specs/basic/wildcards-between-words.js | 65 - .../test/specs/basic/wildcards-diacritics.js | 28 - .../test/specs/basic/wildcards-escaped.js | 47 - .../wildcards-ignore-joiners-synonyms.js | 36 - .../test/specs/basic/wildcards-synonyms.js | 34 - .../mark.js/test/specs/basic/wildcards.js | 52 - .../mark.js/test/specs/configuration.js | 4 - .../mark.js/test/specs/iframes/disabled.js | 36 - .../mark.js/test/specs/iframes/exclude.js | 26 - .../test/specs/iframes/inaccessible.js | 29 - .../mark.js/test/specs/iframes/main.js | 37 - .../test/specs/iframes/nested-unmark.js | 40 - .../mark.js/test/specs/iframes/nested.js | 29 - .../mark.js/test/specs/iframes/onload.js | 39 - .../mark.js/test/specs/iframes/order.js | 33 - .../mark.js/test/specs/iframes/readystate.js | 46 - .../specs/iframes/unmark-same-instance.js | 34 - .../mark.js/test/specs/iframes/unmark.js | 37 - .../mark.js/test/specs/nested/main.js | 22 - .../mark.js/test/specs/nested/unmark.js | 34 - .../test/specs/ranges/across-elements.js | 41 - .../mark.js/test/specs/ranges/each.js | 35 - .../mark.js/test/specs/ranges/filter.js | 83 - .../mark.js/test/specs/ranges/iframes.js | 25 - .../mark.js/test/specs/ranges/main.js | 94 - .../mark.js/test/specs/ranges/no-match.js | 87 - .../mark.js/test/specs/ranges/overlap.js | 27 - .../mark.js/test/specs/regexp/done.js | 29 - .../mark.js/test/specs/regexp/filter.js | 31 - .../test/specs/regexp/ignore-groups.js | 31 - .../mark.js/test/specs/regexp/infinite.js | 38 - .../mark.js/test/specs/regexp/jquery.js | 40 - .../mark.js/test/specs/regexp/main.js | 42 - .../mark.js/test/specs/regexp/no-match.js | 25 - node_modules/minisearch/CHANGELOG.md | 465 - node_modules/minisearch/LICENSE.txt | 7 - node_modules/minisearch/README.md | 347 - .../minisearch/dist/cjs/SearchableMap.cjs | 549 - .../minisearch/dist/cjs/SearchableMap.cjs.map | 1 - node_modules/minisearch/dist/cjs/index.cjs | 2007 - .../minisearch/dist/cjs/index.cjs.map | 1 - .../minisearch/dist/es/SearchableMap.js | 547 - .../minisearch/dist/es/SearchableMap.js.map | 1 - node_modules/minisearch/dist/es/index.js | 2005 - node_modules/minisearch/dist/es/index.js.map | 1 - .../minisearch/dist/umd/SearchableMap.js | 555 - .../minisearch/dist/umd/SearchableMap.js.map | 1 - node_modules/minisearch/dist/umd/index.js | 2013 - node_modules/minisearch/dist/umd/index.js.map | 1 - node_modules/minisearch/package.json | 105 - .../minisearch/src/MiniSearch.test.js | 1997 - node_modules/minisearch/src/MiniSearch.ts | 2261 - .../src/SearchableMap/SearchableMap.test.js | 314 - .../src/SearchableMap/SearchableMap.ts | 424 - .../src/SearchableMap/TreeIterator.ts | 103 - .../src/SearchableMap/fuzzySearch.ts | 130 - .../minisearch/src/SearchableMap/types.ts | 18 - node_modules/minisearch/src/index.ts | 4 - node_modules/minisearch/src/testSetup/jest.js | 1 - node_modules/nanoid/LICENSE | 20 - node_modules/nanoid/README.md | 39 - node_modules/nanoid/async/index.browser.cjs | 69 - node_modules/nanoid/async/index.browser.js | 34 - node_modules/nanoid/async/index.cjs | 71 - node_modules/nanoid/async/index.d.ts | 56 - node_modules/nanoid/async/index.js | 35 - node_modules/nanoid/async/index.native.js | 26 - node_modules/nanoid/async/package.json | 12 - node_modules/nanoid/bin/nanoid.cjs | 55 - node_modules/nanoid/index.browser.cjs | 72 - node_modules/nanoid/index.browser.js | 34 - node_modules/nanoid/index.cjs | 85 - node_modules/nanoid/index.d.cts | 91 - node_modules/nanoid/index.d.ts | 91 - node_modules/nanoid/index.js | 45 - node_modules/nanoid/nanoid.js | 1 - node_modules/nanoid/non-secure/index.cjs | 34 - node_modules/nanoid/non-secure/index.d.ts | 33 - node_modules/nanoid/non-secure/index.js | 21 - node_modules/nanoid/non-secure/package.json | 6 - node_modules/nanoid/package.json | 89 - node_modules/nanoid/url-alphabet/index.cjs | 7 - node_modules/nanoid/url-alphabet/index.js | 3 - node_modules/nanoid/url-alphabet/package.json | 6 - node_modules/picocolors/LICENSE | 15 - node_modules/picocolors/README.md | 21 - node_modules/picocolors/package.json | 25 - node_modules/picocolors/picocolors.browser.js | 4 - node_modules/picocolors/picocolors.d.ts | 5 - node_modules/picocolors/picocolors.js | 75 - node_modules/postcss/LICENSE | 20 - node_modules/postcss/README.md | 29 - node_modules/postcss/lib/at-rule.d.ts | 140 - node_modules/postcss/lib/at-rule.js | 25 - node_modules/postcss/lib/comment.d.ts | 68 - node_modules/postcss/lib/comment.js | 13 - node_modules/postcss/lib/container.d.ts | 483 - node_modules/postcss/lib/container.js | 447 - .../postcss/lib/css-syntax-error.d.ts | 248 - node_modules/postcss/lib/css-syntax-error.js | 133 - node_modules/postcss/lib/declaration.d.ts | 151 - node_modules/postcss/lib/declaration.js | 24 - node_modules/postcss/lib/document.d.ts | 69 - node_modules/postcss/lib/document.js | 33 - node_modules/postcss/lib/fromJSON.d.ts | 9 - node_modules/postcss/lib/fromJSON.js | 54 - node_modules/postcss/lib/input.d.ts | 227 - node_modules/postcss/lib/input.js | 265 - node_modules/postcss/lib/lazy-result.d.ts | 190 - node_modules/postcss/lib/lazy-result.js | 550 - node_modules/postcss/lib/list.d.ts | 60 - node_modules/postcss/lib/list.js | 58 - node_modules/postcss/lib/map-generator.js | 368 - node_modules/postcss/lib/no-work-result.d.ts | 46 - node_modules/postcss/lib/no-work-result.js | 138 - node_modules/postcss/lib/node.d.ts | 556 - node_modules/postcss/lib/node.js | 449 - node_modules/postcss/lib/parse.d.ts | 9 - node_modules/postcss/lib/parse.js | 42 - node_modules/postcss/lib/parser.js | 611 - node_modules/postcss/lib/postcss.d.mts | 69 - node_modules/postcss/lib/postcss.d.ts | 458 - node_modules/postcss/lib/postcss.js | 101 - node_modules/postcss/lib/postcss.mjs | 30 - node_modules/postcss/lib/previous-map.d.ts | 81 - node_modules/postcss/lib/previous-map.js | 144 - node_modules/postcss/lib/processor.d.ts | 115 - node_modules/postcss/lib/processor.js | 67 - node_modules/postcss/lib/result.d.ts | 205 - node_modules/postcss/lib/result.js | 42 - node_modules/postcss/lib/root.d.ts | 87 - node_modules/postcss/lib/root.js | 61 - node_modules/postcss/lib/rule.d.ts | 126 - node_modules/postcss/lib/rule.js | 27 - node_modules/postcss/lib/stringifier.d.ts | 46 - node_modules/postcss/lib/stringifier.js | 353 - node_modules/postcss/lib/stringify.d.ts | 9 - node_modules/postcss/lib/stringify.js | 11 - node_modules/postcss/lib/symbols.js | 5 - .../postcss/lib/terminal-highlight.js | 70 - node_modules/postcss/lib/tokenize.js | 266 - node_modules/postcss/lib/warn-once.js | 13 - node_modules/postcss/lib/warning.d.ts | 147 - node_modules/postcss/lib/warning.js | 37 - node_modules/postcss/package.json | 88 - node_modules/preact/LICENSE | 21 - node_modules/preact/README.md | 185 - node_modules/preact/compat/client.js | 21 - node_modules/preact/compat/client.mjs | 24 - node_modules/preact/compat/dist/compat.js | 2 - node_modules/preact/compat/dist/compat.js.map | 1 - node_modules/preact/compat/dist/compat.mjs | 2 - .../preact/compat/dist/compat.module.js | 2 - .../preact/compat/dist/compat.module.js.map | 1 - node_modules/preact/compat/dist/compat.umd.js | 2 - .../preact/compat/dist/compat.umd.js.map | 1 - node_modules/preact/compat/jsx-dev-runtime.js | 3 - .../preact/compat/jsx-dev-runtime.mjs | 3 - node_modules/preact/compat/jsx-runtime.js | 3 - node_modules/preact/compat/jsx-runtime.mjs | 3 - node_modules/preact/compat/package.json | 55 - node_modules/preact/compat/scheduler.js | 15 - node_modules/preact/compat/scheduler.mjs | 23 - node_modules/preact/compat/server.browser.js | 11 - node_modules/preact/compat/server.js | 36 - node_modules/preact/compat/server.mjs | 17 - node_modules/preact/compat/src/Children.js | 21 - .../preact/compat/src/PureComponent.js | 16 - node_modules/preact/compat/src/forwardRef.js | 44 - node_modules/preact/compat/src/index.d.ts | 351 - node_modules/preact/compat/src/index.js | 238 - node_modules/preact/compat/src/internal.d.ts | 48 - node_modules/preact/compat/src/memo.js | 35 - node_modules/preact/compat/src/portals.js | 78 - node_modules/preact/compat/src/render.js | 313 - .../preact/compat/src/suspense-list.d.ts | 16 - .../preact/compat/src/suspense-list.js | 127 - node_modules/preact/compat/src/suspense.d.ts | 19 - node_modules/preact/compat/src/suspense.js | 291 - node_modules/preact/compat/src/util.js | 33 - node_modules/preact/compat/test-utils.js | 1 - node_modules/preact/debug/dist/debug.js | 2 - node_modules/preact/debug/dist/debug.js.map | 1 - node_modules/preact/debug/dist/debug.mjs | 2 - .../preact/debug/dist/debug.module.js | 2 - .../preact/debug/dist/debug.module.js.map | 1 - node_modules/preact/debug/dist/debug.umd.js | 2 - .../preact/debug/dist/debug.umd.js.map | 1 - node_modules/preact/debug/package.json | 27 - node_modules/preact/debug/src/check-props.js | 54 - .../preact/debug/src/component-stack.js | 146 - node_modules/preact/debug/src/constants.js | 3 - node_modules/preact/debug/src/debug.js | 593 - node_modules/preact/debug/src/index.d.ts | 23 - node_modules/preact/debug/src/index.js | 12 - node_modules/preact/debug/src/internal.d.ts | 82 - node_modules/preact/debug/src/util.js | 15 - node_modules/preact/devtools/dist/devtools.js | 2 - .../preact/devtools/dist/devtools.js.map | 1 - .../preact/devtools/dist/devtools.mjs | 2 - .../preact/devtools/dist/devtools.module.js | 2 - .../devtools/dist/devtools.module.js.map | 1 - .../preact/devtools/dist/devtools.umd.js | 2 - .../preact/devtools/dist/devtools.umd.js.map | 1 - node_modules/preact/devtools/package.json | 25 - node_modules/preact/devtools/src/devtools.js | 21 - node_modules/preact/devtools/src/index.d.ts | 8 - node_modules/preact/devtools/src/index.js | 15 - node_modules/preact/dist/preact.js | 2 - node_modules/preact/dist/preact.js.map | 1 - node_modules/preact/dist/preact.min.js | 2 - node_modules/preact/dist/preact.min.js.map | 1 - node_modules/preact/dist/preact.min.module.js | 2 - .../preact/dist/preact.min.module.js.map | 1 - node_modules/preact/dist/preact.min.umd.js | 2 - .../preact/dist/preact.min.umd.js.map | 1 - node_modules/preact/dist/preact.mjs | 2 - node_modules/preact/dist/preact.module.js | 2 - node_modules/preact/dist/preact.module.js.map | 1 - node_modules/preact/dist/preact.umd.js | 2 - node_modules/preact/dist/preact.umd.js.map | 1 - node_modules/preact/hooks/dist/hooks.js | 2 - node_modules/preact/hooks/dist/hooks.js.map | 1 - node_modules/preact/hooks/dist/hooks.mjs | 2 - .../preact/hooks/dist/hooks.module.js | 2 - .../preact/hooks/dist/hooks.module.js.map | 1 - node_modules/preact/hooks/dist/hooks.umd.js | 2 - .../preact/hooks/dist/hooks.umd.js.map | 1 - node_modules/preact/hooks/package.json | 35 - node_modules/preact/hooks/src/index.d.ts | 145 - node_modules/preact/hooks/src/index.js | 555 - node_modules/preact/hooks/src/internal.d.ts | 103 - .../preact/jsx-runtime/dist/jsxRuntime.js | 2 - .../preact/jsx-runtime/dist/jsxRuntime.js.map | 1 - .../preact/jsx-runtime/dist/jsxRuntime.mjs | 2 - .../jsx-runtime/dist/jsxRuntime.module.js | 2 - .../jsx-runtime/dist/jsxRuntime.module.js.map | 1 - .../preact/jsx-runtime/dist/jsxRuntime.umd.js | 2 - .../jsx-runtime/dist/jsxRuntime.umd.js.map | 1 - node_modules/preact/jsx-runtime/package.json | 28 - .../preact/jsx-runtime/src/index.d.ts | 62 - node_modules/preact/jsx-runtime/src/index.js | 206 - node_modules/preact/jsx-runtime/src/utils.js | 36 - node_modules/preact/package.json | 258 - node_modules/preact/src/cjs.js | 3 - node_modules/preact/src/clone-element.js | 48 - node_modules/preact/src/component.js | 249 - node_modules/preact/src/constants.js | 22 - node_modules/preact/src/create-context.js | 60 - node_modules/preact/src/create-element.js | 97 - node_modules/preact/src/diff/catch-error.js | 46 - node_modules/preact/src/diff/children.js | 451 - node_modules/preact/src/diff/index.js | 684 - node_modules/preact/src/diff/props.js | 173 - node_modules/preact/src/index.d.ts | 402 - node_modules/preact/src/index.js | 13 - node_modules/preact/src/internal.d.ts | 190 - node_modules/preact/src/jsx.d.ts | 2878 - node_modules/preact/src/options.js | 16 - node_modules/preact/src/render.js | 78 - node_modules/preact/src/util.js | 28 - .../preact/test-utils/dist/testUtils.js | 2 - .../preact/test-utils/dist/testUtils.js.map | 1 - .../preact/test-utils/dist/testUtils.mjs | 2 - .../test-utils/dist/testUtils.module.js | 2 - .../test-utils/dist/testUtils.module.js.map | 1 - .../preact/test-utils/dist/testUtils.umd.js | 2 - .../test-utils/dist/testUtils.umd.js.map | 1 - node_modules/preact/test-utils/package.json | 28 - node_modules/preact/test-utils/src/index.d.ts | 3 - node_modules/preact/test-utils/src/index.js | 129 - node_modules/rollup/LICENSE.md | 679 - node_modules/rollup/README.md | 134 - node_modules/rollup/dist/bin/rollup | 1912 - node_modules/rollup/dist/es/getLogFilter.js | 64 - node_modules/rollup/dist/es/package.json | 1 - node_modules/rollup/dist/es/parseAst.js | 12 - node_modules/rollup/dist/es/rollup.js | 17 - .../rollup/dist/es/shared/node-entry.js | 24044 -------- .../rollup/dist/es/shared/parseAst.js | 2096 - node_modules/rollup/dist/es/shared/watch.js | 9297 --- node_modules/rollup/dist/getLogFilter.d.ts | 5 - node_modules/rollup/dist/getLogFilter.js | 69 - node_modules/rollup/dist/loadConfigFile.d.ts | 20 - node_modules/rollup/dist/loadConfigFile.js | 29 - node_modules/rollup/dist/native.js | 161 - node_modules/rollup/dist/parseAst.d.ts | 4 - node_modules/rollup/dist/parseAst.js | 22 - node_modules/rollup/dist/rollup.d.ts | 1225 - node_modules/rollup/dist/rollup.js | 127 - .../rollup/dist/shared/fsevents-importer.js | 37 - node_modules/rollup/dist/shared/index.js | 9003 --- .../rollup/dist/shared/loadConfigFile.js | 572 - node_modules/rollup/dist/shared/parseAst.js | 2330 - node_modules/rollup/dist/shared/rollup.js | 23966 -------- node_modules/rollup/dist/shared/watch-cli.js | 542 - node_modules/rollup/dist/shared/watch.js | 324 - node_modules/rollup/package.json | 286 - node_modules/search-insights/LICENSE.md | 21 - node_modules/search-insights/README.md | 88 - .../search-insights/dist/_addEventType.d.ts | 3 - .../search-insights/dist/_algoliaAgent.d.ts | 3 - .../dist/_createInsightsClient.d.ts | 3 - .../dist/_getFunctionalInterface.d.ts | 3 - .../search-insights/dist/_getVersion.d.ts | 2 - .../search-insights/dist/_processQueue.d.ts | 2 - .../search-insights/dist/_sendEvent.d.ts | 4 - .../search-insights/dist/_tokenUtils.d.ts | 16 - node_modules/search-insights/dist/click.d.ts | 31 - .../search-insights/dist/conversion.d.ts | 45 - .../search-insights/dist/entry-umd.d.ts | 5 - node_modules/search-insights/dist/init.d.ts | 22 - .../search-insights/dist/insights.d.ts | 69 - .../dist/search-insights.iife.min.js | 1 - .../dist/search-insights.min.js | 1 - node_modules/search-insights/dist/types.d.ts | 85 - .../dist/utils/extractAdditionalParams.d.ts | 8 - .../dist/utils/featureDetection.d.ts | 5 - .../dist/utils/getRequesterForBrowser.d.ts | 2 - .../dist/utils/getRequesterForNode.d.ts | 2 - .../search-insights/dist/utils/index.d.ts | 8 - .../search-insights/dist/utils/request.d.ts | 5 - .../search-insights/dist/utils/uuid.d.ts | 7 - node_modules/search-insights/dist/view.d.ts | 20 - .../search-insights/empty-module.cjs.d.ts | 4 - .../search-insights/lib/_addEventType.ts | 27 - .../search-insights/lib/_algoliaAgent.ts | 17 - .../lib/_createInsightsClient.ts | 26 - .../lib/_getFunctionalInterface.ts | 17 - .../search-insights/lib/_getVersion.ts | 12 - .../search-insights/lib/_processQueue.ts | 42 - .../search-insights/lib/_sendEvent.ts | 111 - .../search-insights/lib/_tokenUtils.ts | 150 - node_modules/search-insights/lib/click.ts | 73 - .../search-insights/lib/conversion.ts | 148 - node_modules/search-insights/lib/entry-umd.ts | 21 - node_modules/search-insights/lib/init.ts | 126 - node_modules/search-insights/lib/insights.ts | 147 - node_modules/search-insights/lib/types.ts | 150 - node_modules/search-insights/lib/typings.d.ts | 4 - .../lib/utils/extractAdditionalParams.ts | 25 - .../lib/utils/featureDetection.ts | 43 - .../lib/utils/getRequesterForBrowser.ts | 29 - .../lib/utils/getRequesterForNode.ts | 20 - .../search-insights/lib/utils/index.ts | 19 - .../search-insights/lib/utils/request.ts | 97 - .../search-insights/lib/utils/uuid.ts | 15 - node_modules/search-insights/lib/view.ts | 44 - node_modules/search-insights/package.json | 102 - node_modules/source-map-js/LICENSE | 28 - node_modules/source-map-js/README.md | 765 - node_modules/source-map-js/lib/array-set.js | 121 - node_modules/source-map-js/lib/base64-vlq.js | 140 - node_modules/source-map-js/lib/base64.js | 67 - .../source-map-js/lib/binary-search.js | 111 - .../source-map-js/lib/mapping-list.js | 79 - node_modules/source-map-js/lib/quick-sort.js | 132 - .../source-map-js/lib/source-map-consumer.js | 1188 - .../source-map-js/lib/source-map-generator.js | 444 - node_modules/source-map-js/lib/source-node.js | 413 - node_modules/source-map-js/lib/util.js | 594 - node_modules/source-map-js/package.json | 71 - node_modules/source-map-js/source-map.d.ts | 104 - node_modules/source-map-js/source-map.js | 8 - node_modules/tabbable/CHANGELOG.md | 262 - node_modules/tabbable/LICENSE | 22 - node_modules/tabbable/README.md | 291 - node_modules/tabbable/SECURITY.md | 37 - node_modules/tabbable/dist/index.esm.js | 589 - node_modules/tabbable/dist/index.esm.js.map | 1 - node_modules/tabbable/dist/index.esm.min.js | 6 - .../tabbable/dist/index.esm.min.js.map | 1 - node_modules/tabbable/dist/index.js | 595 - node_modules/tabbable/dist/index.js.map | 1 - node_modules/tabbable/dist/index.min.js | 6 - node_modules/tabbable/dist/index.min.js.map | 1 - node_modules/tabbable/dist/index.umd.js | 606 - node_modules/tabbable/dist/index.umd.js.map | 1 - node_modules/tabbable/dist/index.umd.min.js | 6 - .../tabbable/dist/index.umd.min.js.map | 1 - node_modules/tabbable/index.d.ts | 40 - node_modules/tabbable/package.json | 102 - node_modules/tabbable/src/index.js | 713 - node_modules/vite/LICENSE.md | 2120 - node_modules/vite/README.md | 20 - node_modules/vite/bin/vite.js | 79 - node_modules/vite/client.d.ts | 279 - node_modules/vite/dist/client/client.mjs | 1106 - node_modules/vite/dist/client/env.mjs | 19 - node_modules/vite/dist/node/cli.js | 698 - node_modules/vite/dist/node/index.d.ts | 3713 -- node_modules/vite/dist/node/index.js | 30 - node_modules/vite/package.json | 199 - node_modules/vite/types/customEvent.d.ts | 50 - node_modules/vite/types/hmrPayload.d.ts | 74 - node_modules/vite/types/hot.d.ts | 39 - node_modules/vite/types/import-meta.d.ts | 5 - node_modules/vite/types/importGlob.d.ts | 89 - node_modules/vite/types/importMeta.d.ts | 30 - node_modules/vite/types/metadata.d.ts | 33 - node_modules/vite/types/package.json | 4 - node_modules/vitepress/LICENSE | 21 - node_modules/vitepress/README.md | 28 - node_modules/vitepress/bin/vitepress.js | 16 - node_modules/vitepress/client.d.ts | 14 - .../dist/client/app/components/ClientOnly.js | 10 - .../dist/client/app/components/Content.js | 24 - .../dist/client/app/composables/codeGroups.js | 44 - .../dist/client/app/composables/copyCode.js | 77 - .../dist/client/app/composables/head.js | 81 - .../dist/client/app/composables/preFetch.js | 99 - .../vitepress/dist/client/app/data.js | 53 - .../vitepress/dist/client/app/devtools.js | 28 - .../vitepress/dist/client/app/index.js | 143 - .../vitepress/dist/client/app/router.js | 279 - node_modules/vitepress/dist/client/app/ssr.js | 10 - .../vitepress/dist/client/app/theme.js | 1 - .../vitepress/dist/client/app/utils.js | 120 - node_modules/vitepress/dist/client/index.d.ts | 139 - node_modules/vitepress/dist/client/index.js | 9 - node_modules/vitepress/dist/client/shared.js | 243 - .../dist/client/theme-default/Layout.vue | 95 - .../dist/client/theme-default/NotFound.vue | 96 - .../components/VPAlgoliaSearchBox.vue | 247 - .../theme-default/components/VPBackdrop.vue | 41 - .../theme-default/components/VPBadge.vue | 86 - .../theme-default/components/VPButton.vue | 123 - .../theme-default/components/VPCarbonAds.vue | 109 - .../theme-default/components/VPContent.vue | 95 - .../client/theme-default/components/VPDoc.vue | 194 - .../theme-default/components/VPDocAside.vue | 46 - .../components/VPDocAsideCarbonAds.vue | 18 - .../components/VPDocAsideOutline.vue | 80 - .../components/VPDocAsideSponsors.vue | 17 - .../theme-default/components/VPDocFooter.vue | 167 - .../components/VPDocFooterLastUpdated.vue | 62 - .../components/VPDocOutlineItem.vue | 55 - .../theme-default/components/VPFeature.vue | 123 - .../theme-default/components/VPFeatures.vue | 121 - .../theme-default/components/VPFlyout.vue | 137 - .../theme-default/components/VPFooter.vue | 60 - .../theme-default/components/VPHero.vue | 349 - .../theme-default/components/VPHome.vue | 47 - .../components/VPHomeFeatures.vue | 14 - .../theme-default/components/VPHomeHero.vue | 24 - .../components/VPHomeSponsors.vue | 116 - .../theme-default/components/VPImage.vue | 46 - .../theme-default/components/VPLink.vue | 37 - .../theme-default/components/VPLocalNav.vue | 144 - .../components/VPLocalNavOutlineDropdown.vue | 192 - .../components/VPLocalSearchBox.vue | 872 - .../theme-default/components/VPMenu.vue | 78 - .../theme-default/components/VPMenuGroup.vue | 48 - .../theme-default/components/VPMenuLink.vue | 74 - .../client/theme-default/components/VPNav.vue | 57 - .../theme-default/components/VPNavBar.vue | 271 - .../components/VPNavBarAppearance.vue | 32 - .../components/VPNavBarExtra.vue | 108 - .../components/VPNavBarHamburger.vue | 79 - .../theme-default/components/VPNavBarMenu.vue | 40 - .../components/VPNavBarMenuGroup.vue | 42 - .../components/VPNavBarMenuLink.vue | 60 - .../components/VPNavBarSearch.vue | 216 - .../components/VPNavBarSearchButton.vue | 67 - .../components/VPNavBarSocialLinks.vue | 27 - .../components/VPNavBarTitle.vue | 76 - .../components/VPNavBarTranslations.vue | 47 - .../theme-default/components/VPNavScreen.vue | 97 - .../components/VPNavScreenAppearance.vue | 40 - .../components/VPNavScreenMenu.vue | 26 - .../components/VPNavScreenMenuGroup.vue | 112 - .../components/VPNavScreenMenuGroupLink.vue | 63 - .../VPNavScreenMenuGroupSection.vue | 30 - .../components/VPNavScreenMenuLink.vue | 66 - .../components/VPNavScreenSocialLinks.vue | 14 - .../components/VPNavScreenTranslations.vue | 80 - .../theme-default/components/VPPage.vue | 7 - .../theme-default/components/VPSidebar.vue | 136 - .../components/VPSidebarItem.vue | 251 - .../theme-default/components/VPSkipLink.vue | 49 - .../theme-default/components/VPSocialLink.vue | 76 - .../components/VPSocialLinks.vue | 31 - .../theme-default/components/VPSponsors.vue | 48 - .../components/VPSponsorsGrid.vue | 47 - .../theme-default/components/VPSwitch.vue | 63 - .../components/VPSwitchAppearance.vue | 54 - .../components/VPTeamMembers.vue | 66 - .../components/VPTeamMembersItem.vue | 225 - .../theme-default/components/VPTeamPage.vue | 58 - .../components/VPTeamPageSection.vue | 77 - .../components/VPTeamPageTitle.vue | 63 - .../components/icons/VPIconAlignJustify.vue | 8 - .../components/icons/VPIconAlignLeft.vue | 8 - .../components/icons/VPIconAlignRight.vue | 8 - .../components/icons/VPIconArrowLeft.vue | 7 - .../components/icons/VPIconArrowRight.vue | 7 - .../components/icons/VPIconChevronDown.vue | 5 - .../components/icons/VPIconChevronLeft.vue | 5 - .../components/icons/VPIconChevronRight.vue | 5 - .../components/icons/VPIconChevronUp.vue | 5 - .../components/icons/VPIconEdit.vue | 6 - .../components/icons/VPIconHeart.vue | 5 - .../components/icons/VPIconLanguages.vue | 9 - .../components/icons/VPIconMinus.vue | 5 - .../components/icons/VPIconMinusSquare.vue | 6 - .../components/icons/VPIconMoon.vue | 5 - .../components/icons/VPIconMoreHorizontal.vue | 7 - .../components/icons/VPIconPlus.vue | 5 - .../components/icons/VPIconPlusSquare.vue | 6 - .../components/icons/VPIconSun.vue | 13 - .../client/theme-default/composables/aside.js | 17 - .../client/theme-default/composables/data.js | 2 - .../theme-default/composables/edit-link.js | 16 - .../theme-default/composables/flyout.js | 41 - .../client/theme-default/composables/langs.js | 28 - .../client/theme-default/composables/nav.js | 31 - .../theme-default/composables/outline.js | 178 - .../theme-default/composables/prev-next.js | 57 - .../theme-default/composables/sidebar.js | 94 - .../theme-default/composables/sponsor-grid.js | 94 - .../fonts/inter-italic-cyrillic-ext.woff2 | Bin 43112 -> 0 bytes .../fonts/inter-italic-cyrillic.woff2 | Bin 31300 -> 0 bytes .../fonts/inter-italic-greek-ext.woff2 | Bin 17404 -> 0 bytes .../fonts/inter-italic-greek.woff2 | Bin 32564 -> 0 bytes .../fonts/inter-italic-latin-ext.woff2 | Bin 120840 -> 0 bytes .../fonts/inter-italic-latin.woff2 | Bin 74784 -> 0 bytes .../fonts/inter-italic-vietnamese.woff2 | Bin 14884 -> 0 bytes .../fonts/inter-roman-cyrillic-ext.woff2 | Bin 40488 -> 0 bytes .../fonts/inter-roman-cyrillic.woff2 | Bin 29164 -> 0 bytes .../fonts/inter-roman-greek-ext.woff2 | Bin 16272 -> 0 bytes .../fonts/inter-roman-greek.woff2 | Bin 29920 -> 0 bytes .../fonts/inter-roman-latin-ext.woff2 | Bin 110160 -> 0 bytes .../fonts/inter-roman-latin.woff2 | Bin 67792 -> 0 bytes .../fonts/inter-roman-vietnamese.woff2 | Bin 14072 -> 0 bytes .../dist/client/theme-default/index.js | 3 - .../dist/client/theme-default/styles/base.css | 253 - .../styles/components/custom-block.css | 208 - .../styles/components/vp-code-group.css | 85 - .../styles/components/vp-code.css | 7 - .../styles/components/vp-doc.css | 581 - .../styles/components/vp-sponsor.css | 155 - .../client/theme-default/styles/fonts.css | 195 - .../client/theme-default/styles/utils.css | 9 - .../dist/client/theme-default/styles/vars.css | 587 - .../dist/client/theme-default/support/lru.js | 33 - .../client/theme-default/support/sidebar.js | 89 - .../theme-default/support/translation.js | 49 - .../client/theme-default/support/utils.js | 33 - .../client/theme-default/without-fonts.js | 37 - node_modules/vitepress/dist/node/cli.js | 488 - node_modules/vitepress/dist/node/index.d.ts | 1363 - node_modules/vitepress/dist/node/index.js | 129 - node_modules/vitepress/package.json | 212 - .../vitepress/template/.vitepress/config.js | 30 - .../template/.vitepress/theme/Layout.vue | 21 - .../template/.vitepress/theme/index.js | 29 - .../template/.vitepress/theme/style.css | 135 - .../vitepress/template/api-examples.md | 49 - node_modules/vitepress/template/index.md | 28 - .../vitepress/template/markdown-examples.md | 85 - .../vitepress/theme-without-fonts.d.ts | 2 - node_modules/vitepress/theme.d.ts | 57 - .../vitepress/types/default-theme.d.ts | 478 - node_modules/vitepress/types/docsearch.d.ts | 63 - node_modules/vitepress/types/index.d.ts | 3 - .../vitepress/types/local-search.d.ts | 33 - node_modules/vitepress/types/shared.d.ts | 234 - node_modules/vue/LICENSE | 21 - node_modules/vue/README.md | 58 - .../vue/compiler-sfc/index.browser.js | 1 - .../vue/compiler-sfc/index.browser.mjs | 1 - node_modules/vue/compiler-sfc/index.d.mts | 1 - node_modules/vue/compiler-sfc/index.d.ts | 1 - node_modules/vue/compiler-sfc/index.js | 3 - node_modules/vue/compiler-sfc/index.mjs | 3 - node_modules/vue/compiler-sfc/package.json | 4 - node_modules/vue/compiler-sfc/register-ts.js | 3 - node_modules/vue/dist/vue.cjs.js | 80 - node_modules/vue/dist/vue.cjs.prod.js | 66 - node_modules/vue/dist/vue.d.mts | 7 - node_modules/vue/dist/vue.d.ts | 7 - node_modules/vue/dist/vue.esm-browser.js | 18586 ------ node_modules/vue/dist/vue.esm-browser.prod.js | 13 - node_modules/vue/dist/vue.esm-bundler.js | 71 - node_modules/vue/dist/vue.global.js | 18466 ------ node_modules/vue/dist/vue.global.prod.js | 13 - .../vue/dist/vue.runtime.esm-browser.js | 12695 ---- .../vue/dist/vue.runtime.esm-browser.prod.js | 7 - .../vue/dist/vue.runtime.esm-bundler.js | 26 - node_modules/vue/dist/vue.runtime.global.js | 12749 ---- .../vue/dist/vue.runtime.global.prod.js | 7 - node_modules/vue/index.js | 7 - node_modules/vue/index.mjs | 1 - node_modules/vue/jsx-runtime/index.d.ts | 25 - node_modules/vue/jsx-runtime/index.js | 15 - node_modules/vue/jsx-runtime/index.mjs | 12 - node_modules/vue/jsx-runtime/package.json | 5 - node_modules/vue/jsx.d.ts | 22 - node_modules/vue/package.json | 112 - node_modules/vue/server-renderer/index.d.mts | 1 - node_modules/vue/server-renderer/index.d.ts | 1 - node_modules/vue/server-renderer/index.js | 1 - node_modules/vue/server-renderer/index.mjs | 1 - node_modules/vue/server-renderer/package.json | 4 - 1288 files changed, 521054 deletions(-) delete mode 100644 node_modules/@algolia/autocomplete-core/README.md delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/createStore.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/createStore.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/index.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/metadata.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/metadata.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/onInput.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/onInput.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/reshape.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/reshape.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/resolve.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/resolve.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/types/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/types/index.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/index.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.d.ts delete mode 100644 node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/umd/index.development.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/umd/index.development.js.map delete mode 100644 node_modules/@algolia/autocomplete-core/dist/umd/index.production.js delete mode 100644 node_modules/@algolia/autocomplete-core/dist/umd/index.production.js.map delete mode 100644 node_modules/@algolia/autocomplete-core/package.json delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/README.md delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js.map delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js.map delete mode 100644 node_modules/@algolia/autocomplete-plugin-algolia-insights/package.json delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/README.md delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js.map delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js.map delete mode 100644 node_modules/@algolia/autocomplete-preset-algolia/package.json delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/core/index.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/createRef.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/createRef.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/debounce.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/debounce.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/decycle.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/decycle.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/flatten.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/flatten.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/index.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/invariant.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/invariant.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/index.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/js/index.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/noop.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/noop.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/version.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/version.js delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/warn.d.ts delete mode 100644 node_modules/@algolia/autocomplete-shared/dist/esm/warn.js delete mode 100644 node_modules/@algolia/autocomplete-shared/package.json delete mode 100644 node_modules/@algolia/client-analytics/index.js delete mode 100644 node_modules/@algolia/client-analytics/package.json delete mode 100644 node_modules/@algolia/client-common/index.js delete mode 100644 node_modules/@algolia/client-common/package.json delete mode 100644 node_modules/@algolia/client-personalization/index.js delete mode 100644 node_modules/@algolia/client-personalization/package.json delete mode 100644 node_modules/@algolia/client-search/index.js delete mode 100644 node_modules/@algolia/client-search/package.json delete mode 100644 node_modules/@algolia/requester-browser-xhr/index.js delete mode 100644 node_modules/@algolia/requester-browser-xhr/package.json delete mode 100644 node_modules/@algolia/requester-node-http/index.js delete mode 100644 node_modules/@algolia/requester-node-http/package.json delete mode 100644 node_modules/@babel/parser/CHANGELOG.md delete mode 100644 node_modules/@babel/parser/LICENSE delete mode 100644 node_modules/@babel/parser/README.md delete mode 100755 node_modules/@babel/parser/bin/babel-parser.js delete mode 100644 node_modules/@babel/parser/lib/index.js delete mode 100644 node_modules/@babel/parser/lib/index.js.map delete mode 100644 node_modules/@babel/parser/package.json delete mode 100644 node_modules/@babel/parser/typings/babel-parser.d.ts delete mode 100644 node_modules/@docsearch/css/README.md delete mode 100644 node_modules/@docsearch/css/dist/_variables.css delete mode 100644 node_modules/@docsearch/css/dist/button.css delete mode 100644 node_modules/@docsearch/css/dist/modal.css delete mode 100644 node_modules/@docsearch/css/dist/style.css delete mode 100644 node_modules/@docsearch/css/package.json delete mode 100644 node_modules/@docsearch/js/README.md delete mode 100644 node_modules/@docsearch/js/dist/esm/index.d.ts delete mode 100644 node_modules/@docsearch/js/dist/esm/index.js delete mode 100644 node_modules/@docsearch/js/dist/esm/index.js.map delete mode 100644 node_modules/@docsearch/js/dist/umd/index.js delete mode 100644 node_modules/@docsearch/js/dist/umd/index.js.map delete mode 100644 node_modules/@docsearch/js/package.json delete mode 100644 node_modules/@docsearch/react/README.md delete mode 100644 node_modules/@docsearch/react/button.js delete mode 100644 node_modules/@docsearch/react/dist/esm/index.d.ts delete mode 100644 node_modules/@docsearch/react/dist/esm/index.js delete mode 100644 node_modules/@docsearch/react/dist/umd/index.js delete mode 100644 node_modules/@docsearch/react/dist/umd/index.js.map delete mode 100644 node_modules/@docsearch/react/modal.js delete mode 100644 node_modules/@docsearch/react/package.json delete mode 100644 node_modules/@docsearch/react/style/button.js delete mode 100644 node_modules/@docsearch/react/style/index.js delete mode 100644 node_modules/@docsearch/react/style/modal.js delete mode 100644 node_modules/@docsearch/react/style/variables.js delete mode 100644 node_modules/@esbuild/win32-x64/README.md delete mode 100644 node_modules/@esbuild/win32-x64/package.json delete mode 100644 node_modules/@jridgewell/sourcemap-codec/LICENSE delete mode 100644 node_modules/@jridgewell/sourcemap-codec/README.md delete mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs delete mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs.map delete mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js delete mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js.map delete mode 100644 node_modules/@jridgewell/sourcemap-codec/package.json delete mode 100644 node_modules/@rollup/rollup-win32-x64-msvc/README.md delete mode 100644 node_modules/@rollup/rollup-win32-x64-msvc/package.json delete mode 100644 node_modules/@rollup/rollup-win32-x64-msvc/rollup.win32-x64-msvc.node delete mode 100644 node_modules/@types/estree/LICENSE delete mode 100644 node_modules/@types/estree/README.md delete mode 100644 node_modules/@types/estree/flow.d.ts delete mode 100644 node_modules/@types/estree/index.d.ts delete mode 100644 node_modules/@types/estree/package.json delete mode 100644 node_modules/@types/linkify-it/LICENSE delete mode 100644 node_modules/@types/linkify-it/README.md delete mode 100644 node_modules/@types/linkify-it/index.d.ts delete mode 100644 node_modules/@types/linkify-it/package.json delete mode 100644 node_modules/@types/markdown-it/LICENSE delete mode 100644 node_modules/@types/markdown-it/README.md delete mode 100644 node_modules/@types/markdown-it/index.d.ts delete mode 100644 node_modules/@types/markdown-it/package.json delete mode 100644 node_modules/@types/mdurl/LICENSE delete mode 100644 node_modules/@types/mdurl/README.md delete mode 100644 node_modules/@types/mdurl/index.d.ts delete mode 100644 node_modules/@types/mdurl/package.json delete mode 100644 node_modules/@types/web-bluetooth/LICENSE delete mode 100644 node_modules/@types/web-bluetooth/README.md delete mode 100644 node_modules/@types/web-bluetooth/index.d.ts delete mode 100644 node_modules/@types/web-bluetooth/package.json delete mode 100644 node_modules/@vitejs/plugin-vue/LICENSE delete mode 100644 node_modules/@vitejs/plugin-vue/README.md delete mode 100644 node_modules/@vitejs/plugin-vue/dist/index.d.mts delete mode 100644 node_modules/@vitejs/plugin-vue/dist/index.mjs delete mode 100644 node_modules/@vitejs/plugin-vue/package.json delete mode 100644 node_modules/@vue/compiler-core/LICENSE delete mode 100644 node_modules/@vue/compiler-core/README.md delete mode 100644 node_modules/@vue/compiler-core/dist/compiler-core.cjs.js delete mode 100644 node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js delete mode 100644 node_modules/@vue/compiler-core/dist/compiler-core.d.ts delete mode 100644 node_modules/@vue/compiler-core/dist/compiler-core.esm-bundler.js delete mode 100644 node_modules/@vue/compiler-core/index.js delete mode 100644 node_modules/@vue/compiler-core/package.json delete mode 100644 node_modules/@vue/compiler-dom/LICENSE delete mode 100644 node_modules/@vue/compiler-dom/README.md delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.js delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.d.ts delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.esm-browser.js delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.esm-browser.prod.js delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.esm-bundler.js delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.global.js delete mode 100644 node_modules/@vue/compiler-dom/dist/compiler-dom.global.prod.js delete mode 100644 node_modules/@vue/compiler-dom/index.js delete mode 100644 node_modules/@vue/compiler-dom/package.json delete mode 100644 node_modules/@vue/compiler-sfc/LICENSE delete mode 100644 node_modules/@vue/compiler-sfc/README.md delete mode 100644 node_modules/@vue/compiler-sfc/dist/compiler-sfc.cjs.js delete mode 100644 node_modules/@vue/compiler-sfc/dist/compiler-sfc.d.ts delete mode 100644 node_modules/@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js delete mode 100644 node_modules/@vue/compiler-sfc/package.json delete mode 100644 node_modules/@vue/compiler-ssr/LICENSE delete mode 100644 node_modules/@vue/compiler-ssr/README.md delete mode 100644 node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js delete mode 100644 node_modules/@vue/compiler-ssr/dist/compiler-ssr.d.ts delete mode 100644 node_modules/@vue/compiler-ssr/package.json delete mode 100644 node_modules/@vue/devtools-api/package.json delete mode 100644 node_modules/@vue/reactivity/LICENSE delete mode 100644 node_modules/@vue/reactivity/README.md delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.cjs.js delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.d.ts delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.esm-browser.js delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.esm-browser.prod.js delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.global.js delete mode 100644 node_modules/@vue/reactivity/dist/reactivity.global.prod.js delete mode 100644 node_modules/@vue/reactivity/index.js delete mode 100644 node_modules/@vue/reactivity/package.json delete mode 100644 node_modules/@vue/runtime-core/LICENSE delete mode 100644 node_modules/@vue/runtime-core/README.md delete mode 100644 node_modules/@vue/runtime-core/dist/runtime-core.cjs.js delete mode 100644 node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js delete mode 100644 node_modules/@vue/runtime-core/dist/runtime-core.d.ts delete mode 100644 node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js delete mode 100644 node_modules/@vue/runtime-core/index.js delete mode 100644 node_modules/@vue/runtime-core/package.json delete mode 100644 node_modules/@vue/runtime-dom/LICENSE delete mode 100644 node_modules/@vue/runtime-dom/README.md delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.esm-browser.js delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.esm-browser.prod.js delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.global.js delete mode 100644 node_modules/@vue/runtime-dom/dist/runtime-dom.global.prod.js delete mode 100644 node_modules/@vue/runtime-dom/index.js delete mode 100644 node_modules/@vue/runtime-dom/package.json delete mode 100644 node_modules/@vue/server-renderer/LICENSE delete mode 100644 node_modules/@vue/server-renderer/README.md delete mode 100644 node_modules/@vue/server-renderer/dist/server-renderer.cjs.js delete mode 100644 node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js delete mode 100644 node_modules/@vue/server-renderer/dist/server-renderer.d.ts delete mode 100644 node_modules/@vue/server-renderer/dist/server-renderer.esm-browser.js delete mode 100644 node_modules/@vue/server-renderer/dist/server-renderer.esm-browser.prod.js delete mode 100644 node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js delete mode 100644 node_modules/@vue/server-renderer/index.js delete mode 100644 node_modules/@vue/server-renderer/package.json delete mode 100644 node_modules/@vue/shared/LICENSE delete mode 100644 node_modules/@vue/shared/README.md delete mode 100644 node_modules/@vue/shared/dist/shared.cjs.js delete mode 100644 node_modules/@vue/shared/dist/shared.cjs.prod.js delete mode 100644 node_modules/@vue/shared/dist/shared.d.ts delete mode 100644 node_modules/@vue/shared/dist/shared.esm-bundler.js delete mode 100644 node_modules/@vue/shared/index.js delete mode 100644 node_modules/@vue/shared/package.json delete mode 100644 node_modules/@vueuse/core/LICENSE delete mode 100644 node_modules/@vueuse/core/package.json delete mode 100644 node_modules/@vueuse/integrations/LICENSE delete mode 100644 node_modules/@vueuse/integrations/README.md delete mode 100644 node_modules/@vueuse/integrations/package.json delete mode 100644 node_modules/@vueuse/metadata/LICENSE delete mode 100644 node_modules/@vueuse/metadata/package.json delete mode 100644 node_modules/@vueuse/shared/LICENSE delete mode 100644 node_modules/@vueuse/shared/package.json delete mode 100644 node_modules/algoliasearch/README.md delete mode 100644 node_modules/algoliasearch/dist/algoliasearch.umd.js delete mode 100644 node_modules/algoliasearch/index.d.ts delete mode 100644 node_modules/algoliasearch/index.js delete mode 100644 node_modules/algoliasearch/lite.d.ts delete mode 100644 node_modules/algoliasearch/lite.js delete mode 100644 node_modules/algoliasearch/package.json delete mode 100644 node_modules/csstype/LICENSE delete mode 100644 node_modules/csstype/README.md delete mode 100644 node_modules/csstype/index.d.ts delete mode 100644 node_modules/csstype/index.js.flow delete mode 100644 node_modules/csstype/package.json delete mode 100644 node_modules/entities/LICENSE delete mode 100644 node_modules/entities/package.json delete mode 100644 node_modules/entities/readme.md delete mode 100644 node_modules/esbuild/LICENSE.md delete mode 100644 node_modules/esbuild/README.md delete mode 100755 node_modules/esbuild/bin/esbuild delete mode 100644 node_modules/esbuild/install.js delete mode 100644 node_modules/esbuild/lib/main.d.ts delete mode 100644 node_modules/esbuild/lib/main.js delete mode 100644 node_modules/esbuild/package.json delete mode 100644 node_modules/estree-walker/CHANGELOG.md delete mode 100644 node_modules/estree-walker/LICENSE delete mode 100644 node_modules/estree-walker/README.md delete mode 100644 node_modules/estree-walker/dist/esm/estree-walker.js delete mode 100644 node_modules/estree-walker/dist/esm/package.json delete mode 100644 node_modules/estree-walker/dist/umd/estree-walker.js delete mode 100644 node_modules/estree-walker/package.json delete mode 100644 node_modules/estree-walker/src/async.js delete mode 100644 node_modules/estree-walker/src/index.js delete mode 100644 node_modules/estree-walker/src/package.json delete mode 100644 node_modules/estree-walker/src/sync.js delete mode 100644 node_modules/estree-walker/src/walker.js delete mode 100644 node_modules/estree-walker/types/async.d.ts delete mode 100644 node_modules/estree-walker/types/index.d.ts delete mode 100644 node_modules/estree-walker/types/sync.d.ts delete mode 100644 node_modules/estree-walker/types/tsconfig.tsbuildinfo delete mode 100644 node_modules/estree-walker/types/walker.d.ts delete mode 100644 node_modules/focus-trap/CHANGELOG.md delete mode 100644 node_modules/focus-trap/LICENSE delete mode 100644 node_modules/focus-trap/README.md delete mode 100644 node_modules/focus-trap/SECURITY.md delete mode 100644 node_modules/focus-trap/dist/focus-trap.esm.js delete mode 100644 node_modules/focus-trap/dist/focus-trap.esm.js.map delete mode 100644 node_modules/focus-trap/dist/focus-trap.esm.min.js delete mode 100644 node_modules/focus-trap/dist/focus-trap.esm.min.js.map delete mode 100644 node_modules/focus-trap/dist/focus-trap.js delete mode 100644 node_modules/focus-trap/dist/focus-trap.js.map delete mode 100644 node_modules/focus-trap/dist/focus-trap.min.js delete mode 100644 node_modules/focus-trap/dist/focus-trap.min.js.map delete mode 100644 node_modules/focus-trap/dist/focus-trap.umd.js delete mode 100644 node_modules/focus-trap/dist/focus-trap.umd.js.map delete mode 100644 node_modules/focus-trap/dist/focus-trap.umd.min.js delete mode 100644 node_modules/focus-trap/dist/focus-trap.umd.min.js.map delete mode 100644 node_modules/focus-trap/index.d.ts delete mode 100644 node_modules/focus-trap/index.js delete mode 100644 node_modules/focus-trap/package.json delete mode 100644 node_modules/magic-string/LICENSE delete mode 100644 node_modules/magic-string/README.md delete mode 100644 node_modules/magic-string/dist/magic-string.cjs.d.ts delete mode 100644 node_modules/magic-string/dist/magic-string.cjs.js delete mode 100644 node_modules/magic-string/dist/magic-string.cjs.js.map delete mode 100644 node_modules/magic-string/dist/magic-string.es.d.mts delete mode 100644 node_modules/magic-string/dist/magic-string.es.mjs delete mode 100644 node_modules/magic-string/dist/magic-string.es.mjs.map delete mode 100644 node_modules/magic-string/dist/magic-string.umd.js delete mode 100644 node_modules/magic-string/dist/magic-string.umd.js.map delete mode 100644 node_modules/magic-string/package.json delete mode 100644 node_modules/mark.js/.editorconfig delete mode 100644 node_modules/mark.js/.eslintrc delete mode 100644 node_modules/mark.js/.gitattributes delete mode 100644 node_modules/mark.js/.jsbeautifyrc delete mode 100644 node_modules/mark.js/.npmignore delete mode 100644 node_modules/mark.js/.travis.yml delete mode 100644 node_modules/mark.js/CONTRIBUTING.md delete mode 100644 node_modules/mark.js/ISSUE_TEMPLATE.md delete mode 100644 node_modules/mark.js/LICENSE delete mode 100644 node_modules/mark.js/README.md delete mode 100644 node_modules/mark.js/bower.json delete mode 100644 node_modules/mark.js/build/karma.config-ci.js delete mode 100644 node_modules/mark.js/build/karma.config.js delete mode 100644 node_modules/mark.js/build/rollup.config.js delete mode 100644 node_modules/mark.js/build/templates/copyright.hbs delete mode 100644 node_modules/mark.js/dist/jquery.mark.es6.js delete mode 100644 node_modules/mark.js/dist/jquery.mark.es6.min.js delete mode 100644 node_modules/mark.js/dist/jquery.mark.js delete mode 100644 node_modules/mark.js/dist/jquery.mark.min.js delete mode 100644 node_modules/mark.js/dist/mark.es6.js delete mode 100644 node_modules/mark.js/dist/mark.es6.min.js delete mode 100644 node_modules/mark.js/dist/mark.js delete mode 100644 node_modules/mark.js/dist/mark.min.js delete mode 100644 node_modules/mark.js/package.json delete mode 100644 node_modules/mark.js/src/jquery.js delete mode 100644 node_modules/mark.js/src/lib/domiterator.js delete mode 100644 node_modules/mark.js/src/lib/mark.js delete mode 100644 node_modules/mark.js/src/vanilla.js delete mode 100644 node_modules/mark.js/test/.eslintrc delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/basic/accuracy-exactly.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/basic/empty.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/basic/filter.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/basic/ignore-joiners.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/basic/main.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/basic/merge-blanks.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/iframes/across.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/iframes/inc.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/iframes/main.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/iframes/nested-inc.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/iframes/nested.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/nested/main.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/regexp/filter.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/regexp/ignore-groups.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/regexp/infinite.html delete mode 100644 node_modules/mark.js/test/fixtures/across-elements/regexp/main.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/accuracy-complementary-limiters.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/accuracy-complementary.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/accuracy-exactly-limiters.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/accuracy-exactly.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/accuracy-partially.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/array-keyword.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/case-sensitive-diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/case-sensitive-synonyms-diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/case-sensitive-synonyms.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/case-sensitive.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/context-array.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/context-direct.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/context-nodelist.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/context-string.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/custom-element-class.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/diacritics-vietnamese.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/duplicate-context.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/duplicate-keywords.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/empty.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/entities.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/escape.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/events.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/exclude.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/filter.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-joiners-diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-joiners-escape.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-joiners-synonyms-diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-joiners-synonyms.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-joiners.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-punctuation-accuracy.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-punctuation-ignore-joiners.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-punctuation-separate-word-search.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-punctuation-synonyms-diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-punctuation-synonyms.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/ignore-punctuation.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/large-document.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/main.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/manipulated-mark.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/merge-blanks.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/nested-mark.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/no-options.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/same-keywords.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/script-style.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/separate-word-search-blank.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/separate-word-search.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/synonyms-diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/synonyms-merge-blanks.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/synonyms-no-match.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/synonyms-not-empty.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/synonyms.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/unmark-exclude.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/wildcards-between-words.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/wildcards-diacritics.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/wildcards-escaped.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/wildcards-ignore-joiners-synonyms.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/wildcards-synonyms.html delete mode 100644 node_modules/mark.js/test/fixtures/basic/wildcards.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/disabled.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/exclude.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/inaccessible.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/inc.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/main.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/nested-inc.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/nested.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/onload-inc.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/onload.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/order.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/readystate.html delete mode 100644 node_modules/mark.js/test/fixtures/iframes/unmark-same-instance.html delete mode 100644 node_modules/mark.js/test/fixtures/nested/main.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/across-elements.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/each.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/filter.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/iframes.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/inc.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/main.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/no-match.html delete mode 100644 node_modules/mark.js/test/fixtures/ranges/overlap.html delete mode 100644 node_modules/mark.js/test/fixtures/regexp/filter.html delete mode 100644 node_modules/mark.js/test/fixtures/regexp/ignore-groups.html delete mode 100644 node_modules/mark.js/test/fixtures/regexp/infinite.html delete mode 100644 node_modules/mark.js/test/fixtures/regexp/main.html delete mode 100644 node_modules/mark.js/test/manual.html delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/accuracy-exactly.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/done.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/each.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/empty.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/filter.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/ignore-joiners.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/main.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/basic/merge-blanks.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/iframes/across.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/iframes/main.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/iframes/nested.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/nested/main.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/regexp/filter.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/regexp/ignore-groups.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/regexp/infinite.js delete mode 100644 node_modules/mark.js/test/specs/across-elements/regexp/main.js delete mode 100644 node_modules/mark.js/test/specs/basic/accuracy-complementary-limiters.js delete mode 100644 node_modules/mark.js/test/specs/basic/accuracy-complementary.js delete mode 100644 node_modules/mark.js/test/specs/basic/accuracy-exactly-limiters.js delete mode 100644 node_modules/mark.js/test/specs/basic/accuracy-exactly.js delete mode 100644 node_modules/mark.js/test/specs/basic/accuracy-partially.js delete mode 100644 node_modules/mark.js/test/specs/basic/array-keyword.js delete mode 100644 node_modules/mark.js/test/specs/basic/case-sensitive-diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/case-sensitive-synonyms-diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/case-sensitive-synonyms.js delete mode 100644 node_modules/mark.js/test/specs/basic/case-sensitive.js delete mode 100644 node_modules/mark.js/test/specs/basic/context-array.js delete mode 100644 node_modules/mark.js/test/specs/basic/context-direct.js delete mode 100644 node_modules/mark.js/test/specs/basic/context-nodelist.js delete mode 100644 node_modules/mark.js/test/specs/basic/context-string.js delete mode 100644 node_modules/mark.js/test/specs/basic/custom-element-class-unmark.js delete mode 100644 node_modules/mark.js/test/specs/basic/custom-element-class.js delete mode 100644 node_modules/mark.js/test/specs/basic/debug.js delete mode 100644 node_modules/mark.js/test/specs/basic/diacritics-vietnamese.js delete mode 100644 node_modules/mark.js/test/specs/basic/diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/done.js delete mode 100644 node_modules/mark.js/test/specs/basic/duplicate-context.js delete mode 100644 node_modules/mark.js/test/specs/basic/duplicate-keyword.js delete mode 100644 node_modules/mark.js/test/specs/basic/each.js delete mode 100644 node_modules/mark.js/test/specs/basic/empty.js delete mode 100644 node_modules/mark.js/test/specs/basic/entities.js delete mode 100644 node_modules/mark.js/test/specs/basic/escape.js delete mode 100644 node_modules/mark.js/test/specs/basic/events.js delete mode 100644 node_modules/mark.js/test/specs/basic/exclude.js delete mode 100644 node_modules/mark.js/test/specs/basic/filter.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-joiners-diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-joiners-escape.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-joiners-synonyms-diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-joiners-synonyms.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-joiners.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-punctuation-accuracy.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-punctuation-ignore-joiners.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-punctuation-separate-word-search.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-punctuation-synonyms-diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-punctuation-synonyms.js delete mode 100644 node_modules/mark.js/test/specs/basic/ignore-punctuation.js delete mode 100644 node_modules/mark.js/test/specs/basic/jquery.js delete mode 100644 node_modules/mark.js/test/specs/basic/large-document.js delete mode 100644 node_modules/mark.js/test/specs/basic/main.js delete mode 100644 node_modules/mark.js/test/specs/basic/manipulated-mark.js delete mode 100644 node_modules/mark.js/test/specs/basic/merge-blanks.js delete mode 100644 node_modules/mark.js/test/specs/basic/nested-mark.js delete mode 100644 node_modules/mark.js/test/specs/basic/no-match.js delete mode 100644 node_modules/mark.js/test/specs/basic/no-options.js delete mode 100644 node_modules/mark.js/test/specs/basic/same-keywords.js delete mode 100644 node_modules/mark.js/test/specs/basic/script-style.js delete mode 100644 node_modules/mark.js/test/specs/basic/separate-word-search-blank.js delete mode 100644 node_modules/mark.js/test/specs/basic/separate-word-search.js delete mode 100644 node_modules/mark.js/test/specs/basic/synonyms-diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/synonyms-merge-blanks.js delete mode 100644 node_modules/mark.js/test/specs/basic/synonyms-no-match.js delete mode 100644 node_modules/mark.js/test/specs/basic/synonyms-not-empty.js delete mode 100644 node_modules/mark.js/test/specs/basic/synonyms.js delete mode 100644 node_modules/mark.js/test/specs/basic/unmark-exclude.js delete mode 100644 node_modules/mark.js/test/specs/basic/unmark-jquery.js delete mode 100644 node_modules/mark.js/test/specs/basic/unmark.js delete mode 100644 node_modules/mark.js/test/specs/basic/wildcards-between-words.js delete mode 100644 node_modules/mark.js/test/specs/basic/wildcards-diacritics.js delete mode 100644 node_modules/mark.js/test/specs/basic/wildcards-escaped.js delete mode 100644 node_modules/mark.js/test/specs/basic/wildcards-ignore-joiners-synonyms.js delete mode 100644 node_modules/mark.js/test/specs/basic/wildcards-synonyms.js delete mode 100644 node_modules/mark.js/test/specs/basic/wildcards.js delete mode 100644 node_modules/mark.js/test/specs/configuration.js delete mode 100644 node_modules/mark.js/test/specs/iframes/disabled.js delete mode 100644 node_modules/mark.js/test/specs/iframes/exclude.js delete mode 100644 node_modules/mark.js/test/specs/iframes/inaccessible.js delete mode 100644 node_modules/mark.js/test/specs/iframes/main.js delete mode 100644 node_modules/mark.js/test/specs/iframes/nested-unmark.js delete mode 100644 node_modules/mark.js/test/specs/iframes/nested.js delete mode 100644 node_modules/mark.js/test/specs/iframes/onload.js delete mode 100644 node_modules/mark.js/test/specs/iframes/order.js delete mode 100644 node_modules/mark.js/test/specs/iframes/readystate.js delete mode 100644 node_modules/mark.js/test/specs/iframes/unmark-same-instance.js delete mode 100644 node_modules/mark.js/test/specs/iframes/unmark.js delete mode 100644 node_modules/mark.js/test/specs/nested/main.js delete mode 100644 node_modules/mark.js/test/specs/nested/unmark.js delete mode 100644 node_modules/mark.js/test/specs/ranges/across-elements.js delete mode 100644 node_modules/mark.js/test/specs/ranges/each.js delete mode 100644 node_modules/mark.js/test/specs/ranges/filter.js delete mode 100644 node_modules/mark.js/test/specs/ranges/iframes.js delete mode 100644 node_modules/mark.js/test/specs/ranges/main.js delete mode 100644 node_modules/mark.js/test/specs/ranges/no-match.js delete mode 100644 node_modules/mark.js/test/specs/ranges/overlap.js delete mode 100644 node_modules/mark.js/test/specs/regexp/done.js delete mode 100644 node_modules/mark.js/test/specs/regexp/filter.js delete mode 100644 node_modules/mark.js/test/specs/regexp/ignore-groups.js delete mode 100644 node_modules/mark.js/test/specs/regexp/infinite.js delete mode 100644 node_modules/mark.js/test/specs/regexp/jquery.js delete mode 100644 node_modules/mark.js/test/specs/regexp/main.js delete mode 100644 node_modules/mark.js/test/specs/regexp/no-match.js delete mode 100644 node_modules/minisearch/CHANGELOG.md delete mode 100644 node_modules/minisearch/LICENSE.txt delete mode 100644 node_modules/minisearch/README.md delete mode 100644 node_modules/minisearch/dist/cjs/SearchableMap.cjs delete mode 100644 node_modules/minisearch/dist/cjs/SearchableMap.cjs.map delete mode 100644 node_modules/minisearch/dist/cjs/index.cjs delete mode 100644 node_modules/minisearch/dist/cjs/index.cjs.map delete mode 100644 node_modules/minisearch/dist/es/SearchableMap.js delete mode 100644 node_modules/minisearch/dist/es/SearchableMap.js.map delete mode 100644 node_modules/minisearch/dist/es/index.js delete mode 100644 node_modules/minisearch/dist/es/index.js.map delete mode 100644 node_modules/minisearch/dist/umd/SearchableMap.js delete mode 100644 node_modules/minisearch/dist/umd/SearchableMap.js.map delete mode 100644 node_modules/minisearch/dist/umd/index.js delete mode 100644 node_modules/minisearch/dist/umd/index.js.map delete mode 100644 node_modules/minisearch/package.json delete mode 100644 node_modules/minisearch/src/MiniSearch.test.js delete mode 100644 node_modules/minisearch/src/MiniSearch.ts delete mode 100644 node_modules/minisearch/src/SearchableMap/SearchableMap.test.js delete mode 100644 node_modules/minisearch/src/SearchableMap/SearchableMap.ts delete mode 100644 node_modules/minisearch/src/SearchableMap/TreeIterator.ts delete mode 100644 node_modules/minisearch/src/SearchableMap/fuzzySearch.ts delete mode 100644 node_modules/minisearch/src/SearchableMap/types.ts delete mode 100644 node_modules/minisearch/src/index.ts delete mode 100644 node_modules/minisearch/src/testSetup/jest.js delete mode 100644 node_modules/nanoid/LICENSE delete mode 100644 node_modules/nanoid/README.md delete mode 100644 node_modules/nanoid/async/index.browser.cjs delete mode 100644 node_modules/nanoid/async/index.browser.js delete mode 100644 node_modules/nanoid/async/index.cjs delete mode 100644 node_modules/nanoid/async/index.d.ts delete mode 100644 node_modules/nanoid/async/index.js delete mode 100644 node_modules/nanoid/async/index.native.js delete mode 100644 node_modules/nanoid/async/package.json delete mode 100755 node_modules/nanoid/bin/nanoid.cjs delete mode 100644 node_modules/nanoid/index.browser.cjs delete mode 100644 node_modules/nanoid/index.browser.js delete mode 100644 node_modules/nanoid/index.cjs delete mode 100644 node_modules/nanoid/index.d.cts delete mode 100644 node_modules/nanoid/index.d.ts delete mode 100644 node_modules/nanoid/index.js delete mode 100644 node_modules/nanoid/nanoid.js delete mode 100644 node_modules/nanoid/non-secure/index.cjs delete mode 100644 node_modules/nanoid/non-secure/index.d.ts delete mode 100644 node_modules/nanoid/non-secure/index.js delete mode 100644 node_modules/nanoid/non-secure/package.json delete mode 100644 node_modules/nanoid/package.json delete mode 100644 node_modules/nanoid/url-alphabet/index.cjs delete mode 100644 node_modules/nanoid/url-alphabet/index.js delete mode 100644 node_modules/nanoid/url-alphabet/package.json delete mode 100644 node_modules/picocolors/LICENSE delete mode 100644 node_modules/picocolors/README.md delete mode 100644 node_modules/picocolors/package.json delete mode 100644 node_modules/picocolors/picocolors.browser.js delete mode 100644 node_modules/picocolors/picocolors.d.ts delete mode 100644 node_modules/picocolors/picocolors.js delete mode 100644 node_modules/postcss/LICENSE delete mode 100644 node_modules/postcss/README.md delete mode 100644 node_modules/postcss/lib/at-rule.d.ts delete mode 100644 node_modules/postcss/lib/at-rule.js delete mode 100644 node_modules/postcss/lib/comment.d.ts delete mode 100644 node_modules/postcss/lib/comment.js delete mode 100644 node_modules/postcss/lib/container.d.ts delete mode 100644 node_modules/postcss/lib/container.js delete mode 100644 node_modules/postcss/lib/css-syntax-error.d.ts delete mode 100644 node_modules/postcss/lib/css-syntax-error.js delete mode 100644 node_modules/postcss/lib/declaration.d.ts delete mode 100644 node_modules/postcss/lib/declaration.js delete mode 100644 node_modules/postcss/lib/document.d.ts delete mode 100644 node_modules/postcss/lib/document.js delete mode 100644 node_modules/postcss/lib/fromJSON.d.ts delete mode 100644 node_modules/postcss/lib/fromJSON.js delete mode 100644 node_modules/postcss/lib/input.d.ts delete mode 100644 node_modules/postcss/lib/input.js delete mode 100644 node_modules/postcss/lib/lazy-result.d.ts delete mode 100644 node_modules/postcss/lib/lazy-result.js delete mode 100644 node_modules/postcss/lib/list.d.ts delete mode 100644 node_modules/postcss/lib/list.js delete mode 100644 node_modules/postcss/lib/map-generator.js delete mode 100644 node_modules/postcss/lib/no-work-result.d.ts delete mode 100644 node_modules/postcss/lib/no-work-result.js delete mode 100644 node_modules/postcss/lib/node.d.ts delete mode 100644 node_modules/postcss/lib/node.js delete mode 100644 node_modules/postcss/lib/parse.d.ts delete mode 100644 node_modules/postcss/lib/parse.js delete mode 100644 node_modules/postcss/lib/parser.js delete mode 100644 node_modules/postcss/lib/postcss.d.mts delete mode 100644 node_modules/postcss/lib/postcss.d.ts delete mode 100644 node_modules/postcss/lib/postcss.js delete mode 100644 node_modules/postcss/lib/postcss.mjs delete mode 100644 node_modules/postcss/lib/previous-map.d.ts delete mode 100644 node_modules/postcss/lib/previous-map.js delete mode 100644 node_modules/postcss/lib/processor.d.ts delete mode 100644 node_modules/postcss/lib/processor.js delete mode 100644 node_modules/postcss/lib/result.d.ts delete mode 100644 node_modules/postcss/lib/result.js delete mode 100644 node_modules/postcss/lib/root.d.ts delete mode 100644 node_modules/postcss/lib/root.js delete mode 100644 node_modules/postcss/lib/rule.d.ts delete mode 100644 node_modules/postcss/lib/rule.js delete mode 100644 node_modules/postcss/lib/stringifier.d.ts delete mode 100644 node_modules/postcss/lib/stringifier.js delete mode 100644 node_modules/postcss/lib/stringify.d.ts delete mode 100644 node_modules/postcss/lib/stringify.js delete mode 100644 node_modules/postcss/lib/symbols.js delete mode 100644 node_modules/postcss/lib/terminal-highlight.js delete mode 100644 node_modules/postcss/lib/tokenize.js delete mode 100644 node_modules/postcss/lib/warn-once.js delete mode 100644 node_modules/postcss/lib/warning.d.ts delete mode 100644 node_modules/postcss/lib/warning.js delete mode 100644 node_modules/postcss/package.json delete mode 100644 node_modules/preact/LICENSE delete mode 100644 node_modules/preact/README.md delete mode 100644 node_modules/preact/compat/client.js delete mode 100644 node_modules/preact/compat/client.mjs delete mode 100644 node_modules/preact/compat/dist/compat.js delete mode 100644 node_modules/preact/compat/dist/compat.js.map delete mode 100644 node_modules/preact/compat/dist/compat.mjs delete mode 100644 node_modules/preact/compat/dist/compat.module.js delete mode 100644 node_modules/preact/compat/dist/compat.module.js.map delete mode 100644 node_modules/preact/compat/dist/compat.umd.js delete mode 100644 node_modules/preact/compat/dist/compat.umd.js.map delete mode 100644 node_modules/preact/compat/jsx-dev-runtime.js delete mode 100644 node_modules/preact/compat/jsx-dev-runtime.mjs delete mode 100644 node_modules/preact/compat/jsx-runtime.js delete mode 100644 node_modules/preact/compat/jsx-runtime.mjs delete mode 100644 node_modules/preact/compat/package.json delete mode 100644 node_modules/preact/compat/scheduler.js delete mode 100644 node_modules/preact/compat/scheduler.mjs delete mode 100644 node_modules/preact/compat/server.browser.js delete mode 100644 node_modules/preact/compat/server.js delete mode 100644 node_modules/preact/compat/server.mjs delete mode 100644 node_modules/preact/compat/src/Children.js delete mode 100644 node_modules/preact/compat/src/PureComponent.js delete mode 100644 node_modules/preact/compat/src/forwardRef.js delete mode 100644 node_modules/preact/compat/src/index.d.ts delete mode 100644 node_modules/preact/compat/src/index.js delete mode 100644 node_modules/preact/compat/src/internal.d.ts delete mode 100644 node_modules/preact/compat/src/memo.js delete mode 100644 node_modules/preact/compat/src/portals.js delete mode 100644 node_modules/preact/compat/src/render.js delete mode 100644 node_modules/preact/compat/src/suspense-list.d.ts delete mode 100644 node_modules/preact/compat/src/suspense-list.js delete mode 100644 node_modules/preact/compat/src/suspense.d.ts delete mode 100644 node_modules/preact/compat/src/suspense.js delete mode 100644 node_modules/preact/compat/src/util.js delete mode 100644 node_modules/preact/compat/test-utils.js delete mode 100644 node_modules/preact/debug/dist/debug.js delete mode 100644 node_modules/preact/debug/dist/debug.js.map delete mode 100644 node_modules/preact/debug/dist/debug.mjs delete mode 100644 node_modules/preact/debug/dist/debug.module.js delete mode 100644 node_modules/preact/debug/dist/debug.module.js.map delete mode 100644 node_modules/preact/debug/dist/debug.umd.js delete mode 100644 node_modules/preact/debug/dist/debug.umd.js.map delete mode 100644 node_modules/preact/debug/package.json delete mode 100644 node_modules/preact/debug/src/check-props.js delete mode 100644 node_modules/preact/debug/src/component-stack.js delete mode 100644 node_modules/preact/debug/src/constants.js delete mode 100644 node_modules/preact/debug/src/debug.js delete mode 100644 node_modules/preact/debug/src/index.d.ts delete mode 100644 node_modules/preact/debug/src/index.js delete mode 100644 node_modules/preact/debug/src/internal.d.ts delete mode 100644 node_modules/preact/debug/src/util.js delete mode 100644 node_modules/preact/devtools/dist/devtools.js delete mode 100644 node_modules/preact/devtools/dist/devtools.js.map delete mode 100644 node_modules/preact/devtools/dist/devtools.mjs delete mode 100644 node_modules/preact/devtools/dist/devtools.module.js delete mode 100644 node_modules/preact/devtools/dist/devtools.module.js.map delete mode 100644 node_modules/preact/devtools/dist/devtools.umd.js delete mode 100644 node_modules/preact/devtools/dist/devtools.umd.js.map delete mode 100644 node_modules/preact/devtools/package.json delete mode 100644 node_modules/preact/devtools/src/devtools.js delete mode 100644 node_modules/preact/devtools/src/index.d.ts delete mode 100644 node_modules/preact/devtools/src/index.js delete mode 100644 node_modules/preact/dist/preact.js delete mode 100644 node_modules/preact/dist/preact.js.map delete mode 100644 node_modules/preact/dist/preact.min.js delete mode 100644 node_modules/preact/dist/preact.min.js.map delete mode 100644 node_modules/preact/dist/preact.min.module.js delete mode 100644 node_modules/preact/dist/preact.min.module.js.map delete mode 100644 node_modules/preact/dist/preact.min.umd.js delete mode 100644 node_modules/preact/dist/preact.min.umd.js.map delete mode 100644 node_modules/preact/dist/preact.mjs delete mode 100644 node_modules/preact/dist/preact.module.js delete mode 100644 node_modules/preact/dist/preact.module.js.map delete mode 100644 node_modules/preact/dist/preact.umd.js delete mode 100644 node_modules/preact/dist/preact.umd.js.map delete mode 100644 node_modules/preact/hooks/dist/hooks.js delete mode 100644 node_modules/preact/hooks/dist/hooks.js.map delete mode 100644 node_modules/preact/hooks/dist/hooks.mjs delete mode 100644 node_modules/preact/hooks/dist/hooks.module.js delete mode 100644 node_modules/preact/hooks/dist/hooks.module.js.map delete mode 100644 node_modules/preact/hooks/dist/hooks.umd.js delete mode 100644 node_modules/preact/hooks/dist/hooks.umd.js.map delete mode 100644 node_modules/preact/hooks/package.json delete mode 100644 node_modules/preact/hooks/src/index.d.ts delete mode 100644 node_modules/preact/hooks/src/index.js delete mode 100644 node_modules/preact/hooks/src/internal.d.ts delete mode 100644 node_modules/preact/jsx-runtime/dist/jsxRuntime.js delete mode 100644 node_modules/preact/jsx-runtime/dist/jsxRuntime.js.map delete mode 100644 node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs delete mode 100644 node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js delete mode 100644 node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js.map delete mode 100644 node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js delete mode 100644 node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js.map delete mode 100644 node_modules/preact/jsx-runtime/package.json delete mode 100644 node_modules/preact/jsx-runtime/src/index.d.ts delete mode 100644 node_modules/preact/jsx-runtime/src/index.js delete mode 100644 node_modules/preact/jsx-runtime/src/utils.js delete mode 100644 node_modules/preact/package.json delete mode 100644 node_modules/preact/src/cjs.js delete mode 100644 node_modules/preact/src/clone-element.js delete mode 100644 node_modules/preact/src/component.js delete mode 100644 node_modules/preact/src/constants.js delete mode 100644 node_modules/preact/src/create-context.js delete mode 100644 node_modules/preact/src/create-element.js delete mode 100644 node_modules/preact/src/diff/catch-error.js delete mode 100644 node_modules/preact/src/diff/children.js delete mode 100644 node_modules/preact/src/diff/index.js delete mode 100644 node_modules/preact/src/diff/props.js delete mode 100644 node_modules/preact/src/index.d.ts delete mode 100644 node_modules/preact/src/index.js delete mode 100644 node_modules/preact/src/internal.d.ts delete mode 100644 node_modules/preact/src/jsx.d.ts delete mode 100644 node_modules/preact/src/options.js delete mode 100644 node_modules/preact/src/render.js delete mode 100644 node_modules/preact/src/util.js delete mode 100644 node_modules/preact/test-utils/dist/testUtils.js delete mode 100644 node_modules/preact/test-utils/dist/testUtils.js.map delete mode 100644 node_modules/preact/test-utils/dist/testUtils.mjs delete mode 100644 node_modules/preact/test-utils/dist/testUtils.module.js delete mode 100644 node_modules/preact/test-utils/dist/testUtils.module.js.map delete mode 100644 node_modules/preact/test-utils/dist/testUtils.umd.js delete mode 100644 node_modules/preact/test-utils/dist/testUtils.umd.js.map delete mode 100644 node_modules/preact/test-utils/package.json delete mode 100644 node_modules/preact/test-utils/src/index.d.ts delete mode 100644 node_modules/preact/test-utils/src/index.js delete mode 100644 node_modules/rollup/LICENSE.md delete mode 100644 node_modules/rollup/README.md delete mode 100755 node_modules/rollup/dist/bin/rollup delete mode 100644 node_modules/rollup/dist/es/getLogFilter.js delete mode 100644 node_modules/rollup/dist/es/package.json delete mode 100644 node_modules/rollup/dist/es/parseAst.js delete mode 100644 node_modules/rollup/dist/es/rollup.js delete mode 100644 node_modules/rollup/dist/es/shared/node-entry.js delete mode 100644 node_modules/rollup/dist/es/shared/parseAst.js delete mode 100644 node_modules/rollup/dist/es/shared/watch.js delete mode 100644 node_modules/rollup/dist/getLogFilter.d.ts delete mode 100644 node_modules/rollup/dist/getLogFilter.js delete mode 100644 node_modules/rollup/dist/loadConfigFile.d.ts delete mode 100644 node_modules/rollup/dist/loadConfigFile.js delete mode 100644 node_modules/rollup/dist/native.js delete mode 100644 node_modules/rollup/dist/parseAst.d.ts delete mode 100644 node_modules/rollup/dist/parseAst.js delete mode 100644 node_modules/rollup/dist/rollup.d.ts delete mode 100644 node_modules/rollup/dist/rollup.js delete mode 100644 node_modules/rollup/dist/shared/fsevents-importer.js delete mode 100644 node_modules/rollup/dist/shared/index.js delete mode 100644 node_modules/rollup/dist/shared/loadConfigFile.js delete mode 100644 node_modules/rollup/dist/shared/parseAst.js delete mode 100644 node_modules/rollup/dist/shared/rollup.js delete mode 100644 node_modules/rollup/dist/shared/watch-cli.js delete mode 100644 node_modules/rollup/dist/shared/watch.js delete mode 100644 node_modules/rollup/package.json delete mode 100644 node_modules/search-insights/LICENSE.md delete mode 100644 node_modules/search-insights/README.md delete mode 100644 node_modules/search-insights/dist/_addEventType.d.ts delete mode 100644 node_modules/search-insights/dist/_algoliaAgent.d.ts delete mode 100644 node_modules/search-insights/dist/_createInsightsClient.d.ts delete mode 100644 node_modules/search-insights/dist/_getFunctionalInterface.d.ts delete mode 100644 node_modules/search-insights/dist/_getVersion.d.ts delete mode 100644 node_modules/search-insights/dist/_processQueue.d.ts delete mode 100644 node_modules/search-insights/dist/_sendEvent.d.ts delete mode 100644 node_modules/search-insights/dist/_tokenUtils.d.ts delete mode 100644 node_modules/search-insights/dist/click.d.ts delete mode 100644 node_modules/search-insights/dist/conversion.d.ts delete mode 100644 node_modules/search-insights/dist/entry-umd.d.ts delete mode 100644 node_modules/search-insights/dist/init.d.ts delete mode 100644 node_modules/search-insights/dist/insights.d.ts delete mode 100644 node_modules/search-insights/dist/search-insights.iife.min.js delete mode 100644 node_modules/search-insights/dist/search-insights.min.js delete mode 100644 node_modules/search-insights/dist/types.d.ts delete mode 100644 node_modules/search-insights/dist/utils/extractAdditionalParams.d.ts delete mode 100644 node_modules/search-insights/dist/utils/featureDetection.d.ts delete mode 100644 node_modules/search-insights/dist/utils/getRequesterForBrowser.d.ts delete mode 100644 node_modules/search-insights/dist/utils/getRequesterForNode.d.ts delete mode 100644 node_modules/search-insights/dist/utils/index.d.ts delete mode 100644 node_modules/search-insights/dist/utils/request.d.ts delete mode 100644 node_modules/search-insights/dist/utils/uuid.d.ts delete mode 100644 node_modules/search-insights/dist/view.d.ts delete mode 100644 node_modules/search-insights/empty-module.cjs.d.ts delete mode 100644 node_modules/search-insights/lib/_addEventType.ts delete mode 100644 node_modules/search-insights/lib/_algoliaAgent.ts delete mode 100644 node_modules/search-insights/lib/_createInsightsClient.ts delete mode 100644 node_modules/search-insights/lib/_getFunctionalInterface.ts delete mode 100644 node_modules/search-insights/lib/_getVersion.ts delete mode 100644 node_modules/search-insights/lib/_processQueue.ts delete mode 100644 node_modules/search-insights/lib/_sendEvent.ts delete mode 100644 node_modules/search-insights/lib/_tokenUtils.ts delete mode 100644 node_modules/search-insights/lib/click.ts delete mode 100644 node_modules/search-insights/lib/conversion.ts delete mode 100644 node_modules/search-insights/lib/entry-umd.ts delete mode 100644 node_modules/search-insights/lib/init.ts delete mode 100644 node_modules/search-insights/lib/insights.ts delete mode 100644 node_modules/search-insights/lib/types.ts delete mode 100644 node_modules/search-insights/lib/typings.d.ts delete mode 100644 node_modules/search-insights/lib/utils/extractAdditionalParams.ts delete mode 100644 node_modules/search-insights/lib/utils/featureDetection.ts delete mode 100644 node_modules/search-insights/lib/utils/getRequesterForBrowser.ts delete mode 100644 node_modules/search-insights/lib/utils/getRequesterForNode.ts delete mode 100644 node_modules/search-insights/lib/utils/index.ts delete mode 100644 node_modules/search-insights/lib/utils/request.ts delete mode 100644 node_modules/search-insights/lib/utils/uuid.ts delete mode 100644 node_modules/search-insights/lib/view.ts delete mode 100644 node_modules/search-insights/package.json delete mode 100644 node_modules/source-map-js/LICENSE delete mode 100644 node_modules/source-map-js/README.md delete mode 100644 node_modules/source-map-js/lib/array-set.js delete mode 100644 node_modules/source-map-js/lib/base64-vlq.js delete mode 100644 node_modules/source-map-js/lib/base64.js delete mode 100644 node_modules/source-map-js/lib/binary-search.js delete mode 100644 node_modules/source-map-js/lib/mapping-list.js delete mode 100644 node_modules/source-map-js/lib/quick-sort.js delete mode 100644 node_modules/source-map-js/lib/source-map-consumer.js delete mode 100644 node_modules/source-map-js/lib/source-map-generator.js delete mode 100644 node_modules/source-map-js/lib/source-node.js delete mode 100644 node_modules/source-map-js/lib/util.js delete mode 100644 node_modules/source-map-js/package.json delete mode 100644 node_modules/source-map-js/source-map.d.ts delete mode 100644 node_modules/source-map-js/source-map.js delete mode 100644 node_modules/tabbable/CHANGELOG.md delete mode 100644 node_modules/tabbable/LICENSE delete mode 100644 node_modules/tabbable/README.md delete mode 100644 node_modules/tabbable/SECURITY.md delete mode 100644 node_modules/tabbable/dist/index.esm.js delete mode 100644 node_modules/tabbable/dist/index.esm.js.map delete mode 100644 node_modules/tabbable/dist/index.esm.min.js delete mode 100644 node_modules/tabbable/dist/index.esm.min.js.map delete mode 100644 node_modules/tabbable/dist/index.js delete mode 100644 node_modules/tabbable/dist/index.js.map delete mode 100644 node_modules/tabbable/dist/index.min.js delete mode 100644 node_modules/tabbable/dist/index.min.js.map delete mode 100644 node_modules/tabbable/dist/index.umd.js delete mode 100644 node_modules/tabbable/dist/index.umd.js.map delete mode 100644 node_modules/tabbable/dist/index.umd.min.js delete mode 100644 node_modules/tabbable/dist/index.umd.min.js.map delete mode 100644 node_modules/tabbable/index.d.ts delete mode 100644 node_modules/tabbable/package.json delete mode 100644 node_modules/tabbable/src/index.js delete mode 100644 node_modules/vite/LICENSE.md delete mode 100644 node_modules/vite/README.md delete mode 100755 node_modules/vite/bin/vite.js delete mode 100644 node_modules/vite/client.d.ts delete mode 100644 node_modules/vite/dist/client/client.mjs delete mode 100644 node_modules/vite/dist/client/env.mjs delete mode 100644 node_modules/vite/dist/node/cli.js delete mode 100644 node_modules/vite/dist/node/index.d.ts delete mode 100644 node_modules/vite/dist/node/index.js delete mode 100644 node_modules/vite/package.json delete mode 100644 node_modules/vite/types/customEvent.d.ts delete mode 100644 node_modules/vite/types/hmrPayload.d.ts delete mode 100644 node_modules/vite/types/hot.d.ts delete mode 100644 node_modules/vite/types/import-meta.d.ts delete mode 100644 node_modules/vite/types/importGlob.d.ts delete mode 100644 node_modules/vite/types/importMeta.d.ts delete mode 100644 node_modules/vite/types/metadata.d.ts delete mode 100644 node_modules/vite/types/package.json delete mode 100644 node_modules/vitepress/LICENSE delete mode 100644 node_modules/vitepress/README.md delete mode 100755 node_modules/vitepress/bin/vitepress.js delete mode 100644 node_modules/vitepress/client.d.ts delete mode 100644 node_modules/vitepress/dist/client/app/components/ClientOnly.js delete mode 100644 node_modules/vitepress/dist/client/app/components/Content.js delete mode 100644 node_modules/vitepress/dist/client/app/composables/codeGroups.js delete mode 100644 node_modules/vitepress/dist/client/app/composables/copyCode.js delete mode 100644 node_modules/vitepress/dist/client/app/composables/head.js delete mode 100644 node_modules/vitepress/dist/client/app/composables/preFetch.js delete mode 100644 node_modules/vitepress/dist/client/app/data.js delete mode 100644 node_modules/vitepress/dist/client/app/devtools.js delete mode 100644 node_modules/vitepress/dist/client/app/index.js delete mode 100644 node_modules/vitepress/dist/client/app/router.js delete mode 100644 node_modules/vitepress/dist/client/app/ssr.js delete mode 100644 node_modules/vitepress/dist/client/app/theme.js delete mode 100644 node_modules/vitepress/dist/client/app/utils.js delete mode 100644 node_modules/vitepress/dist/client/index.d.ts delete mode 100644 node_modules/vitepress/dist/client/index.js delete mode 100644 node_modules/vitepress/dist/client/shared.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/Layout.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/NotFound.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPAlgoliaSearchBox.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPBackdrop.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPBadge.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPButton.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPCarbonAds.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPContent.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDoc.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDocAside.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDocAsideCarbonAds.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDocAsideOutline.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDocAsideSponsors.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDocFooter.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDocFooterLastUpdated.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPDocOutlineItem.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPFeature.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPFeatures.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPFlyout.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPFooter.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPHero.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPHome.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPHomeFeatures.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPHomeHero.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPHomeSponsors.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPImage.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPLink.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPLocalNav.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPLocalNavOutlineDropdown.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPLocalSearchBox.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPMenu.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPMenuGroup.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPMenuLink.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNav.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBar.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarAppearance.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarExtra.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarHamburger.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarMenu.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarMenuGroup.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarMenuLink.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarSearch.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarSearchButton.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarSocialLinks.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarTitle.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavBarTranslations.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreen.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenAppearance.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenMenu.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenMenuGroup.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenMenuGroupLink.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenMenuGroupSection.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenMenuLink.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenSocialLinks.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPNavScreenTranslations.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPPage.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSidebar.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSidebarItem.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSkipLink.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSocialLink.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSocialLinks.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSponsors.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSponsorsGrid.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSwitch.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPSwitchAppearance.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPTeamMembers.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPTeamMembersItem.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPTeamPage.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPTeamPageSection.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/VPTeamPageTitle.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconAlignJustify.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconAlignLeft.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconAlignRight.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconArrowLeft.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconArrowRight.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconChevronDown.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconChevronLeft.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconChevronRight.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconChevronUp.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconEdit.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconHeart.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconLanguages.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconMinus.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconMinusSquare.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconMoon.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconMoreHorizontal.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconPlus.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconPlusSquare.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/components/icons/VPIconSun.vue delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/aside.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/data.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/edit-link.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/flyout.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/langs.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/nav.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/outline.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/prev-next.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/sidebar.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/composables/sponsor-grid.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-italic-cyrillic-ext.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-italic-cyrillic.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-italic-greek-ext.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-italic-greek.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-italic-latin-ext.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-italic-latin.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-italic-vietnamese.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-roman-cyrillic-ext.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-roman-cyrillic.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-roman-greek-ext.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-roman-greek.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-roman-latin-ext.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-roman-latin.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/fonts/inter-roman-vietnamese.woff2 delete mode 100644 node_modules/vitepress/dist/client/theme-default/index.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/base.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/components/custom-block.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/components/vp-code-group.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/components/vp-code.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/components/vp-doc.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/components/vp-sponsor.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/fonts.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/utils.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/styles/vars.css delete mode 100644 node_modules/vitepress/dist/client/theme-default/support/lru.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/support/sidebar.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/support/translation.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/support/utils.js delete mode 100644 node_modules/vitepress/dist/client/theme-default/without-fonts.js delete mode 100644 node_modules/vitepress/dist/node/cli.js delete mode 100644 node_modules/vitepress/dist/node/index.d.ts delete mode 100644 node_modules/vitepress/dist/node/index.js delete mode 100644 node_modules/vitepress/package.json delete mode 100644 node_modules/vitepress/template/.vitepress/config.js delete mode 100644 node_modules/vitepress/template/.vitepress/theme/Layout.vue delete mode 100644 node_modules/vitepress/template/.vitepress/theme/index.js delete mode 100644 node_modules/vitepress/template/.vitepress/theme/style.css delete mode 100644 node_modules/vitepress/template/api-examples.md delete mode 100644 node_modules/vitepress/template/index.md delete mode 100644 node_modules/vitepress/template/markdown-examples.md delete mode 100644 node_modules/vitepress/theme-without-fonts.d.ts delete mode 100644 node_modules/vitepress/theme.d.ts delete mode 100644 node_modules/vitepress/types/default-theme.d.ts delete mode 100644 node_modules/vitepress/types/docsearch.d.ts delete mode 100644 node_modules/vitepress/types/index.d.ts delete mode 100644 node_modules/vitepress/types/local-search.d.ts delete mode 100644 node_modules/vitepress/types/shared.d.ts delete mode 100644 node_modules/vue/LICENSE delete mode 100644 node_modules/vue/README.md delete mode 100644 node_modules/vue/compiler-sfc/index.browser.js delete mode 100644 node_modules/vue/compiler-sfc/index.browser.mjs delete mode 100644 node_modules/vue/compiler-sfc/index.d.mts delete mode 100644 node_modules/vue/compiler-sfc/index.d.ts delete mode 100644 node_modules/vue/compiler-sfc/index.js delete mode 100644 node_modules/vue/compiler-sfc/index.mjs delete mode 100644 node_modules/vue/compiler-sfc/package.json delete mode 100644 node_modules/vue/compiler-sfc/register-ts.js delete mode 100644 node_modules/vue/dist/vue.cjs.js delete mode 100644 node_modules/vue/dist/vue.cjs.prod.js delete mode 100644 node_modules/vue/dist/vue.d.mts delete mode 100644 node_modules/vue/dist/vue.d.ts delete mode 100644 node_modules/vue/dist/vue.esm-browser.js delete mode 100644 node_modules/vue/dist/vue.esm-browser.prod.js delete mode 100644 node_modules/vue/dist/vue.esm-bundler.js delete mode 100644 node_modules/vue/dist/vue.global.js delete mode 100644 node_modules/vue/dist/vue.global.prod.js delete mode 100644 node_modules/vue/dist/vue.runtime.esm-browser.js delete mode 100644 node_modules/vue/dist/vue.runtime.esm-browser.prod.js delete mode 100644 node_modules/vue/dist/vue.runtime.esm-bundler.js delete mode 100644 node_modules/vue/dist/vue.runtime.global.js delete mode 100644 node_modules/vue/dist/vue.runtime.global.prod.js delete mode 100644 node_modules/vue/index.js delete mode 100644 node_modules/vue/index.mjs delete mode 100644 node_modules/vue/jsx-runtime/index.d.ts delete mode 100644 node_modules/vue/jsx-runtime/index.js delete mode 100644 node_modules/vue/jsx-runtime/index.mjs delete mode 100644 node_modules/vue/jsx-runtime/package.json delete mode 100644 node_modules/vue/jsx.d.ts delete mode 100644 node_modules/vue/package.json delete mode 100644 node_modules/vue/server-renderer/index.d.mts delete mode 100644 node_modules/vue/server-renderer/index.d.ts delete mode 100644 node_modules/vue/server-renderer/index.js delete mode 100644 node_modules/vue/server-renderer/index.mjs delete mode 100644 node_modules/vue/server-renderer/package.json diff --git a/node_modules/@algolia/autocomplete-core/README.md b/node_modules/@algolia/autocomplete-core/README.md deleted file mode 100644 index c3e83bb..0000000 --- a/node_modules/@algolia/autocomplete-core/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# @algolia/autocomplete-core - -The [`autocomplete-core`](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-core/createAutocomplete) package is the foundation of Autocomplete. It exposes primitives to build an autocomplete experience. - -You likely don’t need to use this package directly unless you’re building a [renderer](https://www.algolia.com/doc/ui-libraries/autocomplete/guides/creating-a-renderer). - -## Installation - -```sh -yarn add @algolia/autocomplete-core -# or -npm install @algolia/autocomplete-core -``` - -## Documentation - -See [**Documentation**](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-core). diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.d.ts deleted file mode 100644 index ef6afb1..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { AutocompleteOptions, BaseItem } from './types'; -export declare function checkOptions(options: AutocompleteOptions): void; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.js b/node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.js deleted file mode 100644 index 8f22cbb..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/checkOptions.js +++ /dev/null @@ -1,4 +0,0 @@ -import { warn } from '@algolia/autocomplete-shared'; -export function checkOptions(options) { - process.env.NODE_ENV !== 'production' ? warn(!options.debug, 'The `debug` option is meant for development debugging and should not be used in production.') : void 0; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.d.ts deleted file mode 100644 index b1b973c..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { AutocompleteApi, AutocompleteOptions as AutocompleteCoreOptions, BaseItem } from './types'; -export interface AutocompleteOptionsWithMetadata extends AutocompleteCoreOptions { - /** - * @internal - */ - __autocomplete_metadata?: Record; -} -export declare function createAutocomplete(options: AutocompleteOptionsWithMetadata): AutocompleteApi; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.js b/node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.js deleted file mode 100644 index 6eba480..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.js +++ /dev/null @@ -1,106 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { createAlgoliaInsightsPlugin } from '@algolia/autocomplete-plugin-algolia-insights'; -import { checkOptions } from './checkOptions'; -import { createStore } from './createStore'; -import { getAutocompleteSetters } from './getAutocompleteSetters'; -import { getDefaultProps } from './getDefaultProps'; -import { getPropGetters } from './getPropGetters'; -import { getMetadata, injectMetadata } from './metadata'; -import { onInput } from './onInput'; -import { stateReducer } from './stateReducer'; -export function createAutocomplete(options) { - checkOptions(options); - var subscribers = []; - var props = getDefaultProps(options, subscribers); - var store = createStore(stateReducer, props, onStoreStateChange); - var setters = getAutocompleteSetters({ - store: store - }); - var propGetters = getPropGetters(_objectSpread({ - props: props, - refresh: refresh, - store: store, - navigator: props.navigator - }, setters)); - function onStoreStateChange(_ref) { - var _state$context, _state$context$algoli; - var prevState = _ref.prevState, - state = _ref.state; - props.onStateChange(_objectSpread({ - prevState: prevState, - state: state, - refresh: refresh, - navigator: props.navigator - }, setters)); - if (!isAlgoliaInsightsPluginEnabled() && (_state$context = state.context) !== null && _state$context !== void 0 && (_state$context$algoli = _state$context.algoliaInsightsPlugin) !== null && _state$context$algoli !== void 0 && _state$context$algoli.__automaticInsights && props.insights !== false) { - var plugin = createAlgoliaInsightsPlugin({ - __autocomplete_clickAnalytics: false - }); - props.plugins.push(plugin); - subscribePlugins([plugin]); - } - } - function refresh() { - return onInput(_objectSpread({ - event: new Event('input'), - nextState: { - isOpen: store.getState().isOpen - }, - props: props, - navigator: props.navigator, - query: store.getState().query, - refresh: refresh, - store: store - }, setters)); - } - function subscribePlugins(plugins) { - plugins.forEach(function (plugin) { - var _plugin$subscribe; - return (_plugin$subscribe = plugin.subscribe) === null || _plugin$subscribe === void 0 ? void 0 : _plugin$subscribe.call(plugin, _objectSpread(_objectSpread({}, setters), {}, { - navigator: props.navigator, - refresh: refresh, - onSelect: function onSelect(fn) { - subscribers.push({ - onSelect: fn - }); - }, - onActive: function onActive(fn) { - subscribers.push({ - onActive: fn - }); - }, - onResolve: function onResolve(fn) { - subscribers.push({ - onResolve: fn - }); - } - })); - }); - } - function isAlgoliaInsightsPluginEnabled() { - return props.plugins.some(function (plugin) { - return plugin.name === 'aa.algoliaInsightsPlugin'; - }); - } - if (props.insights && !isAlgoliaInsightsPluginEnabled()) { - var insightsParams = typeof props.insights === 'boolean' ? {} : props.insights; - props.plugins.push(createAlgoliaInsightsPlugin(insightsParams)); - } - subscribePlugins(props.plugins); - injectMetadata({ - metadata: getMetadata({ - plugins: props.plugins, - options: options - }), - environment: props.environment - }); - return _objectSpread(_objectSpread({ - refresh: refresh, - navigator: props.navigator - }, propGetters), setters); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/createStore.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/createStore.d.ts deleted file mode 100644 index 1aec83a..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/createStore.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { AutocompleteState, AutocompleteStore, BaseItem, InternalAutocompleteOptions, Reducer } from './types'; -declare type OnStoreStateChange = ({ prevState, state, }: { - prevState: AutocompleteState; - state: AutocompleteState; -}) => void; -export declare function createStore(reducer: Reducer, props: InternalAutocompleteOptions, onStoreStateChange: OnStoreStateChange): AutocompleteStore; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/createStore.js b/node_modules/@algolia/autocomplete-core/dist/esm/createStore.js deleted file mode 100644 index 960bcc2..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/createStore.js +++ /dev/null @@ -1,28 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { createCancelablePromiseList } from './utils'; -export function createStore(reducer, props, onStoreStateChange) { - var state = props.initialState; - return { - getState: function getState() { - return state; - }, - dispatch: function dispatch(action, payload) { - var prevState = _objectSpread({}, state); - state = reducer(state, { - type: action, - props: props, - payload: payload - }); - onStoreStateChange({ - state: state, - prevState: prevState - }); - }, - pendingRequests: createCancelablePromiseList() - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.d.ts deleted file mode 100644 index 0fe1e7f..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { AutocompleteCollection, AutocompleteStore, BaseItem } from './types'; -interface GetAutocompleteSettersOptions { - store: AutocompleteStore; -} -export declare function getAutocompleteSetters({ store, }: GetAutocompleteSettersOptions): { - setActiveItemId: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters").StateUpdater; - setQuery: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters").StateUpdater; - setCollections: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters").StateUpdater<(AutocompleteCollection | import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection").AutocompleteCollectionItemsArray)[]>; - setIsOpen: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters").StateUpdater; - setStatus: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters").StateUpdater<"idle" | "loading" | "stalled" | "error">; - setContext: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters").StateUpdater; -}; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.js b/node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.js deleted file mode 100644 index 5e9467c..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.js +++ /dev/null @@ -1,48 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { flatten } from '@algolia/autocomplete-shared'; -export function getAutocompleteSetters(_ref) { - var store = _ref.store; - var setActiveItemId = function setActiveItemId(value) { - store.dispatch('setActiveItemId', value); - }; - var setQuery = function setQuery(value) { - store.dispatch('setQuery', value); - }; - var setCollections = function setCollections(rawValue) { - var baseItemId = 0; - var value = rawValue.map(function (collection) { - return _objectSpread(_objectSpread({}, collection), {}, { - // We flatten the stored items to support calling `getAlgoliaResults` - // from the source itself. - items: flatten(collection.items).map(function (item) { - return _objectSpread(_objectSpread({}, item), {}, { - __autocomplete_id: baseItemId++ - }); - }) - }); - }); - store.dispatch('setCollections', value); - }; - var setIsOpen = function setIsOpen(value) { - store.dispatch('setIsOpen', value); - }; - var setStatus = function setStatus(value) { - store.dispatch('setStatus', value); - }; - var setContext = function setContext(value) { - store.dispatch('setContext', value); - }; - return { - setActiveItemId: setActiveItemId, - setQuery: setQuery, - setCollections: setCollections, - setIsOpen: setIsOpen, - setStatus: setStatus, - setContext: setContext - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.d.ts deleted file mode 100644 index f06b2a2..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { AutocompleteState, BaseItem } from './types'; -interface GetCompletionProps { - state: AutocompleteState; -} -export declare function getCompletion({ state, }: GetCompletionProps): string | null; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.js b/node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.js deleted file mode 100644 index 61814f9..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.js +++ /dev/null @@ -1,9 +0,0 @@ -import { getActiveItem } from './utils'; -export function getCompletion(_ref) { - var _getActiveItem; - var state = _ref.state; - if (state.isOpen === false || state.activeItemId === null) { - return null; - } - return ((_getActiveItem = getActiveItem(state)) === null || _getActiveItem === void 0 ? void 0 : _getActiveItem.itemInputValue) || null; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.d.ts deleted file mode 100644 index 4dd7dba..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { AutocompleteOptions, AutocompleteSubscribers, BaseItem, InternalAutocompleteOptions } from './types'; -export declare function getDefaultProps(props: AutocompleteOptions, pluginSubscribers: AutocompleteSubscribers): InternalAutocompleteOptions; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.js b/node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.js deleted file mode 100644 index e0488cb..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.js +++ /dev/null @@ -1,130 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { getItemsCount, generateAutocompleteId, flatten } from '@algolia/autocomplete-shared'; -import { getNormalizedSources } from './utils'; -export function getDefaultProps(props, pluginSubscribers) { - var _props$id; - /* eslint-disable no-restricted-globals */ - var environment = typeof window !== 'undefined' ? window : {}; - /* eslint-enable no-restricted-globals */ - var plugins = props.plugins || []; - return _objectSpread(_objectSpread({ - debug: false, - openOnFocus: false, - enterKeyHint: undefined, - ignoreCompositionEvents: false, - placeholder: '', - autoFocus: false, - defaultActiveItemId: null, - stallThreshold: 300, - insights: undefined, - environment: environment, - shouldPanelOpen: function shouldPanelOpen(_ref) { - var state = _ref.state; - return getItemsCount(state) > 0; - }, - reshape: function reshape(_ref2) { - var sources = _ref2.sources; - return sources; - } - }, props), {}, { - // Since `generateAutocompleteId` triggers a side effect (it increments - // an internal counter), we don't want to execute it if unnecessary. - id: (_props$id = props.id) !== null && _props$id !== void 0 ? _props$id : generateAutocompleteId(), - plugins: plugins, - // The following props need to be deeply defaulted. - initialState: _objectSpread({ - activeItemId: null, - query: '', - completion: null, - collections: [], - isOpen: false, - status: 'idle', - context: {} - }, props.initialState), - onStateChange: function onStateChange(params) { - var _props$onStateChange; - (_props$onStateChange = props.onStateChange) === null || _props$onStateChange === void 0 ? void 0 : _props$onStateChange.call(props, params); - plugins.forEach(function (x) { - var _x$onStateChange; - return (_x$onStateChange = x.onStateChange) === null || _x$onStateChange === void 0 ? void 0 : _x$onStateChange.call(x, params); - }); - }, - onSubmit: function onSubmit(params) { - var _props$onSubmit; - (_props$onSubmit = props.onSubmit) === null || _props$onSubmit === void 0 ? void 0 : _props$onSubmit.call(props, params); - plugins.forEach(function (x) { - var _x$onSubmit; - return (_x$onSubmit = x.onSubmit) === null || _x$onSubmit === void 0 ? void 0 : _x$onSubmit.call(x, params); - }); - }, - onReset: function onReset(params) { - var _props$onReset; - (_props$onReset = props.onReset) === null || _props$onReset === void 0 ? void 0 : _props$onReset.call(props, params); - plugins.forEach(function (x) { - var _x$onReset; - return (_x$onReset = x.onReset) === null || _x$onReset === void 0 ? void 0 : _x$onReset.call(x, params); - }); - }, - getSources: function getSources(params) { - return Promise.all([].concat(_toConsumableArray(plugins.map(function (plugin) { - return plugin.getSources; - })), [props.getSources]).filter(Boolean).map(function (getSources) { - return getNormalizedSources(getSources, params); - })).then(function (nested) { - return flatten(nested); - }).then(function (sources) { - return sources.map(function (source) { - return _objectSpread(_objectSpread({}, source), {}, { - onSelect: function onSelect(params) { - source.onSelect(params); - pluginSubscribers.forEach(function (x) { - var _x$onSelect; - return (_x$onSelect = x.onSelect) === null || _x$onSelect === void 0 ? void 0 : _x$onSelect.call(x, params); - }); - }, - onActive: function onActive(params) { - source.onActive(params); - pluginSubscribers.forEach(function (x) { - var _x$onActive; - return (_x$onActive = x.onActive) === null || _x$onActive === void 0 ? void 0 : _x$onActive.call(x, params); - }); - }, - onResolve: function onResolve(params) { - source.onResolve(params); - pluginSubscribers.forEach(function (x) { - var _x$onResolve; - return (_x$onResolve = x.onResolve) === null || _x$onResolve === void 0 ? void 0 : _x$onResolve.call(x, params); - }); - } - }); - }); - }); - }, - navigator: _objectSpread({ - navigate: function navigate(_ref3) { - var itemUrl = _ref3.itemUrl; - environment.location.assign(itemUrl); - }, - navigateNewTab: function navigateNewTab(_ref4) { - var itemUrl = _ref4.itemUrl; - var windowReference = environment.open(itemUrl, '_blank', 'noopener'); - windowReference === null || windowReference === void 0 ? void 0 : windowReference.focus(); - }, - navigateNewWindow: function navigateNewWindow(_ref5) { - var itemUrl = _ref5.itemUrl; - environment.open(itemUrl, '_blank', 'noopener'); - } - }, props.navigator) - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.d.ts deleted file mode 100644 index 27f3adf..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { AutocompleteScopeApi, AutocompleteStore, BaseItem, GetEnvironmentProps, GetFormProps, GetInputProps, GetItemProps, GetLabelProps, GetListProps, GetPanelProps, GetRootProps, InternalAutocompleteOptions } from './types'; -interface GetPropGettersOptions extends AutocompleteScopeApi { - store: AutocompleteStore; - props: InternalAutocompleteOptions; -} -export declare function getPropGetters({ props, refresh, store, ...setters }: GetPropGettersOptions): { - getEnvironmentProps: GetEnvironmentProps; - getRootProps: GetRootProps; - getFormProps: GetFormProps; - getLabelProps: GetLabelProps; - getInputProps: GetInputProps; - getPanelProps: GetPanelProps; - getListProps: GetListProps; - getItemProps: GetItemProps; -}; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.js b/node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.js deleted file mode 100644 index b8d02ad..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.js +++ /dev/null @@ -1,335 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -var _excluded = ["props", "refresh", "store"], - _excluded2 = ["inputElement", "formElement", "panelElement"], - _excluded3 = ["inputElement"], - _excluded4 = ["inputElement", "maxLength"], - _excluded5 = ["source"], - _excluded6 = ["item", "source"]; -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } -import { noop } from '@algolia/autocomplete-shared'; -import { onInput } from './onInput'; -import { onKeyDown as _onKeyDown } from './onKeyDown'; -import { getActiveItem, getAutocompleteElementId, isOrContainsNode, isSamsung, getNativeEvent } from './utils'; -export function getPropGetters(_ref) { - var props = _ref.props, - refresh = _ref.refresh, - store = _ref.store, - setters = _objectWithoutProperties(_ref, _excluded); - var getEnvironmentProps = function getEnvironmentProps(providedProps) { - var inputElement = providedProps.inputElement, - formElement = providedProps.formElement, - panelElement = providedProps.panelElement, - rest = _objectWithoutProperties(providedProps, _excluded2); - function onMouseDownOrTouchStart(event) { - // The `onTouchStart`/`onMouseDown` events shouldn't trigger the `blur` - // handler when it's not an interaction with Autocomplete. - // We detect it with the following heuristics: - // - the panel is closed AND there are no pending requests - // (no interaction with the autocomplete, no future state updates) - // - OR the touched target is the input element (should open the panel) - var isAutocompleteInteraction = store.getState().isOpen || !store.pendingRequests.isEmpty(); - if (!isAutocompleteInteraction || event.target === inputElement) { - return; - } - - // @TODO: support cases where there are multiple Autocomplete instances. - // Right now, a second instance makes this computation return false. - var isTargetWithinAutocomplete = [formElement, panelElement].some(function (contextNode) { - return isOrContainsNode(contextNode, event.target); - }); - if (isTargetWithinAutocomplete === false) { - store.dispatch('blur', null); - - // If requests are still pending when the user closes the panel, they - // could reopen the panel once they resolve. - // We want to prevent any subsequent query from reopening the panel - // because it would result in an unsolicited UI behavior. - if (!props.debug) { - store.pendingRequests.cancelAll(); - } - } - } - return _objectSpread({ - // We do not rely on the native `blur` event of the input to close the - // panel, but rather on a custom `touchstart`/`mousedown` event outside - // of the autocomplete elements. - // This ensures we don't mistakenly interpret interactions within the - // autocomplete (but outside of the input) as a signal to close the panel. - // For example, clicking reset button causes an input blur, but if - // `openOnFocus=true`, it shouldn't close the panel. - // On touch devices, scrolling results (`touchmove`) causes an input blur - // but shouldn't close the panel. - onTouchStart: onMouseDownOrTouchStart, - onMouseDown: onMouseDownOrTouchStart, - // When scrolling on touch devices (mobiles, tablets, etc.), we want to - // mimic the native platform behavior where the input is blurred to - // hide the virtual keyboard. This gives more vertical space to - // discover all the suggestions showing up in the panel. - onTouchMove: function onTouchMove(event) { - if (store.getState().isOpen === false || inputElement !== props.environment.document.activeElement || event.target === inputElement) { - return; - } - inputElement.blur(); - } - }, rest); - }; - var getRootProps = function getRootProps(rest) { - return _objectSpread({ - role: 'combobox', - 'aria-expanded': store.getState().isOpen, - 'aria-haspopup': 'listbox', - 'aria-controls': store.getState().isOpen ? store.getState().collections.map(function (_ref2) { - var source = _ref2.source; - return getAutocompleteElementId(props.id, 'list', source); - }).join(' ') : undefined, - 'aria-labelledby': getAutocompleteElementId(props.id, 'label') - }, rest); - }; - var getFormProps = function getFormProps(providedProps) { - var inputElement = providedProps.inputElement, - rest = _objectWithoutProperties(providedProps, _excluded3); - return _objectSpread({ - action: '', - noValidate: true, - role: 'search', - onSubmit: function onSubmit(event) { - var _providedProps$inputE; - event.preventDefault(); - props.onSubmit(_objectSpread({ - event: event, - refresh: refresh, - state: store.getState() - }, setters)); - store.dispatch('submit', null); - (_providedProps$inputE = providedProps.inputElement) === null || _providedProps$inputE === void 0 ? void 0 : _providedProps$inputE.blur(); - }, - onReset: function onReset(event) { - var _providedProps$inputE2; - event.preventDefault(); - props.onReset(_objectSpread({ - event: event, - refresh: refresh, - state: store.getState() - }, setters)); - store.dispatch('reset', null); - (_providedProps$inputE2 = providedProps.inputElement) === null || _providedProps$inputE2 === void 0 ? void 0 : _providedProps$inputE2.focus(); - } - }, rest); - }; - var getInputProps = function getInputProps(providedProps) { - var _props$environment$na; - function onFocus(event) { - // We want to trigger a query when `openOnFocus` is true - // because the panel should open with the current query. - if (props.openOnFocus || Boolean(store.getState().query)) { - onInput(_objectSpread({ - event: event, - props: props, - query: store.getState().completion || store.getState().query, - refresh: refresh, - store: store - }, setters)); - } - store.dispatch('focus', null); - } - var _ref3 = providedProps || {}, - inputElement = _ref3.inputElement, - _ref3$maxLength = _ref3.maxLength, - maxLength = _ref3$maxLength === void 0 ? 512 : _ref3$maxLength, - rest = _objectWithoutProperties(_ref3, _excluded4); - var activeItem = getActiveItem(store.getState()); - var userAgent = ((_props$environment$na = props.environment.navigator) === null || _props$environment$na === void 0 ? void 0 : _props$environment$na.userAgent) || ''; - var shouldFallbackKeyHint = isSamsung(userAgent); - var enterKeyHint = props.enterKeyHint || (activeItem !== null && activeItem !== void 0 && activeItem.itemUrl && !shouldFallbackKeyHint ? 'go' : 'search'); - return _objectSpread({ - 'aria-autocomplete': 'both', - 'aria-activedescendant': store.getState().isOpen && store.getState().activeItemId !== null ? getAutocompleteElementId(props.id, "item-".concat(store.getState().activeItemId), activeItem === null || activeItem === void 0 ? void 0 : activeItem.source) : undefined, - 'aria-controls': store.getState().isOpen ? store.getState().collections.map(function (_ref4) { - var source = _ref4.source; - return getAutocompleteElementId(props.id, 'list', source); - }).join(' ') : undefined, - 'aria-labelledby': getAutocompleteElementId(props.id, 'label'), - value: store.getState().completion || store.getState().query, - id: getAutocompleteElementId(props.id, 'input'), - autoComplete: 'off', - autoCorrect: 'off', - autoCapitalize: 'off', - enterKeyHint: enterKeyHint, - spellCheck: 'false', - autoFocus: props.autoFocus, - placeholder: props.placeholder, - maxLength: maxLength, - type: 'search', - onChange: function onChange(event) { - var value = event.currentTarget.value; - if (props.ignoreCompositionEvents && getNativeEvent(event).isComposing) { - setters.setQuery(value); - return; - } - onInput(_objectSpread({ - event: event, - props: props, - query: value.slice(0, maxLength), - refresh: refresh, - store: store - }, setters)); - }, - onCompositionEnd: function onCompositionEnd(event) { - onInput(_objectSpread({ - event: event, - props: props, - query: event.currentTarget.value.slice(0, maxLength), - refresh: refresh, - store: store - }, setters)); - }, - onKeyDown: function onKeyDown(event) { - if (getNativeEvent(event).isComposing) { - return; - } - _onKeyDown(_objectSpread({ - event: event, - props: props, - refresh: refresh, - store: store - }, setters)); - }, - onFocus: onFocus, - // We don't rely on the `blur` event. - // See explanation in `onTouchStart`/`onMouseDown`. - // @MAJOR See if we need to keep this handler. - onBlur: noop, - onClick: function onClick(event) { - // When the panel is closed and you click on the input while - // the input is focused, the `onFocus` event is not triggered - // (default browser behavior). - // In an autocomplete context, it makes sense to open the panel in this - // case. - // We mimic this event by catching the `onClick` event which - // triggers the `onFocus` for the panel to open. - if (providedProps.inputElement === props.environment.document.activeElement && !store.getState().isOpen) { - onFocus(event); - } - } - }, rest); - }; - var getLabelProps = function getLabelProps(rest) { - return _objectSpread({ - htmlFor: getAutocompleteElementId(props.id, 'input'), - id: getAutocompleteElementId(props.id, 'label') - }, rest); - }; - var getListProps = function getListProps(providedProps) { - var _ref5 = providedProps || {}, - source = _ref5.source, - rest = _objectWithoutProperties(_ref5, _excluded5); - return _objectSpread({ - role: 'listbox', - 'aria-labelledby': getAutocompleteElementId(props.id, 'label'), - id: getAutocompleteElementId(props.id, 'list', source) - }, rest); - }; - var getPanelProps = function getPanelProps(rest) { - return _objectSpread({ - onMouseDown: function onMouseDown(event) { - // Prevents the `activeElement` from being changed to the panel so - // that the blur event is not triggered, otherwise it closes the - // panel. - event.preventDefault(); - }, - onMouseLeave: function onMouseLeave() { - store.dispatch('mouseleave', null); - } - }, rest); - }; - var getItemProps = function getItemProps(providedProps) { - var item = providedProps.item, - source = providedProps.source, - rest = _objectWithoutProperties(providedProps, _excluded6); - return _objectSpread({ - id: getAutocompleteElementId(props.id, "item-".concat(item.__autocomplete_id), source), - role: 'option', - 'aria-selected': store.getState().activeItemId === item.__autocomplete_id, - onMouseMove: function onMouseMove(event) { - if (item.__autocomplete_id === store.getState().activeItemId) { - return; - } - store.dispatch('mousemove', item.__autocomplete_id); - var activeItem = getActiveItem(store.getState()); - if (store.getState().activeItemId !== null && activeItem) { - var _item = activeItem.item, - itemInputValue = activeItem.itemInputValue, - itemUrl = activeItem.itemUrl, - _source = activeItem.source; - _source.onActive(_objectSpread({ - event: event, - item: _item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: _source, - state: store.getState() - }, setters)); - } - }, - onMouseDown: function onMouseDown(event) { - // Prevents the `activeElement` from being changed to the item so it - // can remain with the current `activeElement`. - event.preventDefault(); - }, - onClick: function onClick(event) { - var itemInputValue = source.getItemInputValue({ - item: item, - state: store.getState() - }); - var itemUrl = source.getItemUrl({ - item: item, - state: store.getState() - }); - - // If `getItemUrl` is provided, it means that the suggestion - // is a link, not plain text that aims at updating the query. - // We can therefore skip the state change because it will update - // the `activeItemId`, resulting in a UI flash, especially - // noticeable on mobile. - var runPreCommand = itemUrl ? Promise.resolve() : onInput(_objectSpread({ - event: event, - nextState: { - isOpen: false - }, - props: props, - query: itemInputValue, - refresh: refresh, - store: store - }, setters)); - runPreCommand.then(function () { - source.onSelect(_objectSpread({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - }); - } - }, rest); - }; - return { - getEnvironmentProps: getEnvironmentProps, - getRootProps: getRootProps, - getFormProps: getFormProps, - getLabelProps: getLabelProps, - getInputProps: getInputProps, - getPanelProps: getPanelProps, - getListProps: getListProps, - getItemProps: getItemProps - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/index.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/index.d.ts deleted file mode 100644 index ce100ed..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './createAutocomplete'; -export * from './getDefaultProps'; -export * from './types'; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/index.js b/node_modules/@algolia/autocomplete-core/dist/esm/index.js deleted file mode 100644 index 012b303..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/index.js +++ /dev/null @@ -1,3 +0,0 @@ -export * from './createAutocomplete'; -export * from './getDefaultProps'; -export * from './types'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/metadata.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/metadata.d.ts deleted file mode 100644 index efa9c1c..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/metadata.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { UserAgent } from '@algolia/autocomplete-shared'; -import { AutocompleteEnvironment, AutocompleteOptionsWithMetadata, AutocompletePlugin, BaseItem } from '.'; -declare type AutocompleteMetadata = { - plugins: Array<{ - name: string | undefined; - options: string[]; - }>; - options: Record; - ua: UserAgent[]; -}; -declare type GetMetadataParams = { - plugins: Array>; - options: AutocompleteOptionsWithMetadata; -}; -export declare function getMetadata({ plugins, options, }: GetMetadataParams): { - plugins: { - name: string | undefined; - options: string[]; - }[]; - options: { - 'autocomplete-core': string[]; - }; - ua: { - segment: string; - version: string; - }[]; -}; -declare type InlineMetadataParams = { - metadata: AutocompleteMetadata; - environment: AutocompleteEnvironment; -}; -export declare function injectMetadata({ metadata, environment, }: InlineMetadataParams): void; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/metadata.js b/node_modules/@algolia/autocomplete-core/dist/esm/metadata.js deleted file mode 100644 index 308c363..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/metadata.js +++ /dev/null @@ -1,41 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { userAgents } from '@algolia/autocomplete-shared'; -export function getMetadata(_ref) { - var _, _options$__autocomple, _options$__autocomple2, _options$__autocomple3; - var plugins = _ref.plugins, - options = _ref.options; - var optionsKey = (_ = (((_options$__autocomple = options.__autocomplete_metadata) === null || _options$__autocomple === void 0 ? void 0 : _options$__autocomple.userAgents) || [])[0]) === null || _ === void 0 ? void 0 : _.segment; - var extraOptions = optionsKey ? _defineProperty({}, optionsKey, Object.keys(((_options$__autocomple2 = options.__autocomplete_metadata) === null || _options$__autocomple2 === void 0 ? void 0 : _options$__autocomple2.options) || {})) : {}; - return { - plugins: plugins.map(function (plugin) { - return { - name: plugin.name, - options: Object.keys(plugin.__autocomplete_pluginOptions || []) - }; - }), - options: _objectSpread({ - 'autocomplete-core': Object.keys(options) - }, extraOptions), - ua: userAgents.concat(((_options$__autocomple3 = options.__autocomplete_metadata) === null || _options$__autocomple3 === void 0 ? void 0 : _options$__autocomple3.userAgents) || []) - }; -} -export function injectMetadata(_ref3) { - var _environment$navigato, _environment$navigato2; - var metadata = _ref3.metadata, - environment = _ref3.environment; - var isMetadataEnabled = (_environment$navigato = environment.navigator) === null || _environment$navigato === void 0 ? void 0 : (_environment$navigato2 = _environment$navigato.userAgent) === null || _environment$navigato2 === void 0 ? void 0 : _environment$navigato2.includes('Algolia Crawler'); - if (isMetadataEnabled) { - var metadataContainer = environment.document.createElement('meta'); - var headRef = environment.document.querySelector('head'); - metadataContainer.name = 'algolia:metadata'; - setTimeout(function () { - metadataContainer.content = JSON.stringify(metadata); - headRef.appendChild(metadataContainer); - }, 0); - } -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/onInput.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/onInput.d.ts deleted file mode 100644 index 88b699a..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/onInput.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { AutocompleteScopeApi, AutocompleteState, AutocompleteStore, BaseItem, InternalAutocompleteOptions } from './types'; -import { CancelablePromise } from './utils'; -interface OnInputParams extends AutocompleteScopeApi { - event: any; - /** - * The next partial state to apply after the function is called. - * - * This is useful when we call `onInput` in a different scenario than an - * actual input. For example, we use `onInput` when we click on an item, - * but we want to close the panel in that case. - */ - nextState?: Partial>; - props: InternalAutocompleteOptions; - query: string; - store: AutocompleteStore; -} -export declare function onInput({ event, nextState, props, query, refresh, store, ...setters }: OnInputParams): CancelablePromise; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/onInput.js b/node_modules/@algolia/autocomplete-core/dist/esm/onInput.js deleted file mode 100644 index 78173bc..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/onInput.js +++ /dev/null @@ -1,143 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -var _excluded = ["event", "nextState", "props", "query", "refresh", "store"]; -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } -import { reshape } from './reshape'; -import { preResolve, resolve, postResolve } from './resolve'; -import { cancelable, createConcurrentSafePromise, getActiveItem } from './utils'; -var lastStalledId = null; -var runConcurrentSafePromise = createConcurrentSafePromise(); -export function onInput(_ref) { - var event = _ref.event, - _ref$nextState = _ref.nextState, - nextState = _ref$nextState === void 0 ? {} : _ref$nextState, - props = _ref.props, - query = _ref.query, - refresh = _ref.refresh, - store = _ref.store, - setters = _objectWithoutProperties(_ref, _excluded); - if (lastStalledId) { - props.environment.clearTimeout(lastStalledId); - } - var setCollections = setters.setCollections, - setIsOpen = setters.setIsOpen, - setQuery = setters.setQuery, - setActiveItemId = setters.setActiveItemId, - setStatus = setters.setStatus, - setContext = setters.setContext; - setQuery(query); - setActiveItemId(props.defaultActiveItemId); - if (!query && props.openOnFocus === false) { - var _nextState$isOpen; - var collections = store.getState().collections.map(function (collection) { - return _objectSpread(_objectSpread({}, collection), {}, { - items: [] - }); - }); - setStatus('idle'); - setCollections(collections); - setIsOpen((_nextState$isOpen = nextState.isOpen) !== null && _nextState$isOpen !== void 0 ? _nextState$isOpen : props.shouldPanelOpen({ - state: store.getState() - })); - - // We make sure to update the latest resolved value of the tracked - // promises to keep late resolving promises from "cancelling" the state - // updates performed in this code path. - // We chain with a void promise to respect `onInput`'s expected return type. - var _request = cancelable(runConcurrentSafePromise(collections).then(function () { - return Promise.resolve(); - })); - return store.pendingRequests.add(_request); - } - setStatus('loading'); - lastStalledId = props.environment.setTimeout(function () { - setStatus('stalled'); - }, props.stallThreshold); - - // We track the entire promise chain triggered by `onInput` before mutating - // the Autocomplete state to make sure that any state manipulation is based on - // fresh data regardless of when promises individually resolve. - // We don't track nested promises and only rely on the full chain resolution, - // meaning we should only ever manipulate the state once this concurrent-safe - // promise is resolved. - var request = cancelable(runConcurrentSafePromise(props.getSources(_objectSpread({ - query: query, - refresh: refresh, - state: store.getState() - }, setters)).then(function (sources) { - return Promise.all(sources.map(function (source) { - return Promise.resolve(source.getItems(_objectSpread({ - query: query, - refresh: refresh, - state: store.getState() - }, setters))).then(function (itemsOrDescription) { - return preResolve(itemsOrDescription, source.sourceId, store.getState()); - }); - })).then(resolve).then(function (responses) { - var __automaticInsights = responses.some(function (_ref2) { - var items = _ref2.items; - return isSearchResponseWithAutomaticInsightsFlag(items); - }); - - // No need to pollute the context if `__automaticInsights=false` - if (__automaticInsights) { - var _store$getState$conte; - setContext({ - algoliaInsightsPlugin: _objectSpread(_objectSpread({}, ((_store$getState$conte = store.getState().context) === null || _store$getState$conte === void 0 ? void 0 : _store$getState$conte.algoliaInsightsPlugin) || {}), {}, { - __automaticInsights: __automaticInsights - }) - }); - } - return postResolve(responses, sources, store); - }).then(function (collections) { - return reshape({ - collections: collections, - props: props, - state: store.getState() - }); - }); - }))).then(function (collections) { - var _nextState$isOpen2; - // Parameters passed to `onInput` could be stale when the following code - // executes, because `onInput` calls may not resolve in order. - // If it becomes a problem we'll need to save the last passed parameters. - // See: https://codesandbox.io/s/agitated-cookies-y290z - - setStatus('idle'); - setCollections(collections); - var isPanelOpen = props.shouldPanelOpen({ - state: store.getState() - }); - setIsOpen((_nextState$isOpen2 = nextState.isOpen) !== null && _nextState$isOpen2 !== void 0 ? _nextState$isOpen2 : props.openOnFocus && !query && isPanelOpen || isPanelOpen); - var highlightedItem = getActiveItem(store.getState()); - if (store.getState().activeItemId !== null && highlightedItem) { - var item = highlightedItem.item, - itemInputValue = highlightedItem.itemInputValue, - itemUrl = highlightedItem.itemUrl, - source = highlightedItem.source; - source.onActive(_objectSpread({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - } - }).finally(function () { - setStatus('idle'); - if (lastStalledId) { - props.environment.clearTimeout(lastStalledId); - } - }); - return store.pendingRequests.add(request); -} -function isSearchResponseWithAutomaticInsightsFlag(items) { - return !Array.isArray(items) && Boolean(items === null || items === void 0 ? void 0 : items._automaticInsights); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.d.ts deleted file mode 100644 index 51a1dce..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { AutocompleteScopeApi, AutocompleteStore, BaseItem, InternalAutocompleteOptions } from './types'; -interface OnKeyDownOptions extends AutocompleteScopeApi { - event: KeyboardEvent; - props: InternalAutocompleteOptions; - store: AutocompleteStore; -} -export declare function onKeyDown({ event, props, refresh, store, ...setters }: OnKeyDownOptions): void; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.js b/node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.js deleted file mode 100644 index 09005c9..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.js +++ /dev/null @@ -1,196 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -var _excluded = ["event", "props", "refresh", "store"]; -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } -import { onInput } from './onInput'; -import { getActiveItem, getAutocompleteElementId } from './utils'; -export function onKeyDown(_ref) { - var event = _ref.event, - props = _ref.props, - refresh = _ref.refresh, - store = _ref.store, - setters = _objectWithoutProperties(_ref, _excluded); - if (event.key === 'ArrowUp' || event.key === 'ArrowDown') { - // eslint-disable-next-line no-inner-declarations - var triggerScrollIntoView = function triggerScrollIntoView() { - var highlightedItem = getActiveItem(store.getState()); - var nodeItem = props.environment.document.getElementById(getAutocompleteElementId(props.id, "item-".concat(store.getState().activeItemId), highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.source)); - if (nodeItem) { - if (nodeItem.scrollIntoViewIfNeeded) { - nodeItem.scrollIntoViewIfNeeded(false); - } else { - nodeItem.scrollIntoView(false); - } - } - }; // eslint-disable-next-line no-inner-declarations - var triggerOnActive = function triggerOnActive() { - var highlightedItem = getActiveItem(store.getState()); - if (store.getState().activeItemId !== null && highlightedItem) { - var item = highlightedItem.item, - itemInputValue = highlightedItem.itemInputValue, - itemUrl = highlightedItem.itemUrl, - source = highlightedItem.source; - source.onActive(_objectSpread({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - } - }; // Default browser behavior changes the caret placement on ArrowUp and - // ArrowDown. - event.preventDefault(); - - // When re-opening the panel, we need to split the logic to keep the actions - // synchronized as `onInput` returns a promise. - if (store.getState().isOpen === false && (props.openOnFocus || Boolean(store.getState().query))) { - onInput(_objectSpread({ - event: event, - props: props, - query: store.getState().query, - refresh: refresh, - store: store - }, setters)).then(function () { - store.dispatch(event.key, { - nextActiveItemId: props.defaultActiveItemId - }); - triggerOnActive(); - // Since we rely on the DOM, we need to wait for all the micro tasks to - // finish (which include re-opening the panel) to make sure all the - // elements are available. - setTimeout(triggerScrollIntoView, 0); - }); - } else { - store.dispatch(event.key, {}); - triggerOnActive(); - triggerScrollIntoView(); - } - } else if (event.key === 'Escape') { - // This prevents the default browser behavior on `input[type="search"]` - // from removing the query right away because we first want to close the - // panel. - event.preventDefault(); - store.dispatch(event.key, null); - - // Hitting the `Escape` key signals the end of a user interaction with the - // autocomplete. At this point, we should ignore any requests that are still - // pending and could reopen the panel once they resolve, because that would - // result in an unsolicited UI behavior. - store.pendingRequests.cancelAll(); - } else if (event.key === 'Tab') { - store.dispatch('blur', null); - - // Hitting the `Tab` key signals the end of a user interaction with the - // autocomplete. At this point, we should ignore any requests that are still - // pending and could reopen the panel once they resolve, because that would - // result in an unsolicited UI behavior. - store.pendingRequests.cancelAll(); - } else if (event.key === 'Enter') { - // No active item, so we let the browser handle the native `onSubmit` form - // event. - if (store.getState().activeItemId === null || store.getState().collections.every(function (collection) { - return collection.items.length === 0; - })) { - // If requests are still pending when the panel closes, they could reopen - // the panel once they resolve. - // We want to prevent any subsequent query from reopening the panel - // because it would result in an unsolicited UI behavior. - if (!props.debug) { - store.pendingRequests.cancelAll(); - } - return; - } - - // This prevents the `onSubmit` event to be sent because an item is - // highlighted. - event.preventDefault(); - var _ref2 = getActiveItem(store.getState()), - item = _ref2.item, - itemInputValue = _ref2.itemInputValue, - itemUrl = _ref2.itemUrl, - source = _ref2.source; - if (event.metaKey || event.ctrlKey) { - if (itemUrl !== undefined) { - source.onSelect(_objectSpread({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - props.navigator.navigateNewTab({ - itemUrl: itemUrl, - item: item, - state: store.getState() - }); - } - } else if (event.shiftKey) { - if (itemUrl !== undefined) { - source.onSelect(_objectSpread({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - props.navigator.navigateNewWindow({ - itemUrl: itemUrl, - item: item, - state: store.getState() - }); - } - } else if (event.altKey) { - // Keep native browser behavior - } else { - if (itemUrl !== undefined) { - source.onSelect(_objectSpread({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - props.navigator.navigate({ - itemUrl: itemUrl, - item: item, - state: store.getState() - }); - return; - } - onInput(_objectSpread({ - event: event, - nextState: { - isOpen: false - }, - props: props, - query: itemInputValue, - refresh: refresh, - store: store - }, setters)).then(function () { - source.onSelect(_objectSpread({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - }); - } - } -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/reshape.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/reshape.d.ts deleted file mode 100644 index 2989b76..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/reshape.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { AutocompleteCollection, AutocompleteState, BaseItem, InternalAutocompleteOptions } from './types'; -declare type ReshapeParams = { - collections: Array>; - props: InternalAutocompleteOptions; - state: AutocompleteState; -}; -export declare function reshape({ collections, props, state, }: ReshapeParams): { - source: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape").AutocompleteReshapeSource; - items: TItem[]; -}[]; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/reshape.js b/node_modules/@algolia/autocomplete-core/dist/esm/reshape.js deleted file mode 100644 index df275c1..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/reshape.js +++ /dev/null @@ -1,45 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { flatten } from '@algolia/autocomplete-shared'; -export function reshape(_ref) { - var collections = _ref.collections, - props = _ref.props, - state = _ref.state; - // Sources are grouped by `sourceId` to conveniently pick them via destructuring. - // Example: `const { recentSearchesPlugin } = sourcesBySourceId` - var originalSourcesBySourceId = collections.reduce(function (acc, collection) { - return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, collection.source.sourceId, _objectSpread(_objectSpread({}, collection.source), {}, { - getItems: function getItems() { - // We provide the resolved items from the collection to the `reshape` prop. - return flatten(collection.items); - } - }))); - }, {}); - var _props$plugins$reduce = props.plugins.reduce(function (acc, plugin) { - if (plugin.reshape) { - return plugin.reshape(acc); - } - return acc; - }, { - sourcesBySourceId: originalSourcesBySourceId, - state: state - }), - sourcesBySourceId = _props$plugins$reduce.sourcesBySourceId; - var reshapeSources = props.reshape({ - sourcesBySourceId: sourcesBySourceId, - sources: Object.values(sourcesBySourceId), - state: state - }); - - // We reconstruct the collections with the items modified by the `reshape` prop. - return flatten(reshapeSources).filter(Boolean).map(function (source) { - return { - source: source, - items: source.getItems() - }; - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/resolve.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/resolve.d.ts deleted file mode 100644 index 9a04731..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/resolve.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import type { ExecuteResponse, RequesterDescription, TransformResponse } from '@algolia/autocomplete-preset-algolia'; -import type { SearchResponse } from '@algolia/autocomplete-shared'; -import { MultipleQueriesQuery, SearchForFacetValuesResponse } from '@algolia/client-search'; -import { AutocompleteState, AutocompleteStore, BaseItem, InternalAutocompleteSource } from './types'; -declare type RequestDescriptionPreResolved = Pick, 'execute' | 'requesterId' | 'searchClient' | 'transformResponse'> & { - requests: Array<{ - query: MultipleQueriesQuery; - sourceId: string; - transformResponse: TransformResponse; - }>; -}; -declare type RequestDescriptionPreResolvedCustom = { - items: TItem[] | TItem[][]; - sourceId: string; - transformResponse?: undefined; -}; -export declare function preResolve(itemsOrDescription: TItem[] | TItem[][] | RequesterDescription, sourceId: string, state: AutocompleteState): RequestDescriptionPreResolved | RequestDescriptionPreResolvedCustom; -export declare function resolve(items: Array | RequestDescriptionPreResolvedCustom>): Promise<(RequestDescriptionPreResolvedCustom | { - items: SearchForFacetValuesResponse | SearchResponse; - sourceId: string; - transformResponse: TransformResponse; -})[]>; -export declare function postResolve(responses: Array | ExecuteResponse[0]>, sources: Array>, store: AutocompleteStore): { - source: InternalAutocompleteSource; - items: { - label: string; - count: number; - _highlightResult: { - label: { - value: string; - }; - }; - }[][] | { - label: string; - count: number; - _highlightResult: { - label: { - value: string; - }; - }; - }[] | import("@algolia/client-search").Hit[] | (SearchForFacetValuesResponse | SearchResponse | TItem[] | TItem[][])[]; -}[]; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/resolve.js b/node_modules/@algolia/autocomplete-core/dist/esm/resolve.js deleted file mode 100644 index d40ea7e..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/resolve.js +++ /dev/null @@ -1,114 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -import { decycle, flatten, invariant } from '@algolia/autocomplete-shared'; -import { mapToAlgoliaResponse } from './utils'; -function isDescription(item) { - return Boolean(item.execute); -} -function isRequesterDescription(description) { - return Boolean(description === null || description === void 0 ? void 0 : description.execute); -} -export function preResolve(itemsOrDescription, sourceId, state) { - if (isRequesterDescription(itemsOrDescription)) { - var contextParameters = itemsOrDescription.requesterId === 'algolia' ? Object.assign.apply(Object, [{}].concat(_toConsumableArray(Object.keys(state.context).map(function (key) { - var _state$context$key; - return (_state$context$key = state.context[key]) === null || _state$context$key === void 0 ? void 0 : _state$context$key.__algoliaSearchParameters; - })))) : {}; - return _objectSpread(_objectSpread({}, itemsOrDescription), {}, { - requests: itemsOrDescription.queries.map(function (query) { - return { - query: itemsOrDescription.requesterId === 'algolia' ? _objectSpread(_objectSpread({}, query), {}, { - params: _objectSpread(_objectSpread({}, contextParameters), query.params) - }) : query, - sourceId: sourceId, - transformResponse: itemsOrDescription.transformResponse - }; - }) - }); - } - return { - items: itemsOrDescription, - sourceId: sourceId - }; -} -export function resolve(items) { - var packed = items.reduce(function (acc, current) { - if (!isDescription(current)) { - acc.push(current); - return acc; - } - var searchClient = current.searchClient, - execute = current.execute, - requesterId = current.requesterId, - requests = current.requests; - var container = acc.find(function (item) { - return isDescription(current) && isDescription(item) && item.searchClient === searchClient && Boolean(requesterId) && item.requesterId === requesterId; - }); - if (container) { - var _container$items; - (_container$items = container.items).push.apply(_container$items, _toConsumableArray(requests)); - } else { - var request = { - execute: execute, - requesterId: requesterId, - items: requests, - searchClient: searchClient - }; - acc.push(request); - } - return acc; - }, []); - var values = packed.map(function (maybeDescription) { - if (!isDescription(maybeDescription)) { - return Promise.resolve(maybeDescription); - } - var _ref = maybeDescription, - execute = _ref.execute, - items = _ref.items, - searchClient = _ref.searchClient; - return execute({ - searchClient: searchClient, - requests: items - }); - }); - return Promise.all(values).then(function (responses) { - return flatten(responses); - }); -} -export function postResolve(responses, sources, store) { - return sources.map(function (source) { - var matches = responses.filter(function (response) { - return response.sourceId === source.sourceId; - }); - var results = matches.map(function (_ref2) { - var items = _ref2.items; - return items; - }); - var transform = matches[0].transformResponse; - var items = transform ? transform(mapToAlgoliaResponse(results)) : results; - source.onResolve({ - source: source, - results: results, - items: items, - state: store.getState() - }); - invariant(Array.isArray(items), function () { - return "The `getItems` function from source \"".concat(source.sourceId, "\" must return an array of items but returned type ").concat(JSON.stringify(_typeof(items)), ":\n\n").concat(JSON.stringify(decycle(items), null, 2), ".\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"); - }); - invariant(items.every(Boolean), "The `getItems` function from source \"".concat(source.sourceId, "\" must return an array of items but returned ").concat(JSON.stringify(undefined), ".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems")); - return { - source: source, - items: items - }; - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.d.ts deleted file mode 100644 index 48e479b..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { Reducer } from './types'; -export declare const stateReducer: Reducer; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.js b/node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.js deleted file mode 100644 index 859c029..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.js +++ /dev/null @@ -1,145 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { getItemsCount, invariant } from '@algolia/autocomplete-shared'; -import { getCompletion } from './getCompletion'; -import { getNextActiveItemId } from './utils'; -export var stateReducer = function stateReducer(state, action) { - switch (action.type) { - case 'setActiveItemId': - { - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: action.payload - }); - } - case 'setQuery': - { - return _objectSpread(_objectSpread({}, state), {}, { - query: action.payload, - completion: null - }); - } - case 'setCollections': - { - return _objectSpread(_objectSpread({}, state), {}, { - collections: action.payload - }); - } - case 'setIsOpen': - { - return _objectSpread(_objectSpread({}, state), {}, { - isOpen: action.payload - }); - } - case 'setStatus': - { - return _objectSpread(_objectSpread({}, state), {}, { - status: action.payload - }); - } - case 'setContext': - { - return _objectSpread(_objectSpread({}, state), {}, { - context: _objectSpread(_objectSpread({}, state.context), action.payload) - }); - } - case 'ArrowDown': - { - var nextState = _objectSpread(_objectSpread({}, state), {}, { - activeItemId: action.payload.hasOwnProperty('nextActiveItemId') ? action.payload.nextActiveItemId : getNextActiveItemId(1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId) - }); - return _objectSpread(_objectSpread({}, nextState), {}, { - completion: getCompletion({ - state: nextState - }) - }); - } - case 'ArrowUp': - { - var _nextState = _objectSpread(_objectSpread({}, state), {}, { - activeItemId: getNextActiveItemId(-1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId) - }); - return _objectSpread(_objectSpread({}, _nextState), {}, { - completion: getCompletion({ - state: _nextState - }) - }); - } - case 'Escape': - { - if (state.isOpen) { - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: null, - isOpen: false, - completion: null - }); - } - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: null, - query: '', - status: 'idle', - collections: [] - }); - } - case 'submit': - { - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: null, - isOpen: false, - status: 'idle' - }); - } - case 'reset': - { - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: - // Since we open the panel on reset when openOnFocus=true - // we need to restore the highlighted index to the defaultActiveItemId. (DocSearch use-case) - - // Since we close the panel when openOnFocus=false - // we lose track of the highlighted index. (Query-suggestions use-case) - action.props.openOnFocus === true ? action.props.defaultActiveItemId : null, - status: 'idle', - completion: null, - query: '' - }); - } - case 'focus': - { - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: action.props.defaultActiveItemId, - isOpen: (action.props.openOnFocus || Boolean(state.query)) && action.props.shouldPanelOpen({ - state: state - }) - }); - } - case 'blur': - { - if (action.props.debug) { - return state; - } - return _objectSpread(_objectSpread({}, state), {}, { - isOpen: false, - activeItemId: null - }); - } - case 'mousemove': - { - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: action.payload - }); - } - case 'mouseleave': - { - return _objectSpread(_objectSpread({}, state), {}, { - activeItemId: action.props.defaultActiveItemId - }); - } - default: - invariant(false, "The reducer action ".concat(JSON.stringify(action.type), " is not supported.")); - return state; - } -}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.d.ts deleted file mode 100644 index bffe9fe..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { CancelablePromiseList } from '../utils'; -import { BaseItem, InternalAutocompleteOptions, AutocompleteState } from './'; -export interface AutocompleteStore { - getState(): AutocompleteState; - dispatch(action: ActionType, payload: any): void; - pendingRequests: CancelablePromiseList; -} -export declare type Reducer = (state: AutocompleteState, action: Action) => AutocompleteState; -declare type Action = { - type: ActionType; - props: InternalAutocompleteOptions; - payload: TPayload; -}; -export declare type ActionType = 'setActiveItemId' | 'setQuery' | 'setCollections' | 'setIsOpen' | 'setStatus' | 'setContext' | 'ArrowUp' | 'ArrowDown' | 'Escape' | 'Enter' | 'submit' | 'reset' | 'focus' | 'blur' | 'mousemove' | 'mouseleave' | 'click'; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.js b/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteStore.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.d.ts deleted file mode 100644 index b6a5fed..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { BaseItem, OnActiveParams, OnResolveParams, OnSelectParams } from './'; -export declare type AutocompleteSubscriber = { - onSelect(params: OnSelectParams): void; - onActive(params: OnActiveParams): void; - onResolve(params: OnResolveParams): void; -}; -export declare type AutocompleteSubscribers = Array>>; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.js b/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/types/AutocompleteSubscribers.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/types/index.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/types/index.d.ts deleted file mode 100644 index 1eadcb5..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/types/index.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -export * from '@algolia/autocomplete-shared/dist/esm/core'; -export * from './AutocompleteStore'; -export * from './AutocompleteSubscribers'; -import { CreateAlgoliaInsightsPluginParams, AutocompleteInsightsApi as _AutocompleteInsightsApi, AlgoliaInsightsHit as _AlgoliaInsightsHit } from '@algolia/autocomplete-plugin-algolia-insights'; -import { AutocompleteOptions as _AutocompleteOptions, InternalAutocompleteOptions as _InternalAutocompleteOptions, BaseItem } from '@algolia/autocomplete-shared/dist/esm/core'; -export declare type AutocompleteInsightsApi = _AutocompleteInsightsApi; -export declare type AlgoliaInsightsHit = _AlgoliaInsightsHit; -declare type InsightsOption = { - /** - * Whether to enable the Insights plugin and load the Insights library if it has not been loaded yet. - * - * See [**autocomplete-plugin-algolia-insights**](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/) for more information. - * - * @default undefined - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-insights - */ - insights?: CreateAlgoliaInsightsPluginParams | boolean | undefined; -}; -export interface AutocompleteOptions extends _AutocompleteOptions, InsightsOption { -} -export interface InternalAutocompleteOptions extends _InternalAutocompleteOptions, InsightsOption { -} diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/types/index.js b/node_modules/@algolia/autocomplete-core/dist/esm/types/index.js deleted file mode 100644 index 8feca05..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/types/index.js +++ /dev/null @@ -1,4 +0,0 @@ -export * from '@algolia/autocomplete-shared/dist/esm/core'; -export * from './AutocompleteStore'; -export * from './AutocompleteSubscribers'; -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.d.ts deleted file mode 100644 index c3d9bf3..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -declare type PromiseExecutor = (resolve: (value: TValue | PromiseLike) => void, reject: (reason?: any) => void) => void; -export declare type CancelablePromise = { - then(onfulfilled?: ((value: TValue) => TResultFulfilled | PromiseLike | CancelablePromise) | undefined | null, onrejected?: ((reason: any) => TResultRejected | PromiseLike | CancelablePromise) | undefined | null): CancelablePromise; - catch(onrejected?: ((reason: any) => TResult | PromiseLike | CancelablePromise) | undefined | null): CancelablePromise; - finally(onfinally?: (() => void) | undefined | null): CancelablePromise; - cancel(): void; - isCanceled(): boolean; -}; -export declare function createCancelablePromise(executor: PromiseExecutor): CancelablePromise; -export declare namespace createCancelablePromise { - var resolve: (value?: TValue | PromiseLike | CancelablePromise | undefined) => CancelablePromise | undefined>; - var reject: (reason?: any) => CancelablePromise; -} -export declare function cancelable(promise: Promise): CancelablePromise; -export {}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.js deleted file mode 100644 index 6db5f90..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.js +++ /dev/null @@ -1,62 +0,0 @@ -function createInternalCancelablePromise(promise, initialState) { - var state = initialState; - return { - then: function then(onfulfilled, onrejected) { - return createInternalCancelablePromise(promise.then(createCallback(onfulfilled, state, promise), createCallback(onrejected, state, promise)), state); - }, - catch: function _catch(onrejected) { - return createInternalCancelablePromise(promise.catch(createCallback(onrejected, state, promise)), state); - }, - finally: function _finally(onfinally) { - if (onfinally) { - state.onCancelList.push(onfinally); - } - return createInternalCancelablePromise(promise.finally(createCallback(onfinally && function () { - state.onCancelList = []; - return onfinally(); - }, state, promise)), state); - }, - cancel: function cancel() { - state.isCanceled = true; - var callbacks = state.onCancelList; - state.onCancelList = []; - callbacks.forEach(function (callback) { - callback(); - }); - }, - isCanceled: function isCanceled() { - return state.isCanceled === true; - } - }; -} -export function createCancelablePromise(executor) { - return createInternalCancelablePromise(new Promise(function (resolve, reject) { - return executor(resolve, reject); - }), { - isCanceled: false, - onCancelList: [] - }); -} -createCancelablePromise.resolve = function (value) { - return cancelable(Promise.resolve(value)); -}; -createCancelablePromise.reject = function (reason) { - return cancelable(Promise.reject(reason)); -}; -export function cancelable(promise) { - return createInternalCancelablePromise(promise, { - isCanceled: false, - onCancelList: [] - }); -} -function createCallback(onResult, state, fallback) { - if (!onResult) { - return fallback; - } - return function callback(arg) { - if (state.isCanceled) { - return arg; - } - return onResult(arg); - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.d.ts deleted file mode 100644 index 69de0b0..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { CancelablePromise } from '.'; -export declare type CancelablePromiseList = { - /** - * Add a cancelable promise to the list. - * - * @param cancelablePromise The cancelable promise to add. - */ - add(cancelablePromise: CancelablePromise): CancelablePromise; - /** - * Cancel all pending promises. - * - * Requests aren't actually stopped. All pending promises will settle, but - * attached handlers won't run. - */ - cancelAll(): void; - /** - * Whether there are pending promises in the list. - */ - isEmpty(): boolean; -}; -export declare function createCancelablePromiseList(): CancelablePromiseList; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.js deleted file mode 100644 index 13b5785..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.js +++ /dev/null @@ -1,21 +0,0 @@ -export function createCancelablePromiseList() { - var list = []; - return { - add: function add(cancelablePromise) { - list.push(cancelablePromise); - return cancelablePromise.finally(function () { - list = list.filter(function (item) { - return item !== cancelablePromise; - }); - }); - }, - cancelAll: function cancelAll() { - list.forEach(function (promise) { - return promise.cancel(); - }); - }, - isEmpty: function isEmpty() { - return list.length === 0; - } - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.d.ts deleted file mode 100644 index 7a4ab5a..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { MaybePromise } from '@algolia/autocomplete-shared'; -/** - * Creates a runner that executes promises in a concurrent-safe way. - * - * This is useful to prevent older promises to resolve after a newer promise, - * otherwise resulting in stale resolved values. - */ -export declare function createConcurrentSafePromise(): (promise: MaybePromise) => Promise; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.js deleted file mode 100644 index 75cb0c8..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.js +++ /dev/null @@ -1,36 +0,0 @@ -/** - * Creates a runner that executes promises in a concurrent-safe way. - * - * This is useful to prevent older promises to resolve after a newer promise, - * otherwise resulting in stale resolved values. - */ -export function createConcurrentSafePromise() { - var basePromiseId = -1; - var latestResolvedId = -1; - var latestResolvedValue = undefined; - return function runConcurrentSafePromise(promise) { - basePromiseId++; - var currentPromiseId = basePromiseId; - return Promise.resolve(promise).then(function (x) { - // The promise might take too long to resolve and get outdated. This would - // result in resolving stale values. - // When this happens, we ignore the promise value and return the one - // coming from the latest resolved value. - // - // +----------------------------------+ - // | 100ms | - // | run(1) +---> R1 | - // | 300ms | - // | run(2) +-------------> R2 (SKIP) | - // | 200ms | - // | run(3) +--------> R3 | - // +----------------------------------+ - if (latestResolvedValue && currentPromiseId < latestResolvedId) { - return latestResolvedValue; - } - latestResolvedId = currentPromiseId; - latestResolvedValue = x; - return x; - }); - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.d.ts deleted file mode 100644 index d2e3f30..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { AutocompleteState, BaseItem } from '../types'; -export declare function getActiveItem(state: AutocompleteState): { - item: TItem; - itemInputValue: string; - itemUrl: string | undefined; - source: import("@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource").InternalAutocompleteSource; -} | null; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.js deleted file mode 100644 index 8456915..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.js +++ /dev/null @@ -1,77 +0,0 @@ -// We don't have access to the autocomplete source when we call `onKeyDown` -// or `onClick` because those are native browser events. -// However, we can get the source from the suggestion index. -function getCollectionFromActiveItemId(state) { - // Given 3 sources with respectively 1, 2 and 3 suggestions: [1, 2, 3] - // We want to get the accumulated counts: - // [1, 1 + 2, 1 + 2 + 3] = [1, 3, 3 + 3] = [1, 3, 6] - var accumulatedCollectionsCount = state.collections.map(function (collections) { - return collections.items.length; - }).reduce(function (acc, collectionsCount, index) { - var previousValue = acc[index - 1] || 0; - var nextValue = previousValue + collectionsCount; - acc.push(nextValue); - return acc; - }, []); - - // Based on the accumulated counts, we can infer the index of the suggestion. - var collectionIndex = accumulatedCollectionsCount.reduce(function (acc, current) { - if (current <= state.activeItemId) { - return acc + 1; - } - return acc; - }, 0); - return state.collections[collectionIndex]; -} - -/** - * Gets the highlighted index relative to a suggestion object (not the absolute - * highlighted index). - * - * Example: - * [['a', 'b'], ['c', 'd', 'e'], ['f']] - * ↑ - * (absolute: 3, relative: 1) - */ -function getRelativeActiveItemId(_ref) { - var state = _ref.state, - collection = _ref.collection; - var isOffsetFound = false; - var counter = 0; - var previousItemsOffset = 0; - while (isOffsetFound === false) { - var currentCollection = state.collections[counter]; - if (currentCollection === collection) { - isOffsetFound = true; - break; - } - previousItemsOffset += currentCollection.items.length; - counter++; - } - return state.activeItemId - previousItemsOffset; -} -export function getActiveItem(state) { - var collection = getCollectionFromActiveItemId(state); - if (!collection) { - return null; - } - var item = collection.items[getRelativeActiveItemId({ - state: state, - collection: collection - })]; - var source = collection.source; - var itemInputValue = source.getItemInputValue({ - item: item, - state: state - }); - var itemUrl = source.getItemUrl({ - item: item, - state: state - }); - return { - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - source: source - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.d.ts deleted file mode 100644 index 6ed80b3..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Returns the next active item ID from the current state. - * - * We allow circular keyboard navigation from the base index. - * The base index can either be `null` (nothing is highlighted) or `0` - * (the first item is highlighted). - * The base index is allowed to get assigned `null` only if - * `props.defaultActiveItemId` is `null`. This pattern allows to "stop" - * by the actual query before navigating to other suggestions as seen on - * Google or Amazon. - * - * @param moveAmount The offset to increment (or decrement) the last index - * @param baseIndex The current index to compute the next index from - * @param itemCount The number of items - * @param defaultActiveItemId The default active index to fallback to - */ -export declare function getNextActiveItemId(moveAmount: number, baseIndex: number | null, itemCount: number, defaultActiveItemId: number | null): number | null; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.js deleted file mode 100644 index a7bb524..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Returns the next active item ID from the current state. - * - * We allow circular keyboard navigation from the base index. - * The base index can either be `null` (nothing is highlighted) or `0` - * (the first item is highlighted). - * The base index is allowed to get assigned `null` only if - * `props.defaultActiveItemId` is `null`. This pattern allows to "stop" - * by the actual query before navigating to other suggestions as seen on - * Google or Amazon. - * - * @param moveAmount The offset to increment (or decrement) the last index - * @param baseIndex The current index to compute the next index from - * @param itemCount The number of items - * @param defaultActiveItemId The default active index to fallback to - */ -export function getNextActiveItemId(moveAmount, baseIndex, itemCount, defaultActiveItemId) { - if (!itemCount) { - return null; - } - if (moveAmount < 0 && (baseIndex === null || defaultActiveItemId !== null && baseIndex === 0)) { - return itemCount + moveAmount; - } - var numericIndex = (baseIndex === null ? -1 : baseIndex) + moveAmount; - if (numericIndex <= -1 || numericIndex >= itemCount) { - return defaultActiveItemId === null ? null : 0; - } - return numericIndex; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.d.ts deleted file mode 100644 index 8061dcb..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { BaseItem, GetSources, GetSourcesParams, InternalGetSources } from '../types'; -export declare function getNormalizedSources(getSources: GetSources, params: GetSourcesParams): ReturnType>; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.js deleted file mode 100644 index ffa3c0c..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.js +++ /dev/null @@ -1,48 +0,0 @@ -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -import { invariant, decycle, noop } from '@algolia/autocomplete-shared'; -export function getNormalizedSources(getSources, params) { - var seenSourceIds = []; - return Promise.resolve(getSources(params)).then(function (sources) { - invariant(Array.isArray(sources), function () { - return "The `getSources` function must return an array of sources but returned type ".concat(JSON.stringify(_typeof(sources)), ":\n\n").concat(JSON.stringify(decycle(sources), null, 2)); - }); - return Promise.all(sources - // We allow `undefined` and `false` sources to allow users to use - // `Boolean(query) && source` (=> `false`). - // We need to remove these values at this point. - .filter(function (maybeSource) { - return Boolean(maybeSource); - }).map(function (source) { - invariant(typeof source.sourceId === 'string', 'A source must provide a `sourceId` string.'); - if (seenSourceIds.includes(source.sourceId)) { - throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(source.sourceId), " is not unique.")); - } - seenSourceIds.push(source.sourceId); - var defaultSource = { - getItemInputValue: function getItemInputValue(_ref) { - var state = _ref.state; - return state.query; - }, - getItemUrl: function getItemUrl() { - return undefined; - }, - onSelect: function onSelect(_ref2) { - var setIsOpen = _ref2.setIsOpen; - setIsOpen(false); - }, - onActive: noop, - onResolve: noop - }; - Object.keys(defaultSource).forEach(function (key) { - defaultSource[key].__default = true; - }); - var normalizedSource = _objectSpread(_objectSpread({}, defaultSource), source); - return Promise.resolve(normalizedSource); - })); - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/index.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/index.d.ts deleted file mode 100644 index fe066e2..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export * from './createCancelablePromise'; -export * from './createCancelablePromiseList'; -export * from './createConcurrentSafePromise'; -export * from './getNextActiveItemId'; -export * from './getNormalizedSources'; -export * from './getActiveItem'; -export * from './getAutocompleteElementId'; -export * from './isOrContainsNode'; -export * from './isSamsung'; -export * from './mapToAlgoliaResponse'; -export * from './getNativeEvent'; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/index.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/index.js deleted file mode 100644 index e2b2c8a..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/index.js +++ /dev/null @@ -1,11 +0,0 @@ -export * from './createCancelablePromise'; -export * from './createCancelablePromiseList'; -export * from './createConcurrentSafePromise'; -export * from './getNextActiveItemId'; -export * from './getNormalizedSources'; -export * from './getActiveItem'; -export * from './getAutocompleteElementId'; -export * from './isOrContainsNode'; -export * from './isSamsung'; -export * from './mapToAlgoliaResponse'; -export * from './getNativeEvent'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.d.ts deleted file mode 100644 index 8ee16d0..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function isOrContainsNode(parent: Node, child: Node): boolean; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.js deleted file mode 100644 index 7cc4d9b..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.js +++ /dev/null @@ -1,3 +0,0 @@ -export function isOrContainsNode(parent, child) { - return parent === child || parent.contains(child); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.d.ts deleted file mode 100644 index 515e21a..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function isSamsung(userAgent: string): boolean; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.js deleted file mode 100644 index 55e7bfa..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.js +++ /dev/null @@ -1,4 +0,0 @@ -var regex = /((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i; -export function isSamsung(userAgent) { - return Boolean(userAgent && userAgent.match(regex)); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.d.ts b/node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.d.ts deleted file mode 100644 index a1af6e6..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { SearchResponse } from '@algolia/autocomplete-shared'; -import type { SearchForFacetValuesResponse } from '@algolia/client-search'; -export declare function mapToAlgoliaResponse(rawResults: Array | SearchForFacetValuesResponse>): { - results: (SearchResponse | SearchForFacetValuesResponse)[]; - hits: import("@algolia/client-search").Hit[][]; - facetHits: { - label: string; - count: number; - _highlightResult: { - label: { - value: string; - }; - }; - }[][]; -}; diff --git a/node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.js b/node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.js deleted file mode 100644 index 435eee2..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.js +++ /dev/null @@ -1,23 +0,0 @@ -export function mapToAlgoliaResponse(rawResults) { - return { - results: rawResults, - hits: rawResults.map(function (result) { - return result.hits; - }).filter(Boolean), - facetHits: rawResults.map(function (result) { - var _facetHits; - return (_facetHits = result.facetHits) === null || _facetHits === void 0 ? void 0 : _facetHits.map(function (facetHit) { - // Bring support for the highlighting components. - return { - label: facetHit.value, - count: facetHit.count, - _highlightResult: { - label: { - value: facetHit.highlighted - } - } - }; - }); - }).filter(Boolean) - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/umd/index.development.js b/node_modules/@algolia/autocomplete-core/dist/umd/index.development.js deleted file mode 100644 index d37be98..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/umd/index.development.js +++ /dev/null @@ -1,2616 +0,0 @@ -/*! @algolia/autocomplete-core 1.17.7 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : - typeof define === 'function' && define.amd ? define(['exports'], factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@algolia/autocomplete-core"] = {})); -})(this, (function (exports) { 'use strict'; - - function ownKeys$2(object, enumerableOnly) { - var keys = Object.keys(object); - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - enumerableOnly && (symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - })), keys.push.apply(keys, symbols); - } - return keys; - } - function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = null != arguments[i] ? arguments[i] : {}; - i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { - _defineProperty$2(target, key, source[key]); - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - return target; - } - function _typeof$3(obj) { - "@babel/helpers - typeof"; - - return _typeof$3 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, _typeof$3(obj); - } - function _defineProperty$2(obj, key, value) { - key = _toPropertyKey$2(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; - } - function _objectWithoutPropertiesLoose$1(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } - return target; - } - function _objectWithoutProperties$1(source, excluded) { - if (source == null) return {}; - var target = _objectWithoutPropertiesLoose$1(source, excluded); - var key, i; - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - return target; - } - function _toConsumableArray$2(arr) { - return _arrayWithoutHoles$2(arr) || _iterableToArray$2(arr) || _unsupportedIterableToArray$4(arr) || _nonIterableSpread$2(); - } - function _arrayWithoutHoles$2(arr) { - if (Array.isArray(arr)) return _arrayLikeToArray$4(arr); - } - function _iterableToArray$2(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); - } - function _unsupportedIterableToArray$4(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray$4(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$4(o, minLen); - } - function _arrayLikeToArray$4(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function _nonIterableSpread$2() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _toPrimitive$2(input, hint) { - if (typeof input !== "object" || input === null) return input; - var prim = input[Symbol.toPrimitive]; - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (typeof res !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - return (hint === "string" ? String : Number)(input); - } - function _toPropertyKey$2(arg) { - var key = _toPrimitive$2(arg, "string"); - return typeof key === "symbol" ? key : String(key); - } - - function createRef(initialValue) { - return { - current: initialValue - }; - } - - function debounce(fn, time) { - var timerId = undefined; - return function () { - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - if (timerId) { - clearTimeout(timerId); - } - timerId = setTimeout(function () { - return fn.apply(void 0, args); - }, time); - }; - } - - function _slicedToArray$1(arr, i) { - return _arrayWithHoles$1(arr) || _iterableToArrayLimit$1(arr, i) || _unsupportedIterableToArray$3(arr, i) || _nonIterableRest$1(); - } - function _nonIterableRest$1() { - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _unsupportedIterableToArray$3(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray$3(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$3(o, minLen); - } - function _arrayLikeToArray$3(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function _iterableToArrayLimit$1(arr, i) { - var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; - if (null != _i) { - var _s, - _e, - _x, - _r, - _arr = [], - _n = !0, - _d = !1; - try { - if (_x = (_i = _i.call(arr)).next, 0 === i) { - if (Object(_i) !== _i) return; - _n = !1; - } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); - } catch (err) { - _d = !0, _e = err; - } finally { - try { - if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; - } finally { - if (_d) throw _e; - } - } - return _arr; - } - } - function _arrayWithHoles$1(arr) { - if (Array.isArray(arr)) return arr; - } - function _typeof$2(obj) { - "@babel/helpers - typeof"; - - return _typeof$2 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, _typeof$2(obj); - } - /** - * Decycles objects with circular references. - * This is used to print cyclic structures in development environment only. - */ - function decycle(obj) { - var seen = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Set(); - if (!obj || _typeof$2(obj) !== 'object') { - return obj; - } - if (seen.has(obj)) { - return '[Circular]'; - } - var newSeen = seen.add(obj); - if (Array.isArray(obj)) { - return obj.map(function (x) { - return decycle(x, newSeen); - }); - } - return Object.fromEntries(Object.entries(obj).map(function (_ref) { - var _ref2 = _slicedToArray$1(_ref, 2), - key = _ref2[0], - value = _ref2[1]; - return [key, decycle(value, newSeen)]; - })); - } - - function flatten(values) { - return values.reduce(function (a, b) { - return a.concat(b); - }, []); - } - - var autocompleteId = 0; - function generateAutocompleteId() { - return "autocomplete-".concat(autocompleteId++); - } - - function getItemsCount(state) { - if (state.collections.length === 0) { - return 0; - } - return state.collections.reduce(function (sum, collection) { - return sum + collection.items.length; - }, 0); - } - - /** - * Throws an error if the condition is not met in development mode. - * This is used to make development a better experience to provide guidance as - * to where the error comes from. - */ - function invariant(condition, message) { - if (!condition) { - throw new Error("[Autocomplete] ".concat(typeof message === 'function' ? message() : message)); - } - } - - function isPrimitive(obj) { - return obj !== Object(obj); - } - function isEqual(first, second) { - if (first === second) { - return true; - } - if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') { - return first === second; - } - if (Object.keys(first).length !== Object.keys(second).length) { - return false; - } - for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) { - var key = _Object$keys[_i]; - if (!(key in second)) { - return false; - } - if (!isEqual(first[key], second[key])) { - return false; - } - } - return true; - } - - var noop = function noop() {}; - - /** - * Safely runs code meant for browser environments only. - */ - function safelyRunOnBrowser(callback) { - if (typeof window !== 'undefined') { - return callback({ - window: window - }); - } - return undefined; - } - - var version = '1.17.7'; - - var userAgents = [{ - segment: 'autocomplete-core', - version: version - }]; - - var warnCache = { - current: {} - }; - - /** - * Logs a warning if the condition is not met. - * This is used to log issues in development environment only. - */ - function warn(condition, message) { - if (condition) { - return; - } - var sanitizedMessage = message.trim(); - var hasAlreadyPrinted = warnCache.current[sanitizedMessage]; - if (!hasAlreadyPrinted) { - warnCache.current[sanitizedMessage] = true; - - // eslint-disable-next-line no-console - console.warn("[Autocomplete] ".concat(sanitizedMessage)); - } - } - - function createClickedEvent(_ref) { - var item = _ref.item, - _ref$items = _ref.items, - items = _ref$items === void 0 ? [] : _ref$items; - return { - index: item.__autocomplete_indexName, - items: [item], - positions: [1 + items.findIndex(function (x) { - return x.objectID === item.objectID; - })], - queryID: item.__autocomplete_queryID, - algoliaSource: ['autocomplete'] - }; - } - - function _slicedToArray(arr, i) { - return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray$2(arr, i) || _nonIterableRest(); - } - function _nonIterableRest() { - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _unsupportedIterableToArray$2(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray$2(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$2(o, minLen); - } - function _arrayLikeToArray$2(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function _iterableToArrayLimit(arr, i) { - var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; - if (null != _i) { - var _s, - _e, - _x, - _r, - _arr = [], - _n = !0, - _d = !1; - try { - if (_x = (_i = _i.call(arr)).next, 0 === i) { - if (Object(_i) !== _i) return; - _n = !1; - } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); - } catch (err) { - _d = !0, _e = err; - } finally { - try { - if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; - } finally { - if (_d) throw _e; - } - } - return _arr; - } - } - function _arrayWithHoles(arr) { - if (Array.isArray(arr)) return arr; - } - /** - * Determines if a given insights `client` supports the optional call to `init` - * and the ability to set credentials via extra parameters when sending events. - */ - function isModernInsightsClient(client) { - var _split$map = (client.version || '').split('.').map(Number), - _split$map2 = _slicedToArray(_split$map, 2), - major = _split$map2[0], - minor = _split$map2[1]; - - /* eslint-disable @typescript-eslint/camelcase */ - var v3 = major >= 3; - var v2_4 = major === 2 && minor >= 4; - var v1_10 = major === 1 && minor >= 10; - return v3 || v2_4 || v1_10; - /* eslint-enable @typescript-eslint/camelcase */ - } - - var _excluded$3 = ["items"], - _excluded2$1 = ["items"]; - function _typeof$1(obj) { - "@babel/helpers - typeof"; - - return _typeof$1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, _typeof$1(obj); - } - function _toConsumableArray$1(arr) { - return _arrayWithoutHoles$1(arr) || _iterableToArray$1(arr) || _unsupportedIterableToArray$1(arr) || _nonIterableSpread$1(); - } - function _nonIterableSpread$1() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _unsupportedIterableToArray$1(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); - } - function _iterableToArray$1(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); - } - function _arrayWithoutHoles$1(arr) { - if (Array.isArray(arr)) return _arrayLikeToArray$1(arr); - } - function _arrayLikeToArray$1(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; - var target = _objectWithoutPropertiesLoose(source, excluded); - var key, i; - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - return target; - } - function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } - return target; - } - function ownKeys$1(object, enumerableOnly) { - var keys = Object.keys(object); - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - enumerableOnly && (symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - })), keys.push.apply(keys, symbols); - } - return keys; - } - function _objectSpread$1(target) { - for (var i = 1; i < arguments.length; i++) { - var source = null != arguments[i] ? arguments[i] : {}; - i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { - _defineProperty$1(target, key, source[key]); - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - return target; - } - function _defineProperty$1(obj, key, value) { - key = _toPropertyKey$1(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; - } - function _toPropertyKey$1(arg) { - var key = _toPrimitive$1(arg, "string"); - return _typeof$1(key) === "symbol" ? key : String(key); - } - function _toPrimitive$1(input, hint) { - if (_typeof$1(input) !== "object" || input === null) return input; - var prim = input[Symbol.toPrimitive]; - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (_typeof$1(res) !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - return (hint === "string" ? String : Number)(input); - } - function chunk(item) { - var chunkSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20; - var chunks = []; - for (var i = 0; i < item.objectIDs.length; i += chunkSize) { - chunks.push(_objectSpread$1(_objectSpread$1({}, item), {}, { - objectIDs: item.objectIDs.slice(i, i + chunkSize) - })); - } - return chunks; - } - function mapToInsightsParamsApi(params) { - return params.map(function (_ref) { - var items = _ref.items, - param = _objectWithoutProperties(_ref, _excluded$3); - return _objectSpread$1(_objectSpread$1({}, param), {}, { - objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref2) { - var objectID = _ref2.objectID; - return objectID; - })) || param.objectIDs - }); - }); - } - function createSearchInsightsApi(searchInsights) { - var canSendHeaders = isModernInsightsClient(searchInsights); - function sendToInsights(method, payloads, items) { - if (canSendHeaders && typeof items !== 'undefined') { - var _items$0$__autocomple = items[0].__autocomplete_algoliaCredentials, - appId = _items$0$__autocomple.appId, - apiKey = _items$0$__autocomple.apiKey; - var headers = { - 'X-Algolia-Application-Id': appId, - 'X-Algolia-API-Key': apiKey - }; - searchInsights.apply(void 0, [method].concat(_toConsumableArray$1(payloads), [{ - headers: headers - }])); - } else { - searchInsights.apply(void 0, [method].concat(_toConsumableArray$1(payloads))); - } - } - return { - /** - * Initializes Insights with Algolia credentials. - */ - init: function init(appId, apiKey) { - searchInsights('init', { - appId: appId, - apiKey: apiKey - }); - }, - /** - * Sets the authenticated user token to attach to events. - * Unsets the authenticated token by passing `undefined`. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/ - */ - setAuthenticatedUserToken: function setAuthenticatedUserToken(authenticatedUserToken) { - searchInsights('setAuthenticatedUserToken', authenticatedUserToken); - }, - /** - * Sets the user token to attach to events. - */ - setUserToken: function setUserToken(userToken) { - searchInsights('setUserToken', userToken); - }, - /** - * Sends click events to capture a query and its clicked items and positions. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/ - */ - clickedObjectIDsAfterSearch: function clickedObjectIDsAfterSearch() { - for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) { - params[_key] = arguments[_key]; - } - if (params.length > 0) { - sendToInsights('clickedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends click events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/ - */ - clickedObjectIDs: function clickedObjectIDs() { - for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - params[_key2] = arguments[_key2]; - } - if (params.length > 0) { - sendToInsights('clickedObjectIDs', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends click events to capture the filters a user clicks on. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/ - */ - clickedFilters: function clickedFilters() { - for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { - params[_key3] = arguments[_key3]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['clickedFilters'].concat(params)); - } - }, - /** - * Sends conversion events to capture a query and its clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/ - */ - convertedObjectIDsAfterSearch: function convertedObjectIDsAfterSearch() { - for (var _len4 = arguments.length, params = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { - params[_key4] = arguments[_key4]; - } - if (params.length > 0) { - sendToInsights('convertedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends conversion events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/ - */ - convertedObjectIDs: function convertedObjectIDs() { - for (var _len5 = arguments.length, params = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) { - params[_key5] = arguments[_key5]; - } - if (params.length > 0) { - sendToInsights('convertedObjectIDs', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends conversion events to capture the filters a user uses when converting. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/ - */ - convertedFilters: function convertedFilters() { - for (var _len6 = arguments.length, params = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) { - params[_key6] = arguments[_key6]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['convertedFilters'].concat(params)); - } - }, - /** - * Sends view events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/ - */ - viewedObjectIDs: function viewedObjectIDs() { - for (var _len7 = arguments.length, params = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) { - params[_key7] = arguments[_key7]; - } - if (params.length > 0) { - params.reduce(function (acc, _ref3) { - var items = _ref3.items, - param = _objectWithoutProperties(_ref3, _excluded2$1); - return [].concat(_toConsumableArray$1(acc), _toConsumableArray$1(chunk(_objectSpread$1(_objectSpread$1({}, param), {}, { - objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref4) { - var objectID = _ref4.objectID; - return objectID; - })) || param.objectIDs - })).map(function (payload) { - return { - items: items, - payload: payload - }; - }))); - }, []).forEach(function (_ref5) { - var items = _ref5.items, - payload = _ref5.payload; - return sendToInsights('viewedObjectIDs', [payload], items); - }); - } - }, - /** - * Sends view events to capture the filters a user uses when viewing. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/ - */ - viewedFilters: function viewedFilters() { - for (var _len8 = arguments.length, params = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) { - params[_key8] = arguments[_key8]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['viewedFilters'].concat(params)); - } - } - }; - } - - function createViewedEvents(_ref) { - var items = _ref.items; - var itemsByIndexName = items.reduce(function (acc, current) { - var _acc$current$__autoco; - acc[current.__autocomplete_indexName] = ((_acc$current$__autoco = acc[current.__autocomplete_indexName]) !== null && _acc$current$__autoco !== void 0 ? _acc$current$__autoco : []).concat(current); - return acc; - }, {}); - return Object.keys(itemsByIndexName).map(function (indexName) { - var items = itemsByIndexName[indexName]; - return { - index: indexName, - items: items, - algoliaSource: ['autocomplete'] - }; - }); - } - - function isAlgoliaInsightsHit(hit) { - return hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID; - } - - function _typeof(obj) { - "@babel/helpers - typeof"; - - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, _typeof(obj); - } - function _toConsumableArray(arr) { - return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); - } - function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _unsupportedIterableToArray(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); - } - function _iterableToArray(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); - } - function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) return _arrayLikeToArray(arr); - } - function _arrayLikeToArray(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function ownKeys(object, enumerableOnly) { - var keys = Object.keys(object); - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - enumerableOnly && (symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - })), keys.push.apply(keys, symbols); - } - return keys; - } - function _objectSpread(target) { - for (var i = 1; i < arguments.length; i++) { - var source = null != arguments[i] ? arguments[i] : {}; - i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { - _defineProperty(target, key, source[key]); - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - return target; - } - function _defineProperty(obj, key, value) { - key = _toPropertyKey(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; - } - function _toPropertyKey(arg) { - var key = _toPrimitive(arg, "string"); - return _typeof(key) === "symbol" ? key : String(key); - } - function _toPrimitive(input, hint) { - if (_typeof(input) !== "object" || input === null) return input; - var prim = input[Symbol.toPrimitive]; - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (_typeof(res) !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - return (hint === "string" ? String : Number)(input); - } - var VIEW_EVENT_DELAY = 400; - var ALGOLIA_INSIGHTS_VERSION = '2.15.0'; - var ALGOLIA_INSIGHTS_SRC = "https://cdn.jsdelivr.net/npm/search-insights@".concat(ALGOLIA_INSIGHTS_VERSION, "/dist/search-insights.min.js"); - var sendViewedObjectIDs = debounce(function (_ref) { - var onItemsChange = _ref.onItemsChange, - items = _ref.items, - insights = _ref.insights, - state = _ref.state; - onItemsChange({ - insights: insights, - insightsEvents: createViewedEvents({ - items: items - }).map(function (event) { - return _objectSpread({ - eventName: 'Items Viewed' - }, event); - }), - state: state - }); - }, VIEW_EVENT_DELAY); - function createAlgoliaInsightsPlugin(options) { - var _getOptions = getOptions(options), - providedInsightsClient = _getOptions.insightsClient, - insightsInitParams = _getOptions.insightsInitParams, - onItemsChange = _getOptions.onItemsChange, - onSelectEvent = _getOptions.onSelect, - onActiveEvent = _getOptions.onActive, - __autocomplete_clickAnalytics = _getOptions.__autocomplete_clickAnalytics; - var insightsClient = providedInsightsClient; - if (!providedInsightsClient) { - safelyRunOnBrowser(function (_ref2) { - var window = _ref2.window; - var pointer = window.AlgoliaAnalyticsObject || 'aa'; - if (typeof pointer === 'string') { - insightsClient = window[pointer]; - } - if (!insightsClient) { - window.AlgoliaAnalyticsObject = pointer; - if (!window[pointer]) { - window[pointer] = function () { - if (!window[pointer].queue) { - window[pointer].queue = []; - } - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - window[pointer].queue.push(args); - }; - } - window[pointer].version = ALGOLIA_INSIGHTS_VERSION; - insightsClient = window[pointer]; - loadInsights(window); - } - }); - } - - // We return an empty plugin if `insightsClient` is still undefined at - // this stage, which can happen in server environments. - if (!insightsClient) { - return {}; - } - if (insightsInitParams) { - insightsClient('init', _objectSpread({ - partial: true - }, insightsInitParams)); - } - var insights = createSearchInsightsApi(insightsClient); - var previousItems = createRef([]); - var debouncedOnStateChange = debounce(function (_ref3) { - var state = _ref3.state; - if (!state.isOpen) { - return; - } - var items = state.collections.reduce(function (acc, current) { - return [].concat(_toConsumableArray(acc), _toConsumableArray(current.items)); - }, []).filter(isAlgoliaInsightsHit); - if (!isEqual(previousItems.current.map(function (x) { - return x.objectID; - }), items.map(function (x) { - return x.objectID; - }))) { - previousItems.current = items; - if (items.length > 0) { - sendViewedObjectIDs({ - onItemsChange: onItemsChange, - items: items, - insights: insights, - state: state - }); - } - } - }, 0); - return { - name: 'aa.algoliaInsightsPlugin', - subscribe: function subscribe(_ref4) { - var setContext = _ref4.setContext, - onSelect = _ref4.onSelect, - onActive = _ref4.onActive; - var isAuthenticatedToken = false; - function setInsightsContext(userToken) { - setContext({ - algoliaInsightsPlugin: { - __algoliaSearchParameters: _objectSpread(_objectSpread({}, __autocomplete_clickAnalytics ? { - clickAnalytics: true - } : {}), userToken ? { - userToken: normalizeUserToken(userToken) - } : {}), - insights: insights - } - }); - } - insightsClient('addAlgoliaAgent', 'insights-plugin'); - setInsightsContext(); - - // Handles user token changes - insightsClient('onUserTokenChange', function (userToken) { - if (!isAuthenticatedToken) { - setInsightsContext(userToken); - } - }); - insightsClient('getUserToken', null, function (_error, userToken) { - if (!isAuthenticatedToken) { - setInsightsContext(userToken); - } - }); - - // Handles authenticated user token changes - insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) { - if (authenticatedUserToken) { - isAuthenticatedToken = true; - setInsightsContext(authenticatedUserToken); - } else { - isAuthenticatedToken = false; - insightsClient('getUserToken', null, function (_error, userToken) { - return setInsightsContext(userToken); - }); - } - }); - insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) { - if (authenticatedUserToken) { - isAuthenticatedToken = true; - setInsightsContext(authenticatedUserToken); - } - }); - onSelect(function (_ref5) { - var item = _ref5.item, - state = _ref5.state, - event = _ref5.event, - source = _ref5.source; - if (!isAlgoliaInsightsHit(item)) { - return; - } - onSelectEvent({ - state: state, - event: event, - insights: insights, - item: item, - insightsEvents: [_objectSpread({ - eventName: 'Item Selected' - }, createClickedEvent({ - item: item, - items: source.getItems().filter(isAlgoliaInsightsHit) - }))] - }); - }); - onActive(function (_ref6) { - var item = _ref6.item, - source = _ref6.source, - state = _ref6.state, - event = _ref6.event; - if (!isAlgoliaInsightsHit(item)) { - return; - } - onActiveEvent({ - state: state, - event: event, - insights: insights, - item: item, - insightsEvents: [_objectSpread({ - eventName: 'Item Active' - }, createClickedEvent({ - item: item, - items: source.getItems().filter(isAlgoliaInsightsHit) - }))] - }); - }); - }, - onStateChange: function onStateChange(_ref7) { - var state = _ref7.state; - debouncedOnStateChange({ - state: state - }); - }, - __autocomplete_pluginOptions: options - }; - } - function getAlgoliaSources() { - var _context$algoliaInsig; - var algoliaSourceBase = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var context = arguments.length > 1 ? arguments[1] : undefined; - return [].concat(_toConsumableArray(algoliaSourceBase), ['autocomplete-internal'], _toConsumableArray((_context$algoliaInsig = context.algoliaInsightsPlugin) !== null && _context$algoliaInsig !== void 0 && _context$algoliaInsig.__automaticInsights ? ['autocomplete-automatic'] : [])); - } - function getOptions(options) { - return _objectSpread({ - onItemsChange: function onItemsChange(_ref8) { - var insights = _ref8.insights, - insightsEvents = _ref8.insightsEvents, - state = _ref8.state; - insights.viewedObjectIDs.apply(insights, _toConsumableArray(insightsEvents.map(function (event) { - return _objectSpread(_objectSpread({}, event), {}, { - algoliaSource: getAlgoliaSources(event.algoliaSource, state.context) - }); - }))); - }, - onSelect: function onSelect(_ref9) { - var insights = _ref9.insights, - insightsEvents = _ref9.insightsEvents, - state = _ref9.state; - insights.clickedObjectIDsAfterSearch.apply(insights, _toConsumableArray(insightsEvents.map(function (event) { - return _objectSpread(_objectSpread({}, event), {}, { - algoliaSource: getAlgoliaSources(event.algoliaSource, state.context) - }); - }))); - }, - onActive: noop, - __autocomplete_clickAnalytics: true - }, options); - } - function loadInsights(environment) { - var errorMessage = "[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete"; - try { - var script = environment.document.createElement('script'); - script.async = true; - script.src = ALGOLIA_INSIGHTS_SRC; - script.onerror = function () { - // eslint-disable-next-line no-console - console.error(errorMessage); - }; - document.body.appendChild(script); - } catch (cause) { - // eslint-disable-next-line no-console - console.error(errorMessage); - } - } - - /** - * While `search-insights` supports both string and number user tokens, - * the Search API only accepts strings. This function normalizes the user token. - */ - function normalizeUserToken(userToken) { - return typeof userToken === 'number' ? userToken.toString() : userToken; - } - - function checkOptions(options) { - "development" !== 'production' ? warn(!options.debug, 'The `debug` option is meant for development debugging and should not be used in production.') : void 0; - } - - function createInternalCancelablePromise(promise, initialState) { - var state = initialState; - return { - then: function then(onfulfilled, onrejected) { - return createInternalCancelablePromise(promise.then(createCallback(onfulfilled, state, promise), createCallback(onrejected, state, promise)), state); - }, - catch: function _catch(onrejected) { - return createInternalCancelablePromise(promise.catch(createCallback(onrejected, state, promise)), state); - }, - finally: function _finally(onfinally) { - if (onfinally) { - state.onCancelList.push(onfinally); - } - return createInternalCancelablePromise(promise.finally(createCallback(onfinally && function () { - state.onCancelList = []; - return onfinally(); - }, state, promise)), state); - }, - cancel: function cancel() { - state.isCanceled = true; - var callbacks = state.onCancelList; - state.onCancelList = []; - callbacks.forEach(function (callback) { - callback(); - }); - }, - isCanceled: function isCanceled() { - return state.isCanceled === true; - } - }; - } - function cancelable(promise) { - return createInternalCancelablePromise(promise, { - isCanceled: false, - onCancelList: [] - }); - } - function createCallback(onResult, state, fallback) { - if (!onResult) { - return fallback; - } - return function callback(arg) { - if (state.isCanceled) { - return arg; - } - return onResult(arg); - }; - } - - function createCancelablePromiseList() { - var list = []; - return { - add: function add(cancelablePromise) { - list.push(cancelablePromise); - return cancelablePromise.finally(function () { - list = list.filter(function (item) { - return item !== cancelablePromise; - }); - }); - }, - cancelAll: function cancelAll() { - list.forEach(function (promise) { - return promise.cancel(); - }); - }, - isEmpty: function isEmpty() { - return list.length === 0; - } - }; - } - - /** - * Creates a runner that executes promises in a concurrent-safe way. - * - * This is useful to prevent older promises to resolve after a newer promise, - * otherwise resulting in stale resolved values. - */ - function createConcurrentSafePromise() { - var basePromiseId = -1; - var latestResolvedId = -1; - var latestResolvedValue = undefined; - return function runConcurrentSafePromise(promise) { - basePromiseId++; - var currentPromiseId = basePromiseId; - return Promise.resolve(promise).then(function (x) { - // The promise might take too long to resolve and get outdated. This would - // result in resolving stale values. - // When this happens, we ignore the promise value and return the one - // coming from the latest resolved value. - // - // +----------------------------------+ - // | 100ms | - // | run(1) +---> R1 | - // | 300ms | - // | run(2) +-------------> R2 (SKIP) | - // | 200ms | - // | run(3) +--------> R3 | - // +----------------------------------+ - if (latestResolvedValue && currentPromiseId < latestResolvedId) { - return latestResolvedValue; - } - latestResolvedId = currentPromiseId; - latestResolvedValue = x; - return x; - }); - }; - } - - /** - * Returns the next active item ID from the current state. - * - * We allow circular keyboard navigation from the base index. - * The base index can either be `null` (nothing is highlighted) or `0` - * (the first item is highlighted). - * The base index is allowed to get assigned `null` only if - * `props.defaultActiveItemId` is `null`. This pattern allows to "stop" - * by the actual query before navigating to other suggestions as seen on - * Google or Amazon. - * - * @param moveAmount The offset to increment (or decrement) the last index - * @param baseIndex The current index to compute the next index from - * @param itemCount The number of items - * @param defaultActiveItemId The default active index to fallback to - */ - function getNextActiveItemId(moveAmount, baseIndex, itemCount, defaultActiveItemId) { - if (!itemCount) { - return null; - } - if (moveAmount < 0 && (baseIndex === null || defaultActiveItemId !== null && baseIndex === 0)) { - return itemCount + moveAmount; - } - var numericIndex = (baseIndex === null ? -1 : baseIndex) + moveAmount; - if (numericIndex <= -1 || numericIndex >= itemCount) { - return defaultActiveItemId === null ? null : 0; - } - return numericIndex; - } - - function getNormalizedSources(getSources, params) { - var seenSourceIds = []; - return Promise.resolve(getSources(params)).then(function (sources) { - invariant(Array.isArray(sources), function () { - return "The `getSources` function must return an array of sources but returned type ".concat(JSON.stringify(_typeof$3(sources)), ":\n\n").concat(JSON.stringify(decycle(sources), null, 2)); - }); - return Promise.all(sources - // We allow `undefined` and `false` sources to allow users to use - // `Boolean(query) && source` (=> `false`). - // We need to remove these values at this point. - .filter(function (maybeSource) { - return Boolean(maybeSource); - }).map(function (source) { - invariant(typeof source.sourceId === 'string', 'A source must provide a `sourceId` string.'); - if (seenSourceIds.includes(source.sourceId)) { - throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(source.sourceId), " is not unique.")); - } - seenSourceIds.push(source.sourceId); - var defaultSource = { - getItemInputValue: function getItemInputValue(_ref) { - var state = _ref.state; - return state.query; - }, - getItemUrl: function getItemUrl() { - return undefined; - }, - onSelect: function onSelect(_ref2) { - var setIsOpen = _ref2.setIsOpen; - setIsOpen(false); - }, - onActive: noop, - onResolve: noop - }; - Object.keys(defaultSource).forEach(function (key) { - defaultSource[key].__default = true; - }); - var normalizedSource = _objectSpread2(_objectSpread2({}, defaultSource), source); - return Promise.resolve(normalizedSource); - })); - }); - } - - // We don't have access to the autocomplete source when we call `onKeyDown` - // or `onClick` because those are native browser events. - // However, we can get the source from the suggestion index. - function getCollectionFromActiveItemId(state) { - // Given 3 sources with respectively 1, 2 and 3 suggestions: [1, 2, 3] - // We want to get the accumulated counts: - // [1, 1 + 2, 1 + 2 + 3] = [1, 3, 3 + 3] = [1, 3, 6] - var accumulatedCollectionsCount = state.collections.map(function (collections) { - return collections.items.length; - }).reduce(function (acc, collectionsCount, index) { - var previousValue = acc[index - 1] || 0; - var nextValue = previousValue + collectionsCount; - acc.push(nextValue); - return acc; - }, []); - - // Based on the accumulated counts, we can infer the index of the suggestion. - var collectionIndex = accumulatedCollectionsCount.reduce(function (acc, current) { - if (current <= state.activeItemId) { - return acc + 1; - } - return acc; - }, 0); - return state.collections[collectionIndex]; - } - - /** - * Gets the highlighted index relative to a suggestion object (not the absolute - * highlighted index). - * - * Example: - * [['a', 'b'], ['c', 'd', 'e'], ['f']] - * ↑ - * (absolute: 3, relative: 1) - */ - function getRelativeActiveItemId(_ref) { - var state = _ref.state, - collection = _ref.collection; - var isOffsetFound = false; - var counter = 0; - var previousItemsOffset = 0; - while (isOffsetFound === false) { - var currentCollection = state.collections[counter]; - if (currentCollection === collection) { - isOffsetFound = true; - break; - } - previousItemsOffset += currentCollection.items.length; - counter++; - } - return state.activeItemId - previousItemsOffset; - } - function getActiveItem(state) { - var collection = getCollectionFromActiveItemId(state); - if (!collection) { - return null; - } - var item = collection.items[getRelativeActiveItemId({ - state: state, - collection: collection - })]; - var source = collection.source; - var itemInputValue = source.getItemInputValue({ - item: item, - state: state - }); - var itemUrl = source.getItemUrl({ - item: item, - state: state - }); - return { - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - source: source - }; - } - - /** - * Returns a full element id for an autocomplete element. - * - * @param autocompleteInstanceId The id of the autocomplete instance - * @param elementId The specific element id - * @param source The source of the element, when it needs to be scoped - */ - function getAutocompleteElementId(autocompleteInstanceId, elementId, source) { - return [autocompleteInstanceId, source === null || source === void 0 ? void 0 : source.sourceId, elementId].filter(Boolean).join('-').replace(/\s/g, ''); - } - - function isOrContainsNode(parent, child) { - return parent === child || parent.contains(child); - } - - var regex = /((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i; - function isSamsung(userAgent) { - return Boolean(userAgent && userAgent.match(regex)); - } - - function mapToAlgoliaResponse(rawResults) { - return { - results: rawResults, - hits: rawResults.map(function (result) { - return result.hits; - }).filter(Boolean), - facetHits: rawResults.map(function (result) { - var _facetHits; - return (_facetHits = result.facetHits) === null || _facetHits === void 0 ? void 0 : _facetHits.map(function (facetHit) { - // Bring support for the highlighting components. - return { - label: facetHit.value, - count: facetHit.count, - _highlightResult: { - label: { - value: facetHit.highlighted - } - } - }; - }); - }).filter(Boolean) - }; - } - - function getNativeEvent(event) { - return event.nativeEvent || event; - } - - function createStore(reducer, props, onStoreStateChange) { - var state = props.initialState; - return { - getState: function getState() { - return state; - }, - dispatch: function dispatch(action, payload) { - var prevState = _objectSpread2({}, state); - state = reducer(state, { - type: action, - props: props, - payload: payload - }); - onStoreStateChange({ - state: state, - prevState: prevState - }); - }, - pendingRequests: createCancelablePromiseList() - }; - } - - function getAutocompleteSetters(_ref) { - var store = _ref.store; - var setActiveItemId = function setActiveItemId(value) { - store.dispatch('setActiveItemId', value); - }; - var setQuery = function setQuery(value) { - store.dispatch('setQuery', value); - }; - var setCollections = function setCollections(rawValue) { - var baseItemId = 0; - var value = rawValue.map(function (collection) { - return _objectSpread2(_objectSpread2({}, collection), {}, { - // We flatten the stored items to support calling `getAlgoliaResults` - // from the source itself. - items: flatten(collection.items).map(function (item) { - return _objectSpread2(_objectSpread2({}, item), {}, { - __autocomplete_id: baseItemId++ - }); - }) - }); - }); - store.dispatch('setCollections', value); - }; - var setIsOpen = function setIsOpen(value) { - store.dispatch('setIsOpen', value); - }; - var setStatus = function setStatus(value) { - store.dispatch('setStatus', value); - }; - var setContext = function setContext(value) { - store.dispatch('setContext', value); - }; - return { - setActiveItemId: setActiveItemId, - setQuery: setQuery, - setCollections: setCollections, - setIsOpen: setIsOpen, - setStatus: setStatus, - setContext: setContext - }; - } - - function getDefaultProps(props, pluginSubscribers) { - var _props$id; - /* eslint-disable no-restricted-globals */ - var environment = typeof window !== 'undefined' ? window : {}; - /* eslint-enable no-restricted-globals */ - var plugins = props.plugins || []; - return _objectSpread2(_objectSpread2({ - debug: false, - openOnFocus: false, - enterKeyHint: undefined, - ignoreCompositionEvents: false, - placeholder: '', - autoFocus: false, - defaultActiveItemId: null, - stallThreshold: 300, - insights: undefined, - environment: environment, - shouldPanelOpen: function shouldPanelOpen(_ref) { - var state = _ref.state; - return getItemsCount(state) > 0; - }, - reshape: function reshape(_ref2) { - var sources = _ref2.sources; - return sources; - } - }, props), {}, { - // Since `generateAutocompleteId` triggers a side effect (it increments - // an internal counter), we don't want to execute it if unnecessary. - id: (_props$id = props.id) !== null && _props$id !== void 0 ? _props$id : generateAutocompleteId(), - plugins: plugins, - // The following props need to be deeply defaulted. - initialState: _objectSpread2({ - activeItemId: null, - query: '', - completion: null, - collections: [], - isOpen: false, - status: 'idle', - context: {} - }, props.initialState), - onStateChange: function onStateChange(params) { - var _props$onStateChange; - (_props$onStateChange = props.onStateChange) === null || _props$onStateChange === void 0 ? void 0 : _props$onStateChange.call(props, params); - plugins.forEach(function (x) { - var _x$onStateChange; - return (_x$onStateChange = x.onStateChange) === null || _x$onStateChange === void 0 ? void 0 : _x$onStateChange.call(x, params); - }); - }, - onSubmit: function onSubmit(params) { - var _props$onSubmit; - (_props$onSubmit = props.onSubmit) === null || _props$onSubmit === void 0 ? void 0 : _props$onSubmit.call(props, params); - plugins.forEach(function (x) { - var _x$onSubmit; - return (_x$onSubmit = x.onSubmit) === null || _x$onSubmit === void 0 ? void 0 : _x$onSubmit.call(x, params); - }); - }, - onReset: function onReset(params) { - var _props$onReset; - (_props$onReset = props.onReset) === null || _props$onReset === void 0 ? void 0 : _props$onReset.call(props, params); - plugins.forEach(function (x) { - var _x$onReset; - return (_x$onReset = x.onReset) === null || _x$onReset === void 0 ? void 0 : _x$onReset.call(x, params); - }); - }, - getSources: function getSources(params) { - return Promise.all([].concat(_toConsumableArray$2(plugins.map(function (plugin) { - return plugin.getSources; - })), [props.getSources]).filter(Boolean).map(function (getSources) { - return getNormalizedSources(getSources, params); - })).then(function (nested) { - return flatten(nested); - }).then(function (sources) { - return sources.map(function (source) { - return _objectSpread2(_objectSpread2({}, source), {}, { - onSelect: function onSelect(params) { - source.onSelect(params); - pluginSubscribers.forEach(function (x) { - var _x$onSelect; - return (_x$onSelect = x.onSelect) === null || _x$onSelect === void 0 ? void 0 : _x$onSelect.call(x, params); - }); - }, - onActive: function onActive(params) { - source.onActive(params); - pluginSubscribers.forEach(function (x) { - var _x$onActive; - return (_x$onActive = x.onActive) === null || _x$onActive === void 0 ? void 0 : _x$onActive.call(x, params); - }); - }, - onResolve: function onResolve(params) { - source.onResolve(params); - pluginSubscribers.forEach(function (x) { - var _x$onResolve; - return (_x$onResolve = x.onResolve) === null || _x$onResolve === void 0 ? void 0 : _x$onResolve.call(x, params); - }); - } - }); - }); - }); - }, - navigator: _objectSpread2({ - navigate: function navigate(_ref3) { - var itemUrl = _ref3.itemUrl; - environment.location.assign(itemUrl); - }, - navigateNewTab: function navigateNewTab(_ref4) { - var itemUrl = _ref4.itemUrl; - var windowReference = environment.open(itemUrl, '_blank', 'noopener'); - windowReference === null || windowReference === void 0 ? void 0 : windowReference.focus(); - }, - navigateNewWindow: function navigateNewWindow(_ref5) { - var itemUrl = _ref5.itemUrl; - environment.open(itemUrl, '_blank', 'noopener'); - } - }, props.navigator) - }); - } - - function reshape(_ref) { - var collections = _ref.collections, - props = _ref.props, - state = _ref.state; - // Sources are grouped by `sourceId` to conveniently pick them via destructuring. - // Example: `const { recentSearchesPlugin } = sourcesBySourceId` - var originalSourcesBySourceId = collections.reduce(function (acc, collection) { - return _objectSpread2(_objectSpread2({}, acc), {}, _defineProperty$2({}, collection.source.sourceId, _objectSpread2(_objectSpread2({}, collection.source), {}, { - getItems: function getItems() { - // We provide the resolved items from the collection to the `reshape` prop. - return flatten(collection.items); - } - }))); - }, {}); - var _props$plugins$reduce = props.plugins.reduce(function (acc, plugin) { - if (plugin.reshape) { - return plugin.reshape(acc); - } - return acc; - }, { - sourcesBySourceId: originalSourcesBySourceId, - state: state - }), - sourcesBySourceId = _props$plugins$reduce.sourcesBySourceId; - var reshapeSources = props.reshape({ - sourcesBySourceId: sourcesBySourceId, - sources: Object.values(sourcesBySourceId), - state: state - }); - - // We reconstruct the collections with the items modified by the `reshape` prop. - return flatten(reshapeSources).filter(Boolean).map(function (source) { - return { - source: source, - items: source.getItems() - }; - }); - } - - function isDescription(item) { - return Boolean(item.execute); - } - function isRequesterDescription(description) { - return Boolean(description === null || description === void 0 ? void 0 : description.execute); - } - function preResolve(itemsOrDescription, sourceId, state) { - if (isRequesterDescription(itemsOrDescription)) { - var contextParameters = itemsOrDescription.requesterId === 'algolia' ? Object.assign.apply(Object, [{}].concat(_toConsumableArray$2(Object.keys(state.context).map(function (key) { - var _state$context$key; - return (_state$context$key = state.context[key]) === null || _state$context$key === void 0 ? void 0 : _state$context$key.__algoliaSearchParameters; - })))) : {}; - return _objectSpread2(_objectSpread2({}, itemsOrDescription), {}, { - requests: itemsOrDescription.queries.map(function (query) { - return { - query: itemsOrDescription.requesterId === 'algolia' ? _objectSpread2(_objectSpread2({}, query), {}, { - params: _objectSpread2(_objectSpread2({}, contextParameters), query.params) - }) : query, - sourceId: sourceId, - transformResponse: itemsOrDescription.transformResponse - }; - }) - }); - } - return { - items: itemsOrDescription, - sourceId: sourceId - }; - } - function resolve(items) { - var packed = items.reduce(function (acc, current) { - if (!isDescription(current)) { - acc.push(current); - return acc; - } - var searchClient = current.searchClient, - execute = current.execute, - requesterId = current.requesterId, - requests = current.requests; - var container = acc.find(function (item) { - return isDescription(current) && isDescription(item) && item.searchClient === searchClient && Boolean(requesterId) && item.requesterId === requesterId; - }); - if (container) { - var _container$items; - (_container$items = container.items).push.apply(_container$items, _toConsumableArray$2(requests)); - } else { - var request = { - execute: execute, - requesterId: requesterId, - items: requests, - searchClient: searchClient - }; - acc.push(request); - } - return acc; - }, []); - var values = packed.map(function (maybeDescription) { - if (!isDescription(maybeDescription)) { - return Promise.resolve(maybeDescription); - } - var _ref = maybeDescription, - execute = _ref.execute, - items = _ref.items, - searchClient = _ref.searchClient; - return execute({ - searchClient: searchClient, - requests: items - }); - }); - return Promise.all(values).then(function (responses) { - return flatten(responses); - }); - } - function postResolve(responses, sources, store) { - return sources.map(function (source) { - var matches = responses.filter(function (response) { - return response.sourceId === source.sourceId; - }); - var results = matches.map(function (_ref2) { - var items = _ref2.items; - return items; - }); - var transform = matches[0].transformResponse; - var items = transform ? transform(mapToAlgoliaResponse(results)) : results; - source.onResolve({ - source: source, - results: results, - items: items, - state: store.getState() - }); - invariant(Array.isArray(items), function () { - return "The `getItems` function from source \"".concat(source.sourceId, "\" must return an array of items but returned type ").concat(JSON.stringify(_typeof$3(items)), ":\n\n").concat(JSON.stringify(decycle(items), null, 2), ".\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"); - }); - invariant(items.every(Boolean), "The `getItems` function from source \"".concat(source.sourceId, "\" must return an array of items but returned ").concat(JSON.stringify(undefined), ".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems")); - return { - source: source, - items: items - }; - }); - } - - var _excluded$2 = ["event", "nextState", "props", "query", "refresh", "store"]; - var lastStalledId = null; - var runConcurrentSafePromise = createConcurrentSafePromise(); - function onInput(_ref) { - var event = _ref.event, - _ref$nextState = _ref.nextState, - nextState = _ref$nextState === void 0 ? {} : _ref$nextState, - props = _ref.props, - query = _ref.query, - refresh = _ref.refresh, - store = _ref.store, - setters = _objectWithoutProperties$1(_ref, _excluded$2); - if (lastStalledId) { - props.environment.clearTimeout(lastStalledId); - } - var setCollections = setters.setCollections, - setIsOpen = setters.setIsOpen, - setQuery = setters.setQuery, - setActiveItemId = setters.setActiveItemId, - setStatus = setters.setStatus, - setContext = setters.setContext; - setQuery(query); - setActiveItemId(props.defaultActiveItemId); - if (!query && props.openOnFocus === false) { - var _nextState$isOpen; - var collections = store.getState().collections.map(function (collection) { - return _objectSpread2(_objectSpread2({}, collection), {}, { - items: [] - }); - }); - setStatus('idle'); - setCollections(collections); - setIsOpen((_nextState$isOpen = nextState.isOpen) !== null && _nextState$isOpen !== void 0 ? _nextState$isOpen : props.shouldPanelOpen({ - state: store.getState() - })); - - // We make sure to update the latest resolved value of the tracked - // promises to keep late resolving promises from "cancelling" the state - // updates performed in this code path. - // We chain with a void promise to respect `onInput`'s expected return type. - var _request = cancelable(runConcurrentSafePromise(collections).then(function () { - return Promise.resolve(); - })); - return store.pendingRequests.add(_request); - } - setStatus('loading'); - lastStalledId = props.environment.setTimeout(function () { - setStatus('stalled'); - }, props.stallThreshold); - - // We track the entire promise chain triggered by `onInput` before mutating - // the Autocomplete state to make sure that any state manipulation is based on - // fresh data regardless of when promises individually resolve. - // We don't track nested promises and only rely on the full chain resolution, - // meaning we should only ever manipulate the state once this concurrent-safe - // promise is resolved. - var request = cancelable(runConcurrentSafePromise(props.getSources(_objectSpread2({ - query: query, - refresh: refresh, - state: store.getState() - }, setters)).then(function (sources) { - return Promise.all(sources.map(function (source) { - return Promise.resolve(source.getItems(_objectSpread2({ - query: query, - refresh: refresh, - state: store.getState() - }, setters))).then(function (itemsOrDescription) { - return preResolve(itemsOrDescription, source.sourceId, store.getState()); - }); - })).then(resolve).then(function (responses) { - var __automaticInsights = responses.some(function (_ref2) { - var items = _ref2.items; - return isSearchResponseWithAutomaticInsightsFlag(items); - }); - - // No need to pollute the context if `__automaticInsights=false` - if (__automaticInsights) { - var _store$getState$conte; - setContext({ - algoliaInsightsPlugin: _objectSpread2(_objectSpread2({}, ((_store$getState$conte = store.getState().context) === null || _store$getState$conte === void 0 ? void 0 : _store$getState$conte.algoliaInsightsPlugin) || {}), {}, { - __automaticInsights: __automaticInsights - }) - }); - } - return postResolve(responses, sources, store); - }).then(function (collections) { - return reshape({ - collections: collections, - props: props, - state: store.getState() - }); - }); - }))).then(function (collections) { - var _nextState$isOpen2; - // Parameters passed to `onInput` could be stale when the following code - // executes, because `onInput` calls may not resolve in order. - // If it becomes a problem we'll need to save the last passed parameters. - // See: https://codesandbox.io/s/agitated-cookies-y290z - - setStatus('idle'); - setCollections(collections); - var isPanelOpen = props.shouldPanelOpen({ - state: store.getState() - }); - setIsOpen((_nextState$isOpen2 = nextState.isOpen) !== null && _nextState$isOpen2 !== void 0 ? _nextState$isOpen2 : props.openOnFocus && !query && isPanelOpen || isPanelOpen); - var highlightedItem = getActiveItem(store.getState()); - if (store.getState().activeItemId !== null && highlightedItem) { - var item = highlightedItem.item, - itemInputValue = highlightedItem.itemInputValue, - itemUrl = highlightedItem.itemUrl, - source = highlightedItem.source; - source.onActive(_objectSpread2({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - } - }).finally(function () { - setStatus('idle'); - if (lastStalledId) { - props.environment.clearTimeout(lastStalledId); - } - }); - return store.pendingRequests.add(request); - } - function isSearchResponseWithAutomaticInsightsFlag(items) { - return !Array.isArray(items) && Boolean(items === null || items === void 0 ? void 0 : items._automaticInsights); - } - - var _excluded$1 = ["event", "props", "refresh", "store"]; - function onKeyDown(_ref) { - var event = _ref.event, - props = _ref.props, - refresh = _ref.refresh, - store = _ref.store, - setters = _objectWithoutProperties$1(_ref, _excluded$1); - if (event.key === 'ArrowUp' || event.key === 'ArrowDown') { - // eslint-disable-next-line no-inner-declarations - var triggerScrollIntoView = function triggerScrollIntoView() { - var highlightedItem = getActiveItem(store.getState()); - var nodeItem = props.environment.document.getElementById(getAutocompleteElementId(props.id, "item-".concat(store.getState().activeItemId), highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.source)); - if (nodeItem) { - if (nodeItem.scrollIntoViewIfNeeded) { - nodeItem.scrollIntoViewIfNeeded(false); - } else { - nodeItem.scrollIntoView(false); - } - } - }; // eslint-disable-next-line no-inner-declarations - var triggerOnActive = function triggerOnActive() { - var highlightedItem = getActiveItem(store.getState()); - if (store.getState().activeItemId !== null && highlightedItem) { - var item = highlightedItem.item, - itemInputValue = highlightedItem.itemInputValue, - itemUrl = highlightedItem.itemUrl, - source = highlightedItem.source; - source.onActive(_objectSpread2({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - } - }; // Default browser behavior changes the caret placement on ArrowUp and - // ArrowDown. - event.preventDefault(); - - // When re-opening the panel, we need to split the logic to keep the actions - // synchronized as `onInput` returns a promise. - if (store.getState().isOpen === false && (props.openOnFocus || Boolean(store.getState().query))) { - onInput(_objectSpread2({ - event: event, - props: props, - query: store.getState().query, - refresh: refresh, - store: store - }, setters)).then(function () { - store.dispatch(event.key, { - nextActiveItemId: props.defaultActiveItemId - }); - triggerOnActive(); - // Since we rely on the DOM, we need to wait for all the micro tasks to - // finish (which include re-opening the panel) to make sure all the - // elements are available. - setTimeout(triggerScrollIntoView, 0); - }); - } else { - store.dispatch(event.key, {}); - triggerOnActive(); - triggerScrollIntoView(); - } - } else if (event.key === 'Escape') { - // This prevents the default browser behavior on `input[type="search"]` - // from removing the query right away because we first want to close the - // panel. - event.preventDefault(); - store.dispatch(event.key, null); - - // Hitting the `Escape` key signals the end of a user interaction with the - // autocomplete. At this point, we should ignore any requests that are still - // pending and could reopen the panel once they resolve, because that would - // result in an unsolicited UI behavior. - store.pendingRequests.cancelAll(); - } else if (event.key === 'Tab') { - store.dispatch('blur', null); - - // Hitting the `Tab` key signals the end of a user interaction with the - // autocomplete. At this point, we should ignore any requests that are still - // pending and could reopen the panel once they resolve, because that would - // result in an unsolicited UI behavior. - store.pendingRequests.cancelAll(); - } else if (event.key === 'Enter') { - // No active item, so we let the browser handle the native `onSubmit` form - // event. - if (store.getState().activeItemId === null || store.getState().collections.every(function (collection) { - return collection.items.length === 0; - })) { - // If requests are still pending when the panel closes, they could reopen - // the panel once they resolve. - // We want to prevent any subsequent query from reopening the panel - // because it would result in an unsolicited UI behavior. - if (!props.debug) { - store.pendingRequests.cancelAll(); - } - return; - } - - // This prevents the `onSubmit` event to be sent because an item is - // highlighted. - event.preventDefault(); - var _ref2 = getActiveItem(store.getState()), - item = _ref2.item, - itemInputValue = _ref2.itemInputValue, - itemUrl = _ref2.itemUrl, - source = _ref2.source; - if (event.metaKey || event.ctrlKey) { - if (itemUrl !== undefined) { - source.onSelect(_objectSpread2({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - props.navigator.navigateNewTab({ - itemUrl: itemUrl, - item: item, - state: store.getState() - }); - } - } else if (event.shiftKey) { - if (itemUrl !== undefined) { - source.onSelect(_objectSpread2({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - props.navigator.navigateNewWindow({ - itemUrl: itemUrl, - item: item, - state: store.getState() - }); - } - } else if (event.altKey) ; else { - if (itemUrl !== undefined) { - source.onSelect(_objectSpread2({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - props.navigator.navigate({ - itemUrl: itemUrl, - item: item, - state: store.getState() - }); - return; - } - onInput(_objectSpread2({ - event: event, - nextState: { - isOpen: false - }, - props: props, - query: itemInputValue, - refresh: refresh, - store: store - }, setters)).then(function () { - source.onSelect(_objectSpread2({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - }); - } - } - } - - var _excluded = ["props", "refresh", "store"], - _excluded2 = ["inputElement", "formElement", "panelElement"], - _excluded3 = ["inputElement"], - _excluded4 = ["inputElement", "maxLength"], - _excluded5 = ["source"], - _excluded6 = ["item", "source"]; - function getPropGetters(_ref) { - var props = _ref.props, - refresh = _ref.refresh, - store = _ref.store, - setters = _objectWithoutProperties$1(_ref, _excluded); - var getEnvironmentProps = function getEnvironmentProps(providedProps) { - var inputElement = providedProps.inputElement, - formElement = providedProps.formElement, - panelElement = providedProps.panelElement, - rest = _objectWithoutProperties$1(providedProps, _excluded2); - function onMouseDownOrTouchStart(event) { - // The `onTouchStart`/`onMouseDown` events shouldn't trigger the `blur` - // handler when it's not an interaction with Autocomplete. - // We detect it with the following heuristics: - // - the panel is closed AND there are no pending requests - // (no interaction with the autocomplete, no future state updates) - // - OR the touched target is the input element (should open the panel) - var isAutocompleteInteraction = store.getState().isOpen || !store.pendingRequests.isEmpty(); - if (!isAutocompleteInteraction || event.target === inputElement) { - return; - } - - // @TODO: support cases where there are multiple Autocomplete instances. - // Right now, a second instance makes this computation return false. - var isTargetWithinAutocomplete = [formElement, panelElement].some(function (contextNode) { - return isOrContainsNode(contextNode, event.target); - }); - if (isTargetWithinAutocomplete === false) { - store.dispatch('blur', null); - - // If requests are still pending when the user closes the panel, they - // could reopen the panel once they resolve. - // We want to prevent any subsequent query from reopening the panel - // because it would result in an unsolicited UI behavior. - if (!props.debug) { - store.pendingRequests.cancelAll(); - } - } - } - return _objectSpread2({ - // We do not rely on the native `blur` event of the input to close the - // panel, but rather on a custom `touchstart`/`mousedown` event outside - // of the autocomplete elements. - // This ensures we don't mistakenly interpret interactions within the - // autocomplete (but outside of the input) as a signal to close the panel. - // For example, clicking reset button causes an input blur, but if - // `openOnFocus=true`, it shouldn't close the panel. - // On touch devices, scrolling results (`touchmove`) causes an input blur - // but shouldn't close the panel. - onTouchStart: onMouseDownOrTouchStart, - onMouseDown: onMouseDownOrTouchStart, - // When scrolling on touch devices (mobiles, tablets, etc.), we want to - // mimic the native platform behavior where the input is blurred to - // hide the virtual keyboard. This gives more vertical space to - // discover all the suggestions showing up in the panel. - onTouchMove: function onTouchMove(event) { - if (store.getState().isOpen === false || inputElement !== props.environment.document.activeElement || event.target === inputElement) { - return; - } - inputElement.blur(); - } - }, rest); - }; - var getRootProps = function getRootProps(rest) { - return _objectSpread2({ - role: 'combobox', - 'aria-expanded': store.getState().isOpen, - 'aria-haspopup': 'listbox', - 'aria-controls': store.getState().isOpen ? store.getState().collections.map(function (_ref2) { - var source = _ref2.source; - return getAutocompleteElementId(props.id, 'list', source); - }).join(' ') : undefined, - 'aria-labelledby': getAutocompleteElementId(props.id, 'label') - }, rest); - }; - var getFormProps = function getFormProps(providedProps) { - providedProps.inputElement; - var rest = _objectWithoutProperties$1(providedProps, _excluded3); - return _objectSpread2({ - action: '', - noValidate: true, - role: 'search', - onSubmit: function onSubmit(event) { - var _providedProps$inputE; - event.preventDefault(); - props.onSubmit(_objectSpread2({ - event: event, - refresh: refresh, - state: store.getState() - }, setters)); - store.dispatch('submit', null); - (_providedProps$inputE = providedProps.inputElement) === null || _providedProps$inputE === void 0 ? void 0 : _providedProps$inputE.blur(); - }, - onReset: function onReset(event) { - var _providedProps$inputE2; - event.preventDefault(); - props.onReset(_objectSpread2({ - event: event, - refresh: refresh, - state: store.getState() - }, setters)); - store.dispatch('reset', null); - (_providedProps$inputE2 = providedProps.inputElement) === null || _providedProps$inputE2 === void 0 ? void 0 : _providedProps$inputE2.focus(); - } - }, rest); - }; - var getInputProps = function getInputProps(providedProps) { - var _props$environment$na; - function onFocus(event) { - // We want to trigger a query when `openOnFocus` is true - // because the panel should open with the current query. - if (props.openOnFocus || Boolean(store.getState().query)) { - onInput(_objectSpread2({ - event: event, - props: props, - query: store.getState().completion || store.getState().query, - refresh: refresh, - store: store - }, setters)); - } - store.dispatch('focus', null); - } - var _ref3 = providedProps || {}; - _ref3.inputElement; - var _ref3$maxLength = _ref3.maxLength, - maxLength = _ref3$maxLength === void 0 ? 512 : _ref3$maxLength, - rest = _objectWithoutProperties$1(_ref3, _excluded4); - var activeItem = getActiveItem(store.getState()); - var userAgent = ((_props$environment$na = props.environment.navigator) === null || _props$environment$na === void 0 ? void 0 : _props$environment$na.userAgent) || ''; - var shouldFallbackKeyHint = isSamsung(userAgent); - var enterKeyHint = props.enterKeyHint || (activeItem !== null && activeItem !== void 0 && activeItem.itemUrl && !shouldFallbackKeyHint ? 'go' : 'search'); - return _objectSpread2({ - 'aria-autocomplete': 'both', - 'aria-activedescendant': store.getState().isOpen && store.getState().activeItemId !== null ? getAutocompleteElementId(props.id, "item-".concat(store.getState().activeItemId), activeItem === null || activeItem === void 0 ? void 0 : activeItem.source) : undefined, - 'aria-controls': store.getState().isOpen ? store.getState().collections.map(function (_ref4) { - var source = _ref4.source; - return getAutocompleteElementId(props.id, 'list', source); - }).join(' ') : undefined, - 'aria-labelledby': getAutocompleteElementId(props.id, 'label'), - value: store.getState().completion || store.getState().query, - id: getAutocompleteElementId(props.id, 'input'), - autoComplete: 'off', - autoCorrect: 'off', - autoCapitalize: 'off', - enterKeyHint: enterKeyHint, - spellCheck: 'false', - autoFocus: props.autoFocus, - placeholder: props.placeholder, - maxLength: maxLength, - type: 'search', - onChange: function onChange(event) { - var value = event.currentTarget.value; - if (props.ignoreCompositionEvents && getNativeEvent(event).isComposing) { - setters.setQuery(value); - return; - } - onInput(_objectSpread2({ - event: event, - props: props, - query: value.slice(0, maxLength), - refresh: refresh, - store: store - }, setters)); - }, - onCompositionEnd: function onCompositionEnd(event) { - onInput(_objectSpread2({ - event: event, - props: props, - query: event.currentTarget.value.slice(0, maxLength), - refresh: refresh, - store: store - }, setters)); - }, - onKeyDown: function onKeyDown$1(event) { - if (getNativeEvent(event).isComposing) { - return; - } - onKeyDown(_objectSpread2({ - event: event, - props: props, - refresh: refresh, - store: store - }, setters)); - }, - onFocus: onFocus, - // We don't rely on the `blur` event. - // See explanation in `onTouchStart`/`onMouseDown`. - // @MAJOR See if we need to keep this handler. - onBlur: noop, - onClick: function onClick(event) { - // When the panel is closed and you click on the input while - // the input is focused, the `onFocus` event is not triggered - // (default browser behavior). - // In an autocomplete context, it makes sense to open the panel in this - // case. - // We mimic this event by catching the `onClick` event which - // triggers the `onFocus` for the panel to open. - if (providedProps.inputElement === props.environment.document.activeElement && !store.getState().isOpen) { - onFocus(event); - } - } - }, rest); - }; - var getLabelProps = function getLabelProps(rest) { - return _objectSpread2({ - htmlFor: getAutocompleteElementId(props.id, 'input'), - id: getAutocompleteElementId(props.id, 'label') - }, rest); - }; - var getListProps = function getListProps(providedProps) { - var _ref5 = providedProps || {}, - source = _ref5.source, - rest = _objectWithoutProperties$1(_ref5, _excluded5); - return _objectSpread2({ - role: 'listbox', - 'aria-labelledby': getAutocompleteElementId(props.id, 'label'), - id: getAutocompleteElementId(props.id, 'list', source) - }, rest); - }; - var getPanelProps = function getPanelProps(rest) { - return _objectSpread2({ - onMouseDown: function onMouseDown(event) { - // Prevents the `activeElement` from being changed to the panel so - // that the blur event is not triggered, otherwise it closes the - // panel. - event.preventDefault(); - }, - onMouseLeave: function onMouseLeave() { - store.dispatch('mouseleave', null); - } - }, rest); - }; - var getItemProps = function getItemProps(providedProps) { - var item = providedProps.item, - source = providedProps.source, - rest = _objectWithoutProperties$1(providedProps, _excluded6); - return _objectSpread2({ - id: getAutocompleteElementId(props.id, "item-".concat(item.__autocomplete_id), source), - role: 'option', - 'aria-selected': store.getState().activeItemId === item.__autocomplete_id, - onMouseMove: function onMouseMove(event) { - if (item.__autocomplete_id === store.getState().activeItemId) { - return; - } - store.dispatch('mousemove', item.__autocomplete_id); - var activeItem = getActiveItem(store.getState()); - if (store.getState().activeItemId !== null && activeItem) { - var _item = activeItem.item, - itemInputValue = activeItem.itemInputValue, - itemUrl = activeItem.itemUrl, - _source = activeItem.source; - _source.onActive(_objectSpread2({ - event: event, - item: _item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: _source, - state: store.getState() - }, setters)); - } - }, - onMouseDown: function onMouseDown(event) { - // Prevents the `activeElement` from being changed to the item so it - // can remain with the current `activeElement`. - event.preventDefault(); - }, - onClick: function onClick(event) { - var itemInputValue = source.getItemInputValue({ - item: item, - state: store.getState() - }); - var itemUrl = source.getItemUrl({ - item: item, - state: store.getState() - }); - - // If `getItemUrl` is provided, it means that the suggestion - // is a link, not plain text that aims at updating the query. - // We can therefore skip the state change because it will update - // the `activeItemId`, resulting in a UI flash, especially - // noticeable on mobile. - var runPreCommand = itemUrl ? Promise.resolve() : onInput(_objectSpread2({ - event: event, - nextState: { - isOpen: false - }, - props: props, - query: itemInputValue, - refresh: refresh, - store: store - }, setters)); - runPreCommand.then(function () { - source.onSelect(_objectSpread2({ - event: event, - item: item, - itemInputValue: itemInputValue, - itemUrl: itemUrl, - refresh: refresh, - source: source, - state: store.getState() - }, setters)); - }); - } - }, rest); - }; - return { - getEnvironmentProps: getEnvironmentProps, - getRootProps: getRootProps, - getFormProps: getFormProps, - getLabelProps: getLabelProps, - getInputProps: getInputProps, - getPanelProps: getPanelProps, - getListProps: getListProps, - getItemProps: getItemProps - }; - } - - function getMetadata(_ref) { - var _, _options$__autocomple, _options$__autocomple2, _options$__autocomple3; - var plugins = _ref.plugins, - options = _ref.options; - var optionsKey = (_ = (((_options$__autocomple = options.__autocomplete_metadata) === null || _options$__autocomple === void 0 ? void 0 : _options$__autocomple.userAgents) || [])[0]) === null || _ === void 0 ? void 0 : _.segment; - var extraOptions = optionsKey ? _defineProperty$2({}, optionsKey, Object.keys(((_options$__autocomple2 = options.__autocomplete_metadata) === null || _options$__autocomple2 === void 0 ? void 0 : _options$__autocomple2.options) || {})) : {}; - return { - plugins: plugins.map(function (plugin) { - return { - name: plugin.name, - options: Object.keys(plugin.__autocomplete_pluginOptions || []) - }; - }), - options: _objectSpread2({ - 'autocomplete-core': Object.keys(options) - }, extraOptions), - ua: userAgents.concat(((_options$__autocomple3 = options.__autocomplete_metadata) === null || _options$__autocomple3 === void 0 ? void 0 : _options$__autocomple3.userAgents) || []) - }; - } - function injectMetadata(_ref3) { - var _environment$navigato, _environment$navigato2; - var metadata = _ref3.metadata, - environment = _ref3.environment; - var isMetadataEnabled = (_environment$navigato = environment.navigator) === null || _environment$navigato === void 0 ? void 0 : (_environment$navigato2 = _environment$navigato.userAgent) === null || _environment$navigato2 === void 0 ? void 0 : _environment$navigato2.includes('Algolia Crawler'); - if (isMetadataEnabled) { - var metadataContainer = environment.document.createElement('meta'); - var headRef = environment.document.querySelector('head'); - metadataContainer.name = 'algolia:metadata'; - setTimeout(function () { - metadataContainer.content = JSON.stringify(metadata); - headRef.appendChild(metadataContainer); - }, 0); - } - } - - function getCompletion(_ref) { - var _getActiveItem; - var state = _ref.state; - if (state.isOpen === false || state.activeItemId === null) { - return null; - } - return ((_getActiveItem = getActiveItem(state)) === null || _getActiveItem === void 0 ? void 0 : _getActiveItem.itemInputValue) || null; - } - - var stateReducer = function stateReducer(state, action) { - switch (action.type) { - case 'setActiveItemId': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: action.payload - }); - } - case 'setQuery': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - query: action.payload, - completion: null - }); - } - case 'setCollections': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - collections: action.payload - }); - } - case 'setIsOpen': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - isOpen: action.payload - }); - } - case 'setStatus': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - status: action.payload - }); - } - case 'setContext': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - context: _objectSpread2(_objectSpread2({}, state.context), action.payload) - }); - } - case 'ArrowDown': - { - var nextState = _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: action.payload.hasOwnProperty('nextActiveItemId') ? action.payload.nextActiveItemId : getNextActiveItemId(1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId) - }); - return _objectSpread2(_objectSpread2({}, nextState), {}, { - completion: getCompletion({ - state: nextState - }) - }); - } - case 'ArrowUp': - { - var _nextState = _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: getNextActiveItemId(-1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId) - }); - return _objectSpread2(_objectSpread2({}, _nextState), {}, { - completion: getCompletion({ - state: _nextState - }) - }); - } - case 'Escape': - { - if (state.isOpen) { - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: null, - isOpen: false, - completion: null - }); - } - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: null, - query: '', - status: 'idle', - collections: [] - }); - } - case 'submit': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: null, - isOpen: false, - status: 'idle' - }); - } - case 'reset': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: - // Since we open the panel on reset when openOnFocus=true - // we need to restore the highlighted index to the defaultActiveItemId. (DocSearch use-case) - - // Since we close the panel when openOnFocus=false - // we lose track of the highlighted index. (Query-suggestions use-case) - action.props.openOnFocus === true ? action.props.defaultActiveItemId : null, - status: 'idle', - completion: null, - query: '' - }); - } - case 'focus': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: action.props.defaultActiveItemId, - isOpen: (action.props.openOnFocus || Boolean(state.query)) && action.props.shouldPanelOpen({ - state: state - }) - }); - } - case 'blur': - { - if (action.props.debug) { - return state; - } - return _objectSpread2(_objectSpread2({}, state), {}, { - isOpen: false, - activeItemId: null - }); - } - case 'mousemove': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: action.payload - }); - } - case 'mouseleave': - { - return _objectSpread2(_objectSpread2({}, state), {}, { - activeItemId: action.props.defaultActiveItemId - }); - } - default: - invariant(false, "The reducer action ".concat(JSON.stringify(action.type), " is not supported.")); - return state; - } - }; - - function createAutocomplete(options) { - checkOptions(options); - var subscribers = []; - var props = getDefaultProps(options, subscribers); - var store = createStore(stateReducer, props, onStoreStateChange); - var setters = getAutocompleteSetters({ - store: store - }); - var propGetters = getPropGetters(_objectSpread2({ - props: props, - refresh: refresh, - store: store, - navigator: props.navigator - }, setters)); - function onStoreStateChange(_ref) { - var _state$context, _state$context$algoli; - var prevState = _ref.prevState, - state = _ref.state; - props.onStateChange(_objectSpread2({ - prevState: prevState, - state: state, - refresh: refresh, - navigator: props.navigator - }, setters)); - if (!isAlgoliaInsightsPluginEnabled() && (_state$context = state.context) !== null && _state$context !== void 0 && (_state$context$algoli = _state$context.algoliaInsightsPlugin) !== null && _state$context$algoli !== void 0 && _state$context$algoli.__automaticInsights && props.insights !== false) { - var plugin = createAlgoliaInsightsPlugin({ - __autocomplete_clickAnalytics: false - }); - props.plugins.push(plugin); - subscribePlugins([plugin]); - } - } - function refresh() { - return onInput(_objectSpread2({ - event: new Event('input'), - nextState: { - isOpen: store.getState().isOpen - }, - props: props, - navigator: props.navigator, - query: store.getState().query, - refresh: refresh, - store: store - }, setters)); - } - function subscribePlugins(plugins) { - plugins.forEach(function (plugin) { - var _plugin$subscribe; - return (_plugin$subscribe = plugin.subscribe) === null || _plugin$subscribe === void 0 ? void 0 : _plugin$subscribe.call(plugin, _objectSpread2(_objectSpread2({}, setters), {}, { - navigator: props.navigator, - refresh: refresh, - onSelect: function onSelect(fn) { - subscribers.push({ - onSelect: fn - }); - }, - onActive: function onActive(fn) { - subscribers.push({ - onActive: fn - }); - }, - onResolve: function onResolve(fn) { - subscribers.push({ - onResolve: fn - }); - } - })); - }); - } - function isAlgoliaInsightsPluginEnabled() { - return props.plugins.some(function (plugin) { - return plugin.name === 'aa.algoliaInsightsPlugin'; - }); - } - if (props.insights && !isAlgoliaInsightsPluginEnabled()) { - var insightsParams = typeof props.insights === 'boolean' ? {} : props.insights; - props.plugins.push(createAlgoliaInsightsPlugin(insightsParams)); - } - subscribePlugins(props.plugins); - injectMetadata({ - metadata: getMetadata({ - plugins: props.plugins, - options: options - }), - environment: props.environment - }); - return _objectSpread2(_objectSpread2({ - refresh: refresh, - navigator: props.navigator - }, propGetters), setters); - } - - exports.createAutocomplete = createAutocomplete; - exports.getDefaultProps = getDefaultProps; - - Object.defineProperty(exports, '__esModule', { value: true }); - -})); -//# sourceMappingURL=index.development.js.map diff --git a/node_modules/@algolia/autocomplete-core/dist/umd/index.development.js.map b/node_modules/@algolia/autocomplete-core/dist/umd/index.development.js.map deleted file mode 100644 index db2a9e0..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/umd/index.development.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.development.js","sources":["../../../autocomplete-shared/dist/esm/createRef.js","../../../autocomplete-shared/dist/esm/debounce.js","../../../autocomplete-shared/dist/esm/decycle.js","../../../autocomplete-shared/dist/esm/flatten.js","../../../autocomplete-shared/dist/esm/generateAutocompleteId.js","../../../autocomplete-shared/dist/esm/getItemsCount.js","../../../autocomplete-shared/dist/esm/invariant.js","../../../autocomplete-shared/dist/esm/isEqual.js","../../../autocomplete-shared/dist/esm/noop.js","../../../autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../../autocomplete-shared/dist/esm/version.js","../../../autocomplete-shared/dist/esm/userAgents.js","../../../autocomplete-shared/dist/esm/warn.js","../../../autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.js","../../../autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.js","../../../autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.js","../../../autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.js","../../../autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.js","../../../autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.js","../../src/checkOptions.ts","../../src/utils/createCancelablePromise.ts","../../src/utils/createCancelablePromiseList.ts","../../src/utils/createConcurrentSafePromise.ts","../../src/utils/getNextActiveItemId.ts","../../src/utils/getNormalizedSources.ts","../../src/utils/getActiveItem.ts","../../src/utils/getAutocompleteElementId.ts","../../src/utils/isOrContainsNode.ts","../../src/utils/isSamsung.ts","../../src/utils/mapToAlgoliaResponse.ts","../../src/utils/getNativeEvent.ts","../../src/createStore.ts","../../src/getAutocompleteSetters.ts","../../src/getDefaultProps.ts","../../src/reshape.ts","../../src/resolve.ts","../../src/onInput.ts","../../src/onKeyDown.ts","../../src/getPropGetters.ts","../../src/metadata.ts","../../src/getCompletion.ts","../../src/stateReducer.ts","../../src/createAutocomplete.ts"],"sourcesContent":["export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n/**\n * Decycles objects with circular references.\n * This is used to print cyclic structures in development environment only.\n */\nexport function decycle(obj) {\n var seen = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Set();\n if (!(process.env.NODE_ENV !== 'production') || !obj || _typeof(obj) !== 'object') {\n return obj;\n }\n if (seen.has(obj)) {\n return '[Circular]';\n }\n var newSeen = seen.add(obj);\n if (Array.isArray(obj)) {\n return obj.map(function (x) {\n return decycle(x, newSeen);\n });\n }\n return Object.fromEntries(Object.entries(obj).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n return [key, decycle(value, newSeen)];\n }));\n}","export function flatten(values) {\n return values.reduce(function (a, b) {\n return a.concat(b);\n }, []);\n}","var autocompleteId = 0;\nexport function generateAutocompleteId() {\n return \"autocomplete-\".concat(autocompleteId++);\n}","export function getItemsCount(state) {\n if (state.collections.length === 0) {\n return 0;\n }\n return state.collections.reduce(function (sum, collection) {\n return sum + collection.items.length;\n }, 0);\n}","/**\n * Throws an error if the condition is not met in development mode.\n * This is used to make development a better experience to provide guidance as\n * to where the error comes from.\n */\nexport function invariant(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n if (!condition) {\n throw new Error(\"[Autocomplete] \".concat(typeof message === 'function' ? message() : message));\n }\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","export var version = '1.17.7';","import { version } from './version';\nexport var userAgents = [{\n segment: 'autocomplete-core',\n version: version\n}];","export var warnCache = {\n current: {}\n};\n\n/**\n * Logs a warning if the condition is not met.\n * This is used to log issues in development environment only.\n */\nexport function warn(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n if (condition) {\n return;\n }\n var sanitizedMessage = message.trim();\n var hasAlreadyPrinted = warnCache.current[sanitizedMessage];\n if (!hasAlreadyPrinted) {\n warnCache.current[sanitizedMessage] = true;\n\n // eslint-disable-next-line no-console\n console.warn(\"[Autocomplete] \".concat(sanitizedMessage));\n }\n}","export function createClickedEvent(_ref) {\n var item = _ref.item,\n _ref$items = _ref.items,\n items = _ref$items === void 0 ? [] : _ref$items;\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex(function (x) {\n return x.objectID === item.objectID;\n })],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete']\n };\n}","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * Determines if a given insights `client` supports the optional call to `init`\n * and the ability to set credentials via extra parameters when sending events.\n */\nexport function isModernInsightsClient(client) {\n var _split$map = (client.version || '').split('.').map(Number),\n _split$map2 = _slicedToArray(_split$map, 2),\n major = _split$map2[0],\n minor = _split$map2[1];\n\n /* eslint-disable @typescript-eslint/camelcase */\n var v3 = major >= 3;\n var v2_4 = major === 2 && minor >= 4;\n var v1_10 = major === 1 && minor >= 10;\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}","var _excluded = [\"items\"],\n _excluded2 = [\"items\"];\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { isModernInsightsClient } from './isModernInsightsClient';\nfunction chunk(item) {\n var chunkSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20;\n var chunks = [];\n for (var i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push(_objectSpread(_objectSpread({}, item), {}, {\n objectIDs: item.objectIDs.slice(i, i + chunkSize)\n }));\n }\n return chunks;\n}\nfunction mapToInsightsParamsApi(params) {\n return params.map(function (_ref) {\n var items = _ref.items,\n param = _objectWithoutProperties(_ref, _excluded);\n return _objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref2) {\n var objectID = _ref2.objectID;\n return objectID;\n })) || param.objectIDs\n });\n });\n}\nexport function createSearchInsightsApi(searchInsights) {\n var canSendHeaders = isModernInsightsClient(searchInsights);\n function sendToInsights(method, payloads, items) {\n if (canSendHeaders && typeof items !== 'undefined') {\n var _items$0$__autocomple = items[0].__autocomplete_algoliaCredentials,\n appId = _items$0$__autocomple.appId,\n apiKey = _items$0$__autocomple.apiKey;\n var headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey\n };\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads), [{\n headers: headers\n }]));\n } else {\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads)));\n }\n }\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init: function init(appId, apiKey) {\n searchInsights('init', {\n appId: appId,\n apiKey: apiKey\n });\n },\n /**\n * Sets the authenticated user token to attach to events.\n * Unsets the authenticated token by passing `undefined`.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/\n */\n setAuthenticatedUserToken: function setAuthenticatedUserToken(authenticatedUserToken) {\n searchInsights('setAuthenticatedUserToken', authenticatedUserToken);\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken: function setUserToken(userToken) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch: function clickedObjectIDsAfterSearch() {\n for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {\n params[_key] = arguments[_key];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs: function clickedObjectIDs() {\n for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n params[_key2] = arguments[_key2];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters: function clickedFilters() {\n for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n params[_key3] = arguments[_key3];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['clickedFilters'].concat(params));\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch: function convertedObjectIDsAfterSearch() {\n for (var _len4 = arguments.length, params = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n params[_key4] = arguments[_key4];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs: function convertedObjectIDs() {\n for (var _len5 = arguments.length, params = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n params[_key5] = arguments[_key5];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters: function convertedFilters() {\n for (var _len6 = arguments.length, params = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n params[_key6] = arguments[_key6];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['convertedFilters'].concat(params));\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs: function viewedObjectIDs() {\n for (var _len7 = arguments.length, params = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n params[_key7] = arguments[_key7];\n }\n if (params.length > 0) {\n params.reduce(function (acc, _ref3) {\n var items = _ref3.items,\n param = _objectWithoutProperties(_ref3, _excluded2);\n return [].concat(_toConsumableArray(acc), _toConsumableArray(chunk(_objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref4) {\n var objectID = _ref4.objectID;\n return objectID;\n })) || param.objectIDs\n })).map(function (payload) {\n return {\n items: items,\n payload: payload\n };\n })));\n }, []).forEach(function (_ref5) {\n var items = _ref5.items,\n payload = _ref5.payload;\n return sendToInsights('viewedObjectIDs', [payload], items);\n });\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters: function viewedFilters() {\n for (var _len8 = arguments.length, params = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n params[_key8] = arguments[_key8];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['viewedFilters'].concat(params));\n }\n }\n };\n}","export function createViewedEvents(_ref) {\n var items = _ref.items;\n var itemsByIndexName = items.reduce(function (acc, current) {\n var _acc$current$__autoco;\n acc[current.__autocomplete_indexName] = ((_acc$current$__autoco = acc[current.__autocomplete_indexName]) !== null && _acc$current$__autoco !== void 0 ? _acc$current$__autoco : []).concat(current);\n return acc;\n }, {});\n return Object.keys(itemsByIndexName).map(function (indexName) {\n var items = itemsByIndexName[indexName];\n return {\n index: indexName,\n items: items,\n algoliaSource: ['autocomplete']\n };\n });\n}","export function isAlgoliaInsightsHit(hit) {\n return hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID;\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { createRef, debounce, isEqual, noop, safelyRunOnBrowser } from '@algolia/autocomplete-shared';\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nvar VIEW_EVENT_DELAY = 400;\nvar ALGOLIA_INSIGHTS_VERSION = '2.15.0';\nvar ALGOLIA_INSIGHTS_SRC = \"https://cdn.jsdelivr.net/npm/search-insights@\".concat(ALGOLIA_INSIGHTS_VERSION, \"/dist/search-insights.min.js\");\nvar sendViewedObjectIDs = debounce(function (_ref) {\n var onItemsChange = _ref.onItemsChange,\n items = _ref.items,\n insights = _ref.insights,\n state = _ref.state;\n onItemsChange({\n insights: insights,\n insightsEvents: createViewedEvents({\n items: items\n }).map(function (event) {\n return _objectSpread({\n eventName: 'Items Viewed'\n }, event);\n }),\n state: state\n });\n}, VIEW_EVENT_DELAY);\nexport function createAlgoliaInsightsPlugin(options) {\n var _getOptions = getOptions(options),\n providedInsightsClient = _getOptions.insightsClient,\n insightsInitParams = _getOptions.insightsInitParams,\n onItemsChange = _getOptions.onItemsChange,\n onSelectEvent = _getOptions.onSelect,\n onActiveEvent = _getOptions.onActive,\n __autocomplete_clickAnalytics = _getOptions.__autocomplete_clickAnalytics;\n var insightsClient = providedInsightsClient;\n if (!providedInsightsClient) {\n safelyRunOnBrowser(function (_ref2) {\n var window = _ref2.window;\n var pointer = window.AlgoliaAnalyticsObject || 'aa';\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n if (!window[pointer]) {\n window[pointer] = function () {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n window[pointer].queue.push(args);\n };\n }\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n insightsClient = window[pointer];\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n if (insightsInitParams) {\n insightsClient('init', _objectSpread({\n partial: true\n }, insightsInitParams));\n }\n var insights = createSearchInsightsApi(insightsClient);\n var previousItems = createRef([]);\n var debouncedOnStateChange = debounce(function (_ref3) {\n var state = _ref3.state;\n if (!state.isOpen) {\n return;\n }\n var items = state.collections.reduce(function (acc, current) {\n return [].concat(_toConsumableArray(acc), _toConsumableArray(current.items));\n }, []).filter(isAlgoliaInsightsHit);\n if (!isEqual(previousItems.current.map(function (x) {\n return x.objectID;\n }), items.map(function (x) {\n return x.objectID;\n }))) {\n previousItems.current = items;\n if (items.length > 0) {\n sendViewedObjectIDs({\n onItemsChange: onItemsChange,\n items: items,\n insights: insights,\n state: state\n });\n }\n }\n }, 0);\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe: function subscribe(_ref4) {\n var setContext = _ref4.setContext,\n onSelect = _ref4.onSelect,\n onActive = _ref4.onActive;\n var isAuthenticatedToken = false;\n function setInsightsContext(userToken) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: _objectSpread(_objectSpread({}, __autocomplete_clickAnalytics ? {\n clickAnalytics: true\n } : {}), userToken ? {\n userToken: normalizeUserToken(userToken)\n } : {}),\n insights: insights\n }\n });\n }\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n setInsightsContext();\n\n // Handles user token changes\n insightsClient('onUserTokenChange', function (userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n insightsClient('getUserToken', null, function (_error, userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n\n // Handles authenticated user token changes\n insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n } else {\n isAuthenticatedToken = false;\n insightsClient('getUserToken', null, function (_error, userToken) {\n return setInsightsContext(userToken);\n });\n }\n });\n insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n }\n });\n onSelect(function (_ref5) {\n var item = _ref5.item,\n state = _ref5.state,\n event = _ref5.event,\n source = _ref5.source;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onSelectEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Selected'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n onActive(function (_ref6) {\n var item = _ref6.item,\n source = _ref6.source,\n state = _ref6.state,\n event = _ref6.event;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onActiveEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Active'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n },\n onStateChange: function onStateChange(_ref7) {\n var state = _ref7.state;\n debouncedOnStateChange({\n state: state\n });\n },\n __autocomplete_pluginOptions: options\n };\n}\nfunction getAlgoliaSources() {\n var _context$algoliaInsig;\n var algoliaSourceBase = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var context = arguments.length > 1 ? arguments[1] : undefined;\n return [].concat(_toConsumableArray(algoliaSourceBase), ['autocomplete-internal'], _toConsumableArray((_context$algoliaInsig = context.algoliaInsightsPlugin) !== null && _context$algoliaInsig !== void 0 && _context$algoliaInsig.__automaticInsights ? ['autocomplete-automatic'] : []));\n}\nfunction getOptions(options) {\n return _objectSpread({\n onItemsChange: function onItemsChange(_ref8) {\n var insights = _ref8.insights,\n insightsEvents = _ref8.insightsEvents,\n state = _ref8.state;\n insights.viewedObjectIDs.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onSelect: function onSelect(_ref9) {\n var insights = _ref9.insights,\n insightsEvents = _ref9.insightsEvents,\n state = _ref9.state;\n insights.clickedObjectIDsAfterSearch.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true\n }, options);\n}\nfunction loadInsights(environment) {\n var errorMessage = \"[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete\";\n try {\n var script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n script.onerror = function () {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n\n/**\n * While `search-insights` supports both string and number user tokens,\n * the Search API only accepts strings. This function normalizes the user token.\n */\nfunction normalizeUserToken(userToken) {\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}","import { warn } from '@algolia/autocomplete-shared';\n\nimport { AutocompleteOptions, BaseItem } from './types';\n\nexport function checkOptions(\n options: AutocompleteOptions\n) {\n warn(\n !options.debug,\n 'The `debug` option is meant for development debugging and should not be used in production.'\n );\n}\n","type PromiseExecutor = (\n resolve: (value: TValue | PromiseLike) => void,\n reject: (reason?: any) => void\n) => void;\n\ntype CancelablePromiseState = {\n isCanceled: boolean;\n onCancelList: Array<(...args: any[]) => any>;\n};\n\nfunction createInternalCancelablePromise(\n promise: Promise,\n initialState: CancelablePromiseState\n): CancelablePromise {\n const state = initialState;\n\n return {\n then(onfulfilled, onrejected) {\n return createInternalCancelablePromise(\n promise.then(\n createCallback(onfulfilled, state, promise),\n createCallback(onrejected, state, promise)\n ),\n state\n );\n },\n catch(onrejected) {\n return createInternalCancelablePromise(\n promise.catch(createCallback(onrejected, state, promise)),\n state\n );\n },\n finally(onfinally) {\n if (onfinally) {\n state.onCancelList.push(onfinally);\n }\n\n return createInternalCancelablePromise(\n promise.finally(\n createCallback(\n onfinally &&\n (() => {\n state.onCancelList = [];\n\n return onfinally();\n }),\n state,\n promise\n )\n ),\n state\n );\n },\n cancel() {\n state.isCanceled = true;\n const callbacks = state.onCancelList;\n state.onCancelList = [];\n\n callbacks.forEach((callback) => {\n callback();\n });\n },\n isCanceled() {\n return state.isCanceled === true;\n },\n };\n}\n\nexport type CancelablePromise = {\n then(\n onfulfilled?:\n | ((\n value: TValue\n ) =>\n | TResultFulfilled\n | PromiseLike\n | CancelablePromise)\n | undefined\n | null,\n onrejected?:\n | ((\n reason: any\n ) =>\n | TResultRejected\n | PromiseLike\n | CancelablePromise)\n | undefined\n | null\n ): CancelablePromise;\n catch(\n onrejected?:\n | ((\n reason: any\n ) => TResult | PromiseLike | CancelablePromise)\n | undefined\n | null\n ): CancelablePromise;\n finally(\n onfinally?: (() => void) | undefined | null\n ): CancelablePromise;\n cancel(): void;\n isCanceled(): boolean;\n};\n\nexport function createCancelablePromise(\n executor: PromiseExecutor\n): CancelablePromise {\n return createInternalCancelablePromise(\n new Promise((resolve, reject) => {\n return executor(resolve, reject);\n }),\n { isCanceled: false, onCancelList: [] }\n );\n}\n\ncreateCancelablePromise.resolve = (\n value?: TValue | PromiseLike | CancelablePromise\n) => cancelable(Promise.resolve(value));\n\ncreateCancelablePromise.reject = (reason?: any) =>\n cancelable(Promise.reject(reason));\n\nexport function cancelable(promise: Promise) {\n return createInternalCancelablePromise(promise, {\n isCanceled: false,\n onCancelList: [],\n });\n}\n\nfunction createCallback(\n onResult: ((...args: any[]) => any) | null | undefined,\n state: CancelablePromiseState,\n fallback: any\n) {\n if (!onResult) {\n return fallback;\n }\n\n return function callback(arg?: any) {\n if (state.isCanceled) {\n return arg;\n }\n\n return onResult(arg);\n };\n}\n","import { CancelablePromise } from '.';\n\nexport type CancelablePromiseList = {\n /**\n * Add a cancelable promise to the list.\n *\n * @param cancelablePromise The cancelable promise to add.\n */\n add(cancelablePromise: CancelablePromise): CancelablePromise;\n /**\n * Cancel all pending promises.\n *\n * Requests aren't actually stopped. All pending promises will settle, but\n * attached handlers won't run.\n */\n cancelAll(): void;\n /**\n * Whether there are pending promises in the list.\n */\n isEmpty(): boolean;\n};\n\nexport function createCancelablePromiseList<\n TValue\n>(): CancelablePromiseList {\n let list: Array> = [];\n\n return {\n add(cancelablePromise) {\n list.push(cancelablePromise);\n\n return cancelablePromise.finally(() => {\n list = list.filter((item) => item !== cancelablePromise);\n });\n },\n cancelAll() {\n list.forEach((promise) => promise.cancel());\n },\n isEmpty() {\n return list.length === 0;\n },\n };\n}\n","import { MaybePromise } from '@algolia/autocomplete-shared';\n\n/**\n * Creates a runner that executes promises in a concurrent-safe way.\n *\n * This is useful to prevent older promises to resolve after a newer promise,\n * otherwise resulting in stale resolved values.\n */\nexport function createConcurrentSafePromise() {\n let basePromiseId = -1;\n let latestResolvedId = -1;\n let latestResolvedValue: unknown = undefined;\n\n return function runConcurrentSafePromise(\n promise: MaybePromise\n ) {\n basePromiseId++;\n const currentPromiseId = basePromiseId;\n\n return Promise.resolve(promise).then((x) => {\n // The promise might take too long to resolve and get outdated. This would\n // result in resolving stale values.\n // When this happens, we ignore the promise value and return the one\n // coming from the latest resolved value.\n //\n // +----------------------------------+\n // | 100ms |\n // | run(1) +---> R1 |\n // | 300ms |\n // | run(2) +-------------> R2 (SKIP) |\n // | 200ms |\n // | run(3) +--------> R3 |\n // +----------------------------------+\n if (latestResolvedValue && currentPromiseId < latestResolvedId) {\n return latestResolvedValue as TValue;\n }\n\n latestResolvedId = currentPromiseId;\n latestResolvedValue = x;\n\n return x;\n });\n };\n}\n","/**\n * Returns the next active item ID from the current state.\n *\n * We allow circular keyboard navigation from the base index.\n * The base index can either be `null` (nothing is highlighted) or `0`\n * (the first item is highlighted).\n * The base index is allowed to get assigned `null` only if\n * `props.defaultActiveItemId` is `null`. This pattern allows to \"stop\"\n * by the actual query before navigating to other suggestions as seen on\n * Google or Amazon.\n *\n * @param moveAmount The offset to increment (or decrement) the last index\n * @param baseIndex The current index to compute the next index from\n * @param itemCount The number of items\n * @param defaultActiveItemId The default active index to fallback to\n */\nexport function getNextActiveItemId(\n moveAmount: number,\n baseIndex: number | null,\n itemCount: number,\n defaultActiveItemId: number | null\n): number | null {\n if (!itemCount) {\n return null;\n }\n\n if (\n moveAmount < 0 &&\n (baseIndex === null || (defaultActiveItemId !== null && baseIndex === 0))\n ) {\n return itemCount + moveAmount;\n }\n\n const numericIndex = (baseIndex === null ? -1 : baseIndex) + moveAmount;\n\n if (numericIndex <= -1 || numericIndex >= itemCount) {\n return defaultActiveItemId === null ? null : 0;\n }\n\n return numericIndex;\n}\n","import { invariant, decycle, noop } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteSource,\n BaseItem,\n GetSources,\n GetSourcesParams,\n InternalAutocompleteSource,\n InternalGetSources,\n} from '../types';\n\nexport function getNormalizedSources(\n getSources: GetSources,\n params: GetSourcesParams\n): ReturnType> {\n const seenSourceIds: string[] = [];\n\n return Promise.resolve(getSources(params)).then((sources) => {\n invariant(\n Array.isArray(sources),\n () =>\n `The \\`getSources\\` function must return an array of sources but returned type ${JSON.stringify(\n typeof sources\n )}:\\n\\n${JSON.stringify(decycle(sources), null, 2)}`\n );\n\n return Promise.all(\n sources\n // We allow `undefined` and `false` sources to allow users to use\n // `Boolean(query) && source` (=> `false`).\n // We need to remove these values at this point.\n .filter((maybeSource: any): maybeSource is AutocompleteSource =>\n Boolean(maybeSource)\n )\n .map((source) => {\n invariant(\n typeof source.sourceId === 'string',\n 'A source must provide a `sourceId` string.'\n );\n\n if (seenSourceIds.includes(source.sourceId)) {\n throw new Error(\n `[Autocomplete] The \\`sourceId\\` ${JSON.stringify(\n source.sourceId\n )} is not unique.`\n );\n }\n\n seenSourceIds.push(source.sourceId);\n\n const defaultSource: Omit<\n InternalAutocompleteSource,\n 'sourceId' | 'getItems'\n > = {\n getItemInputValue({ state }) {\n return state.query;\n },\n getItemUrl() {\n return undefined;\n },\n onSelect({ setIsOpen }) {\n setIsOpen(false);\n },\n onActive: noop,\n onResolve: noop,\n };\n\n Object.keys(defaultSource).forEach((key) => {\n defaultSource[key].__default = true;\n });\n\n const normalizedSource: InternalAutocompleteSource = {\n ...defaultSource,\n ...source,\n };\n\n return Promise.resolve(normalizedSource);\n })\n );\n });\n}\n","import { AutocompleteCollection, AutocompleteState, BaseItem } from '../types';\n\n// We don't have access to the autocomplete source when we call `onKeyDown`\n// or `onClick` because those are native browser events.\n// However, we can get the source from the suggestion index.\nfunction getCollectionFromActiveItemId(\n state: AutocompleteState\n): AutocompleteCollection | undefined {\n // Given 3 sources with respectively 1, 2 and 3 suggestions: [1, 2, 3]\n // We want to get the accumulated counts:\n // [1, 1 + 2, 1 + 2 + 3] = [1, 3, 3 + 3] = [1, 3, 6]\n const accumulatedCollectionsCount = state.collections\n .map((collections) => collections.items.length)\n .reduce((acc, collectionsCount, index) => {\n const previousValue = acc[index - 1] || 0;\n const nextValue = previousValue + collectionsCount;\n\n acc.push(nextValue);\n\n return acc;\n }, []);\n\n // Based on the accumulated counts, we can infer the index of the suggestion.\n const collectionIndex = accumulatedCollectionsCount.reduce((acc, current) => {\n if (current <= state.activeItemId!) {\n return acc + 1;\n }\n\n return acc;\n }, 0);\n\n return state.collections[collectionIndex];\n}\n\n/**\n * Gets the highlighted index relative to a suggestion object (not the absolute\n * highlighted index).\n *\n * Example:\n * [['a', 'b'], ['c', 'd', 'e'], ['f']]\n * ↑\n * (absolute: 3, relative: 1)\n */\nfunction getRelativeActiveItemId({\n state,\n collection,\n}: {\n state: AutocompleteState;\n collection: AutocompleteCollection;\n}): number {\n let isOffsetFound = false;\n let counter = 0;\n let previousItemsOffset = 0;\n\n while (isOffsetFound === false) {\n const currentCollection = state.collections[counter];\n\n if (currentCollection === collection) {\n isOffsetFound = true;\n break;\n }\n\n previousItemsOffset += currentCollection.items.length;\n\n counter++;\n }\n\n return state.activeItemId! - previousItemsOffset;\n}\n\nexport function getActiveItem(\n state: AutocompleteState\n) {\n const collection = getCollectionFromActiveItemId(state);\n\n if (!collection) {\n return null;\n }\n\n const item = collection.items[getRelativeActiveItemId({ state, collection })];\n const source = collection.source;\n const itemInputValue = source.getItemInputValue({ item, state });\n const itemUrl = source.getItemUrl({ item, state });\n\n return {\n item,\n itemInputValue,\n itemUrl,\n source,\n };\n}\n","import type { InternalAutocompleteSource } from '../types';\n\n/**\n * Returns a full element id for an autocomplete element.\n *\n * @param autocompleteInstanceId The id of the autocomplete instance\n * @param elementId The specific element id\n * @param source The source of the element, when it needs to be scoped\n */\nexport function getAutocompleteElementId(\n autocompleteInstanceId: string,\n elementId: string,\n source?: InternalAutocompleteSource\n) {\n return [autocompleteInstanceId, source?.sourceId, elementId]\n .filter(Boolean)\n .join('-')\n .replace(/\\s/g, '');\n}\n","export function isOrContainsNode(parent: Node, child: Node) {\n return parent === child || parent.contains(child);\n}\n","const regex = /((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;\n\nexport function isSamsung(userAgent: string) {\n return Boolean(userAgent && userAgent.match(regex));\n}\n","import type { SearchResponse } from '@algolia/autocomplete-shared';\nimport type { SearchForFacetValuesResponse } from '@algolia/client-search';\n\nexport function mapToAlgoliaResponse(\n rawResults: Array | SearchForFacetValuesResponse>\n) {\n return {\n results: rawResults,\n hits: rawResults\n .map((result) => (result as SearchResponse).hits)\n .filter(Boolean),\n facetHits: rawResults\n .map((result) =>\n (result as SearchForFacetValuesResponse).facetHits?.map((facetHit) => {\n // Bring support for the highlighting components.\n return {\n label: facetHit.value,\n count: facetHit.count,\n _highlightResult: {\n label: {\n value: facetHit.highlighted,\n },\n },\n };\n })\n )\n .filter(Boolean),\n };\n}\n","export function getNativeEvent(event: TEvent) {\n return (event as unknown as { nativeEvent: TEvent }).nativeEvent || event;\n}\n","import {\n AutocompleteState,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteOptions,\n Reducer,\n} from './types';\nimport { createCancelablePromiseList } from './utils';\n\ntype OnStoreStateChange = ({\n prevState,\n state,\n}: {\n prevState: AutocompleteState;\n state: AutocompleteState;\n}) => void;\n\nexport function createStore(\n reducer: Reducer,\n props: InternalAutocompleteOptions,\n onStoreStateChange: OnStoreStateChange\n): AutocompleteStore {\n let state = props.initialState;\n\n return {\n getState() {\n return state;\n },\n dispatch(action, payload) {\n const prevState = { ...state };\n state = reducer(state, {\n type: action,\n props,\n payload,\n });\n\n onStoreStateChange({ state, prevState });\n },\n pendingRequests: createCancelablePromiseList(),\n };\n}\n","import { flatten } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteApi,\n AutocompleteCollection,\n AutocompleteStore,\n BaseItem,\n} from './types';\n\ninterface GetAutocompleteSettersOptions {\n store: AutocompleteStore;\n}\n\nexport function getAutocompleteSetters({\n store,\n}: GetAutocompleteSettersOptions) {\n const setActiveItemId: AutocompleteApi['setActiveItemId'] = (\n value\n ) => {\n store.dispatch('setActiveItemId', value);\n };\n\n const setQuery: AutocompleteApi['setQuery'] = (value) => {\n store.dispatch('setQuery', value);\n };\n\n const setCollections: AutocompleteApi['setCollections'] = (\n rawValue\n ) => {\n let baseItemId = 0;\n const value = rawValue.map>((collection) => ({\n ...collection,\n // We flatten the stored items to support calling `getAlgoliaResults`\n // from the source itself.\n items: flatten(collection.items as any).map((item: any) => ({\n ...item,\n __autocomplete_id: baseItemId++,\n })),\n }));\n\n store.dispatch('setCollections', value);\n };\n\n const setIsOpen: AutocompleteApi['setIsOpen'] = (value) => {\n store.dispatch('setIsOpen', value);\n };\n\n const setStatus: AutocompleteApi['setStatus'] = (value) => {\n store.dispatch('setStatus', value);\n };\n\n const setContext: AutocompleteApi['setContext'] = (value) => {\n store.dispatch('setContext', value);\n };\n\n return {\n setActiveItemId,\n setQuery,\n setCollections,\n setIsOpen,\n setStatus,\n setContext,\n };\n}\n","import {\n getItemsCount,\n generateAutocompleteId,\n flatten,\n} from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteEnvironment,\n AutocompleteOptions,\n AutocompleteSubscribers,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\nimport { getNormalizedSources } from './utils';\n\nexport function getDefaultProps(\n props: AutocompleteOptions,\n pluginSubscribers: AutocompleteSubscribers\n): InternalAutocompleteOptions {\n /* eslint-disable no-restricted-globals */\n const environment: AutocompleteEnvironment = (\n typeof window !== 'undefined' ? window : {}\n ) as typeof window;\n /* eslint-enable no-restricted-globals */\n const plugins = props.plugins || [];\n\n return {\n debug: false,\n openOnFocus: false,\n enterKeyHint: undefined,\n ignoreCompositionEvents: false,\n placeholder: '',\n autoFocus: false,\n defaultActiveItemId: null,\n stallThreshold: 300,\n insights: undefined,\n environment,\n shouldPanelOpen: ({ state }) => getItemsCount(state) > 0,\n reshape: ({ sources }) => sources,\n ...props,\n // Since `generateAutocompleteId` triggers a side effect (it increments\n // an internal counter), we don't want to execute it if unnecessary.\n id: props.id ?? generateAutocompleteId(),\n plugins,\n // The following props need to be deeply defaulted.\n initialState: {\n activeItemId: null,\n query: '',\n completion: null,\n collections: [],\n isOpen: false,\n status: 'idle',\n context: {},\n ...props.initialState,\n },\n onStateChange(params) {\n props.onStateChange?.(params);\n plugins.forEach((x) => x.onStateChange?.(params));\n },\n onSubmit(params) {\n props.onSubmit?.(params);\n plugins.forEach((x) => x.onSubmit?.(params));\n },\n onReset(params) {\n props.onReset?.(params);\n plugins.forEach((x) => x.onReset?.(params));\n },\n getSources(params) {\n return Promise.all(\n [...plugins.map((plugin) => plugin.getSources), props.getSources]\n .filter(Boolean)\n .map((getSources) => getNormalizedSources(getSources!, params))\n )\n .then((nested) => flatten(nested))\n .then((sources) =>\n sources.map((source) => ({\n ...source,\n onSelect(params) {\n source.onSelect(params);\n pluginSubscribers.forEach((x) => x.onSelect?.(params));\n },\n onActive(params) {\n source.onActive(params);\n pluginSubscribers.forEach((x) => x.onActive?.(params));\n },\n onResolve(params) {\n source.onResolve(params);\n pluginSubscribers.forEach((x) => x.onResolve?.(params));\n },\n }))\n );\n },\n navigator: {\n navigate({ itemUrl }) {\n environment.location.assign(itemUrl);\n },\n navigateNewTab({ itemUrl }) {\n const windowReference = environment.open(itemUrl, '_blank', 'noopener');\n windowReference?.focus();\n },\n navigateNewWindow({ itemUrl }) {\n environment.open(itemUrl, '_blank', 'noopener');\n },\n ...props.navigator,\n },\n };\n}\n","import { flatten } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteCollection,\n AutocompleteReshapeSourcesBySourceId,\n AutocompleteState,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\n\ntype ReshapeParams = {\n collections: Array>;\n props: InternalAutocompleteOptions;\n state: AutocompleteState;\n};\n\nexport function reshape({\n collections,\n props,\n state,\n}: ReshapeParams) {\n // Sources are grouped by `sourceId` to conveniently pick them via destructuring.\n // Example: `const { recentSearchesPlugin } = sourcesBySourceId`\n const originalSourcesBySourceId = collections.reduce<\n AutocompleteReshapeSourcesBySourceId\n >(\n (acc, collection) => ({\n ...acc,\n [collection.source.sourceId]: {\n ...collection.source,\n getItems() {\n // We provide the resolved items from the collection to the `reshape` prop.\n return flatten(collection.items);\n },\n },\n }),\n {}\n );\n\n const { sourcesBySourceId } = props.plugins.reduce(\n (acc, plugin) => {\n if (plugin.reshape) {\n return plugin.reshape(acc);\n }\n return acc;\n },\n {\n sourcesBySourceId: originalSourcesBySourceId,\n state,\n }\n );\n\n const reshapeSources = props.reshape({\n sourcesBySourceId,\n sources: Object.values(sourcesBySourceId),\n state,\n });\n\n // We reconstruct the collections with the items modified by the `reshape` prop.\n return flatten(reshapeSources)\n .filter(Boolean)\n .map((source) => {\n return {\n source,\n items: source.getItems(),\n };\n });\n}\n","import type {\n Execute,\n ExecuteResponse,\n RequesterDescription,\n TransformResponse,\n} from '@algolia/autocomplete-preset-algolia';\nimport { decycle, flatten, invariant } from '@algolia/autocomplete-shared';\nimport type { SearchResponse } from '@algolia/autocomplete-shared';\nimport {\n MultipleQueriesQuery,\n SearchForFacetValuesResponse,\n} from '@algolia/client-search';\nimport type { SearchClient } from 'algoliasearch/lite';\n\nimport {\n AutocompleteState,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteSource,\n OnResolveParams,\n} from './types';\nimport { mapToAlgoliaResponse } from './utils';\n\nfunction isDescription(\n item:\n | RequestDescriptionPreResolved\n | RequestDescriptionPreResolvedCustom\n | PackedDescription\n): item is RequestDescriptionPreResolved {\n return Boolean((item as RequestDescriptionPreResolved).execute);\n}\n\nfunction isRequesterDescription(\n description: TItem[] | TItem[][] | RequesterDescription\n): description is RequesterDescription {\n return Boolean((description as RequesterDescription)?.execute);\n}\n\ntype PackedDescription = {\n searchClient: SearchClient;\n execute: Execute;\n requesterId?: string;\n items: RequestDescriptionPreResolved['requests'];\n};\n\ntype RequestDescriptionPreResolved = Pick<\n RequesterDescription,\n 'execute' | 'requesterId' | 'searchClient' | 'transformResponse'\n> & {\n requests: Array<{\n query: MultipleQueriesQuery;\n sourceId: string;\n transformResponse: TransformResponse;\n }>;\n};\n\ntype RequestDescriptionPreResolvedCustom = {\n items: TItem[] | TItem[][];\n sourceId: string;\n transformResponse?: undefined;\n};\n\nexport function preResolve(\n itemsOrDescription: TItem[] | TItem[][] | RequesterDescription,\n sourceId: string,\n state: AutocompleteState\n):\n | RequestDescriptionPreResolved\n | RequestDescriptionPreResolvedCustom {\n if (isRequesterDescription(itemsOrDescription)) {\n const contextParameters =\n itemsOrDescription.requesterId === 'algolia'\n ? Object.assign(\n {},\n ...Object.keys(state.context).map((key) => {\n return (state.context[key] as Record)\n ?.__algoliaSearchParameters;\n })\n )\n : {};\n\n return {\n ...itemsOrDescription,\n requests: itemsOrDescription.queries.map((query) => ({\n query:\n itemsOrDescription.requesterId === 'algolia'\n ? {\n ...query,\n params: {\n ...contextParameters,\n ...query.params,\n },\n }\n : query,\n sourceId,\n transformResponse: itemsOrDescription.transformResponse,\n })),\n };\n }\n\n return {\n items: itemsOrDescription,\n sourceId,\n };\n}\n\nexport function resolve(\n items: Array<\n | RequestDescriptionPreResolved\n | RequestDescriptionPreResolvedCustom\n >\n) {\n const packed = items.reduce<\n Array | PackedDescription>\n >((acc, current) => {\n if (!isDescription(current)) {\n acc.push(current);\n return acc;\n }\n\n const { searchClient, execute, requesterId, requests } = current;\n\n const container = acc.find>(\n (item): item is PackedDescription => {\n return (\n isDescription(current) &&\n isDescription(item) &&\n item.searchClient === searchClient &&\n Boolean(requesterId) &&\n item.requesterId === requesterId\n );\n }\n );\n\n if (container) {\n container.items.push(...requests);\n } else {\n const request: PackedDescription = {\n execute,\n requesterId,\n items: requests,\n searchClient,\n };\n acc.push(request);\n }\n\n return acc;\n }, []);\n\n const values = packed.map<\n | Promise>\n | ReturnType>\n >((maybeDescription) => {\n if (!isDescription(maybeDescription)) {\n return Promise.resolve(\n maybeDescription as RequestDescriptionPreResolvedCustom\n );\n }\n\n const { execute, items, searchClient } =\n maybeDescription as PackedDescription;\n\n return execute({\n searchClient,\n requests: items,\n });\n });\n\n return Promise.all<\n RequestDescriptionPreResolvedCustom | ExecuteResponse\n >(values).then((responses) =>\n flatten<\n RequestDescriptionPreResolvedCustom | ExecuteResponse[0]\n >(responses)\n );\n}\n\nexport function postResolve(\n responses: Array<\n RequestDescriptionPreResolvedCustom | ExecuteResponse[0]\n >,\n sources: Array>,\n store: AutocompleteStore\n) {\n return sources.map((source) => {\n const matches = responses.filter(\n (response) => response.sourceId === source.sourceId\n );\n const results = matches.map(({ items }) => items);\n const transform = matches[0].transformResponse;\n const items = transform\n ? transform(\n mapToAlgoliaResponse(\n results as Array<\n SearchForFacetValuesResponse | SearchResponse\n >\n )\n )\n : results;\n\n source.onResolve({\n source,\n results,\n items,\n state: store.getState(),\n } as OnResolveParams);\n\n invariant(\n Array.isArray(items),\n () => `The \\`getItems\\` function from source \"${\n source.sourceId\n }\" must return an array of items but returned type ${JSON.stringify(\n typeof items\n )}:\\n\\n${JSON.stringify(decycle(items), null, 2)}.\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems`\n );\n\n invariant(\n (items as Array).every(Boolean),\n `The \\`getItems\\` function from source \"${\n source.sourceId\n }\" must return an array of items but returned ${JSON.stringify(\n undefined\n )}.\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems`\n );\n\n return {\n source,\n items,\n };\n });\n}\n","import { SearchResponse } from '@algolia/autocomplete-shared';\nimport { SearchForFacetValuesResponse } from '@algolia/client-search';\n\nimport { reshape } from './reshape';\nimport { preResolve, resolve, postResolve } from './resolve';\nimport {\n AutocompleteScopeApi,\n AutocompleteState,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\nimport {\n cancelable,\n CancelablePromise,\n createConcurrentSafePromise,\n getActiveItem,\n} from './utils';\n\nlet lastStalledId: number | null = null;\n\ninterface OnInputParams\n extends AutocompleteScopeApi {\n event: any;\n /**\n * The next partial state to apply after the function is called.\n *\n * This is useful when we call `onInput` in a different scenario than an\n * actual input. For example, we use `onInput` when we click on an item,\n * but we want to close the panel in that case.\n */\n nextState?: Partial>;\n props: InternalAutocompleteOptions;\n query: string;\n store: AutocompleteStore;\n}\n\nconst runConcurrentSafePromise = createConcurrentSafePromise();\n\nexport function onInput({\n event,\n nextState = {},\n props,\n query,\n refresh,\n store,\n ...setters\n}: OnInputParams): CancelablePromise {\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n\n const {\n setCollections,\n setIsOpen,\n setQuery,\n setActiveItemId,\n setStatus,\n setContext,\n } = setters;\n\n setQuery(query);\n setActiveItemId(props.defaultActiveItemId);\n\n if (!query && props.openOnFocus === false) {\n const collections = store.getState().collections.map((collection) => ({\n ...collection,\n items: [],\n }));\n\n setStatus('idle');\n setCollections(collections);\n setIsOpen(\n nextState.isOpen ?? props.shouldPanelOpen({ state: store.getState() })\n );\n\n // We make sure to update the latest resolved value of the tracked\n // promises to keep late resolving promises from \"cancelling\" the state\n // updates performed in this code path.\n // We chain with a void promise to respect `onInput`'s expected return type.\n const request = cancelable(\n runConcurrentSafePromise(collections).then(() => Promise.resolve())\n );\n\n return store.pendingRequests.add(request);\n }\n\n setStatus('loading');\n\n lastStalledId = props.environment.setTimeout(() => {\n setStatus('stalled');\n }, props.stallThreshold);\n\n // We track the entire promise chain triggered by `onInput` before mutating\n // the Autocomplete state to make sure that any state manipulation is based on\n // fresh data regardless of when promises individually resolve.\n // We don't track nested promises and only rely on the full chain resolution,\n // meaning we should only ever manipulate the state once this concurrent-safe\n // promise is resolved.\n const request = cancelable(\n runConcurrentSafePromise(\n props\n .getSources({\n query,\n refresh,\n state: store.getState(),\n ...setters,\n })\n .then((sources) => {\n return Promise.all(\n sources.map((source) => {\n return Promise.resolve(\n source.getItems({\n query,\n refresh,\n state: store.getState(),\n ...setters,\n })\n ).then((itemsOrDescription) =>\n preResolve(\n itemsOrDescription,\n source.sourceId,\n store.getState()\n )\n );\n })\n )\n .then(resolve)\n .then((responses) => {\n const __automaticInsights = responses.some(({ items }) =>\n isSearchResponseWithAutomaticInsightsFlag(items)\n );\n\n // No need to pollute the context if `__automaticInsights=false`\n if (__automaticInsights) {\n setContext({\n algoliaInsightsPlugin: {\n ...((store.getState().context?.algoliaInsightsPlugin ||\n {}) as Record),\n __automaticInsights,\n },\n });\n }\n\n return postResolve(responses, sources, store);\n })\n .then((collections) =>\n reshape({ collections, props, state: store.getState() })\n );\n })\n )\n )\n .then((collections) => {\n // Parameters passed to `onInput` could be stale when the following code\n // executes, because `onInput` calls may not resolve in order.\n // If it becomes a problem we'll need to save the last passed parameters.\n // See: https://codesandbox.io/s/agitated-cookies-y290z\n\n setStatus('idle');\n\n setCollections(collections as any);\n\n const isPanelOpen = props.shouldPanelOpen({ state: store.getState() });\n\n setIsOpen(\n nextState.isOpen ??\n ((props.openOnFocus && !query && isPanelOpen) || isPanelOpen)\n );\n\n const highlightedItem = getActiveItem(store.getState());\n\n if (store.getState().activeItemId !== null && highlightedItem) {\n const { item, itemInputValue, itemUrl, source } = highlightedItem;\n\n source.onActive({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n }\n })\n .finally(() => {\n setStatus('idle');\n\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n });\n\n return store.pendingRequests.add(request);\n}\n\nfunction isSearchResponseWithAutomaticInsightsFlag(\n items:\n | TItem[]\n | TItem[][]\n | SearchForFacetValuesResponse\n | SearchResponse\n): items is SearchResponse {\n return (\n !Array.isArray(items) &&\n Boolean((items as SearchResponse)?._automaticInsights)\n );\n}\n","import { onInput } from './onInput';\nimport {\n ActionType,\n AutocompleteScopeApi,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\nimport { getActiveItem, getAutocompleteElementId } from './utils';\n\ninterface OnKeyDownOptions\n extends AutocompleteScopeApi {\n event: KeyboardEvent;\n props: InternalAutocompleteOptions;\n store: AutocompleteStore;\n}\n\nexport function onKeyDown({\n event,\n props,\n refresh,\n store,\n ...setters\n}: OnKeyDownOptions): void {\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n // eslint-disable-next-line no-inner-declarations\n function triggerScrollIntoView() {\n const highlightedItem = getActiveItem(store.getState());\n\n const nodeItem = props.environment.document.getElementById(\n getAutocompleteElementId(\n props.id,\n `item-${store.getState().activeItemId}`,\n highlightedItem?.source\n )\n );\n\n if (nodeItem) {\n if ((nodeItem as any).scrollIntoViewIfNeeded) {\n (nodeItem as any).scrollIntoViewIfNeeded(false);\n } else {\n nodeItem.scrollIntoView(false);\n }\n }\n }\n\n // eslint-disable-next-line no-inner-declarations\n function triggerOnActive() {\n const highlightedItem = getActiveItem(store.getState());\n\n if (store.getState().activeItemId !== null && highlightedItem) {\n const { item, itemInputValue, itemUrl, source } = highlightedItem;\n\n source.onActive({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n }\n }\n\n // Default browser behavior changes the caret placement on ArrowUp and\n // ArrowDown.\n event.preventDefault();\n\n // When re-opening the panel, we need to split the logic to keep the actions\n // synchronized as `onInput` returns a promise.\n if (\n store.getState().isOpen === false &&\n (props.openOnFocus || Boolean(store.getState().query))\n ) {\n onInput({\n event,\n props,\n query: store.getState().query,\n refresh,\n store,\n ...setters,\n }).then(() => {\n store.dispatch(event.key as ActionType, {\n nextActiveItemId: props.defaultActiveItemId,\n });\n\n triggerOnActive();\n // Since we rely on the DOM, we need to wait for all the micro tasks to\n // finish (which include re-opening the panel) to make sure all the\n // elements are available.\n setTimeout(triggerScrollIntoView, 0);\n });\n } else {\n store.dispatch(event.key, {});\n\n triggerOnActive();\n triggerScrollIntoView();\n }\n } else if (event.key === 'Escape') {\n // This prevents the default browser behavior on `input[type=\"search\"]`\n // from removing the query right away because we first want to close the\n // panel.\n event.preventDefault();\n\n store.dispatch(event.key, null);\n\n // Hitting the `Escape` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Tab') {\n store.dispatch('blur', null);\n\n // Hitting the `Tab` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Enter') {\n // No active item, so we let the browser handle the native `onSubmit` form\n // event.\n if (\n store.getState().activeItemId === null ||\n store\n .getState()\n .collections.every((collection) => collection.items.length === 0)\n ) {\n // If requests are still pending when the panel closes, they could reopen\n // the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n\n return;\n }\n\n // This prevents the `onSubmit` event to be sent because an item is\n // highlighted.\n event.preventDefault();\n\n const { item, itemInputValue, itemUrl, source } = getActiveItem(\n store.getState()\n )!;\n\n if (event.metaKey || event.ctrlKey) {\n if (itemUrl !== undefined) {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n props.navigator.navigateNewTab({\n itemUrl,\n item,\n state: store.getState(),\n });\n }\n } else if (event.shiftKey) {\n if (itemUrl !== undefined) {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n props.navigator.navigateNewWindow({\n itemUrl,\n item,\n state: store.getState(),\n });\n }\n } else if (event.altKey) {\n // Keep native browser behavior\n } else {\n if (itemUrl !== undefined) {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n props.navigator.navigate({\n itemUrl,\n item,\n state: store.getState(),\n });\n\n return;\n }\n\n onInput({\n event,\n nextState: { isOpen: false },\n props,\n query: itemInputValue,\n refresh,\n store,\n ...setters,\n }).then(() => {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n });\n }\n }\n}\n","import { noop } from '@algolia/autocomplete-shared';\n\nimport { onInput } from './onInput';\nimport { onKeyDown } from './onKeyDown';\nimport {\n AutocompleteScopeApi,\n AutocompleteStore,\n BaseItem,\n GetEnvironmentProps,\n GetFormProps,\n GetInputProps,\n GetItemProps,\n GetLabelProps,\n GetListProps,\n GetPanelProps,\n GetRootProps,\n InternalAutocompleteOptions,\n} from './types';\nimport {\n getActiveItem,\n getAutocompleteElementId,\n isOrContainsNode,\n isSamsung,\n getNativeEvent,\n} from './utils';\n\ninterface GetPropGettersOptions\n extends AutocompleteScopeApi {\n store: AutocompleteStore;\n props: InternalAutocompleteOptions;\n}\n\nexport function getPropGetters<\n TItem extends BaseItem,\n TEvent,\n TMouseEvent,\n TKeyboardEvent\n>({ props, refresh, store, ...setters }: GetPropGettersOptions) {\n const getEnvironmentProps: GetEnvironmentProps = (providedProps) => {\n const { inputElement, formElement, panelElement, ...rest } = providedProps;\n\n function onMouseDownOrTouchStart(event: MouseEvent | TouchEvent) {\n // The `onTouchStart`/`onMouseDown` events shouldn't trigger the `blur`\n // handler when it's not an interaction with Autocomplete.\n // We detect it with the following heuristics:\n // - the panel is closed AND there are no pending requests\n // (no interaction with the autocomplete, no future state updates)\n // - OR the touched target is the input element (should open the panel)\n const isAutocompleteInteraction =\n store.getState().isOpen || !store.pendingRequests.isEmpty();\n\n if (!isAutocompleteInteraction || event.target === inputElement) {\n return;\n }\n\n // @TODO: support cases where there are multiple Autocomplete instances.\n // Right now, a second instance makes this computation return false.\n const isTargetWithinAutocomplete = [formElement, panelElement].some(\n (contextNode) => {\n return isOrContainsNode(contextNode, event.target as Node);\n }\n );\n\n if (isTargetWithinAutocomplete === false) {\n store.dispatch('blur', null);\n\n // If requests are still pending when the user closes the panel, they\n // could reopen the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n }\n }\n\n return {\n // We do not rely on the native `blur` event of the input to close the\n // panel, but rather on a custom `touchstart`/`mousedown` event outside\n // of the autocomplete elements.\n // This ensures we don't mistakenly interpret interactions within the\n // autocomplete (but outside of the input) as a signal to close the panel.\n // For example, clicking reset button causes an input blur, but if\n // `openOnFocus=true`, it shouldn't close the panel.\n // On touch devices, scrolling results (`touchmove`) causes an input blur\n // but shouldn't close the panel.\n onTouchStart: onMouseDownOrTouchStart,\n onMouseDown: onMouseDownOrTouchStart,\n // When scrolling on touch devices (mobiles, tablets, etc.), we want to\n // mimic the native platform behavior where the input is blurred to\n // hide the virtual keyboard. This gives more vertical space to\n // discover all the suggestions showing up in the panel.\n onTouchMove(event: TouchEvent) {\n if (\n store.getState().isOpen === false ||\n inputElement !== props.environment.document.activeElement ||\n event.target === inputElement\n ) {\n return;\n }\n\n inputElement.blur();\n },\n ...rest,\n };\n };\n\n const getRootProps: GetRootProps = (rest) => {\n return {\n role: 'combobox',\n 'aria-expanded': store.getState().isOpen,\n 'aria-haspopup': 'listbox',\n 'aria-controls': store.getState().isOpen\n ? store\n .getState()\n .collections.map(({ source }) =>\n getAutocompleteElementId(props.id, 'list', source)\n )\n .join(' ')\n : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n ...rest,\n };\n };\n\n const getFormProps: GetFormProps = (providedProps) => {\n const { inputElement, ...rest } = providedProps;\n\n return {\n action: '',\n noValidate: true,\n role: 'search',\n onSubmit: (event) => {\n (event as unknown as Event).preventDefault();\n\n props.onSubmit({\n event,\n refresh,\n state: store.getState(),\n ...setters,\n });\n\n store.dispatch('submit', null);\n providedProps.inputElement?.blur();\n },\n onReset: (event) => {\n (event as unknown as Event).preventDefault();\n\n props.onReset({\n event,\n refresh,\n state: store.getState(),\n ...setters,\n });\n\n store.dispatch('reset', null);\n providedProps.inputElement?.focus();\n },\n ...rest,\n };\n };\n\n const getInputProps: GetInputProps = (\n providedProps\n ) => {\n function onFocus(event: TEvent) {\n // We want to trigger a query when `openOnFocus` is true\n // because the panel should open with the current query.\n if (props.openOnFocus || Boolean(store.getState().query)) {\n onInput({\n event,\n props,\n query: store.getState().completion || store.getState().query,\n refresh,\n store,\n ...setters,\n });\n }\n\n store.dispatch('focus', null);\n }\n\n const { inputElement, maxLength = 512, ...rest } = providedProps || {};\n const activeItem = getActiveItem(store.getState());\n\n const userAgent = props.environment.navigator?.userAgent || '';\n const shouldFallbackKeyHint = isSamsung(userAgent);\n const enterKeyHint =\n props.enterKeyHint ||\n (activeItem?.itemUrl && !shouldFallbackKeyHint ? 'go' : 'search');\n\n return {\n 'aria-autocomplete': 'both',\n 'aria-activedescendant':\n store.getState().isOpen && store.getState().activeItemId !== null\n ? getAutocompleteElementId(\n props.id,\n `item-${store.getState().activeItemId}`,\n activeItem?.source\n )\n : undefined,\n 'aria-controls': store.getState().isOpen\n ? store\n .getState()\n .collections.map(({ source }) =>\n getAutocompleteElementId(props.id, 'list', source)\n )\n .join(' ')\n : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n value: store.getState().completion || store.getState().query,\n id: getAutocompleteElementId(props.id, 'input'),\n autoComplete: 'off',\n autoCorrect: 'off',\n autoCapitalize: 'off',\n enterKeyHint,\n spellCheck: 'false',\n autoFocus: props.autoFocus,\n placeholder: props.placeholder,\n maxLength,\n type: 'search',\n onChange: (event) => {\n const value = (\n (event as unknown as Event).currentTarget as HTMLInputElement\n ).value;\n\n if (\n props.ignoreCompositionEvents &&\n getNativeEvent(event as unknown as InputEvent).isComposing\n ) {\n setters.setQuery(value);\n return;\n }\n\n onInput({\n event,\n props,\n query: value.slice(0, maxLength),\n refresh,\n store,\n ...setters,\n });\n },\n onCompositionEnd: (event) => {\n onInput({\n event,\n props,\n query: (\n (event as unknown as Event).currentTarget as HTMLInputElement\n ).value.slice(0, maxLength),\n refresh,\n store,\n ...setters,\n });\n },\n onKeyDown: (event) => {\n if (getNativeEvent(event as unknown as InputEvent).isComposing) {\n return;\n }\n\n onKeyDown({\n event: event as unknown as KeyboardEvent,\n props,\n refresh,\n store,\n ...setters,\n });\n },\n onFocus,\n // We don't rely on the `blur` event.\n // See explanation in `onTouchStart`/`onMouseDown`.\n // @MAJOR See if we need to keep this handler.\n onBlur: noop,\n onClick: (event) => {\n // When the panel is closed and you click on the input while\n // the input is focused, the `onFocus` event is not triggered\n // (default browser behavior).\n // In an autocomplete context, it makes sense to open the panel in this\n // case.\n // We mimic this event by catching the `onClick` event which\n // triggers the `onFocus` for the panel to open.\n if (\n providedProps.inputElement ===\n props.environment.document.activeElement &&\n !store.getState().isOpen\n ) {\n onFocus(event as unknown as TEvent);\n }\n },\n ...rest,\n };\n };\n\n const getLabelProps: GetLabelProps = (rest) => {\n return {\n htmlFor: getAutocompleteElementId(props.id, 'input'),\n id: getAutocompleteElementId(props.id, 'label'),\n ...rest,\n };\n };\n\n const getListProps: GetListProps = (providedProps) => {\n const { source, ...rest } = providedProps || {};\n\n return {\n role: 'listbox',\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n id: getAutocompleteElementId(props.id, 'list', source),\n ...rest,\n };\n };\n\n const getPanelProps: GetPanelProps = (rest) => {\n return {\n onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the panel so\n // that the blur event is not triggered, otherwise it closes the\n // panel.\n (event as unknown as MouseEvent).preventDefault();\n },\n onMouseLeave() {\n store.dispatch('mouseleave', null);\n },\n ...rest,\n };\n };\n\n const getItemProps: GetItemProps = (providedProps) => {\n const { item, source, ...rest } = providedProps;\n\n return {\n id: getAutocompleteElementId(\n props.id,\n `item-${item.__autocomplete_id}`,\n source\n ),\n role: 'option',\n 'aria-selected': store.getState().activeItemId === item.__autocomplete_id,\n onMouseMove(event) {\n if (item.__autocomplete_id === store.getState().activeItemId) {\n return;\n }\n\n store.dispatch('mousemove', item.__autocomplete_id);\n\n const activeItem = getActiveItem(store.getState());\n\n if (store.getState().activeItemId !== null && activeItem) {\n const { item, itemInputValue, itemUrl, source } = activeItem;\n\n source.onActive({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n }\n },\n onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the item so it\n // can remain with the current `activeElement`.\n (event as unknown as MouseEvent).preventDefault();\n },\n onClick(event) {\n const itemInputValue = source.getItemInputValue({\n item,\n state: store.getState(),\n });\n const itemUrl = source.getItemUrl({\n item,\n state: store.getState(),\n });\n\n // If `getItemUrl` is provided, it means that the suggestion\n // is a link, not plain text that aims at updating the query.\n // We can therefore skip the state change because it will update\n // the `activeItemId`, resulting in a UI flash, especially\n // noticeable on mobile.\n const runPreCommand = itemUrl\n ? Promise.resolve()\n : onInput({\n event,\n nextState: { isOpen: false },\n props,\n query: itemInputValue,\n refresh,\n store,\n ...setters,\n });\n\n runPreCommand.then(() => {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n });\n },\n ...rest,\n };\n };\n\n return {\n getEnvironmentProps,\n getRootProps,\n getFormProps,\n getLabelProps,\n getInputProps,\n getPanelProps,\n getListProps,\n getItemProps,\n };\n}\n","import { UserAgent, userAgents } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteEnvironment,\n AutocompleteOptions,\n AutocompleteOptionsWithMetadata,\n AutocompletePlugin,\n BaseItem,\n} from '.';\n\ntype AutocompleteMetadata = {\n plugins: Array<{\n name: string | undefined;\n options: string[];\n }>;\n options: Record;\n ua: UserAgent[];\n};\n\ntype GetMetadataParams = {\n plugins: Array>;\n options: AutocompleteOptionsWithMetadata;\n};\n\nexport function getMetadata({\n plugins,\n options,\n}: GetMetadataParams) {\n const optionsKey = ((options.__autocomplete_metadata\n ?.userAgents as UserAgent[]) || [])[0]?.segment;\n\n const extraOptions = optionsKey\n ? {\n [optionsKey]: Object.keys(\n (options.__autocomplete_metadata\n ?.options as AutocompleteOptions) || {}\n ),\n }\n : {};\n\n return {\n plugins: plugins.map((plugin) => ({\n name: plugin.name,\n options: Object.keys(plugin.__autocomplete_pluginOptions || []),\n })),\n options: {\n 'autocomplete-core': Object.keys(options),\n ...extraOptions,\n },\n ua: userAgents.concat(\n (options.__autocomplete_metadata?.userAgents as any) || []\n ),\n };\n}\n\ntype InlineMetadataParams = {\n metadata: AutocompleteMetadata;\n environment: AutocompleteEnvironment;\n};\n\nexport function injectMetadata({\n metadata,\n environment,\n}: InlineMetadataParams) {\n const isMetadataEnabled =\n environment.navigator?.userAgent?.includes('Algolia Crawler');\n\n if (isMetadataEnabled) {\n const metadataContainer = environment.document.createElement('meta');\n const headRef = environment.document.querySelector('head');\n\n metadataContainer.name = 'algolia:metadata';\n\n setTimeout(() => {\n metadataContainer.content = JSON.stringify(metadata);\n headRef!.appendChild(metadataContainer);\n }, 0);\n }\n}\n","import { AutocompleteState, BaseItem } from './types';\nimport { getActiveItem } from './utils';\n\ninterface GetCompletionProps {\n state: AutocompleteState;\n}\n\nexport function getCompletion({\n state,\n}: GetCompletionProps): string | null {\n if (state.isOpen === false || state.activeItemId === null) {\n return null;\n }\n\n return getActiveItem(state)?.itemInputValue || null;\n}\n","import { getItemsCount, invariant } from '@algolia/autocomplete-shared';\n\nimport { getCompletion } from './getCompletion';\nimport { Reducer } from './types';\nimport { getNextActiveItemId } from './utils';\n\nexport const stateReducer: Reducer = (state, action) => {\n switch (action.type) {\n case 'setActiveItemId': {\n return {\n ...state,\n activeItemId: action.payload,\n };\n }\n\n case 'setQuery': {\n return {\n ...state,\n query: action.payload,\n completion: null,\n };\n }\n\n case 'setCollections': {\n return {\n ...state,\n collections: action.payload,\n };\n }\n\n case 'setIsOpen': {\n return {\n ...state,\n isOpen: action.payload,\n };\n }\n\n case 'setStatus': {\n return {\n ...state,\n status: action.payload,\n };\n }\n\n case 'setContext': {\n return {\n ...state,\n context: {\n ...state.context,\n ...action.payload,\n },\n };\n }\n\n case 'ArrowDown': {\n const nextState = {\n ...state,\n activeItemId: action.payload.hasOwnProperty('nextActiveItemId')\n ? action.payload.nextActiveItemId\n : getNextActiveItemId(\n 1,\n state.activeItemId,\n getItemsCount(state),\n action.props.defaultActiveItemId\n ),\n };\n\n return {\n ...nextState,\n completion: getCompletion({ state: nextState }),\n };\n }\n\n case 'ArrowUp': {\n const nextState = {\n ...state,\n activeItemId: getNextActiveItemId(\n -1,\n state.activeItemId,\n getItemsCount(state),\n action.props.defaultActiveItemId\n ),\n };\n\n return {\n ...nextState,\n completion: getCompletion({ state: nextState }),\n };\n }\n\n case 'Escape': {\n if (state.isOpen) {\n return {\n ...state,\n activeItemId: null,\n isOpen: false,\n completion: null,\n };\n }\n\n return {\n ...state,\n activeItemId: null,\n query: '',\n status: 'idle',\n collections: [],\n };\n }\n\n case 'submit': {\n return {\n ...state,\n activeItemId: null,\n isOpen: false,\n status: 'idle',\n };\n }\n\n case 'reset': {\n return {\n ...state,\n activeItemId:\n // Since we open the panel on reset when openOnFocus=true\n // we need to restore the highlighted index to the defaultActiveItemId. (DocSearch use-case)\n\n // Since we close the panel when openOnFocus=false\n // we lose track of the highlighted index. (Query-suggestions use-case)\n action.props.openOnFocus === true\n ? action.props.defaultActiveItemId\n : null,\n status: 'idle',\n completion: null,\n query: '',\n };\n }\n\n case 'focus': {\n return {\n ...state,\n activeItemId: action.props.defaultActiveItemId,\n isOpen:\n (action.props.openOnFocus || Boolean(state.query)) &&\n action.props.shouldPanelOpen({ state }),\n };\n }\n\n case 'blur': {\n if (action.props.debug) {\n return state;\n }\n\n return {\n ...state,\n isOpen: false,\n activeItemId: null,\n };\n }\n\n case 'mousemove': {\n return {\n ...state,\n activeItemId: action.payload,\n };\n }\n\n case 'mouseleave': {\n return {\n ...state,\n activeItemId: action.props.defaultActiveItemId,\n };\n }\n\n default:\n invariant(\n false,\n `The reducer action ${JSON.stringify(action.type)} is not supported.`\n );\n\n return state;\n }\n};\n","import { createAlgoliaInsightsPlugin } from '@algolia/autocomplete-plugin-algolia-insights';\n\nimport { checkOptions } from './checkOptions';\nimport { createStore } from './createStore';\nimport { getAutocompleteSetters } from './getAutocompleteSetters';\nimport { getDefaultProps } from './getDefaultProps';\nimport { getPropGetters } from './getPropGetters';\nimport { getMetadata, injectMetadata } from './metadata';\nimport { onInput } from './onInput';\nimport { stateReducer } from './stateReducer';\nimport {\n AutocompleteApi,\n AutocompleteOptions as AutocompleteCoreOptions,\n BaseItem,\n AutocompleteSubscribers,\n} from './types';\n\nexport interface AutocompleteOptionsWithMetadata\n extends AutocompleteCoreOptions {\n /**\n * @internal\n */\n __autocomplete_metadata?: Record;\n}\n\nexport function createAutocomplete<\n TItem extends BaseItem,\n TEvent = Event,\n TMouseEvent = MouseEvent,\n TKeyboardEvent = KeyboardEvent\n>(\n options: AutocompleteOptionsWithMetadata\n): AutocompleteApi {\n checkOptions(options);\n\n const subscribers: AutocompleteSubscribers = [];\n const props = getDefaultProps(options, subscribers);\n const store = createStore(stateReducer, props, onStoreStateChange);\n\n const setters = getAutocompleteSetters({ store });\n const propGetters = getPropGetters<\n TItem,\n TEvent,\n TMouseEvent,\n TKeyboardEvent\n >({ props, refresh, store, navigator: props.navigator, ...setters });\n\n function onStoreStateChange({ prevState, state }) {\n props.onStateChange({\n prevState,\n state,\n refresh,\n navigator: props.navigator,\n ...setters,\n });\n\n if (\n !isAlgoliaInsightsPluginEnabled() &&\n state.context?.algoliaInsightsPlugin?.__automaticInsights &&\n props.insights !== false\n ) {\n const plugin = createAlgoliaInsightsPlugin({\n __autocomplete_clickAnalytics: false,\n });\n\n props.plugins.push(plugin);\n\n subscribePlugins([plugin]);\n }\n }\n\n function refresh() {\n return onInput({\n event: new Event('input'),\n nextState: { isOpen: store.getState().isOpen },\n props,\n navigator: props.navigator,\n query: store.getState().query,\n refresh,\n store,\n ...setters,\n });\n }\n\n function subscribePlugins(plugins: typeof props.plugins) {\n plugins.forEach((plugin) =>\n plugin.subscribe?.({\n ...setters,\n navigator: props.navigator,\n refresh,\n onSelect(fn) {\n subscribers.push({ onSelect: fn });\n },\n onActive(fn) {\n subscribers.push({ onActive: fn });\n },\n onResolve(fn) {\n subscribers.push({ onResolve: fn });\n },\n })\n );\n }\n\n function isAlgoliaInsightsPluginEnabled() {\n return props.plugins.some(\n (plugin) => plugin.name === 'aa.algoliaInsightsPlugin'\n );\n }\n\n if (props.insights && !isAlgoliaInsightsPluginEnabled()) {\n const insightsParams =\n typeof props.insights === 'boolean' ? {} : props.insights;\n props.plugins.push(createAlgoliaInsightsPlugin(insightsParams));\n }\n\n subscribePlugins(props.plugins);\n\n injectMetadata({\n metadata: getMetadata({ plugins: props.plugins, options }),\n environment: props.environment,\n });\n\n return {\n refresh,\n navigator: props.navigator,\n ...propGetters,\n ...setters,\n };\n}\n"],"names":["createRef","initialValue","current","debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_typeof","obj","decycle","seen","Set","has","newSeen","add","map","x","fromEntries","entries","_ref","_ref2","key","flatten","values","reduce","a","b","concat","autocompleteId","generateAutocompleteId","getItemsCount","state","collections","sum","collection","items","invariant","condition","message","Error","isPrimitive","isEqual","first","second","keys","_Object$keys","noop","safelyRunOnBrowser","callback","window","version","userAgents","segment","warnCache","warn","sanitizedMessage","trim","hasAlreadyPrinted","console","createClickedEvent","item","_ref$items","index","__autocomplete_indexName","positions","findIndex","objectID","queryID","__autocomplete_queryID","algoliaSource","isModernInsightsClient","client","_split$map","split","Number","_split$map2","major","minor","v3","v2_4","v1_10","_excluded","_excluded2","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","iter","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","res","chunk","chunkSize","chunks","objectIDs","mapToInsightsParamsApi","params","param","createSearchInsightsApi","searchInsights","canSendHeaders","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","appId","apiKey","headers","init","setAuthenticatedUserToken","authenticatedUserToken","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","acc","_ref3","_ref4","payload","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","VIEW_EVENT_DELAY","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","insightsEvents","event","eventName","createAlgoliaInsightsPlugin","options","_getOptions","getOptions","providedInsightsClient","insightsClient","insightsInitParams","onSelectEvent","onSelect","onActiveEvent","onActive","__autocomplete_clickAnalytics","pointer","AlgoliaAnalyticsObject","queue","loadInsights","partial","previousItems","debouncedOnStateChange","isOpen","subscribe","setContext","isAuthenticatedToken","setInsightsContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","normalizeUserToken","_error","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions","getAlgoliaSources","_context$algoliaInsig","algoliaSourceBase","context","__automaticInsights","_ref8","_ref9","environment","errorMessage","script","document","createElement","async","src","onerror","error","body","appendChild","cause","checkOptions","process","debug","createInternalCancelablePromise","promise","initialState","then","onfulfilled","onrejected","createCallback","catch","_catch","finally","_finally","onfinally","onCancelList","cancel","isCanceled","callbacks","cancelable","onResult","fallback","createCancelablePromiseList","list","cancelablePromise","cancelAll","isEmpty","createConcurrentSafePromise","basePromiseId","latestResolvedId","latestResolvedValue","runConcurrentSafePromise","currentPromiseId","Promise","resolve","getNextActiveItemId","moveAmount","baseIndex","itemCount","defaultActiveItemId","numericIndex","getNormalizedSources","getSources","seenSourceIds","sources","JSON","stringify","all","maybeSource","Boolean","sourceId","includes","defaultSource","getItemInputValue","query","getItemUrl","setIsOpen","onResolve","__default","normalizedSource","getCollectionFromActiveItemId","accumulatedCollectionsCount","collectionsCount","previousValue","nextValue","collectionIndex","activeItemId","getRelativeActiveItemId","isOffsetFound","counter","previousItemsOffset","currentCollection","getActiveItem","itemInputValue","itemUrl","getAutocompleteElementId","autocompleteInstanceId","elementId","join","replace","isOrContainsNode","parent","child","contains","regex","isSamsung","userAgent","match","mapToAlgoliaResponse","rawResults","results","hits","result","facetHits","_facetHits","facetHit","label","count","_highlightResult","highlighted","getNativeEvent","nativeEvent","createStore","reducer","props","onStoreStateChange","getState","dispatch","action","prevState","type","pendingRequests","getAutocompleteSetters","store","setActiveItemId","setQuery","setCollections","rawValue","baseItemId","__autocomplete_id","setStatus","getDefaultProps","pluginSubscribers","_props$id","plugins","openOnFocus","enterKeyHint","ignoreCompositionEvents","placeholder","autoFocus","stallThreshold","shouldPanelOpen","reshape","id","completion","status","_props$onStateChange","_x$onStateChange","onSubmit","_props$onSubmit","_x$onSubmit","onReset","_props$onReset","_x$onReset","plugin","nested","_x$onSelect","_x$onActive","_x$onResolve","navigator","navigate","location","assign","navigateNewTab","windowReference","open","focus","navigateNewWindow","originalSourcesBySourceId","_props$plugins$reduce","sourcesBySourceId","reshapeSources","isDescription","execute","isRequesterDescription","description","preResolve","itemsOrDescription","contextParameters","requesterId","_state$context$key","requests","queries","transformResponse","packed","searchClient","container","find","_container$items","request","maybeDescription","responses","postResolve","matches","response","transform","every","lastStalledId","onInput","_ref$nextState","nextState","refresh","setters","_nextState$isOpen","some","isSearchResponseWithAutomaticInsightsFlag","_store$getState$conte","_nextState$isOpen2","isPanelOpen","highlightedItem","_automaticInsights","onKeyDown","triggerScrollIntoView","nodeItem","getElementById","scrollIntoViewIfNeeded","scrollIntoView","triggerOnActive","preventDefault","nextActiveItemId","metaKey","ctrlKey","shiftKey","altKey","getPropGetters","getEnvironmentProps","providedProps","inputElement","formElement","panelElement","rest","onMouseDownOrTouchStart","isAutocompleteInteraction","isTargetWithinAutocomplete","contextNode","onTouchStart","onMouseDown","onTouchMove","activeElement","blur","getRootProps","role","getFormProps","_excluded3","noValidate","_providedProps$inputE","_providedProps$inputE2","getInputProps","_props$environment$na","onFocus","_ref3$maxLength","maxLength","_excluded4","activeItem","shouldFallbackKeyHint","autoComplete","autoCorrect","autoCapitalize","spellCheck","onChange","currentTarget","isComposing","onCompositionEnd","onBlur","onClick","getLabelProps","htmlFor","getListProps","_excluded5","getPanelProps","onMouseLeave","getItemProps","_excluded6","onMouseMove","runPreCommand","getMetadata","_","_options$__autocomple","_options$__autocomple2","_options$__autocomple3","optionsKey","__autocomplete_metadata","extraOptions","ua","injectMetadata","_environment$navigato","_environment$navigato2","metadata","isMetadataEnabled","metadataContainer","headRef","querySelector","content","getCompletion","_getActiveItem","stateReducer","hasOwnProperty","createAutocomplete","subscribers","propGetters","_state$context","_state$context$algoli","isAlgoliaInsightsPluginEnabled","subscribePlugins","Event","_plugin$subscribe","insightsParams"],"mappings":"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,CAAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;GACH,CAAA,CAAA,CAAA,CAAA,CAAA;AACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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A,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAI+P,CAAmB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIE,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGH,gBAAgB,CAAE,CAAA,CAAA;EAC9D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOC,mBAAmB,CAAA;EAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAEAD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAGG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAA;EACnCF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmB,CAAG/P,CAAAA,CAAAA,CAAC,CAAA;EAEvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOA,CAAC,CAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;KACH,CAAA;AACH,CAAA,CAAA,CAAA;;AC3CA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAA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AA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CA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AAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,C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A,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACAwW,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,EAAEJ,CAAuB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACrCK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAEL,CAAuB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,C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A,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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AA,CAAA,CAAA,CAAA,CAAA,CAAEmU,CAAK,CAAA,CAAA,CAAA,CAAA,CAACP,QAAQ,CAAA,CAAA;AACvB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;;AAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CA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AAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACRoR,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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"} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/dist/umd/index.production.js b/node_modules/@algolia/autocomplete-core/dist/umd/index.production.js deleted file mode 100644 index 054dcca..0000000 --- a/node_modules/@algolia/autocomplete-core/dist/umd/index.production.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! @algolia/autocomplete-core 1.17.7 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-core"]={})}(this,(function(e){"use strict";function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function i(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return u(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function A(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r=3||2===n&&r>=4||1===n&&r>=10);function i(t,n,r){if(o&&void 0!==r){var i=r[0].__autocomplete_algoliaCredentials,u={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(S(n),[{headers:u}]))}else e.apply(void 0,[t].concat(S(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setAuthenticatedUserToken:function(t){e("setAuthenticatedUserToken",t)},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&i("clickedObjectIDsAfterSearch",E(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&i("clickedObjectIDs",E(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&i("convertedObjectIDsAfterSearch",E(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&i("convertedObjectIDs",E(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&t.reduce((function(e,t){var n=t.items,r=j(t,b);return[].concat(S(e),S(P(w(w({},r),{},{objectIDs:(null==n?void 0:n.map((function(e){return e.objectID})))||r.objectIDs})).map((function(e){return{items:n,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return i("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function D(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function x(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function k(e){return k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},k(e)}function q(e){return function(e){if(Array.isArray(e))return T(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return T(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&F({onItemsChange:o,items:n,insights:s,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive,o=!1;function a(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:R(R({},c?{clickAnalytics:!0}:{}),e?{userToken:L(e)}:{}),insights:s}})}l("addAlgoliaAgent","insights-plugin"),a(),l("onUserTokenChange",(function(e){o||a(e)})),l("getUserToken",null,(function(e,t){o||a(t)})),l("onAuthenticatedUserTokenChange",(function(e){e?(o=!0,a(e)):(o=!1,l("getUserToken",null,(function(e,t){return a(t)})))})),l("getAuthenticatedUserToken",null,(function(e,t){t&&(o=!0,a(t))})),n((function(e){var t=e.item,n=e.state,r=e.event,o=e.source;x(t)&&i({state:n,event:r,insights:s,item:t,insightsEvents:[R({eventName:"Item Selected"},d({item:t,items:o.getItems().filter(x)}))]})})),r((function(e){var t=e.item,n=e.source,r=e.state,o=e.event;x(t)&&u({state:r,event:o,insights:s,item:t,insightsEvents:[R({eventName:"Item Active"},d({item:t,items:n.getItems().filter(x)}))]})}))},onStateChange:function(e){var t=e.state;v({state:t})},__autocomplete_pluginOptions:e}}function K(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1?arguments[1]:void 0;return[].concat(q(t),["autocomplete-internal"],q(null!==(e=n.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}function L(e){return"number"==typeof e?e.toString():e}function H(e,t){var n=t;return{then:function(t,r){return H(e.then(J(t,n,e),J(r,n,e)),n)},catch:function(t){return H(e.catch(J(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),H(e.finally(J(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===n.isCanceled}}}function Q(e){return H(e,{isCanceled:!1,onCancelList:[]})}function J(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}function $(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var o=(null===t?-1:t)+e;return o<=-1||o>=n?null===r?null:0:o}function W(e){var t=function(e){var t=e.collections.map((function(e){return e.items.length})).reduce((function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e}),[]).reduce((function(t,n){return n<=e.activeItemId?t+1:t}),0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,o=0,i=0;!1===r;){var u=t.collections[o];if(u===n){r=!0;break}i+=u.items.length,o++}return t.activeItemId-i}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}function X(e,t,n){return[e,null==n?void 0:n.sourceId,t].filter(Boolean).join("-").replace(/\s/g,"")}var z=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function G(e){return e.nativeEvent||e}function Y(e,t){var r,o="undefined"!=typeof window?window:{},u=e.plugins||[];return n(n({debug:!1,openOnFocus:!1,enterKeyHint:void 0,ignoreCompositionEvents:!1,placeholder:"",autoFocus:!1,defaultActiveItemId:null,stallThreshold:300,insights:void 0,environment:o,shouldPanelOpen:function(e){return s(e.state)>0},reshape:function(e){return e.sources}},e),{},{id:null!==(r=e.id)&&void 0!==r?r:"autocomplete-".concat(l++),plugins:u,initialState:n({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),u.forEach((function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)}))},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),u.forEach((function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)}))},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),u.forEach((function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)}))},getSources:function(r){return Promise.all([].concat(i(u.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var r=[];return Promise.resolve(e(t)).then((function(e){return Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,r.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));r.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:m,onResolve:m};Object.keys(t).forEach((function(e){t[e].__default=!0}));var o=n(n({},t),e);return Promise.resolve(o)})))}))}(e,r)}))).then((function(e){return c(e)})).then((function(e){return e.map((function(e){return n(n({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)}))},onActive:function(n){e.onActive(n),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)}))},onResolve:function(n){e.onResolve(n),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)}))}})}))}))},navigator:n({navigate:function(e){var t=e.itemUrl;o.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=o.open(t,"_blank","noopener");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;o.open(t,"_blank","noopener")}},e.navigator)})}function Z(e){return Boolean(e.execute)}function ee(e,t,r){if(u=e,Boolean(null==u?void 0:u.execute)){var o="algolia"===e.requesterId?Object.assign.apply(Object,[{}].concat(i(Object.keys(r.context).map((function(e){var t;return null===(t=r.context[e])||void 0===t?void 0:t.__algoliaSearchParameters}))))):{};return n(n({},e),{},{requests:e.queries.map((function(r){return{query:"algolia"===e.requesterId?n(n({},r),{},{params:n(n({},o),r.params)}):r,sourceId:t,transformResponse:e.transformResponse}}))})}var u;return{items:e,sourceId:t}}function te(e){var t=e.reduce((function(e,t){if(!Z(t))return e.push(t),e;var n=t.searchClient,r=t.execute,o=t.requesterId,u=t.requests,a=e.find((function(e){return Z(t)&&Z(e)&&e.searchClient===n&&Boolean(o)&&e.requesterId===o}));if(a){var c;(c=a.items).push.apply(c,i(u))}else{var l={execute:r,requesterId:o,items:u,searchClient:n};e.push(l)}return e}),[]).map((function(e){if(!Z(e))return Promise.resolve(e);var t=e,n=t.execute,r=t.items;return n({searchClient:t.searchClient,requests:r})}));return Promise.all(t).then((function(e){return c(e)}))}function ne(e,t,n){return t.map((function(t){var r,o=e.filter((function(e){return e.sourceId===t.sourceId})),i=o.map((function(e){return e.items})),u=o[0].transformResponse,a=u?u({results:r=i,hits:r.map((function(e){return e.hits})).filter(Boolean),facetHits:r.map((function(e){var t;return null===(t=e.facetHits)||void 0===t?void 0:t.map((function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}}))})).filter(Boolean)}):i;return t.onResolve({source:t,results:i,items:a,state:n.getState()}),a.every(Boolean),'The `getItems` function from source "'.concat(t.sourceId,'" must return an array of items but returned ').concat(JSON.stringify(void 0),".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"),{source:t,items:a}}))}var re,oe,ie,ue=["event","nextState","props","query","refresh","store"],ae=null,ce=(re=-1,oe=-1,ie=void 0,function(e){var t=++re;return Promise.resolve(e).then((function(e){return ie&&t arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * Determines if a given insights `client` supports the optional call to `init`\n * and the ability to set credentials via extra parameters when sending events.\n */\nexport function isModernInsightsClient(client) {\n var _split$map = (client.version || '').split('.').map(Number),\n _split$map2 = _slicedToArray(_split$map, 2),\n major = _split$map2[0],\n minor = _split$map2[1];\n\n /* eslint-disable @typescript-eslint/camelcase */\n var v3 = major >= 3;\n var v2_4 = major === 2 && minor >= 4;\n var v1_10 = major === 1 && minor >= 10;\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}","var _excluded = [\"items\"],\n _excluded2 = [\"items\"];\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { isModernInsightsClient } from './isModernInsightsClient';\nfunction chunk(item) {\n var chunkSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20;\n var chunks = [];\n for (var i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push(_objectSpread(_objectSpread({}, item), {}, {\n objectIDs: item.objectIDs.slice(i, i + chunkSize)\n }));\n }\n return chunks;\n}\nfunction mapToInsightsParamsApi(params) {\n return params.map(function (_ref) {\n var items = _ref.items,\n param = _objectWithoutProperties(_ref, _excluded);\n return _objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref2) {\n var objectID = _ref2.objectID;\n return objectID;\n })) || param.objectIDs\n });\n });\n}\nexport function createSearchInsightsApi(searchInsights) {\n var canSendHeaders = isModernInsightsClient(searchInsights);\n function sendToInsights(method, payloads, items) {\n if (canSendHeaders && typeof items !== 'undefined') {\n var _items$0$__autocomple = items[0].__autocomplete_algoliaCredentials,\n appId = _items$0$__autocomple.appId,\n apiKey = _items$0$__autocomple.apiKey;\n var headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey\n };\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads), [{\n headers: headers\n }]));\n } else {\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads)));\n }\n }\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init: function init(appId, apiKey) {\n searchInsights('init', {\n appId: appId,\n apiKey: apiKey\n });\n },\n /**\n * Sets the authenticated user token to attach to events.\n * Unsets the authenticated token by passing `undefined`.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/\n */\n setAuthenticatedUserToken: function setAuthenticatedUserToken(authenticatedUserToken) {\n searchInsights('setAuthenticatedUserToken', authenticatedUserToken);\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken: function setUserToken(userToken) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch: function clickedObjectIDsAfterSearch() {\n for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {\n params[_key] = arguments[_key];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs: function clickedObjectIDs() {\n for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n params[_key2] = arguments[_key2];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters: function clickedFilters() {\n for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n params[_key3] = arguments[_key3];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['clickedFilters'].concat(params));\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch: function convertedObjectIDsAfterSearch() {\n for (var _len4 = arguments.length, params = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n params[_key4] = arguments[_key4];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs: function convertedObjectIDs() {\n for (var _len5 = arguments.length, params = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n params[_key5] = arguments[_key5];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters: function convertedFilters() {\n for (var _len6 = arguments.length, params = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n params[_key6] = arguments[_key6];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['convertedFilters'].concat(params));\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs: function viewedObjectIDs() {\n for (var _len7 = arguments.length, params = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n params[_key7] = arguments[_key7];\n }\n if (params.length > 0) {\n params.reduce(function (acc, _ref3) {\n var items = _ref3.items,\n param = _objectWithoutProperties(_ref3, _excluded2);\n return [].concat(_toConsumableArray(acc), _toConsumableArray(chunk(_objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref4) {\n var objectID = _ref4.objectID;\n return objectID;\n })) || param.objectIDs\n })).map(function (payload) {\n return {\n items: items,\n payload: payload\n };\n })));\n }, []).forEach(function (_ref5) {\n var items = _ref5.items,\n payload = _ref5.payload;\n return sendToInsights('viewedObjectIDs', [payload], items);\n });\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters: function viewedFilters() {\n for (var _len8 = arguments.length, params = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n params[_key8] = arguments[_key8];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['viewedFilters'].concat(params));\n }\n }\n };\n}","export function createViewedEvents(_ref) {\n var items = _ref.items;\n var itemsByIndexName = items.reduce(function (acc, current) {\n var _acc$current$__autoco;\n acc[current.__autocomplete_indexName] = ((_acc$current$__autoco = acc[current.__autocomplete_indexName]) !== null && _acc$current$__autoco !== void 0 ? _acc$current$__autoco : []).concat(current);\n return acc;\n }, {});\n return Object.keys(itemsByIndexName).map(function (indexName) {\n var items = itemsByIndexName[indexName];\n return {\n index: indexName,\n items: items,\n algoliaSource: ['autocomplete']\n };\n });\n}","export function isAlgoliaInsightsHit(hit) {\n return hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID;\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { createRef, debounce, isEqual, noop, safelyRunOnBrowser } from '@algolia/autocomplete-shared';\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nvar VIEW_EVENT_DELAY = 400;\nvar ALGOLIA_INSIGHTS_VERSION = '2.15.0';\nvar ALGOLIA_INSIGHTS_SRC = \"https://cdn.jsdelivr.net/npm/search-insights@\".concat(ALGOLIA_INSIGHTS_VERSION, \"/dist/search-insights.min.js\");\nvar sendViewedObjectIDs = debounce(function (_ref) {\n var onItemsChange = _ref.onItemsChange,\n items = _ref.items,\n insights = _ref.insights,\n state = _ref.state;\n onItemsChange({\n insights: insights,\n insightsEvents: createViewedEvents({\n items: items\n }).map(function (event) {\n return _objectSpread({\n eventName: 'Items Viewed'\n }, event);\n }),\n state: state\n });\n}, VIEW_EVENT_DELAY);\nexport function createAlgoliaInsightsPlugin(options) {\n var _getOptions = getOptions(options),\n providedInsightsClient = _getOptions.insightsClient,\n insightsInitParams = _getOptions.insightsInitParams,\n onItemsChange = _getOptions.onItemsChange,\n onSelectEvent = _getOptions.onSelect,\n onActiveEvent = _getOptions.onActive,\n __autocomplete_clickAnalytics = _getOptions.__autocomplete_clickAnalytics;\n var insightsClient = providedInsightsClient;\n if (!providedInsightsClient) {\n safelyRunOnBrowser(function (_ref2) {\n var window = _ref2.window;\n var pointer = window.AlgoliaAnalyticsObject || 'aa';\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n if (!window[pointer]) {\n window[pointer] = function () {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n window[pointer].queue.push(args);\n };\n }\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n insightsClient = window[pointer];\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n if (insightsInitParams) {\n insightsClient('init', _objectSpread({\n partial: true\n }, insightsInitParams));\n }\n var insights = createSearchInsightsApi(insightsClient);\n var previousItems = createRef([]);\n var debouncedOnStateChange = debounce(function (_ref3) {\n var state = _ref3.state;\n if (!state.isOpen) {\n return;\n }\n var items = state.collections.reduce(function (acc, current) {\n return [].concat(_toConsumableArray(acc), _toConsumableArray(current.items));\n }, []).filter(isAlgoliaInsightsHit);\n if (!isEqual(previousItems.current.map(function (x) {\n return x.objectID;\n }), items.map(function (x) {\n return x.objectID;\n }))) {\n previousItems.current = items;\n if (items.length > 0) {\n sendViewedObjectIDs({\n onItemsChange: onItemsChange,\n items: items,\n insights: insights,\n state: state\n });\n }\n }\n }, 0);\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe: function subscribe(_ref4) {\n var setContext = _ref4.setContext,\n onSelect = _ref4.onSelect,\n onActive = _ref4.onActive;\n var isAuthenticatedToken = false;\n function setInsightsContext(userToken) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: _objectSpread(_objectSpread({}, __autocomplete_clickAnalytics ? {\n clickAnalytics: true\n } : {}), userToken ? {\n userToken: normalizeUserToken(userToken)\n } : {}),\n insights: insights\n }\n });\n }\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n setInsightsContext();\n\n // Handles user token changes\n insightsClient('onUserTokenChange', function (userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n insightsClient('getUserToken', null, function (_error, userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n\n // Handles authenticated user token changes\n insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n } else {\n isAuthenticatedToken = false;\n insightsClient('getUserToken', null, function (_error, userToken) {\n return setInsightsContext(userToken);\n });\n }\n });\n insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n }\n });\n onSelect(function (_ref5) {\n var item = _ref5.item,\n state = _ref5.state,\n event = _ref5.event,\n source = _ref5.source;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onSelectEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Selected'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n onActive(function (_ref6) {\n var item = _ref6.item,\n source = _ref6.source,\n state = _ref6.state,\n event = _ref6.event;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onActiveEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Active'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n },\n onStateChange: function onStateChange(_ref7) {\n var state = _ref7.state;\n debouncedOnStateChange({\n state: state\n });\n },\n __autocomplete_pluginOptions: options\n };\n}\nfunction getAlgoliaSources() {\n var _context$algoliaInsig;\n var algoliaSourceBase = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var context = arguments.length > 1 ? arguments[1] : undefined;\n return [].concat(_toConsumableArray(algoliaSourceBase), ['autocomplete-internal'], _toConsumableArray((_context$algoliaInsig = context.algoliaInsightsPlugin) !== null && _context$algoliaInsig !== void 0 && _context$algoliaInsig.__automaticInsights ? ['autocomplete-automatic'] : []));\n}\nfunction getOptions(options) {\n return _objectSpread({\n onItemsChange: function onItemsChange(_ref8) {\n var insights = _ref8.insights,\n insightsEvents = _ref8.insightsEvents,\n state = _ref8.state;\n insights.viewedObjectIDs.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onSelect: function onSelect(_ref9) {\n var insights = _ref9.insights,\n insightsEvents = _ref9.insightsEvents,\n state = _ref9.state;\n insights.clickedObjectIDsAfterSearch.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true\n }, options);\n}\nfunction loadInsights(environment) {\n var errorMessage = \"[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete\";\n try {\n var script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n script.onerror = function () {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n\n/**\n * While `search-insights` supports both string and number user tokens,\n * the Search API only accepts strings. This function normalizes the user token.\n */\nfunction normalizeUserToken(userToken) {\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","type PromiseExecutor = (\n resolve: (value: TValue | PromiseLike) => void,\n reject: (reason?: any) => void\n) => void;\n\ntype CancelablePromiseState = {\n isCanceled: boolean;\n onCancelList: Array<(...args: any[]) => any>;\n};\n\nfunction createInternalCancelablePromise(\n promise: Promise,\n initialState: CancelablePromiseState\n): CancelablePromise {\n const state = initialState;\n\n return {\n then(onfulfilled, onrejected) {\n return createInternalCancelablePromise(\n promise.then(\n createCallback(onfulfilled, state, promise),\n createCallback(onrejected, state, promise)\n ),\n state\n );\n },\n catch(onrejected) {\n return createInternalCancelablePromise(\n promise.catch(createCallback(onrejected, state, promise)),\n state\n );\n },\n finally(onfinally) {\n if (onfinally) {\n state.onCancelList.push(onfinally);\n }\n\n return createInternalCancelablePromise(\n promise.finally(\n createCallback(\n onfinally &&\n (() => {\n state.onCancelList = [];\n\n return onfinally();\n }),\n state,\n promise\n )\n ),\n state\n );\n },\n cancel() {\n state.isCanceled = true;\n const callbacks = state.onCancelList;\n state.onCancelList = [];\n\n callbacks.forEach((callback) => {\n callback();\n });\n },\n isCanceled() {\n return state.isCanceled === true;\n },\n };\n}\n\nexport type CancelablePromise = {\n then(\n onfulfilled?:\n | ((\n value: TValue\n ) =>\n | TResultFulfilled\n | PromiseLike\n | CancelablePromise)\n | undefined\n | null,\n onrejected?:\n | ((\n reason: any\n ) =>\n | TResultRejected\n | PromiseLike\n | CancelablePromise)\n | undefined\n | null\n ): CancelablePromise;\n catch(\n onrejected?:\n | ((\n reason: any\n ) => TResult | PromiseLike | CancelablePromise)\n | undefined\n | null\n ): CancelablePromise;\n finally(\n onfinally?: (() => void) | undefined | null\n ): CancelablePromise;\n cancel(): void;\n isCanceled(): boolean;\n};\n\nexport function createCancelablePromise(\n executor: PromiseExecutor\n): CancelablePromise {\n return createInternalCancelablePromise(\n new Promise((resolve, reject) => {\n return executor(resolve, reject);\n }),\n { isCanceled: false, onCancelList: [] }\n );\n}\n\ncreateCancelablePromise.resolve = (\n value?: TValue | PromiseLike | CancelablePromise\n) => cancelable(Promise.resolve(value));\n\ncreateCancelablePromise.reject = (reason?: any) =>\n cancelable(Promise.reject(reason));\n\nexport function cancelable(promise: Promise) {\n return createInternalCancelablePromise(promise, {\n isCanceled: false,\n onCancelList: [],\n });\n}\n\nfunction createCallback(\n onResult: ((...args: any[]) => any) | null | undefined,\n state: CancelablePromiseState,\n fallback: any\n) {\n if (!onResult) {\n return fallback;\n }\n\n return function callback(arg?: any) {\n if (state.isCanceled) {\n return arg;\n }\n\n return onResult(arg);\n };\n}\n","/**\n * Returns the next active item ID from the current state.\n *\n * We allow circular keyboard navigation from the base index.\n * The base index can either be `null` (nothing is highlighted) or `0`\n * (the first item is highlighted).\n * The base index is allowed to get assigned `null` only if\n * `props.defaultActiveItemId` is `null`. This pattern allows to \"stop\"\n * by the actual query before navigating to other suggestions as seen on\n * Google or Amazon.\n *\n * @param moveAmount The offset to increment (or decrement) the last index\n * @param baseIndex The current index to compute the next index from\n * @param itemCount The number of items\n * @param defaultActiveItemId The default active index to fallback to\n */\nexport function getNextActiveItemId(\n moveAmount: number,\n baseIndex: number | null,\n itemCount: number,\n defaultActiveItemId: number | null\n): number | null {\n if (!itemCount) {\n return null;\n }\n\n if (\n moveAmount < 0 &&\n (baseIndex === null || (defaultActiveItemId !== null && baseIndex === 0))\n ) {\n return itemCount + moveAmount;\n }\n\n const numericIndex = (baseIndex === null ? -1 : baseIndex) + moveAmount;\n\n if (numericIndex <= -1 || numericIndex >= itemCount) {\n return defaultActiveItemId === null ? null : 0;\n }\n\n return numericIndex;\n}\n","import { AutocompleteCollection, AutocompleteState, BaseItem } from '../types';\n\n// We don't have access to the autocomplete source when we call `onKeyDown`\n// or `onClick` because those are native browser events.\n// However, we can get the source from the suggestion index.\nfunction getCollectionFromActiveItemId(\n state: AutocompleteState\n): AutocompleteCollection | undefined {\n // Given 3 sources with respectively 1, 2 and 3 suggestions: [1, 2, 3]\n // We want to get the accumulated counts:\n // [1, 1 + 2, 1 + 2 + 3] = [1, 3, 3 + 3] = [1, 3, 6]\n const accumulatedCollectionsCount = state.collections\n .map((collections) => collections.items.length)\n .reduce((acc, collectionsCount, index) => {\n const previousValue = acc[index - 1] || 0;\n const nextValue = previousValue + collectionsCount;\n\n acc.push(nextValue);\n\n return acc;\n }, []);\n\n // Based on the accumulated counts, we can infer the index of the suggestion.\n const collectionIndex = accumulatedCollectionsCount.reduce((acc, current) => {\n if (current <= state.activeItemId!) {\n return acc + 1;\n }\n\n return acc;\n }, 0);\n\n return state.collections[collectionIndex];\n}\n\n/**\n * Gets the highlighted index relative to a suggestion object (not the absolute\n * highlighted index).\n *\n * Example:\n * [['a', 'b'], ['c', 'd', 'e'], ['f']]\n * ↑\n * (absolute: 3, relative: 1)\n */\nfunction getRelativeActiveItemId({\n state,\n collection,\n}: {\n state: AutocompleteState;\n collection: AutocompleteCollection;\n}): number {\n let isOffsetFound = false;\n let counter = 0;\n let previousItemsOffset = 0;\n\n while (isOffsetFound === false) {\n const currentCollection = state.collections[counter];\n\n if (currentCollection === collection) {\n isOffsetFound = true;\n break;\n }\n\n previousItemsOffset += currentCollection.items.length;\n\n counter++;\n }\n\n return state.activeItemId! - previousItemsOffset;\n}\n\nexport function getActiveItem(\n state: AutocompleteState\n) {\n const collection = getCollectionFromActiveItemId(state);\n\n if (!collection) {\n return null;\n }\n\n const item = collection.items[getRelativeActiveItemId({ state, collection })];\n const source = collection.source;\n const itemInputValue = source.getItemInputValue({ item, state });\n const itemUrl = source.getItemUrl({ item, state });\n\n return {\n item,\n itemInputValue,\n itemUrl,\n source,\n };\n}\n","import type { InternalAutocompleteSource } from '../types';\n\n/**\n * Returns a full element id for an autocomplete element.\n *\n * @param autocompleteInstanceId The id of the autocomplete instance\n * @param elementId The specific element id\n * @param source The source of the element, when it needs to be scoped\n */\nexport function getAutocompleteElementId(\n autocompleteInstanceId: string,\n elementId: string,\n source?: InternalAutocompleteSource\n) {\n return [autocompleteInstanceId, source?.sourceId, elementId]\n .filter(Boolean)\n .join('-')\n .replace(/\\s/g, '');\n}\n","const regex = /((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;\n\nexport function isSamsung(userAgent: string) {\n return Boolean(userAgent && userAgent.match(regex));\n}\n","export function getNativeEvent(event: TEvent) {\n return (event as unknown as { nativeEvent: TEvent }).nativeEvent || event;\n}\n","import {\n getItemsCount,\n generateAutocompleteId,\n flatten,\n} from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteEnvironment,\n AutocompleteOptions,\n AutocompleteSubscribers,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\nimport { getNormalizedSources } from './utils';\n\nexport function getDefaultProps(\n props: AutocompleteOptions,\n pluginSubscribers: AutocompleteSubscribers\n): InternalAutocompleteOptions {\n /* eslint-disable no-restricted-globals */\n const environment: AutocompleteEnvironment = (\n typeof window !== 'undefined' ? window : {}\n ) as typeof window;\n /* eslint-enable no-restricted-globals */\n const plugins = props.plugins || [];\n\n return {\n debug: false,\n openOnFocus: false,\n enterKeyHint: undefined,\n ignoreCompositionEvents: false,\n placeholder: '',\n autoFocus: false,\n defaultActiveItemId: null,\n stallThreshold: 300,\n insights: undefined,\n environment,\n shouldPanelOpen: ({ state }) => getItemsCount(state) > 0,\n reshape: ({ sources }) => sources,\n ...props,\n // Since `generateAutocompleteId` triggers a side effect (it increments\n // an internal counter), we don't want to execute it if unnecessary.\n id: props.id ?? generateAutocompleteId(),\n plugins,\n // The following props need to be deeply defaulted.\n initialState: {\n activeItemId: null,\n query: '',\n completion: null,\n collections: [],\n isOpen: false,\n status: 'idle',\n context: {},\n ...props.initialState,\n },\n onStateChange(params) {\n props.onStateChange?.(params);\n plugins.forEach((x) => x.onStateChange?.(params));\n },\n onSubmit(params) {\n props.onSubmit?.(params);\n plugins.forEach((x) => x.onSubmit?.(params));\n },\n onReset(params) {\n props.onReset?.(params);\n plugins.forEach((x) => x.onReset?.(params));\n },\n getSources(params) {\n return Promise.all(\n [...plugins.map((plugin) => plugin.getSources), props.getSources]\n .filter(Boolean)\n .map((getSources) => getNormalizedSources(getSources!, params))\n )\n .then((nested) => flatten(nested))\n .then((sources) =>\n sources.map((source) => ({\n ...source,\n onSelect(params) {\n source.onSelect(params);\n pluginSubscribers.forEach((x) => x.onSelect?.(params));\n },\n onActive(params) {\n source.onActive(params);\n pluginSubscribers.forEach((x) => x.onActive?.(params));\n },\n onResolve(params) {\n source.onResolve(params);\n pluginSubscribers.forEach((x) => x.onResolve?.(params));\n },\n }))\n );\n },\n navigator: {\n navigate({ itemUrl }) {\n environment.location.assign(itemUrl);\n },\n navigateNewTab({ itemUrl }) {\n const windowReference = environment.open(itemUrl, '_blank', 'noopener');\n windowReference?.focus();\n },\n navigateNewWindow({ itemUrl }) {\n environment.open(itemUrl, '_blank', 'noopener');\n },\n ...props.navigator,\n },\n };\n}\n","import { invariant, decycle, noop } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteSource,\n BaseItem,\n GetSources,\n GetSourcesParams,\n InternalAutocompleteSource,\n InternalGetSources,\n} from '../types';\n\nexport function getNormalizedSources(\n getSources: GetSources,\n params: GetSourcesParams\n): ReturnType> {\n const seenSourceIds: string[] = [];\n\n return Promise.resolve(getSources(params)).then((sources) => {\n invariant(\n Array.isArray(sources),\n () =>\n `The \\`getSources\\` function must return an array of sources but returned type ${JSON.stringify(\n typeof sources\n )}:\\n\\n${JSON.stringify(decycle(sources), null, 2)}`\n );\n\n return Promise.all(\n sources\n // We allow `undefined` and `false` sources to allow users to use\n // `Boolean(query) && source` (=> `false`).\n // We need to remove these values at this point.\n .filter((maybeSource: any): maybeSource is AutocompleteSource =>\n Boolean(maybeSource)\n )\n .map((source) => {\n invariant(\n typeof source.sourceId === 'string',\n 'A source must provide a `sourceId` string.'\n );\n\n if (seenSourceIds.includes(source.sourceId)) {\n throw new Error(\n `[Autocomplete] The \\`sourceId\\` ${JSON.stringify(\n source.sourceId\n )} is not unique.`\n );\n }\n\n seenSourceIds.push(source.sourceId);\n\n const defaultSource: Omit<\n InternalAutocompleteSource,\n 'sourceId' | 'getItems'\n > = {\n getItemInputValue({ state }) {\n return state.query;\n },\n getItemUrl() {\n return undefined;\n },\n onSelect({ setIsOpen }) {\n setIsOpen(false);\n },\n onActive: noop,\n onResolve: noop,\n };\n\n Object.keys(defaultSource).forEach((key) => {\n defaultSource[key].__default = true;\n });\n\n const normalizedSource: InternalAutocompleteSource = {\n ...defaultSource,\n ...source,\n };\n\n return Promise.resolve(normalizedSource);\n })\n );\n });\n}\n","import type {\n Execute,\n ExecuteResponse,\n RequesterDescription,\n TransformResponse,\n} from '@algolia/autocomplete-preset-algolia';\nimport { decycle, flatten, invariant } from '@algolia/autocomplete-shared';\nimport type { SearchResponse } from '@algolia/autocomplete-shared';\nimport {\n MultipleQueriesQuery,\n SearchForFacetValuesResponse,\n} from '@algolia/client-search';\nimport type { SearchClient } from 'algoliasearch/lite';\n\nimport {\n AutocompleteState,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteSource,\n OnResolveParams,\n} from './types';\nimport { mapToAlgoliaResponse } from './utils';\n\nfunction isDescription(\n item:\n | RequestDescriptionPreResolved\n | RequestDescriptionPreResolvedCustom\n | PackedDescription\n): item is RequestDescriptionPreResolved {\n return Boolean((item as RequestDescriptionPreResolved).execute);\n}\n\nfunction isRequesterDescription(\n description: TItem[] | TItem[][] | RequesterDescription\n): description is RequesterDescription {\n return Boolean((description as RequesterDescription)?.execute);\n}\n\ntype PackedDescription = {\n searchClient: SearchClient;\n execute: Execute;\n requesterId?: string;\n items: RequestDescriptionPreResolved['requests'];\n};\n\ntype RequestDescriptionPreResolved = Pick<\n RequesterDescription,\n 'execute' | 'requesterId' | 'searchClient' | 'transformResponse'\n> & {\n requests: Array<{\n query: MultipleQueriesQuery;\n sourceId: string;\n transformResponse: TransformResponse;\n }>;\n};\n\ntype RequestDescriptionPreResolvedCustom = {\n items: TItem[] | TItem[][];\n sourceId: string;\n transformResponse?: undefined;\n};\n\nexport function preResolve(\n itemsOrDescription: TItem[] | TItem[][] | RequesterDescription,\n sourceId: string,\n state: AutocompleteState\n):\n | RequestDescriptionPreResolved\n | RequestDescriptionPreResolvedCustom {\n if (isRequesterDescription(itemsOrDescription)) {\n const contextParameters =\n itemsOrDescription.requesterId === 'algolia'\n ? Object.assign(\n {},\n ...Object.keys(state.context).map((key) => {\n return (state.context[key] as Record)\n ?.__algoliaSearchParameters;\n })\n )\n : {};\n\n return {\n ...itemsOrDescription,\n requests: itemsOrDescription.queries.map((query) => ({\n query:\n itemsOrDescription.requesterId === 'algolia'\n ? {\n ...query,\n params: {\n ...contextParameters,\n ...query.params,\n },\n }\n : query,\n sourceId,\n transformResponse: itemsOrDescription.transformResponse,\n })),\n };\n }\n\n return {\n items: itemsOrDescription,\n sourceId,\n };\n}\n\nexport function resolve(\n items: Array<\n | RequestDescriptionPreResolved\n | RequestDescriptionPreResolvedCustom\n >\n) {\n const packed = items.reduce<\n Array | PackedDescription>\n >((acc, current) => {\n if (!isDescription(current)) {\n acc.push(current);\n return acc;\n }\n\n const { searchClient, execute, requesterId, requests } = current;\n\n const container = acc.find>(\n (item): item is PackedDescription => {\n return (\n isDescription(current) &&\n isDescription(item) &&\n item.searchClient === searchClient &&\n Boolean(requesterId) &&\n item.requesterId === requesterId\n );\n }\n );\n\n if (container) {\n container.items.push(...requests);\n } else {\n const request: PackedDescription = {\n execute,\n requesterId,\n items: requests,\n searchClient,\n };\n acc.push(request);\n }\n\n return acc;\n }, []);\n\n const values = packed.map<\n | Promise>\n | ReturnType>\n >((maybeDescription) => {\n if (!isDescription(maybeDescription)) {\n return Promise.resolve(\n maybeDescription as RequestDescriptionPreResolvedCustom\n );\n }\n\n const { execute, items, searchClient } =\n maybeDescription as PackedDescription;\n\n return execute({\n searchClient,\n requests: items,\n });\n });\n\n return Promise.all<\n RequestDescriptionPreResolvedCustom | ExecuteResponse\n >(values).then((responses) =>\n flatten<\n RequestDescriptionPreResolvedCustom | ExecuteResponse[0]\n >(responses)\n );\n}\n\nexport function postResolve(\n responses: Array<\n RequestDescriptionPreResolvedCustom | ExecuteResponse[0]\n >,\n sources: Array>,\n store: AutocompleteStore\n) {\n return sources.map((source) => {\n const matches = responses.filter(\n (response) => response.sourceId === source.sourceId\n );\n const results = matches.map(({ items }) => items);\n const transform = matches[0].transformResponse;\n const items = transform\n ? transform(\n mapToAlgoliaResponse(\n results as Array<\n SearchForFacetValuesResponse | SearchResponse\n >\n )\n )\n : results;\n\n source.onResolve({\n source,\n results,\n items,\n state: store.getState(),\n } as OnResolveParams);\n\n invariant(\n Array.isArray(items),\n () => `The \\`getItems\\` function from source \"${\n source.sourceId\n }\" must return an array of items but returned type ${JSON.stringify(\n typeof items\n )}:\\n\\n${JSON.stringify(decycle(items), null, 2)}.\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems`\n );\n\n invariant(\n (items as Array).every(Boolean),\n `The \\`getItems\\` function from source \"${\n source.sourceId\n }\" must return an array of items but returned ${JSON.stringify(\n undefined\n )}.\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems`\n );\n\n return {\n source,\n items,\n };\n });\n}\n","import type { SearchResponse } from '@algolia/autocomplete-shared';\nimport type { SearchForFacetValuesResponse } from '@algolia/client-search';\n\nexport function mapToAlgoliaResponse(\n rawResults: Array | SearchForFacetValuesResponse>\n) {\n return {\n results: rawResults,\n hits: rawResults\n .map((result) => (result as SearchResponse).hits)\n .filter(Boolean),\n facetHits: rawResults\n .map((result) =>\n (result as SearchForFacetValuesResponse).facetHits?.map((facetHit) => {\n // Bring support for the highlighting components.\n return {\n label: facetHit.value,\n count: facetHit.count,\n _highlightResult: {\n label: {\n value: facetHit.highlighted,\n },\n },\n };\n })\n )\n .filter(Boolean),\n };\n}\n","import { MaybePromise } from '@algolia/autocomplete-shared';\n\n/**\n * Creates a runner that executes promises in a concurrent-safe way.\n *\n * This is useful to prevent older promises to resolve after a newer promise,\n * otherwise resulting in stale resolved values.\n */\nexport function createConcurrentSafePromise() {\n let basePromiseId = -1;\n let latestResolvedId = -1;\n let latestResolvedValue: unknown = undefined;\n\n return function runConcurrentSafePromise(\n promise: MaybePromise\n ) {\n basePromiseId++;\n const currentPromiseId = basePromiseId;\n\n return Promise.resolve(promise).then((x) => {\n // The promise might take too long to resolve and get outdated. This would\n // result in resolving stale values.\n // When this happens, we ignore the promise value and return the one\n // coming from the latest resolved value.\n //\n // +----------------------------------+\n // | 100ms |\n // | run(1) +---> R1 |\n // | 300ms |\n // | run(2) +-------------> R2 (SKIP) |\n // | 200ms |\n // | run(3) +--------> R3 |\n // +----------------------------------+\n if (latestResolvedValue && currentPromiseId < latestResolvedId) {\n return latestResolvedValue as TValue;\n }\n\n latestResolvedId = currentPromiseId;\n latestResolvedValue = x;\n\n return x;\n });\n };\n}\n","import { SearchResponse } from '@algolia/autocomplete-shared';\nimport { SearchForFacetValuesResponse } from '@algolia/client-search';\n\nimport { reshape } from './reshape';\nimport { preResolve, resolve, postResolve } from './resolve';\nimport {\n AutocompleteScopeApi,\n AutocompleteState,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\nimport {\n cancelable,\n CancelablePromise,\n createConcurrentSafePromise,\n getActiveItem,\n} from './utils';\n\nlet lastStalledId: number | null = null;\n\ninterface OnInputParams\n extends AutocompleteScopeApi {\n event: any;\n /**\n * The next partial state to apply after the function is called.\n *\n * This is useful when we call `onInput` in a different scenario than an\n * actual input. For example, we use `onInput` when we click on an item,\n * but we want to close the panel in that case.\n */\n nextState?: Partial>;\n props: InternalAutocompleteOptions;\n query: string;\n store: AutocompleteStore;\n}\n\nconst runConcurrentSafePromise = createConcurrentSafePromise();\n\nexport function onInput({\n event,\n nextState = {},\n props,\n query,\n refresh,\n store,\n ...setters\n}: OnInputParams): CancelablePromise {\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n\n const {\n setCollections,\n setIsOpen,\n setQuery,\n setActiveItemId,\n setStatus,\n setContext,\n } = setters;\n\n setQuery(query);\n setActiveItemId(props.defaultActiveItemId);\n\n if (!query && props.openOnFocus === false) {\n const collections = store.getState().collections.map((collection) => ({\n ...collection,\n items: [],\n }));\n\n setStatus('idle');\n setCollections(collections);\n setIsOpen(\n nextState.isOpen ?? props.shouldPanelOpen({ state: store.getState() })\n );\n\n // We make sure to update the latest resolved value of the tracked\n // promises to keep late resolving promises from \"cancelling\" the state\n // updates performed in this code path.\n // We chain with a void promise to respect `onInput`'s expected return type.\n const request = cancelable(\n runConcurrentSafePromise(collections).then(() => Promise.resolve())\n );\n\n return store.pendingRequests.add(request);\n }\n\n setStatus('loading');\n\n lastStalledId = props.environment.setTimeout(() => {\n setStatus('stalled');\n }, props.stallThreshold);\n\n // We track the entire promise chain triggered by `onInput` before mutating\n // the Autocomplete state to make sure that any state manipulation is based on\n // fresh data regardless of when promises individually resolve.\n // We don't track nested promises and only rely on the full chain resolution,\n // meaning we should only ever manipulate the state once this concurrent-safe\n // promise is resolved.\n const request = cancelable(\n runConcurrentSafePromise(\n props\n .getSources({\n query,\n refresh,\n state: store.getState(),\n ...setters,\n })\n .then((sources) => {\n return Promise.all(\n sources.map((source) => {\n return Promise.resolve(\n source.getItems({\n query,\n refresh,\n state: store.getState(),\n ...setters,\n })\n ).then((itemsOrDescription) =>\n preResolve(\n itemsOrDescription,\n source.sourceId,\n store.getState()\n )\n );\n })\n )\n .then(resolve)\n .then((responses) => {\n const __automaticInsights = responses.some(({ items }) =>\n isSearchResponseWithAutomaticInsightsFlag(items)\n );\n\n // No need to pollute the context if `__automaticInsights=false`\n if (__automaticInsights) {\n setContext({\n algoliaInsightsPlugin: {\n ...((store.getState().context?.algoliaInsightsPlugin ||\n {}) as Record),\n __automaticInsights,\n },\n });\n }\n\n return postResolve(responses, sources, store);\n })\n .then((collections) =>\n reshape({ collections, props, state: store.getState() })\n );\n })\n )\n )\n .then((collections) => {\n // Parameters passed to `onInput` could be stale when the following code\n // executes, because `onInput` calls may not resolve in order.\n // If it becomes a problem we'll need to save the last passed parameters.\n // See: https://codesandbox.io/s/agitated-cookies-y290z\n\n setStatus('idle');\n\n setCollections(collections as any);\n\n const isPanelOpen = props.shouldPanelOpen({ state: store.getState() });\n\n setIsOpen(\n nextState.isOpen ??\n ((props.openOnFocus && !query && isPanelOpen) || isPanelOpen)\n );\n\n const highlightedItem = getActiveItem(store.getState());\n\n if (store.getState().activeItemId !== null && highlightedItem) {\n const { item, itemInputValue, itemUrl, source } = highlightedItem;\n\n source.onActive({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n }\n })\n .finally(() => {\n setStatus('idle');\n\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n });\n\n return store.pendingRequests.add(request);\n}\n\nfunction isSearchResponseWithAutomaticInsightsFlag(\n items:\n | TItem[]\n | TItem[][]\n | SearchForFacetValuesResponse\n | SearchResponse\n): items is SearchResponse {\n return (\n !Array.isArray(items) &&\n Boolean((items as SearchResponse)?._automaticInsights)\n );\n}\n","import { flatten } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteCollection,\n AutocompleteReshapeSourcesBySourceId,\n AutocompleteState,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\n\ntype ReshapeParams = {\n collections: Array>;\n props: InternalAutocompleteOptions;\n state: AutocompleteState;\n};\n\nexport function reshape({\n collections,\n props,\n state,\n}: ReshapeParams) {\n // Sources are grouped by `sourceId` to conveniently pick them via destructuring.\n // Example: `const { recentSearchesPlugin } = sourcesBySourceId`\n const originalSourcesBySourceId = collections.reduce<\n AutocompleteReshapeSourcesBySourceId\n >(\n (acc, collection) => ({\n ...acc,\n [collection.source.sourceId]: {\n ...collection.source,\n getItems() {\n // We provide the resolved items from the collection to the `reshape` prop.\n return flatten(collection.items);\n },\n },\n }),\n {}\n );\n\n const { sourcesBySourceId } = props.plugins.reduce(\n (acc, plugin) => {\n if (plugin.reshape) {\n return plugin.reshape(acc);\n }\n return acc;\n },\n {\n sourcesBySourceId: originalSourcesBySourceId,\n state,\n }\n );\n\n const reshapeSources = props.reshape({\n sourcesBySourceId,\n sources: Object.values(sourcesBySourceId),\n state,\n });\n\n // We reconstruct the collections with the items modified by the `reshape` prop.\n return flatten(reshapeSources)\n .filter(Boolean)\n .map((source) => {\n return {\n source,\n items: source.getItems(),\n };\n });\n}\n","import { noop } from '@algolia/autocomplete-shared';\n\nimport { onInput } from './onInput';\nimport { onKeyDown } from './onKeyDown';\nimport {\n AutocompleteScopeApi,\n AutocompleteStore,\n BaseItem,\n GetEnvironmentProps,\n GetFormProps,\n GetInputProps,\n GetItemProps,\n GetLabelProps,\n GetListProps,\n GetPanelProps,\n GetRootProps,\n InternalAutocompleteOptions,\n} from './types';\nimport {\n getActiveItem,\n getAutocompleteElementId,\n isOrContainsNode,\n isSamsung,\n getNativeEvent,\n} from './utils';\n\ninterface GetPropGettersOptions\n extends AutocompleteScopeApi {\n store: AutocompleteStore;\n props: InternalAutocompleteOptions;\n}\n\nexport function getPropGetters<\n TItem extends BaseItem,\n TEvent,\n TMouseEvent,\n TKeyboardEvent\n>({ props, refresh, store, ...setters }: GetPropGettersOptions) {\n const getEnvironmentProps: GetEnvironmentProps = (providedProps) => {\n const { inputElement, formElement, panelElement, ...rest } = providedProps;\n\n function onMouseDownOrTouchStart(event: MouseEvent | TouchEvent) {\n // The `onTouchStart`/`onMouseDown` events shouldn't trigger the `blur`\n // handler when it's not an interaction with Autocomplete.\n // We detect it with the following heuristics:\n // - the panel is closed AND there are no pending requests\n // (no interaction with the autocomplete, no future state updates)\n // - OR the touched target is the input element (should open the panel)\n const isAutocompleteInteraction =\n store.getState().isOpen || !store.pendingRequests.isEmpty();\n\n if (!isAutocompleteInteraction || event.target === inputElement) {\n return;\n }\n\n // @TODO: support cases where there are multiple Autocomplete instances.\n // Right now, a second instance makes this computation return false.\n const isTargetWithinAutocomplete = [formElement, panelElement].some(\n (contextNode) => {\n return isOrContainsNode(contextNode, event.target as Node);\n }\n );\n\n if (isTargetWithinAutocomplete === false) {\n store.dispatch('blur', null);\n\n // If requests are still pending when the user closes the panel, they\n // could reopen the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n }\n }\n\n return {\n // We do not rely on the native `blur` event of the input to close the\n // panel, but rather on a custom `touchstart`/`mousedown` event outside\n // of the autocomplete elements.\n // This ensures we don't mistakenly interpret interactions within the\n // autocomplete (but outside of the input) as a signal to close the panel.\n // For example, clicking reset button causes an input blur, but if\n // `openOnFocus=true`, it shouldn't close the panel.\n // On touch devices, scrolling results (`touchmove`) causes an input blur\n // but shouldn't close the panel.\n onTouchStart: onMouseDownOrTouchStart,\n onMouseDown: onMouseDownOrTouchStart,\n // When scrolling on touch devices (mobiles, tablets, etc.), we want to\n // mimic the native platform behavior where the input is blurred to\n // hide the virtual keyboard. This gives more vertical space to\n // discover all the suggestions showing up in the panel.\n onTouchMove(event: TouchEvent) {\n if (\n store.getState().isOpen === false ||\n inputElement !== props.environment.document.activeElement ||\n event.target === inputElement\n ) {\n return;\n }\n\n inputElement.blur();\n },\n ...rest,\n };\n };\n\n const getRootProps: GetRootProps = (rest) => {\n return {\n role: 'combobox',\n 'aria-expanded': store.getState().isOpen,\n 'aria-haspopup': 'listbox',\n 'aria-controls': store.getState().isOpen\n ? store\n .getState()\n .collections.map(({ source }) =>\n getAutocompleteElementId(props.id, 'list', source)\n )\n .join(' ')\n : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n ...rest,\n };\n };\n\n const getFormProps: GetFormProps = (providedProps) => {\n const { inputElement, ...rest } = providedProps;\n\n return {\n action: '',\n noValidate: true,\n role: 'search',\n onSubmit: (event) => {\n (event as unknown as Event).preventDefault();\n\n props.onSubmit({\n event,\n refresh,\n state: store.getState(),\n ...setters,\n });\n\n store.dispatch('submit', null);\n providedProps.inputElement?.blur();\n },\n onReset: (event) => {\n (event as unknown as Event).preventDefault();\n\n props.onReset({\n event,\n refresh,\n state: store.getState(),\n ...setters,\n });\n\n store.dispatch('reset', null);\n providedProps.inputElement?.focus();\n },\n ...rest,\n };\n };\n\n const getInputProps: GetInputProps = (\n providedProps\n ) => {\n function onFocus(event: TEvent) {\n // We want to trigger a query when `openOnFocus` is true\n // because the panel should open with the current query.\n if (props.openOnFocus || Boolean(store.getState().query)) {\n onInput({\n event,\n props,\n query: store.getState().completion || store.getState().query,\n refresh,\n store,\n ...setters,\n });\n }\n\n store.dispatch('focus', null);\n }\n\n const { inputElement, maxLength = 512, ...rest } = providedProps || {};\n const activeItem = getActiveItem(store.getState());\n\n const userAgent = props.environment.navigator?.userAgent || '';\n const shouldFallbackKeyHint = isSamsung(userAgent);\n const enterKeyHint =\n props.enterKeyHint ||\n (activeItem?.itemUrl && !shouldFallbackKeyHint ? 'go' : 'search');\n\n return {\n 'aria-autocomplete': 'both',\n 'aria-activedescendant':\n store.getState().isOpen && store.getState().activeItemId !== null\n ? getAutocompleteElementId(\n props.id,\n `item-${store.getState().activeItemId}`,\n activeItem?.source\n )\n : undefined,\n 'aria-controls': store.getState().isOpen\n ? store\n .getState()\n .collections.map(({ source }) =>\n getAutocompleteElementId(props.id, 'list', source)\n )\n .join(' ')\n : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n value: store.getState().completion || store.getState().query,\n id: getAutocompleteElementId(props.id, 'input'),\n autoComplete: 'off',\n autoCorrect: 'off',\n autoCapitalize: 'off',\n enterKeyHint,\n spellCheck: 'false',\n autoFocus: props.autoFocus,\n placeholder: props.placeholder,\n maxLength,\n type: 'search',\n onChange: (event) => {\n const value = (\n (event as unknown as Event).currentTarget as HTMLInputElement\n ).value;\n\n if (\n props.ignoreCompositionEvents &&\n getNativeEvent(event as unknown as InputEvent).isComposing\n ) {\n setters.setQuery(value);\n return;\n }\n\n onInput({\n event,\n props,\n query: value.slice(0, maxLength),\n refresh,\n store,\n ...setters,\n });\n },\n onCompositionEnd: (event) => {\n onInput({\n event,\n props,\n query: (\n (event as unknown as Event).currentTarget as HTMLInputElement\n ).value.slice(0, maxLength),\n refresh,\n store,\n ...setters,\n });\n },\n onKeyDown: (event) => {\n if (getNativeEvent(event as unknown as InputEvent).isComposing) {\n return;\n }\n\n onKeyDown({\n event: event as unknown as KeyboardEvent,\n props,\n refresh,\n store,\n ...setters,\n });\n },\n onFocus,\n // We don't rely on the `blur` event.\n // See explanation in `onTouchStart`/`onMouseDown`.\n // @MAJOR See if we need to keep this handler.\n onBlur: noop,\n onClick: (event) => {\n // When the panel is closed and you click on the input while\n // the input is focused, the `onFocus` event is not triggered\n // (default browser behavior).\n // In an autocomplete context, it makes sense to open the panel in this\n // case.\n // We mimic this event by catching the `onClick` event which\n // triggers the `onFocus` for the panel to open.\n if (\n providedProps.inputElement ===\n props.environment.document.activeElement &&\n !store.getState().isOpen\n ) {\n onFocus(event as unknown as TEvent);\n }\n },\n ...rest,\n };\n };\n\n const getLabelProps: GetLabelProps = (rest) => {\n return {\n htmlFor: getAutocompleteElementId(props.id, 'input'),\n id: getAutocompleteElementId(props.id, 'label'),\n ...rest,\n };\n };\n\n const getListProps: GetListProps = (providedProps) => {\n const { source, ...rest } = providedProps || {};\n\n return {\n role: 'listbox',\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n id: getAutocompleteElementId(props.id, 'list', source),\n ...rest,\n };\n };\n\n const getPanelProps: GetPanelProps = (rest) => {\n return {\n onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the panel so\n // that the blur event is not triggered, otherwise it closes the\n // panel.\n (event as unknown as MouseEvent).preventDefault();\n },\n onMouseLeave() {\n store.dispatch('mouseleave', null);\n },\n ...rest,\n };\n };\n\n const getItemProps: GetItemProps = (providedProps) => {\n const { item, source, ...rest } = providedProps;\n\n return {\n id: getAutocompleteElementId(\n props.id,\n `item-${item.__autocomplete_id}`,\n source\n ),\n role: 'option',\n 'aria-selected': store.getState().activeItemId === item.__autocomplete_id,\n onMouseMove(event) {\n if (item.__autocomplete_id === store.getState().activeItemId) {\n return;\n }\n\n store.dispatch('mousemove', item.__autocomplete_id);\n\n const activeItem = getActiveItem(store.getState());\n\n if (store.getState().activeItemId !== null && activeItem) {\n const { item, itemInputValue, itemUrl, source } = activeItem;\n\n source.onActive({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n }\n },\n onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the item so it\n // can remain with the current `activeElement`.\n (event as unknown as MouseEvent).preventDefault();\n },\n onClick(event) {\n const itemInputValue = source.getItemInputValue({\n item,\n state: store.getState(),\n });\n const itemUrl = source.getItemUrl({\n item,\n state: store.getState(),\n });\n\n // If `getItemUrl` is provided, it means that the suggestion\n // is a link, not plain text that aims at updating the query.\n // We can therefore skip the state change because it will update\n // the `activeItemId`, resulting in a UI flash, especially\n // noticeable on mobile.\n const runPreCommand = itemUrl\n ? Promise.resolve()\n : onInput({\n event,\n nextState: { isOpen: false },\n props,\n query: itemInputValue,\n refresh,\n store,\n ...setters,\n });\n\n runPreCommand.then(() => {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n });\n },\n ...rest,\n };\n };\n\n return {\n getEnvironmentProps,\n getRootProps,\n getFormProps,\n getLabelProps,\n getInputProps,\n getPanelProps,\n getListProps,\n getItemProps,\n };\n}\n","export function isOrContainsNode(parent: Node, child: Node) {\n return parent === child || parent.contains(child);\n}\n","import { onInput } from './onInput';\nimport {\n ActionType,\n AutocompleteScopeApi,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteOptions,\n} from './types';\nimport { getActiveItem, getAutocompleteElementId } from './utils';\n\ninterface OnKeyDownOptions\n extends AutocompleteScopeApi {\n event: KeyboardEvent;\n props: InternalAutocompleteOptions;\n store: AutocompleteStore;\n}\n\nexport function onKeyDown({\n event,\n props,\n refresh,\n store,\n ...setters\n}: OnKeyDownOptions): void {\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n // eslint-disable-next-line no-inner-declarations\n function triggerScrollIntoView() {\n const highlightedItem = getActiveItem(store.getState());\n\n const nodeItem = props.environment.document.getElementById(\n getAutocompleteElementId(\n props.id,\n `item-${store.getState().activeItemId}`,\n highlightedItem?.source\n )\n );\n\n if (nodeItem) {\n if ((nodeItem as any).scrollIntoViewIfNeeded) {\n (nodeItem as any).scrollIntoViewIfNeeded(false);\n } else {\n nodeItem.scrollIntoView(false);\n }\n }\n }\n\n // eslint-disable-next-line no-inner-declarations\n function triggerOnActive() {\n const highlightedItem = getActiveItem(store.getState());\n\n if (store.getState().activeItemId !== null && highlightedItem) {\n const { item, itemInputValue, itemUrl, source } = highlightedItem;\n\n source.onActive({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n }\n }\n\n // Default browser behavior changes the caret placement on ArrowUp and\n // ArrowDown.\n event.preventDefault();\n\n // When re-opening the panel, we need to split the logic to keep the actions\n // synchronized as `onInput` returns a promise.\n if (\n store.getState().isOpen === false &&\n (props.openOnFocus || Boolean(store.getState().query))\n ) {\n onInput({\n event,\n props,\n query: store.getState().query,\n refresh,\n store,\n ...setters,\n }).then(() => {\n store.dispatch(event.key as ActionType, {\n nextActiveItemId: props.defaultActiveItemId,\n });\n\n triggerOnActive();\n // Since we rely on the DOM, we need to wait for all the micro tasks to\n // finish (which include re-opening the panel) to make sure all the\n // elements are available.\n setTimeout(triggerScrollIntoView, 0);\n });\n } else {\n store.dispatch(event.key, {});\n\n triggerOnActive();\n triggerScrollIntoView();\n }\n } else if (event.key === 'Escape') {\n // This prevents the default browser behavior on `input[type=\"search\"]`\n // from removing the query right away because we first want to close the\n // panel.\n event.preventDefault();\n\n store.dispatch(event.key, null);\n\n // Hitting the `Escape` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Tab') {\n store.dispatch('blur', null);\n\n // Hitting the `Tab` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Enter') {\n // No active item, so we let the browser handle the native `onSubmit` form\n // event.\n if (\n store.getState().activeItemId === null ||\n store\n .getState()\n .collections.every((collection) => collection.items.length === 0)\n ) {\n // If requests are still pending when the panel closes, they could reopen\n // the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n\n return;\n }\n\n // This prevents the `onSubmit` event to be sent because an item is\n // highlighted.\n event.preventDefault();\n\n const { item, itemInputValue, itemUrl, source } = getActiveItem(\n store.getState()\n )!;\n\n if (event.metaKey || event.ctrlKey) {\n if (itemUrl !== undefined) {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n props.navigator.navigateNewTab({\n itemUrl,\n item,\n state: store.getState(),\n });\n }\n } else if (event.shiftKey) {\n if (itemUrl !== undefined) {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n props.navigator.navigateNewWindow({\n itemUrl,\n item,\n state: store.getState(),\n });\n }\n } else if (event.altKey) {\n // Keep native browser behavior\n } else {\n if (itemUrl !== undefined) {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n props.navigator.navigate({\n itemUrl,\n item,\n state: store.getState(),\n });\n\n return;\n }\n\n onInput({\n event,\n nextState: { isOpen: false },\n props,\n query: itemInputValue,\n refresh,\n store,\n ...setters,\n }).then(() => {\n source.onSelect({\n event,\n item,\n itemInputValue,\n itemUrl,\n refresh,\n source,\n state: store.getState(),\n ...setters,\n });\n });\n }\n }\n}\n","import { UserAgent, userAgents } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteEnvironment,\n AutocompleteOptions,\n AutocompleteOptionsWithMetadata,\n AutocompletePlugin,\n BaseItem,\n} from '.';\n\ntype AutocompleteMetadata = {\n plugins: Array<{\n name: string | undefined;\n options: string[];\n }>;\n options: Record;\n ua: UserAgent[];\n};\n\ntype GetMetadataParams = {\n plugins: Array>;\n options: AutocompleteOptionsWithMetadata;\n};\n\nexport function getMetadata({\n plugins,\n options,\n}: GetMetadataParams) {\n const optionsKey = ((options.__autocomplete_metadata\n ?.userAgents as UserAgent[]) || [])[0]?.segment;\n\n const extraOptions = optionsKey\n ? {\n [optionsKey]: Object.keys(\n (options.__autocomplete_metadata\n ?.options as AutocompleteOptions) || {}\n ),\n }\n : {};\n\n return {\n plugins: plugins.map((plugin) => ({\n name: plugin.name,\n options: Object.keys(plugin.__autocomplete_pluginOptions || []),\n })),\n options: {\n 'autocomplete-core': Object.keys(options),\n ...extraOptions,\n },\n ua: userAgents.concat(\n (options.__autocomplete_metadata?.userAgents as any) || []\n ),\n };\n}\n\ntype InlineMetadataParams = {\n metadata: AutocompleteMetadata;\n environment: AutocompleteEnvironment;\n};\n\nexport function injectMetadata({\n metadata,\n environment,\n}: InlineMetadataParams) {\n const isMetadataEnabled =\n environment.navigator?.userAgent?.includes('Algolia Crawler');\n\n if (isMetadataEnabled) {\n const metadataContainer = environment.document.createElement('meta');\n const headRef = environment.document.querySelector('head');\n\n metadataContainer.name = 'algolia:metadata';\n\n setTimeout(() => {\n metadataContainer.content = JSON.stringify(metadata);\n headRef!.appendChild(metadataContainer);\n }, 0);\n }\n}\n","import { AutocompleteState, BaseItem } from './types';\nimport { getActiveItem } from './utils';\n\ninterface GetCompletionProps {\n state: AutocompleteState;\n}\n\nexport function getCompletion({\n state,\n}: GetCompletionProps): string | null {\n if (state.isOpen === false || state.activeItemId === null) {\n return null;\n }\n\n return getActiveItem(state)?.itemInputValue || null;\n}\n","import { getItemsCount, invariant } from '@algolia/autocomplete-shared';\n\nimport { getCompletion } from './getCompletion';\nimport { Reducer } from './types';\nimport { getNextActiveItemId } from './utils';\n\nexport const stateReducer: Reducer = (state, action) => {\n switch (action.type) {\n case 'setActiveItemId': {\n return {\n ...state,\n activeItemId: action.payload,\n };\n }\n\n case 'setQuery': {\n return {\n ...state,\n query: action.payload,\n completion: null,\n };\n }\n\n case 'setCollections': {\n return {\n ...state,\n collections: action.payload,\n };\n }\n\n case 'setIsOpen': {\n return {\n ...state,\n isOpen: action.payload,\n };\n }\n\n case 'setStatus': {\n return {\n ...state,\n status: action.payload,\n };\n }\n\n case 'setContext': {\n return {\n ...state,\n context: {\n ...state.context,\n ...action.payload,\n },\n };\n }\n\n case 'ArrowDown': {\n const nextState = {\n ...state,\n activeItemId: action.payload.hasOwnProperty('nextActiveItemId')\n ? action.payload.nextActiveItemId\n : getNextActiveItemId(\n 1,\n state.activeItemId,\n getItemsCount(state),\n action.props.defaultActiveItemId\n ),\n };\n\n return {\n ...nextState,\n completion: getCompletion({ state: nextState }),\n };\n }\n\n case 'ArrowUp': {\n const nextState = {\n ...state,\n activeItemId: getNextActiveItemId(\n -1,\n state.activeItemId,\n getItemsCount(state),\n action.props.defaultActiveItemId\n ),\n };\n\n return {\n ...nextState,\n completion: getCompletion({ state: nextState }),\n };\n }\n\n case 'Escape': {\n if (state.isOpen) {\n return {\n ...state,\n activeItemId: null,\n isOpen: false,\n completion: null,\n };\n }\n\n return {\n ...state,\n activeItemId: null,\n query: '',\n status: 'idle',\n collections: [],\n };\n }\n\n case 'submit': {\n return {\n ...state,\n activeItemId: null,\n isOpen: false,\n status: 'idle',\n };\n }\n\n case 'reset': {\n return {\n ...state,\n activeItemId:\n // Since we open the panel on reset when openOnFocus=true\n // we need to restore the highlighted index to the defaultActiveItemId. (DocSearch use-case)\n\n // Since we close the panel when openOnFocus=false\n // we lose track of the highlighted index. (Query-suggestions use-case)\n action.props.openOnFocus === true\n ? action.props.defaultActiveItemId\n : null,\n status: 'idle',\n completion: null,\n query: '',\n };\n }\n\n case 'focus': {\n return {\n ...state,\n activeItemId: action.props.defaultActiveItemId,\n isOpen:\n (action.props.openOnFocus || Boolean(state.query)) &&\n action.props.shouldPanelOpen({ state }),\n };\n }\n\n case 'blur': {\n if (action.props.debug) {\n return state;\n }\n\n return {\n ...state,\n isOpen: false,\n activeItemId: null,\n };\n }\n\n case 'mousemove': {\n return {\n ...state,\n activeItemId: action.payload,\n };\n }\n\n case 'mouseleave': {\n return {\n ...state,\n activeItemId: action.props.defaultActiveItemId,\n };\n }\n\n default:\n invariant(\n false,\n `The reducer action ${JSON.stringify(action.type)} is not supported.`\n );\n\n return state;\n }\n};\n","import { createAlgoliaInsightsPlugin } from '@algolia/autocomplete-plugin-algolia-insights';\n\nimport { checkOptions } from './checkOptions';\nimport { createStore } from './createStore';\nimport { getAutocompleteSetters } from './getAutocompleteSetters';\nimport { getDefaultProps } from './getDefaultProps';\nimport { getPropGetters } from './getPropGetters';\nimport { getMetadata, injectMetadata } from './metadata';\nimport { onInput } from './onInput';\nimport { stateReducer } from './stateReducer';\nimport {\n AutocompleteApi,\n AutocompleteOptions as AutocompleteCoreOptions,\n BaseItem,\n AutocompleteSubscribers,\n} from './types';\n\nexport interface AutocompleteOptionsWithMetadata\n extends AutocompleteCoreOptions {\n /**\n * @internal\n */\n __autocomplete_metadata?: Record;\n}\n\nexport function createAutocomplete<\n TItem extends BaseItem,\n TEvent = Event,\n TMouseEvent = MouseEvent,\n TKeyboardEvent = KeyboardEvent\n>(\n options: AutocompleteOptionsWithMetadata\n): AutocompleteApi {\n checkOptions(options);\n\n const subscribers: AutocompleteSubscribers = [];\n const props = getDefaultProps(options, subscribers);\n const store = createStore(stateReducer, props, onStoreStateChange);\n\n const setters = getAutocompleteSetters({ store });\n const propGetters = getPropGetters<\n TItem,\n TEvent,\n TMouseEvent,\n TKeyboardEvent\n >({ props, refresh, store, navigator: props.navigator, ...setters });\n\n function onStoreStateChange({ prevState, state }) {\n props.onStateChange({\n prevState,\n state,\n refresh,\n navigator: props.navigator,\n ...setters,\n });\n\n if (\n !isAlgoliaInsightsPluginEnabled() &&\n state.context?.algoliaInsightsPlugin?.__automaticInsights &&\n props.insights !== false\n ) {\n const plugin = createAlgoliaInsightsPlugin({\n __autocomplete_clickAnalytics: false,\n });\n\n props.plugins.push(plugin);\n\n subscribePlugins([plugin]);\n }\n }\n\n function refresh() {\n return onInput({\n event: new Event('input'),\n nextState: { isOpen: store.getState().isOpen },\n props,\n navigator: props.navigator,\n query: store.getState().query,\n refresh,\n store,\n ...setters,\n });\n }\n\n function subscribePlugins(plugins: typeof props.plugins) {\n plugins.forEach((plugin) =>\n plugin.subscribe?.({\n ...setters,\n navigator: props.navigator,\n refresh,\n onSelect(fn) {\n subscribers.push({ onSelect: fn });\n },\n onActive(fn) {\n subscribers.push({ onActive: fn });\n },\n onResolve(fn) {\n subscribers.push({ onResolve: fn });\n },\n })\n );\n }\n\n function isAlgoliaInsightsPluginEnabled() {\n return props.plugins.some(\n (plugin) => plugin.name === 'aa.algoliaInsightsPlugin'\n );\n }\n\n if (props.insights && !isAlgoliaInsightsPluginEnabled()) {\n const insightsParams =\n typeof props.insights === 'boolean' ? {} : props.insights;\n props.plugins.push(createAlgoliaInsightsPlugin(insightsParams));\n }\n\n subscribePlugins(props.plugins);\n\n injectMetadata({\n metadata: getMetadata({ plugins: props.plugins, options }),\n environment: props.environment,\n });\n\n return {\n refresh,\n navigator: props.navigator,\n ...propGetters,\n ...setters,\n };\n}\n","import {\n AutocompleteState,\n AutocompleteStore,\n BaseItem,\n InternalAutocompleteOptions,\n Reducer,\n} from './types';\nimport { createCancelablePromiseList } from './utils';\n\ntype OnStoreStateChange = ({\n prevState,\n state,\n}: {\n prevState: AutocompleteState;\n state: AutocompleteState;\n}) => void;\n\nexport function createStore(\n reducer: Reducer,\n props: InternalAutocompleteOptions,\n onStoreStateChange: OnStoreStateChange\n): AutocompleteStore {\n let state = props.initialState;\n\n return {\n getState() {\n return state;\n },\n dispatch(action, payload) {\n const prevState = { ...state };\n state = reducer(state, {\n type: action,\n props,\n payload,\n });\n\n onStoreStateChange({ state, prevState });\n },\n pendingRequests: createCancelablePromiseList(),\n };\n}\n","import { CancelablePromise } from '.';\n\nexport type CancelablePromiseList = {\n /**\n * Add a cancelable promise to the list.\n *\n * @param cancelablePromise The cancelable promise to add.\n */\n add(cancelablePromise: CancelablePromise): CancelablePromise;\n /**\n * Cancel all pending promises.\n *\n * Requests aren't actually stopped. All pending promises will settle, but\n * attached handlers won't run.\n */\n cancelAll(): void;\n /**\n * Whether there are pending promises in the list.\n */\n isEmpty(): boolean;\n};\n\nexport function createCancelablePromiseList<\n TValue\n>(): CancelablePromiseList {\n let list: Array> = [];\n\n return {\n add(cancelablePromise) {\n list.push(cancelablePromise);\n\n return cancelablePromise.finally(() => {\n list = list.filter((item) => item !== cancelablePromise);\n });\n },\n cancelAll() {\n list.forEach((promise) => promise.cancel());\n },\n isEmpty() {\n return list.length === 0;\n },\n };\n}\n","import { flatten } from '@algolia/autocomplete-shared';\n\nimport {\n AutocompleteApi,\n AutocompleteCollection,\n AutocompleteStore,\n BaseItem,\n} from './types';\n\ninterface GetAutocompleteSettersOptions {\n store: AutocompleteStore;\n}\n\nexport function getAutocompleteSetters({\n store,\n}: GetAutocompleteSettersOptions) {\n const setActiveItemId: AutocompleteApi['setActiveItemId'] = (\n value\n ) => {\n store.dispatch('setActiveItemId', value);\n };\n\n const setQuery: AutocompleteApi['setQuery'] = (value) => {\n store.dispatch('setQuery', value);\n };\n\n const setCollections: AutocompleteApi['setCollections'] = (\n rawValue\n ) => {\n let baseItemId = 0;\n const value = rawValue.map>((collection) => ({\n ...collection,\n // We flatten the stored items to support calling `getAlgoliaResults`\n // from the source itself.\n items: flatten(collection.items as any).map((item: any) => ({\n ...item,\n __autocomplete_id: baseItemId++,\n })),\n }));\n\n store.dispatch('setCollections', value);\n };\n\n const setIsOpen: AutocompleteApi['setIsOpen'] = (value) => {\n store.dispatch('setIsOpen', value);\n };\n\n const setStatus: AutocompleteApi['setStatus'] = (value) => {\n store.dispatch('setStatus', value);\n };\n\n const setContext: AutocompleteApi['setContext'] = (value) => {\n store.dispatch('setContext', value);\n };\n\n return {\n setActiveItemId,\n setQuery,\n setCollections,\n setIsOpen,\n setStatus,\n setContext,\n };\n}\n"],"names":["debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","flatten","values","reduce","a","b","concat","autocompleteId","getItemsCount","state","collections","sum","collection","items","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","userAgents","segment","version","createClickedEvent","_ref","item","_ref$items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","_slicedToArray","arr","i","isArray","_arrayWithHoles","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","call","next","done","push","value","err","return","_iterableToArrayLimit","o","minLen","_arrayLikeToArray","n","prototype","toString","slice","constructor","name","from","test","_unsupportedIterableToArray","TypeError","_nonIterableRest","len","arr2","_excluded","_excluded2","_typeof","_toConsumableArray","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","_objectWithoutProperties","source","excluded","target","sourceKeys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","arg","input","hint","prim","toPrimitive","res","String","Number","_toPrimitive","_toPropertyKey","configurable","writable","chunk","chunkSize","chunks","objectIDs","mapToInsightsParamsApi","params","map","param","_ref2","createSearchInsightsApi","searchInsights","_split$map2","major","minor","canSendHeaders","split","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","headers","appId","apiKey","init","setAuthenticatedUserToken","authenticatedUserToken","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","acc","_ref3","_ref4","payload","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","current","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","insightsEvents","event","eventName","createAlgoliaInsightsPlugin","options","_getOptions","_ref8","getAlgoliaSources","context","onSelect","_ref9","onActive","__autocomplete_clickAnalytics","getOptions","providedInsightsClient","insightsClient","insightsInitParams","onSelectEvent","onActiveEvent","callback","window","safelyRunOnBrowser","pointer","AlgoliaAnalyticsObject","queue","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause","loadInsights","partial","previousItems","debouncedOnStateChange","isOpen","subscribe","setContext","isAuthenticatedToken","setInsightsContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","normalizeUserToken","_error","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions","_context$algoliaInsig","algoliaSourceBase","__automaticInsights","createInternalCancelablePromise","promise","initialState","then","onfulfilled","onrejected","createCallback","catch","finally","onfinally","onCancelList","cancel","isCanceled","callbacks","cancelable","onResult","fallback","getNextActiveItemId","moveAmount","baseIndex","itemCount","defaultActiveItemId","numericIndex","getActiveItem","collectionIndex","collectionsCount","nextValue","activeItemId","getCollectionFromActiveItemId","isOffsetFound","counter","previousItemsOffset","currentCollection","getRelativeActiveItemId","itemInputValue","getItemInputValue","itemUrl","getItemUrl","getAutocompleteElementId","autocompleteInstanceId","elementId","sourceId","Boolean","join","replace","regex","getNativeEvent","nativeEvent","getDefaultProps","props","pluginSubscribers","_props$id","plugins","debug","openOnFocus","enterKeyHint","ignoreCompositionEvents","placeholder","autoFocus","stallThreshold","shouldPanelOpen","reshape","sources","id","query","completion","status","_props$onStateChange","_x$onStateChange","onSubmit","_props$onSubmit","_x$onSubmit","onReset","_props$onReset","_x$onReset","getSources","Promise","all","plugin","seenSourceIds","resolve","maybeSource","includes","Error","JSON","stringify","defaultSource","setIsOpen","onResolve","__default","normalizedSource","getNormalizedSources","nested","_x$onSelect","_x$onActive","_x$onResolve","navigator","navigate","location","assign","navigateNewTab","windowReference","open","focus","navigateNewWindow","isDescription","execute","preResolve","itemsOrDescription","description","contextParameters","requesterId","_state$context$key","requests","queries","transformResponse","searchClient","container","find","_container$items","request","maybeDescription","responses","postResolve","store","rawResults","matches","response","results","transform","hits","result","facetHits","_facetHits","facetHit","label","count","_highlightResult","highlighted","getState","every","basePromiseId","latestResolvedId","latestResolvedValue","lastStalledId","runConcurrentSafePromise","currentPromiseId","onInput","_ref$nextState","nextState","refresh","setters","setCollections","setQuery","setActiveItemId","setStatus","_nextState$isOpen","pendingRequests","add","_store$getState$conte","some","_automaticInsights","isSearchResponseWithAutomaticInsightsFlag","originalSourcesBySourceId","sourcesBySourceId","_nextState$isOpen2","isPanelOpen","highlightedItem","getPropGetters","getEnvironmentProps","providedProps","inputElement","formElement","panelElement","onMouseDownOrTouchStart","isEmpty","contextNode","parent","child","contains","dispatch","cancelAll","onTouchStart","onMouseDown","onTouchMove","activeElement","blur","getRootProps","rest","role","getFormProps","action","noValidate","_providedProps$inputE","preventDefault","_providedProps$inputE2","_excluded3","getLabelProps","htmlFor","getInputProps","_props$environment$na","onFocus","_ref3$maxLength","maxLength","_excluded4","activeItem","shouldFallbackKeyHint","userAgent","match","isSamsung","autoComplete","autoCorrect","autoCapitalize","spellCheck","type","onChange","currentTarget","isComposing","onCompositionEnd","onKeyDown","triggerScrollIntoView","nodeItem","getElementById","scrollIntoViewIfNeeded","scrollIntoView","triggerOnActive","nextActiveItemId","metaKey","ctrlKey","shiftKey","altKey","onBlur","onClick","getPanelProps","onMouseLeave","getListProps","_excluded5","getItemProps","_excluded6","__autocomplete_id","onMouseMove","getMetadata","_","_options$__autocomple","_options$__autocomple2","_options$__autocomple3","optionsKey","__autocomplete_metadata","extraOptions","ua","getCompletion","_getActiveItem","stateReducer","hasOwnProperty","subscribers","reducer","onStoreStateChange","list","prevState","cancelablePromise","createStore","_state$context","_state$context$algoli","isAlgoliaInsightsPluginEnabled","subscribePlugins","rawValue","baseItemId","getAutocompleteSetters","propGetters","Event","_plugin$subscribe","insightsParams","_environment$navigato","_environment$navigato2","metadata","metadataContainer","headRef","querySelector","content","injectMetadata"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-core/package.json b/node_modules/@algolia/autocomplete-core/package.json deleted file mode 100644 index 8f7ce00..0000000 --- a/node_modules/@algolia/autocomplete-core/package.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "name": "@algolia/autocomplete-core", - "description": "Core primitives for building autocomplete experiences.", - "version": "1.17.7", - "license": "MIT", - "homepage": "https://github.com/algolia/autocomplete", - "repository": "algolia/autocomplete", - "author": { - "name": "Algolia, Inc.", - "url": "https://www.algolia.com" - }, - "source": "src/index.ts", - "types": "dist/esm/index.d.ts", - "module": "dist/esm/index.js", - "main": "dist/umd/index.production.js", - "umd:main": "dist/umd/index.production.js", - "unpkg": "dist/umd/index.production.js", - "jsdelivr": "dist/umd/index.production.js", - "sideEffects": false, - "files": [ - "dist/" - ], - "scripts": { - "build:clean": "rm -rf ./dist", - "build:esm": "babel src --root-mode upward --extensions '.ts,.tsx' --out-dir dist/esm --ignore '**/*/__tests__/'", - "build:types": "tsc -p ./tsconfig.declaration.json --outDir ./dist/esm", - "build:umd": "rollup --config", - "build": "yarn build:clean && yarn build:umd && yarn build:esm && yarn build:types", - "on:change": "concurrently \"yarn build:esm\" \"yarn build:types\"", - "prepare": "yarn build:esm && yarn build:types", - "watch": "watch \"yarn on:change\" --ignoreDirectoryPattern \"/dist/\"" - }, - "dependencies": { - "@algolia/autocomplete-plugin-algolia-insights": "1.17.7", - "@algolia/autocomplete-shared": "1.17.7" - }, - "devDependencies": { - "@algolia/autocomplete-preset-algolia": "1.17.7", - "@algolia/client-search": "4.16.0", - "algoliasearch": "4.16.0" - } -} diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/README.md b/node_modules/@algolia/autocomplete-plugin-algolia-insights/README.md deleted file mode 100644 index 00b667a..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# @algolia/autocomplete-plugin-algolia-insights - -The Algolia Insights plugin automatically sends click and conversion events to the [Algolia Insights API](https://www.algolia.com/doc/rest-api/insights]) whenever a user interacts with the autocomplete. - -## Installation - -```sh -yarn add @algolia/autocomplete-plugin-algolia-insights -# or -npm install @algolia/autocomplete-plugin-algolia-insights -``` - -## Documentation - -See [**Documentation**](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights). diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.d.ts deleted file mode 100644 index 337010b..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { AutocompletePlugin } from '@algolia/autocomplete-shared'; -import { InsightsClient, InsightsMethodMap, OnActiveParams, OnItemsChangeParams, OnSelectParams } from './types'; -export declare type CreateAlgoliaInsightsPluginParams = { - /** - * The initialized Search Insights client. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsclient - */ - insightsClient?: InsightsClient; - /** - * Insights parameters to forward to the Insights client’s init method. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsinitparams - */ - insightsInitParams?: Partial; - /** - * Hook to send an Insights event when the items change. - * - * By default, it sends a `viewedObjectIDs` event. - * - * In as-you-type experiences, items change as the user types. This hook is debounced every 400ms to reflect actual items that users notice and avoid generating too many events for items matching "in progress" queries. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onitemschange - */ - onItemsChange?(params: OnItemsChangeParams): void; - /** - * Hook to send an Insights event when an item is selected. - * - * By default, it sends a clickedObjectIDsAfterSearch event. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onselect - */ - onSelect?(params: OnSelectParams): void; - /** - * Hook to send an Insights event when an item is active. - * - * By default, it doesn't send any events. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onactive - */ - onActive?(params: OnActiveParams): void; - /** - * @internal - */ - __autocomplete_clickAnalytics?: boolean; -}; -export declare function createAlgoliaInsightsPlugin(options: CreateAlgoliaInsightsPluginParams): AutocompletePlugin; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.js deleted file mode 100644 index 5ea320d..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.js +++ /dev/null @@ -1,269 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { createRef, debounce, isEqual, noop, safelyRunOnBrowser } from '@algolia/autocomplete-shared'; -import { createClickedEvent } from './createClickedEvent'; -import { createSearchInsightsApi } from './createSearchInsightsApi'; -import { createViewedEvents } from './createViewedEvents'; -import { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit'; -var VIEW_EVENT_DELAY = 400; -var ALGOLIA_INSIGHTS_VERSION = '2.15.0'; -var ALGOLIA_INSIGHTS_SRC = "https://cdn.jsdelivr.net/npm/search-insights@".concat(ALGOLIA_INSIGHTS_VERSION, "/dist/search-insights.min.js"); -var sendViewedObjectIDs = debounce(function (_ref) { - var onItemsChange = _ref.onItemsChange, - items = _ref.items, - insights = _ref.insights, - state = _ref.state; - onItemsChange({ - insights: insights, - insightsEvents: createViewedEvents({ - items: items - }).map(function (event) { - return _objectSpread({ - eventName: 'Items Viewed' - }, event); - }), - state: state - }); -}, VIEW_EVENT_DELAY); -export function createAlgoliaInsightsPlugin(options) { - var _getOptions = getOptions(options), - providedInsightsClient = _getOptions.insightsClient, - insightsInitParams = _getOptions.insightsInitParams, - onItemsChange = _getOptions.onItemsChange, - onSelectEvent = _getOptions.onSelect, - onActiveEvent = _getOptions.onActive, - __autocomplete_clickAnalytics = _getOptions.__autocomplete_clickAnalytics; - var insightsClient = providedInsightsClient; - if (!providedInsightsClient) { - safelyRunOnBrowser(function (_ref2) { - var window = _ref2.window; - var pointer = window.AlgoliaAnalyticsObject || 'aa'; - if (typeof pointer === 'string') { - insightsClient = window[pointer]; - } - if (!insightsClient) { - window.AlgoliaAnalyticsObject = pointer; - if (!window[pointer]) { - window[pointer] = function () { - if (!window[pointer].queue) { - window[pointer].queue = []; - } - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - window[pointer].queue.push(args); - }; - } - window[pointer].version = ALGOLIA_INSIGHTS_VERSION; - insightsClient = window[pointer]; - loadInsights(window); - } - }); - } - - // We return an empty plugin if `insightsClient` is still undefined at - // this stage, which can happen in server environments. - if (!insightsClient) { - return {}; - } - if (insightsInitParams) { - insightsClient('init', _objectSpread({ - partial: true - }, insightsInitParams)); - } - var insights = createSearchInsightsApi(insightsClient); - var previousItems = createRef([]); - var debouncedOnStateChange = debounce(function (_ref3) { - var state = _ref3.state; - if (!state.isOpen) { - return; - } - var items = state.collections.reduce(function (acc, current) { - return [].concat(_toConsumableArray(acc), _toConsumableArray(current.items)); - }, []).filter(isAlgoliaInsightsHit); - if (!isEqual(previousItems.current.map(function (x) { - return x.objectID; - }), items.map(function (x) { - return x.objectID; - }))) { - previousItems.current = items; - if (items.length > 0) { - sendViewedObjectIDs({ - onItemsChange: onItemsChange, - items: items, - insights: insights, - state: state - }); - } - } - }, 0); - return { - name: 'aa.algoliaInsightsPlugin', - subscribe: function subscribe(_ref4) { - var setContext = _ref4.setContext, - onSelect = _ref4.onSelect, - onActive = _ref4.onActive; - var isAuthenticatedToken = false; - function setInsightsContext(userToken) { - setContext({ - algoliaInsightsPlugin: { - __algoliaSearchParameters: _objectSpread(_objectSpread({}, __autocomplete_clickAnalytics ? { - clickAnalytics: true - } : {}), userToken ? { - userToken: normalizeUserToken(userToken) - } : {}), - insights: insights - } - }); - } - insightsClient('addAlgoliaAgent', 'insights-plugin'); - setInsightsContext(); - - // Handles user token changes - insightsClient('onUserTokenChange', function (userToken) { - if (!isAuthenticatedToken) { - setInsightsContext(userToken); - } - }); - insightsClient('getUserToken', null, function (_error, userToken) { - if (!isAuthenticatedToken) { - setInsightsContext(userToken); - } - }); - - // Handles authenticated user token changes - insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) { - if (authenticatedUserToken) { - isAuthenticatedToken = true; - setInsightsContext(authenticatedUserToken); - } else { - isAuthenticatedToken = false; - insightsClient('getUserToken', null, function (_error, userToken) { - return setInsightsContext(userToken); - }); - } - }); - insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) { - if (authenticatedUserToken) { - isAuthenticatedToken = true; - setInsightsContext(authenticatedUserToken); - } - }); - onSelect(function (_ref5) { - var item = _ref5.item, - state = _ref5.state, - event = _ref5.event, - source = _ref5.source; - if (!isAlgoliaInsightsHit(item)) { - return; - } - onSelectEvent({ - state: state, - event: event, - insights: insights, - item: item, - insightsEvents: [_objectSpread({ - eventName: 'Item Selected' - }, createClickedEvent({ - item: item, - items: source.getItems().filter(isAlgoliaInsightsHit) - }))] - }); - }); - onActive(function (_ref6) { - var item = _ref6.item, - source = _ref6.source, - state = _ref6.state, - event = _ref6.event; - if (!isAlgoliaInsightsHit(item)) { - return; - } - onActiveEvent({ - state: state, - event: event, - insights: insights, - item: item, - insightsEvents: [_objectSpread({ - eventName: 'Item Active' - }, createClickedEvent({ - item: item, - items: source.getItems().filter(isAlgoliaInsightsHit) - }))] - }); - }); - }, - onStateChange: function onStateChange(_ref7) { - var state = _ref7.state; - debouncedOnStateChange({ - state: state - }); - }, - __autocomplete_pluginOptions: options - }; -} -function getAlgoliaSources() { - var _context$algoliaInsig; - var algoliaSourceBase = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var context = arguments.length > 1 ? arguments[1] : undefined; - return [].concat(_toConsumableArray(algoliaSourceBase), ['autocomplete-internal'], _toConsumableArray((_context$algoliaInsig = context.algoliaInsightsPlugin) !== null && _context$algoliaInsig !== void 0 && _context$algoliaInsig.__automaticInsights ? ['autocomplete-automatic'] : [])); -} -function getOptions(options) { - return _objectSpread({ - onItemsChange: function onItemsChange(_ref8) { - var insights = _ref8.insights, - insightsEvents = _ref8.insightsEvents, - state = _ref8.state; - insights.viewedObjectIDs.apply(insights, _toConsumableArray(insightsEvents.map(function (event) { - return _objectSpread(_objectSpread({}, event), {}, { - algoliaSource: getAlgoliaSources(event.algoliaSource, state.context) - }); - }))); - }, - onSelect: function onSelect(_ref9) { - var insights = _ref9.insights, - insightsEvents = _ref9.insightsEvents, - state = _ref9.state; - insights.clickedObjectIDsAfterSearch.apply(insights, _toConsumableArray(insightsEvents.map(function (event) { - return _objectSpread(_objectSpread({}, event), {}, { - algoliaSource: getAlgoliaSources(event.algoliaSource, state.context) - }); - }))); - }, - onActive: noop, - __autocomplete_clickAnalytics: true - }, options); -} -function loadInsights(environment) { - var errorMessage = "[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete"; - try { - var script = environment.document.createElement('script'); - script.async = true; - script.src = ALGOLIA_INSIGHTS_SRC; - script.onerror = function () { - // eslint-disable-next-line no-console - console.error(errorMessage); - }; - document.body.appendChild(script); - } catch (cause) { - // eslint-disable-next-line no-console - console.error(errorMessage); - } -} - -/** - * While `search-insights` supports both string and number user tokens, - * the Search API only accepts strings. This function normalizes the user token. - */ -function normalizeUserToken(userToken) { - return typeof userToken === 'number' ? userToken.toString() : userToken; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.d.ts deleted file mode 100644 index ddd51f2..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type { AlgoliaInsightsHit, ClickedObjectIDsAfterSearchParams, InsightsParamsWithItems } from './types'; -declare type CreateClickedEventParams = { - item: AlgoliaInsightsHit; - items: AlgoliaInsightsHit[]; -}; -export declare function createClickedEvent({ item, items, }: CreateClickedEventParams): Omit, 'eventName'> & { - algoliaSource?: string[]; -}; -export {}; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.js deleted file mode 100644 index c5c89c6..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.js +++ /dev/null @@ -1,14 +0,0 @@ -export function createClickedEvent(_ref) { - var item = _ref.item, - _ref$items = _ref.items, - items = _ref$items === void 0 ? [] : _ref$items; - return { - index: item.__autocomplete_indexName, - items: [item], - positions: [1 + items.findIndex(function (x) { - return x.objectID === item.objectID; - })], - queryID: item.__autocomplete_queryID, - algoliaSource: ['autocomplete'] - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.d.ts deleted file mode 100644 index 3342168..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.d.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { ClickedFiltersParams, ClickedObjectIDsAfterSearchParams, ClickedObjectIDsParams, ConvertedFiltersParams, ConvertedObjectIDsAfterSearchParams, ConvertedObjectIDsParams, InsightsClient, WithArbitraryParams, InsightsParamsWithItems, ViewedFiltersParams, ViewedObjectIDsParams } from './types'; -export declare function createSearchInsightsApi(searchInsights: InsightsClient): { - /** - * Initializes Insights with Algolia credentials. - */ - init(appId: string, apiKey: string): void; - /** - * Sets the authenticated user token to attach to events. - * Unsets the authenticated token by passing `undefined`. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/ - */ - setAuthenticatedUserToken(authenticatedUserToken: string | undefined): void; - /** - * Sets the user token to attach to events. - */ - setUserToken(userToken: string): void; - /** - * Sends click events to capture a query and its clicked items and positions. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/ - */ - clickedObjectIDsAfterSearch(...params: Array>>): void; - /** - * Sends click events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/ - */ - clickedObjectIDs(...params: Array>>): void; - /** - * Sends click events to capture the filters a user clicks on. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/ - */ - clickedFilters(...params: Array>): void; - /** - * Sends conversion events to capture a query and its clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/ - */ - convertedObjectIDsAfterSearch(...params: Array>>): void; - /** - * Sends conversion events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/ - */ - convertedObjectIDs(...params: Array>>): void; - /** - * Sends conversion events to capture the filters a user uses when converting. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/ - */ - convertedFilters(...params: Array>): void; - /** - * Sends view events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/ - */ - viewedObjectIDs(...params: Array>>): void; - /** - * Sends view events to capture the filters a user uses when viewing. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/ - */ - viewedFilters(...params: Array>): void; -}; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.js deleted file mode 100644 index 8ce9053..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.js +++ /dev/null @@ -1,206 +0,0 @@ -var _excluded = ["items"], - _excluded2 = ["items"]; -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { isModernInsightsClient } from './isModernInsightsClient'; -function chunk(item) { - var chunkSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20; - var chunks = []; - for (var i = 0; i < item.objectIDs.length; i += chunkSize) { - chunks.push(_objectSpread(_objectSpread({}, item), {}, { - objectIDs: item.objectIDs.slice(i, i + chunkSize) - })); - } - return chunks; -} -function mapToInsightsParamsApi(params) { - return params.map(function (_ref) { - var items = _ref.items, - param = _objectWithoutProperties(_ref, _excluded); - return _objectSpread(_objectSpread({}, param), {}, { - objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref2) { - var objectID = _ref2.objectID; - return objectID; - })) || param.objectIDs - }); - }); -} -export function createSearchInsightsApi(searchInsights) { - var canSendHeaders = isModernInsightsClient(searchInsights); - function sendToInsights(method, payloads, items) { - if (canSendHeaders && typeof items !== 'undefined') { - var _items$0$__autocomple = items[0].__autocomplete_algoliaCredentials, - appId = _items$0$__autocomple.appId, - apiKey = _items$0$__autocomple.apiKey; - var headers = { - 'X-Algolia-Application-Id': appId, - 'X-Algolia-API-Key': apiKey - }; - searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads), [{ - headers: headers - }])); - } else { - searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads))); - } - } - return { - /** - * Initializes Insights with Algolia credentials. - */ - init: function init(appId, apiKey) { - searchInsights('init', { - appId: appId, - apiKey: apiKey - }); - }, - /** - * Sets the authenticated user token to attach to events. - * Unsets the authenticated token by passing `undefined`. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/ - */ - setAuthenticatedUserToken: function setAuthenticatedUserToken(authenticatedUserToken) { - searchInsights('setAuthenticatedUserToken', authenticatedUserToken); - }, - /** - * Sets the user token to attach to events. - */ - setUserToken: function setUserToken(userToken) { - searchInsights('setUserToken', userToken); - }, - /** - * Sends click events to capture a query and its clicked items and positions. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/ - */ - clickedObjectIDsAfterSearch: function clickedObjectIDsAfterSearch() { - for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) { - params[_key] = arguments[_key]; - } - if (params.length > 0) { - sendToInsights('clickedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends click events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/ - */ - clickedObjectIDs: function clickedObjectIDs() { - for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - params[_key2] = arguments[_key2]; - } - if (params.length > 0) { - sendToInsights('clickedObjectIDs', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends click events to capture the filters a user clicks on. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/ - */ - clickedFilters: function clickedFilters() { - for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { - params[_key3] = arguments[_key3]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['clickedFilters'].concat(params)); - } - }, - /** - * Sends conversion events to capture a query and its clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/ - */ - convertedObjectIDsAfterSearch: function convertedObjectIDsAfterSearch() { - for (var _len4 = arguments.length, params = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { - params[_key4] = arguments[_key4]; - } - if (params.length > 0) { - sendToInsights('convertedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends conversion events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/ - */ - convertedObjectIDs: function convertedObjectIDs() { - for (var _len5 = arguments.length, params = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) { - params[_key5] = arguments[_key5]; - } - if (params.length > 0) { - sendToInsights('convertedObjectIDs', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends conversion events to capture the filters a user uses when converting. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/ - */ - convertedFilters: function convertedFilters() { - for (var _len6 = arguments.length, params = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) { - params[_key6] = arguments[_key6]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['convertedFilters'].concat(params)); - } - }, - /** - * Sends view events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/ - */ - viewedObjectIDs: function viewedObjectIDs() { - for (var _len7 = arguments.length, params = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) { - params[_key7] = arguments[_key7]; - } - if (params.length > 0) { - params.reduce(function (acc, _ref3) { - var items = _ref3.items, - param = _objectWithoutProperties(_ref3, _excluded2); - return [].concat(_toConsumableArray(acc), _toConsumableArray(chunk(_objectSpread(_objectSpread({}, param), {}, { - objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref4) { - var objectID = _ref4.objectID; - return objectID; - })) || param.objectIDs - })).map(function (payload) { - return { - items: items, - payload: payload - }; - }))); - }, []).forEach(function (_ref5) { - var items = _ref5.items, - payload = _ref5.payload; - return sendToInsights('viewedObjectIDs', [payload], items); - }); - } - }, - /** - * Sends view events to capture the filters a user uses when viewing. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/ - */ - viewedFilters: function viewedFilters() { - for (var _len8 = arguments.length, params = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) { - params[_key8] = arguments[_key8]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['viewedFilters'].concat(params)); - } - } - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.d.ts deleted file mode 100644 index bf5cb84..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { AlgoliaInsightsHit, InsightsParamsWithItems, ViewedObjectIDsParams } from './types'; -declare type CreateViewedEventsParams = { - items: AlgoliaInsightsHit[]; -}; -export declare function createViewedEvents({ items, }: CreateViewedEventsParams): Array, 'eventName'>>; -export {}; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.js deleted file mode 100644 index a3db0ca..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.js +++ /dev/null @@ -1,16 +0,0 @@ -export function createViewedEvents(_ref) { - var items = _ref.items; - var itemsByIndexName = items.reduce(function (acc, current) { - var _acc$current$__autoco; - acc[current.__autocomplete_indexName] = ((_acc$current$__autoco = acc[current.__autocomplete_indexName]) !== null && _acc$current$__autoco !== void 0 ? _acc$current$__autoco : []).concat(current); - return acc; - }, {}); - return Object.keys(itemsByIndexName).map(function (indexName) { - var items = itemsByIndexName[indexName]; - return { - index: indexName, - items: items, - algoliaSource: ['autocomplete'] - }; - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.ts deleted file mode 100644 index 0421ce7..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './types'; -export * from './createAlgoliaInsightsPlugin'; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.js deleted file mode 100644 index 3de936b..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/index.js +++ /dev/null @@ -1,2 +0,0 @@ -export * from './types'; -export * from './createAlgoliaInsightsPlugin'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.d.ts deleted file mode 100644 index e20140c..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { AlgoliaInsightsHit } from './types'; -export declare function isAlgoliaInsightsHit(hit: any): hit is AlgoliaInsightsHit; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.js deleted file mode 100644 index 7bd9d28..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.js +++ /dev/null @@ -1,3 +0,0 @@ -export function isAlgoliaInsightsHit(hit) { - return hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.d.ts deleted file mode 100644 index 1a3a47f..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type { InsightsClient } from './types'; -/** - * Determines if a given insights `client` supports the optional call to `init` - * and the ability to set credentials via extra parameters when sending events. - */ -export declare function isModernInsightsClient(client: InsightsClient): boolean; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.js deleted file mode 100644 index 8502979..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.js +++ /dev/null @@ -1,23 +0,0 @@ -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } } -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } -/** - * Determines if a given insights `client` supports the optional call to `init` - * and the ability to set credentials via extra parameters when sending events. - */ -export function isModernInsightsClient(client) { - var _split$map = (client.version || '').split('.').map(Number), - _split$map2 = _slicedToArray(_split$map, 2), - major = _split$map2[0], - minor = _split$map2[1]; - - /* eslint-disable @typescript-eslint/camelcase */ - var v3 = major >= 3; - var v2_4 = major === 2 && minor >= 4; - var v1_10 = major === 1 && minor >= 10; - return v3 || v2_4 || v1_10; - /* eslint-enable @typescript-eslint/camelcase */ -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.d.ts deleted file mode 100644 index af7ba1a..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export declare type AlgoliaInsightsHit = { - objectID: string; - __autocomplete_indexName: string; - __autocomplete_queryID: string; - __autocomplete_algoliaCredentials: { - appId: string; - apiKey: string; - }; -}; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AlgoliaInsightsHit.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.d.ts deleted file mode 100644 index 434c524..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { createSearchInsightsApi } from '../createSearchInsightsApi'; -import type { AlgoliaInsightsHit } from './AlgoliaInsightsHit'; -export declare type AutocompleteInsightsApi = ReturnType; -export declare type WithArbitraryParams> = Record & TParams; -export declare type InsightsParamsWithItems = Omit & { - items: AlgoliaInsightsHit[]; - /** - * @deprecated use `items` instead - */ - objectIDs?: string[]; -}; -export declare type ClickedObjectIDsAfterSearchParams = { - eventName: string; - index: string; - objectIDs: string[]; - positions: number[]; - queryID: string; - userToken?: string; -}; -export declare type ClickedObjectIDsParams = { - eventName: string; - index: string; - objectIDs: string[]; - userToken?: string; -}; -export declare type ClickedFiltersParams = { - eventName: string; - filters: string[]; - index: string; - userToken: string; -}; -export declare type ConvertedObjectIDsAfterSearchParams = { - eventName: string; - index: string; - objectIDs: string[]; - queryID: string; - userToken?: string; -}; -export declare type ConvertedObjectIDsParams = { - eventName: string; - index: string; - objectIDs: string[]; - userToken: string; -}; -export declare type ConvertedFiltersParams = { - eventName: string; - filters: string[]; - index: string; - userToken: string; -}; -export declare type ViewedObjectIDsParams = { - eventName: string; - index: string; - objectIDs: string[]; - userToken?: string; -}; -export declare type ViewedFiltersParams = { - eventName: string; - filters: string[]; - index: string; - userToken: string; -}; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/AutocompleteInsightsApi.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.d.ts deleted file mode 100644 index 2f2ae4a..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { AutocompleteState } from '@algolia/autocomplete-shared'; -import type { ClickedObjectIDsAfterSearchParams, InsightsParamsWithItems, ViewedObjectIDsParams } from './AutocompleteInsightsApi'; -import type { AlgoliaInsightsHit, AutocompleteInsightsApi } from '.'; -export declare type OnSelectParams = { - insights: AutocompleteInsightsApi; - insightsEvents: Array>; - item: AlgoliaInsightsHit; - state: AutocompleteState; - event: any; -}; -export declare type OnActiveParams = OnSelectParams; -export declare type OnItemsChangeParams = { - insights: AutocompleteInsightsApi; - insightsEvents: Array>; - state: AutocompleteState; -}; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/EventParams.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.d.ts deleted file mode 100644 index 4e10cb8..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { InsightsMethodMap as _InsightsMethodMap, InsightsClient as _InsightsClient } from 'search-insights'; -export type { Init as InsightsInit, AddAlgoliaAgent as InsightsAddAlgoliaAgent, SetUserToken as InsightsSetUserToken, GetUserToken as InsightsGetUserToken, OnUserTokenChange as InsightsOnUserTokenChange, InsightsEvent, } from 'search-insights'; -export declare type InsightsMethodMap = _InsightsMethodMap; -export declare type InsightsClientMethod = keyof InsightsMethodMap; -export declare type InsightsClientPayload = { - eventName: string; - queryID: string; - index: string; - objectIDs: string[]; - positions?: number[]; -}; -declare type QueueItemMap = Record; -declare type QueueItem = QueueItemMap[keyof QueueItemMap]; -export declare type InsightsClient = _InsightsClient & { - queue?: QueueItem[]; - version?: string; -}; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/InsightsClient.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.d.ts b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.d.ts deleted file mode 100644 index 165e4c7..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from './AlgoliaInsightsHit'; -export * from './AutocompleteInsightsApi'; -export * from './EventParams'; -export * from './InsightsClient'; diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.js deleted file mode 100644 index 163c9d0..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/types/index.js +++ /dev/null @@ -1,4 +0,0 @@ -export * from './AlgoliaInsightsHit'; -export * from './AutocompleteInsightsApi'; -export * from './EventParams'; -export * from './InsightsClient'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js deleted file mode 100644 index 3701710..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js +++ /dev/null @@ -1,710 +0,0 @@ -/*! @algolia/autocomplete-plugin-algolia-insights 1.17.7 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : - typeof define === 'function' && define.amd ? define(['exports'], factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@algolia/autocomplete-plugin-algolia-insights"] = {})); -})(this, (function (exports) { 'use strict'; - - function _iterableToArrayLimit(arr, i) { - var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; - if (null != _i) { - var _s, - _e, - _x, - _r, - _arr = [], - _n = !0, - _d = !1; - try { - if (_x = (_i = _i.call(arr)).next, 0 === i) { - if (Object(_i) !== _i) return; - _n = !1; - } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); - } catch (err) { - _d = !0, _e = err; - } finally { - try { - if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; - } finally { - if (_d) throw _e; - } - } - return _arr; - } - } - function ownKeys(object, enumerableOnly) { - var keys = Object.keys(object); - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - enumerableOnly && (symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - })), keys.push.apply(keys, symbols); - } - return keys; - } - function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = null != arguments[i] ? arguments[i] : {}; - i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { - _defineProperty(target, key, source[key]); - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - return target; - } - function _defineProperty(obj, key, value) { - key = _toPropertyKey(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; - } - function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } - return target; - } - function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; - var target = _objectWithoutPropertiesLoose(source, excluded); - var key, i; - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - return target; - } - function _slicedToArray(arr, i) { - return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); - } - function _toConsumableArray(arr) { - return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); - } - function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) return _arrayLikeToArray(arr); - } - function _arrayWithHoles(arr) { - if (Array.isArray(arr)) return arr; - } - function _iterableToArray(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); - } - function _unsupportedIterableToArray(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); - } - function _arrayLikeToArray(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _nonIterableRest() { - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _toPrimitive(input, hint) { - if (typeof input !== "object" || input === null) return input; - var prim = input[Symbol.toPrimitive]; - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (typeof res !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - return (hint === "string" ? String : Number)(input); - } - function _toPropertyKey(arg) { - var key = _toPrimitive(arg, "string"); - return typeof key === "symbol" ? key : String(key); - } - - function createRef(initialValue) { - return { - current: initialValue - }; - } - - function debounce(fn, time) { - var timerId = undefined; - return function () { - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - if (timerId) { - clearTimeout(timerId); - } - timerId = setTimeout(function () { - return fn.apply(void 0, args); - }, time); - }; - } - - function isPrimitive(obj) { - return obj !== Object(obj); - } - function isEqual(first, second) { - if (first === second) { - return true; - } - if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') { - return first === second; - } - if (Object.keys(first).length !== Object.keys(second).length) { - return false; - } - for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) { - var key = _Object$keys[_i]; - if (!(key in second)) { - return false; - } - if (!isEqual(first[key], second[key])) { - return false; - } - } - return true; - } - - var noop = function noop() {}; - - /** - * Safely runs code meant for browser environments only. - */ - function safelyRunOnBrowser(callback) { - if (typeof window !== 'undefined') { - return callback({ - window: window - }); - } - return undefined; - } - - function createClickedEvent(_ref) { - var item = _ref.item, - _ref$items = _ref.items, - items = _ref$items === void 0 ? [] : _ref$items; - return { - index: item.__autocomplete_indexName, - items: [item], - positions: [1 + items.findIndex(function (x) { - return x.objectID === item.objectID; - })], - queryID: item.__autocomplete_queryID, - algoliaSource: ['autocomplete'] - }; - } - - /** - * Determines if a given insights `client` supports the optional call to `init` - * and the ability to set credentials via extra parameters when sending events. - */ - function isModernInsightsClient(client) { - var _split$map = (client.version || '').split('.').map(Number), - _split$map2 = _slicedToArray(_split$map, 2), - major = _split$map2[0], - minor = _split$map2[1]; - - /* eslint-disable @typescript-eslint/camelcase */ - var v3 = major >= 3; - var v2_4 = major === 2 && minor >= 4; - var v1_10 = major === 1 && minor >= 10; - return v3 || v2_4 || v1_10; - /* eslint-enable @typescript-eslint/camelcase */ - } - - var _excluded = ["items"], - _excluded2 = ["items"]; - function chunk(item) { - var chunkSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20; - var chunks = []; - for (var i = 0; i < item.objectIDs.length; i += chunkSize) { - chunks.push(_objectSpread2(_objectSpread2({}, item), {}, { - objectIDs: item.objectIDs.slice(i, i + chunkSize) - })); - } - return chunks; - } - function mapToInsightsParamsApi(params) { - return params.map(function (_ref) { - var items = _ref.items, - param = _objectWithoutProperties(_ref, _excluded); - return _objectSpread2(_objectSpread2({}, param), {}, { - objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref2) { - var objectID = _ref2.objectID; - return objectID; - })) || param.objectIDs - }); - }); - } - function createSearchInsightsApi(searchInsights) { - var canSendHeaders = isModernInsightsClient(searchInsights); - function sendToInsights(method, payloads, items) { - if (canSendHeaders && typeof items !== 'undefined') { - var _items$0$__autocomple = items[0].__autocomplete_algoliaCredentials, - appId = _items$0$__autocomple.appId, - apiKey = _items$0$__autocomple.apiKey; - var headers = { - 'X-Algolia-Application-Id': appId, - 'X-Algolia-API-Key': apiKey - }; - searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads), [{ - headers: headers - }])); - } else { - searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads))); - } - } - return { - /** - * Initializes Insights with Algolia credentials. - */ - init: function init(appId, apiKey) { - searchInsights('init', { - appId: appId, - apiKey: apiKey - }); - }, - /** - * Sets the authenticated user token to attach to events. - * Unsets the authenticated token by passing `undefined`. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/ - */ - setAuthenticatedUserToken: function setAuthenticatedUserToken(authenticatedUserToken) { - searchInsights('setAuthenticatedUserToken', authenticatedUserToken); - }, - /** - * Sets the user token to attach to events. - */ - setUserToken: function setUserToken(userToken) { - searchInsights('setUserToken', userToken); - }, - /** - * Sends click events to capture a query and its clicked items and positions. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/ - */ - clickedObjectIDsAfterSearch: function clickedObjectIDsAfterSearch() { - for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) { - params[_key] = arguments[_key]; - } - if (params.length > 0) { - sendToInsights('clickedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends click events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/ - */ - clickedObjectIDs: function clickedObjectIDs() { - for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - params[_key2] = arguments[_key2]; - } - if (params.length > 0) { - sendToInsights('clickedObjectIDs', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends click events to capture the filters a user clicks on. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/ - */ - clickedFilters: function clickedFilters() { - for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { - params[_key3] = arguments[_key3]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['clickedFilters'].concat(params)); - } - }, - /** - * Sends conversion events to capture a query and its clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/ - */ - convertedObjectIDsAfterSearch: function convertedObjectIDsAfterSearch() { - for (var _len4 = arguments.length, params = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { - params[_key4] = arguments[_key4]; - } - if (params.length > 0) { - sendToInsights('convertedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends conversion events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/ - */ - convertedObjectIDs: function convertedObjectIDs() { - for (var _len5 = arguments.length, params = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) { - params[_key5] = arguments[_key5]; - } - if (params.length > 0) { - sendToInsights('convertedObjectIDs', mapToInsightsParamsApi(params), params[0].items); - } - }, - /** - * Sends conversion events to capture the filters a user uses when converting. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/ - */ - convertedFilters: function convertedFilters() { - for (var _len6 = arguments.length, params = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) { - params[_key6] = arguments[_key6]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['convertedFilters'].concat(params)); - } - }, - /** - * Sends view events to capture clicked items. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/ - */ - viewedObjectIDs: function viewedObjectIDs() { - for (var _len7 = arguments.length, params = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) { - params[_key7] = arguments[_key7]; - } - if (params.length > 0) { - params.reduce(function (acc, _ref3) { - var items = _ref3.items, - param = _objectWithoutProperties(_ref3, _excluded2); - return [].concat(_toConsumableArray(acc), _toConsumableArray(chunk(_objectSpread2(_objectSpread2({}, param), {}, { - objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref4) { - var objectID = _ref4.objectID; - return objectID; - })) || param.objectIDs - })).map(function (payload) { - return { - items: items, - payload: payload - }; - }))); - }, []).forEach(function (_ref5) { - var items = _ref5.items, - payload = _ref5.payload; - return sendToInsights('viewedObjectIDs', [payload], items); - }); - } - }, - /** - * Sends view events to capture the filters a user uses when viewing. - * - * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/ - */ - viewedFilters: function viewedFilters() { - for (var _len8 = arguments.length, params = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) { - params[_key8] = arguments[_key8]; - } - if (params.length > 0) { - searchInsights.apply(void 0, ['viewedFilters'].concat(params)); - } - } - }; - } - - function createViewedEvents(_ref) { - var items = _ref.items; - var itemsByIndexName = items.reduce(function (acc, current) { - var _acc$current$__autoco; - acc[current.__autocomplete_indexName] = ((_acc$current$__autoco = acc[current.__autocomplete_indexName]) !== null && _acc$current$__autoco !== void 0 ? _acc$current$__autoco : []).concat(current); - return acc; - }, {}); - return Object.keys(itemsByIndexName).map(function (indexName) { - var items = itemsByIndexName[indexName]; - return { - index: indexName, - items: items, - algoliaSource: ['autocomplete'] - }; - }); - } - - function isAlgoliaInsightsHit(hit) { - return hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID; - } - - var VIEW_EVENT_DELAY = 400; - var ALGOLIA_INSIGHTS_VERSION = '2.15.0'; - var ALGOLIA_INSIGHTS_SRC = "https://cdn.jsdelivr.net/npm/search-insights@".concat(ALGOLIA_INSIGHTS_VERSION, "/dist/search-insights.min.js"); - var sendViewedObjectIDs = debounce(function (_ref) { - var onItemsChange = _ref.onItemsChange, - items = _ref.items, - insights = _ref.insights, - state = _ref.state; - onItemsChange({ - insights: insights, - insightsEvents: createViewedEvents({ - items: items - }).map(function (event) { - return _objectSpread2({ - eventName: 'Items Viewed' - }, event); - }), - state: state - }); - }, VIEW_EVENT_DELAY); - function createAlgoliaInsightsPlugin(options) { - var _getOptions = getOptions(options), - providedInsightsClient = _getOptions.insightsClient, - insightsInitParams = _getOptions.insightsInitParams, - onItemsChange = _getOptions.onItemsChange, - onSelectEvent = _getOptions.onSelect, - onActiveEvent = _getOptions.onActive, - __autocomplete_clickAnalytics = _getOptions.__autocomplete_clickAnalytics; - var insightsClient = providedInsightsClient; - if (!providedInsightsClient) { - safelyRunOnBrowser(function (_ref2) { - var window = _ref2.window; - var pointer = window.AlgoliaAnalyticsObject || 'aa'; - if (typeof pointer === 'string') { - insightsClient = window[pointer]; - } - if (!insightsClient) { - window.AlgoliaAnalyticsObject = pointer; - if (!window[pointer]) { - window[pointer] = function () { - if (!window[pointer].queue) { - window[pointer].queue = []; - } - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - window[pointer].queue.push(args); - }; - } - window[pointer].version = ALGOLIA_INSIGHTS_VERSION; - insightsClient = window[pointer]; - loadInsights(window); - } - }); - } - - // We return an empty plugin if `insightsClient` is still undefined at - // this stage, which can happen in server environments. - if (!insightsClient) { - return {}; - } - if (insightsInitParams) { - insightsClient('init', _objectSpread2({ - partial: true - }, insightsInitParams)); - } - var insights = createSearchInsightsApi(insightsClient); - var previousItems = createRef([]); - var debouncedOnStateChange = debounce(function (_ref3) { - var state = _ref3.state; - if (!state.isOpen) { - return; - } - var items = state.collections.reduce(function (acc, current) { - return [].concat(_toConsumableArray(acc), _toConsumableArray(current.items)); - }, []).filter(isAlgoliaInsightsHit); - if (!isEqual(previousItems.current.map(function (x) { - return x.objectID; - }), items.map(function (x) { - return x.objectID; - }))) { - previousItems.current = items; - if (items.length > 0) { - sendViewedObjectIDs({ - onItemsChange: onItemsChange, - items: items, - insights: insights, - state: state - }); - } - } - }, 0); - return { - name: 'aa.algoliaInsightsPlugin', - subscribe: function subscribe(_ref4) { - var setContext = _ref4.setContext, - onSelect = _ref4.onSelect, - onActive = _ref4.onActive; - var isAuthenticatedToken = false; - function setInsightsContext(userToken) { - setContext({ - algoliaInsightsPlugin: { - __algoliaSearchParameters: _objectSpread2(_objectSpread2({}, __autocomplete_clickAnalytics ? { - clickAnalytics: true - } : {}), userToken ? { - userToken: normalizeUserToken(userToken) - } : {}), - insights: insights - } - }); - } - insightsClient('addAlgoliaAgent', 'insights-plugin'); - setInsightsContext(); - - // Handles user token changes - insightsClient('onUserTokenChange', function (userToken) { - if (!isAuthenticatedToken) { - setInsightsContext(userToken); - } - }); - insightsClient('getUserToken', null, function (_error, userToken) { - if (!isAuthenticatedToken) { - setInsightsContext(userToken); - } - }); - - // Handles authenticated user token changes - insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) { - if (authenticatedUserToken) { - isAuthenticatedToken = true; - setInsightsContext(authenticatedUserToken); - } else { - isAuthenticatedToken = false; - insightsClient('getUserToken', null, function (_error, userToken) { - return setInsightsContext(userToken); - }); - } - }); - insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) { - if (authenticatedUserToken) { - isAuthenticatedToken = true; - setInsightsContext(authenticatedUserToken); - } - }); - onSelect(function (_ref5) { - var item = _ref5.item, - state = _ref5.state, - event = _ref5.event, - source = _ref5.source; - if (!isAlgoliaInsightsHit(item)) { - return; - } - onSelectEvent({ - state: state, - event: event, - insights: insights, - item: item, - insightsEvents: [_objectSpread2({ - eventName: 'Item Selected' - }, createClickedEvent({ - item: item, - items: source.getItems().filter(isAlgoliaInsightsHit) - }))] - }); - }); - onActive(function (_ref6) { - var item = _ref6.item, - source = _ref6.source, - state = _ref6.state, - event = _ref6.event; - if (!isAlgoliaInsightsHit(item)) { - return; - } - onActiveEvent({ - state: state, - event: event, - insights: insights, - item: item, - insightsEvents: [_objectSpread2({ - eventName: 'Item Active' - }, createClickedEvent({ - item: item, - items: source.getItems().filter(isAlgoliaInsightsHit) - }))] - }); - }); - }, - onStateChange: function onStateChange(_ref7) { - var state = _ref7.state; - debouncedOnStateChange({ - state: state - }); - }, - __autocomplete_pluginOptions: options - }; - } - function getAlgoliaSources() { - var _context$algoliaInsig; - var algoliaSourceBase = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var context = arguments.length > 1 ? arguments[1] : undefined; - return [].concat(_toConsumableArray(algoliaSourceBase), ['autocomplete-internal'], _toConsumableArray((_context$algoliaInsig = context.algoliaInsightsPlugin) !== null && _context$algoliaInsig !== void 0 && _context$algoliaInsig.__automaticInsights ? ['autocomplete-automatic'] : [])); - } - function getOptions(options) { - return _objectSpread2({ - onItemsChange: function onItemsChange(_ref8) { - var insights = _ref8.insights, - insightsEvents = _ref8.insightsEvents, - state = _ref8.state; - insights.viewedObjectIDs.apply(insights, _toConsumableArray(insightsEvents.map(function (event) { - return _objectSpread2(_objectSpread2({}, event), {}, { - algoliaSource: getAlgoliaSources(event.algoliaSource, state.context) - }); - }))); - }, - onSelect: function onSelect(_ref9) { - var insights = _ref9.insights, - insightsEvents = _ref9.insightsEvents, - state = _ref9.state; - insights.clickedObjectIDsAfterSearch.apply(insights, _toConsumableArray(insightsEvents.map(function (event) { - return _objectSpread2(_objectSpread2({}, event), {}, { - algoliaSource: getAlgoliaSources(event.algoliaSource, state.context) - }); - }))); - }, - onActive: noop, - __autocomplete_clickAnalytics: true - }, options); - } - function loadInsights(environment) { - var errorMessage = "[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete"; - try { - var script = environment.document.createElement('script'); - script.async = true; - script.src = ALGOLIA_INSIGHTS_SRC; - script.onerror = function () { - // eslint-disable-next-line no-console - console.error(errorMessage); - }; - document.body.appendChild(script); - } catch (cause) { - // eslint-disable-next-line no-console - console.error(errorMessage); - } - } - - /** - * While `search-insights` supports both string and number user tokens, - * the Search API only accepts strings. This function normalizes the user token. - */ - function normalizeUserToken(userToken) { - return typeof userToken === 'number' ? userToken.toString() : userToken; - } - - exports.createAlgoliaInsightsPlugin = createAlgoliaInsightsPlugin; - - Object.defineProperty(exports, '__esModule', { value: true }); - -})); -//# sourceMappingURL=index.development.js.map diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js.map b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js.map deleted file mode 100644 index 406eb3e..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.development.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.development.js","sources":["../../../autocomplete-shared/dist/esm/createRef.js","../../../autocomplete-shared/dist/esm/debounce.js","../../../autocomplete-shared/dist/esm/isEqual.js","../../../autocomplete-shared/dist/esm/noop.js","../../../autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../src/createClickedEvent.ts","../../src/isModernInsightsClient.ts","../../src/createSearchInsightsApi.ts","../../src/createViewedEvents.ts","../../src/isAlgoliaInsightsHit.ts","../../src/createAlgoliaInsightsPlugin.ts"],"sourcesContent":["export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","import type {\n AlgoliaInsightsHit,\n ClickedObjectIDsAfterSearchParams,\n InsightsParamsWithItems,\n} from './types';\n\ntype CreateClickedEventParams = {\n item: AlgoliaInsightsHit;\n items: AlgoliaInsightsHit[];\n};\n\nexport function createClickedEvent({\n item,\n items = [],\n}: CreateClickedEventParams): Omit<\n InsightsParamsWithItems,\n 'eventName'\n> & { algoliaSource?: string[] } {\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex((x) => x.objectID === item.objectID)],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete'],\n };\n}\n","import type { InsightsClient } from './types';\n\n/**\n * Determines if a given insights `client` supports the optional call to `init`\n * and the ability to set credentials via extra parameters when sending events.\n */\nexport function isModernInsightsClient(client: InsightsClient): boolean {\n const [major, minor] = (client.version || '').split('.').map(Number);\n\n /* eslint-disable @typescript-eslint/camelcase */\n const v3 = major >= 3;\n const v2_4 = major === 2 && minor >= 4;\n const v1_10 = major === 1 && minor >= 10;\n\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}\n","import type { InsightsMethodMap } from 'search-insights';\n\nimport { isModernInsightsClient } from './isModernInsightsClient';\nimport {\n AlgoliaInsightsHit,\n ClickedFiltersParams,\n ClickedObjectIDsAfterSearchParams,\n ClickedObjectIDsParams,\n ConvertedFiltersParams,\n ConvertedObjectIDsAfterSearchParams,\n ConvertedObjectIDsParams,\n InsightsClient,\n InsightsClientMethod,\n WithArbitraryParams,\n InsightsParamsWithItems,\n ViewedFiltersParams,\n ViewedObjectIDsParams,\n} from './types';\n\nfunction chunk(\n item: TItem,\n chunkSize: number = 20\n): TItem[] {\n const chunks: TItem[] = [];\n for (let i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push({\n ...item,\n objectIDs: item.objectIDs.slice(i, i + chunkSize),\n });\n }\n return chunks;\n}\n\nfunction mapToInsightsParamsApi<\n TInsightsParamsType extends {\n items: AlgoliaInsightsHit[];\n objectIDs?: string[];\n }\n>(params: TInsightsParamsType[]) {\n return params.map(({ items, ...param }) => ({\n ...param,\n objectIDs: items?.map(({ objectID }) => objectID) || param.objectIDs,\n }));\n}\n\nexport function createSearchInsightsApi(searchInsights: InsightsClient) {\n const canSendHeaders = isModernInsightsClient(searchInsights);\n\n function sendToInsights(\n method: InsightsClientMethod,\n payloads: InsightsMethodMap[TInsightsMethod],\n items?: AlgoliaInsightsHit[]\n ) {\n if (canSendHeaders && typeof items !== 'undefined') {\n const { appId, apiKey } = items[0].__autocomplete_algoliaCredentials;\n const headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey,\n };\n\n searchInsights(method, ...payloads, { headers });\n } else {\n searchInsights(method, ...payloads);\n }\n }\n\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init(appId: string, apiKey: string) {\n searchInsights('init', { appId, apiKey });\n },\n /**\n * Sets the authenticated user token to attach to events.\n * Unsets the authenticated token by passing `undefined`.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/\n */\n setAuthenticatedUserToken(authenticatedUserToken: string | undefined) {\n searchInsights('setAuthenticatedUserToken', authenticatedUserToken);\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken(userToken: string) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs(\n ...params: Array<\n WithArbitraryParams>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters(\n ...params: Array>\n ) {\n if (params.length > 0) {\n searchInsights('clickedFilters', ...params);\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs(\n ...params: Array<\n WithArbitraryParams>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters(\n ...params: Array>\n ) {\n if (params.length > 0) {\n searchInsights('convertedFilters', ...params);\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs(\n ...params: Array<\n WithArbitraryParams>\n >\n ) {\n if (params.length > 0) {\n params\n .reduce<\n Array<{\n items?: AlgoliaInsightsHit[];\n payload: ViewedObjectIDsParams;\n }>\n >(\n (acc, { items, ...param }) => [\n ...acc,\n ...chunk({\n ...param,\n objectIDs:\n items?.map(({ objectID }) => objectID) || param.objectIDs,\n }).map((payload) => {\n return { items, payload };\n }),\n ],\n []\n )\n .forEach(({ items, payload }) =>\n sendToInsights('viewedObjectIDs', [payload], items)\n );\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters(...params: Array>) {\n if (params.length > 0) {\n searchInsights('viewedFilters', ...params);\n }\n },\n };\n}\n","import {\n AlgoliaInsightsHit,\n InsightsParamsWithItems,\n ViewedObjectIDsParams,\n} from './types';\n\ntype CreateViewedEventsParams = {\n items: AlgoliaInsightsHit[];\n};\n\nexport function createViewedEvents({\n items,\n}: CreateViewedEventsParams): Array<\n Omit, 'eventName'>\n> {\n const itemsByIndexName = items.reduce>(\n (acc, current) => {\n acc[current.__autocomplete_indexName] = (\n acc[current.__autocomplete_indexName] ?? []\n ).concat(current);\n\n return acc;\n },\n {}\n );\n\n return Object.keys(itemsByIndexName).map((indexName) => {\n const items = itemsByIndexName[indexName];\n\n return {\n index: indexName,\n items,\n algoliaSource: ['autocomplete'],\n };\n });\n}\n","import { AlgoliaInsightsHit } from './types';\n\nexport function isAlgoliaInsightsHit(hit: any): hit is AlgoliaInsightsHit {\n return (\n hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID\n );\n}\n","import {\n AutocompleteState,\n AutocompletePlugin,\n createRef,\n debounce,\n isEqual,\n noop,\n safelyRunOnBrowser,\n} from '@algolia/autocomplete-shared';\nimport {\n AutocompleteContext,\n AutocompleteReshapeSource,\n} from '@algolia/autocomplete-shared/dist/esm/core';\n\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nimport {\n AlgoliaInsightsHit,\n AutocompleteInsightsApi,\n InsightsClient,\n InsightsEvent,\n InsightsMethodMap,\n OnActiveParams,\n OnItemsChangeParams,\n OnSelectParams,\n} from './types';\n\nconst VIEW_EVENT_DELAY = 400;\nconst ALGOLIA_INSIGHTS_VERSION = '2.15.0';\nconst ALGOLIA_INSIGHTS_SRC = `https://cdn.jsdelivr.net/npm/search-insights@${ALGOLIA_INSIGHTS_VERSION}/dist/search-insights.min.js`;\n\ntype SendViewedObjectIDsParams = {\n onItemsChange(params: OnItemsChangeParams): void;\n items: AlgoliaInsightsHit[];\n insights: AutocompleteInsightsApi;\n state: AutocompleteState;\n};\n\nconst sendViewedObjectIDs = debounce(\n ({ onItemsChange, items, insights, state }) => {\n onItemsChange({\n insights,\n insightsEvents: createViewedEvents({ items }).map((event) => ({\n eventName: 'Items Viewed',\n ...event,\n })),\n state,\n });\n },\n VIEW_EVENT_DELAY\n);\n\nexport type CreateAlgoliaInsightsPluginParams = {\n /**\n * The initialized Search Insights client.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsclient\n */\n insightsClient?: InsightsClient;\n /**\n * Insights parameters to forward to the Insights client’s init method.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsinitparams\n */\n insightsInitParams?: Partial;\n /**\n * Hook to send an Insights event when the items change.\n *\n * By default, it sends a `viewedObjectIDs` event.\n *\n * In as-you-type experiences, items change as the user types. This hook is debounced every 400ms to reflect actual items that users notice and avoid generating too many events for items matching \"in progress\" queries.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onitemschange\n */\n onItemsChange?(params: OnItemsChangeParams): void;\n /**\n * Hook to send an Insights event when an item is selected.\n *\n * By default, it sends a clickedObjectIDsAfterSearch event.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onselect\n */\n onSelect?(params: OnSelectParams): void;\n /**\n * Hook to send an Insights event when an item is active.\n *\n * By default, it doesn't send any events.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onactive\n */\n onActive?(params: OnActiveParams): void;\n /**\n * @internal\n */\n __autocomplete_clickAnalytics?: boolean;\n};\n\nexport function createAlgoliaInsightsPlugin(\n options: CreateAlgoliaInsightsPluginParams\n): AutocompletePlugin {\n const {\n insightsClient: providedInsightsClient,\n insightsInitParams,\n onItemsChange,\n onSelect: onSelectEvent,\n onActive: onActiveEvent,\n __autocomplete_clickAnalytics,\n } = getOptions(options);\n let insightsClient = providedInsightsClient as InsightsClient;\n\n if (!providedInsightsClient) {\n safelyRunOnBrowser(({ window }) => {\n const pointer = window.AlgoliaAnalyticsObject || 'aa';\n\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n\n if (!window[pointer]) {\n window[pointer] = (...args: any[]) => {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n\n window[pointer].queue.push(args);\n };\n }\n\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n\n insightsClient = window[pointer];\n\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n\n if (insightsInitParams) {\n insightsClient('init', { partial: true, ...insightsInitParams });\n }\n\n const insights = createSearchInsightsApi(insightsClient);\n const previousItems = createRef([]);\n\n const debouncedOnStateChange = debounce<{\n state: AutocompleteState;\n }>(({ state }) => {\n if (!state.isOpen) {\n return;\n }\n\n const items = state.collections\n .reduce((acc, current) => {\n return [...acc, ...current.items];\n }, [])\n .filter(isAlgoliaInsightsHit);\n\n if (\n !isEqual(\n previousItems.current.map((x) => x.objectID),\n items.map((x) => x.objectID)\n )\n ) {\n previousItems.current = items;\n\n if (items.length > 0) {\n sendViewedObjectIDs({ onItemsChange, items, insights, state });\n }\n }\n }, 0);\n\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe({ setContext, onSelect, onActive }) {\n let isAuthenticatedToken = false;\n function setInsightsContext(userToken?: InsightsEvent['userToken']) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: {\n ...(__autocomplete_clickAnalytics\n ? { clickAnalytics: true }\n : {}),\n ...(userToken\n ? { userToken: normalizeUserToken(userToken) }\n : {}),\n },\n insights,\n },\n });\n }\n\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n\n setInsightsContext();\n\n // Handles user token changes\n insightsClient('onUserTokenChange', (userToken) => {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n insightsClient('getUserToken', null, (_error, userToken) => {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n\n // Handles authenticated user token changes\n insightsClient(\n 'onAuthenticatedUserTokenChange',\n (authenticatedUserToken) => {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n } else {\n isAuthenticatedToken = false;\n insightsClient('getUserToken', null, (_error, userToken) =>\n setInsightsContext(userToken)\n );\n }\n }\n );\n insightsClient(\n 'getAuthenticatedUserToken',\n null,\n (_error, authenticatedUserToken) => {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n }\n }\n );\n\n onSelect(({ item, state, event, source }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onSelectEvent({\n state: state as AutocompleteState,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Selected',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n\n onActive(({ item, source, state, event }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onActiveEvent({\n state: state as AutocompleteState,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Active',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n },\n onStateChange({ state }) {\n debouncedOnStateChange({ state: state as AutocompleteState });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getAlgoliaSources(\n algoliaSourceBase: string[] = [],\n context: AutocompleteContext\n) {\n return [\n ...algoliaSourceBase,\n 'autocomplete-internal',\n ...((context.algoliaInsightsPlugin as Record)\n ?.__automaticInsights\n ? ['autocomplete-automatic']\n : []),\n ];\n}\n\nfunction getOptions(options: CreateAlgoliaInsightsPluginParams) {\n return {\n onItemsChange({ insights, insightsEvents, state }: OnItemsChangeParams) {\n insights.viewedObjectIDs(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onSelect({ insights, insightsEvents, state }: OnSelectParams) {\n insights.clickedObjectIDsAfterSearch(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true,\n ...options,\n };\n}\n\nfunction loadInsights(environment: typeof window) {\n const errorMessage = `[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete`;\n\n try {\n const script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n\n script.onerror = () => {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n\n/**\n * While `search-insights` supports both string and number user tokens,\n * the Search API only accepts strings. This function normalizes the user token.\n */\nfunction normalizeUserToken(\n userToken: NonNullable\n): string {\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}\n"],"names":["createRef","initialValue","current","debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","safelyRunOnBrowser","callback","window","createClickedEvent","_ref","item","_ref$items","items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","isModernInsightsClient","client","_split$map","version","split","map","Number","_split$map2","_slicedToArray","major","minor","v3","v2_4","v1_10","chunk","chunkSize","chunks","i","objectIDs","push","_objectSpread","slice","mapToInsightsParamsApi","params","param","_objectWithoutProperties","_excluded","_ref2","createSearchInsightsApi","searchInsights","canSendHeaders","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","appId","apiKey","headers","concat","_toConsumableArray","init","setAuthenticatedUserToken","authenticatedUserToken","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","reduce","acc","_ref3","_excluded2","_ref4","payload","forEach","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","VIEW_EVENT_DELAY","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","state","insightsEvents","event","eventName","createAlgoliaInsightsPlugin","options","_getOptions","getOptions","providedInsightsClient","insightsClient","insightsInitParams","onSelectEvent","onSelect","onActiveEvent","onActive","__autocomplete_clickAnalytics","pointer","AlgoliaAnalyticsObject","queue","loadInsights","partial","previousItems","debouncedOnStateChange","isOpen","collections","filter","name","subscribe","setContext","isAuthenticatedToken","setInsightsContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","normalizeUserToken","_error","source","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions","getAlgoliaSources","_context$algoliaInsig","algoliaSourceBase","context","__automaticInsights","_ref8","_ref9","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause","toString"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js deleted file mode 100644 index 7b8bbb4..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! @algolia/autocomplete-plugin-algolia-insights 1.17.7 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-plugin-algolia-insights"]={})}(this,(function(e){"use strict";function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,c,a=[],u=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=o.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){l=!0,i=e}finally{try{if(!u&&null!=n.return&&(c=n.return(),Object(c)!==c))return}finally{if(l)throw i}}return a}}(e,t)||a(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||a(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n1&&void 0!==arguments[1]?arguments[1]:20,r=[],i=0;i=3||2===r&&a>=4||1===r&&a>=10);function l(t,n,r){if(u&&void 0!==r){var i=r[0].__autocomplete_algoliaCredentials,o={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(c(n),[{headers:o}]))}else e.apply(void 0,[t].concat(c(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setAuthenticatedUserToken:function(t){e("setAuthenticatedUserToken",t)},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&l("clickedObjectIDsAfterSearch",h(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&l("clickedObjectIDs",h(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&l("convertedObjectIDsAfterSearch",h(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&l("convertedObjectIDs",h(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&t.reduce((function(e,t){var r=t.items,o=i(t,v);return[].concat(c(e),c(d(n(n({},o),{},{objectIDs:(null==r?void 0:r.map((function(e){return e.objectID})))||o.objectIDs})).map((function(e){return{items:r,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return l("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function b(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function j(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}var I="2.15.0",O="https://cdn.jsdelivr.net/npm/search-insights@".concat(I,"/dist/search-insights.min.js"),A=l((function(e){var t=e.onItemsChange,r=e.items,i=e.insights,o=e.state;t({insights:i,insightsEvents:b({items:r}).map((function(e){return n({eventName:"Items Viewed"},e)})),state:o})}),400);function w(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1?arguments[1]:void 0;return[].concat(c(t),["autocomplete-internal"],c(null!==(e=n.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}function _(e){return"number"==typeof e?e.toString():e}e.createAlgoliaInsightsPlugin=function(e){var t=function(e){return n({onItemsChange:function(e){var t=e.insights,r=e.insightsEvents,i=e.state;t.viewedObjectIDs.apply(t,c(r.map((function(e){return n(n({},e),{},{algoliaSource:w(e.algoliaSource,i.context)})}))))},onSelect:function(e){var t=e.insights,r=e.insightsEvents,i=e.state;t.clickedObjectIDsAfterSearch.apply(t,c(r.map((function(e){return n(n({},e),{},{algoliaSource:w(e.algoliaSource,i.context)})}))))},onActive:p,__autocomplete_clickAnalytics:!0},e)}(e),r=t.insightsClient,i=t.insightsInitParams,o=t.onItemsChange,a=t.onSelect,u=t.onActive,s=t.__autocomplete_clickAnalytics,m=r;if(r||function(e){if("undefined"!=typeof window)e({window:window})}((function(e){var t=e.window,n=t.AlgoliaAnalyticsObject||"aa";"string"==typeof n&&(m=t[n]),m||(t.AlgoliaAnalyticsObject=n,t[n]||(t[n]=function(){t[n].queue||(t[n].queue=[]);for(var e=arguments.length,r=new Array(e),i=0;i0&&A({onItemsChange:o,items:n,insights:v,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,r=e.onSelect,i=e.onActive,o=!1;function c(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:n(n({},s?{clickAnalytics:!0}:{}),e?{userToken:_(e)}:{}),insights:v}})}m("addAlgoliaAgent","insights-plugin"),c(),m("onUserTokenChange",(function(e){o||c(e)})),m("getUserToken",null,(function(e,t){o||c(t)})),m("onAuthenticatedUserTokenChange",(function(e){e?(o=!0,c(e)):(o=!1,m("getUserToken",null,(function(e,t){return c(t)})))})),m("getAuthenticatedUserToken",null,(function(e,t){t&&(o=!0,c(t))})),r((function(e){var t=e.item,r=e.state,i=e.event,o=e.source;j(t)&&a({state:r,event:i,insights:v,item:t,insightsEvents:[n({eventName:"Item Selected"},g({item:t,items:o.getItems().filter(j)}))]})})),i((function(e){var t=e.item,r=e.source,i=e.state,o=e.event;j(t)&&u({state:i,event:o,insights:v,item:t,insightsEvents:[n({eventName:"Item Active"},g({item:t,items:r.getItems().filter(j)}))]})}))},onStateChange:function(e){var t=e.state;h({state:t})},__autocomplete_pluginOptions:e}},Object.defineProperty(e,"__esModule",{value:!0})})); -//# sourceMappingURL=index.production.js.map diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js.map b/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js.map deleted file mode 100644 index e409885..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/umd/index.production.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.production.js","sources":["../../../autocomplete-shared/dist/esm/debounce.js","../../../autocomplete-shared/dist/esm/isEqual.js","../../../autocomplete-shared/dist/esm/noop.js","../../src/createClickedEvent.ts","../../src/createSearchInsightsApi.ts","../../src/isModernInsightsClient.ts","../../src/createViewedEvents.ts","../../src/isAlgoliaInsightsHit.ts","../../src/createAlgoliaInsightsPlugin.ts","../../../autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../../autocomplete-shared/dist/esm/createRef.js"],"sourcesContent":["export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","import type {\n AlgoliaInsightsHit,\n ClickedObjectIDsAfterSearchParams,\n InsightsParamsWithItems,\n} from './types';\n\ntype CreateClickedEventParams = {\n item: AlgoliaInsightsHit;\n items: AlgoliaInsightsHit[];\n};\n\nexport function createClickedEvent({\n item,\n items = [],\n}: CreateClickedEventParams): Omit<\n InsightsParamsWithItems,\n 'eventName'\n> & { algoliaSource?: string[] } {\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex((x) => x.objectID === item.objectID)],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete'],\n };\n}\n","import type { InsightsMethodMap } from 'search-insights';\n\nimport { isModernInsightsClient } from './isModernInsightsClient';\nimport {\n AlgoliaInsightsHit,\n ClickedFiltersParams,\n ClickedObjectIDsAfterSearchParams,\n ClickedObjectIDsParams,\n ConvertedFiltersParams,\n ConvertedObjectIDsAfterSearchParams,\n ConvertedObjectIDsParams,\n InsightsClient,\n InsightsClientMethod,\n WithArbitraryParams,\n InsightsParamsWithItems,\n ViewedFiltersParams,\n ViewedObjectIDsParams,\n} from './types';\n\nfunction chunk(\n item: TItem,\n chunkSize: number = 20\n): TItem[] {\n const chunks: TItem[] = [];\n for (let i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push({\n ...item,\n objectIDs: item.objectIDs.slice(i, i + chunkSize),\n });\n }\n return chunks;\n}\n\nfunction mapToInsightsParamsApi<\n TInsightsParamsType extends {\n items: AlgoliaInsightsHit[];\n objectIDs?: string[];\n }\n>(params: TInsightsParamsType[]) {\n return params.map(({ items, ...param }) => ({\n ...param,\n objectIDs: items?.map(({ objectID }) => objectID) || param.objectIDs,\n }));\n}\n\nexport function createSearchInsightsApi(searchInsights: InsightsClient) {\n const canSendHeaders = isModernInsightsClient(searchInsights);\n\n function sendToInsights(\n method: InsightsClientMethod,\n payloads: InsightsMethodMap[TInsightsMethod],\n items?: AlgoliaInsightsHit[]\n ) {\n if (canSendHeaders && typeof items !== 'undefined') {\n const { appId, apiKey } = items[0].__autocomplete_algoliaCredentials;\n const headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey,\n };\n\n searchInsights(method, ...payloads, { headers });\n } else {\n searchInsights(method, ...payloads);\n }\n }\n\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init(appId: string, apiKey: string) {\n searchInsights('init', { appId, apiKey });\n },\n /**\n * Sets the authenticated user token to attach to events.\n * Unsets the authenticated token by passing `undefined`.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/\n */\n setAuthenticatedUserToken(authenticatedUserToken: string | undefined) {\n searchInsights('setAuthenticatedUserToken', authenticatedUserToken);\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken(userToken: string) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs(\n ...params: Array<\n WithArbitraryParams>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters(\n ...params: Array>\n ) {\n if (params.length > 0) {\n searchInsights('clickedFilters', ...params);\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs(\n ...params: Array<\n WithArbitraryParams>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters(\n ...params: Array>\n ) {\n if (params.length > 0) {\n searchInsights('convertedFilters', ...params);\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs(\n ...params: Array<\n WithArbitraryParams>\n >\n ) {\n if (params.length > 0) {\n params\n .reduce<\n Array<{\n items?: AlgoliaInsightsHit[];\n payload: ViewedObjectIDsParams;\n }>\n >(\n (acc, { items, ...param }) => [\n ...acc,\n ...chunk({\n ...param,\n objectIDs:\n items?.map(({ objectID }) => objectID) || param.objectIDs,\n }).map((payload) => {\n return { items, payload };\n }),\n ],\n []\n )\n .forEach(({ items, payload }) =>\n sendToInsights('viewedObjectIDs', [payload], items)\n );\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters(...params: Array>) {\n if (params.length > 0) {\n searchInsights('viewedFilters', ...params);\n }\n },\n };\n}\n","import type { InsightsClient } from './types';\n\n/**\n * Determines if a given insights `client` supports the optional call to `init`\n * and the ability to set credentials via extra parameters when sending events.\n */\nexport function isModernInsightsClient(client: InsightsClient): boolean {\n const [major, minor] = (client.version || '').split('.').map(Number);\n\n /* eslint-disable @typescript-eslint/camelcase */\n const v3 = major >= 3;\n const v2_4 = major === 2 && minor >= 4;\n const v1_10 = major === 1 && minor >= 10;\n\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}\n","import {\n AlgoliaInsightsHit,\n InsightsParamsWithItems,\n ViewedObjectIDsParams,\n} from './types';\n\ntype CreateViewedEventsParams = {\n items: AlgoliaInsightsHit[];\n};\n\nexport function createViewedEvents({\n items,\n}: CreateViewedEventsParams): Array<\n Omit, 'eventName'>\n> {\n const itemsByIndexName = items.reduce>(\n (acc, current) => {\n acc[current.__autocomplete_indexName] = (\n acc[current.__autocomplete_indexName] ?? []\n ).concat(current);\n\n return acc;\n },\n {}\n );\n\n return Object.keys(itemsByIndexName).map((indexName) => {\n const items = itemsByIndexName[indexName];\n\n return {\n index: indexName,\n items,\n algoliaSource: ['autocomplete'],\n };\n });\n}\n","import { AlgoliaInsightsHit } from './types';\n\nexport function isAlgoliaInsightsHit(hit: any): hit is AlgoliaInsightsHit {\n return (\n hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID\n );\n}\n","import {\n AutocompleteState,\n AutocompletePlugin,\n createRef,\n debounce,\n isEqual,\n noop,\n safelyRunOnBrowser,\n} from '@algolia/autocomplete-shared';\nimport {\n AutocompleteContext,\n AutocompleteReshapeSource,\n} from '@algolia/autocomplete-shared/dist/esm/core';\n\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nimport {\n AlgoliaInsightsHit,\n AutocompleteInsightsApi,\n InsightsClient,\n InsightsEvent,\n InsightsMethodMap,\n OnActiveParams,\n OnItemsChangeParams,\n OnSelectParams,\n} from './types';\n\nconst VIEW_EVENT_DELAY = 400;\nconst ALGOLIA_INSIGHTS_VERSION = '2.15.0';\nconst ALGOLIA_INSIGHTS_SRC = `https://cdn.jsdelivr.net/npm/search-insights@${ALGOLIA_INSIGHTS_VERSION}/dist/search-insights.min.js`;\n\ntype SendViewedObjectIDsParams = {\n onItemsChange(params: OnItemsChangeParams): void;\n items: AlgoliaInsightsHit[];\n insights: AutocompleteInsightsApi;\n state: AutocompleteState;\n};\n\nconst sendViewedObjectIDs = debounce(\n ({ onItemsChange, items, insights, state }) => {\n onItemsChange({\n insights,\n insightsEvents: createViewedEvents({ items }).map((event) => ({\n eventName: 'Items Viewed',\n ...event,\n })),\n state,\n });\n },\n VIEW_EVENT_DELAY\n);\n\nexport type CreateAlgoliaInsightsPluginParams = {\n /**\n * The initialized Search Insights client.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsclient\n */\n insightsClient?: InsightsClient;\n /**\n * Insights parameters to forward to the Insights client’s init method.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsinitparams\n */\n insightsInitParams?: Partial;\n /**\n * Hook to send an Insights event when the items change.\n *\n * By default, it sends a `viewedObjectIDs` event.\n *\n * In as-you-type experiences, items change as the user types. This hook is debounced every 400ms to reflect actual items that users notice and avoid generating too many events for items matching \"in progress\" queries.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onitemschange\n */\n onItemsChange?(params: OnItemsChangeParams): void;\n /**\n * Hook to send an Insights event when an item is selected.\n *\n * By default, it sends a clickedObjectIDsAfterSearch event.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onselect\n */\n onSelect?(params: OnSelectParams): void;\n /**\n * Hook to send an Insights event when an item is active.\n *\n * By default, it doesn't send any events.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onactive\n */\n onActive?(params: OnActiveParams): void;\n /**\n * @internal\n */\n __autocomplete_clickAnalytics?: boolean;\n};\n\nexport function createAlgoliaInsightsPlugin(\n options: CreateAlgoliaInsightsPluginParams\n): AutocompletePlugin {\n const {\n insightsClient: providedInsightsClient,\n insightsInitParams,\n onItemsChange,\n onSelect: onSelectEvent,\n onActive: onActiveEvent,\n __autocomplete_clickAnalytics,\n } = getOptions(options);\n let insightsClient = providedInsightsClient as InsightsClient;\n\n if (!providedInsightsClient) {\n safelyRunOnBrowser(({ window }) => {\n const pointer = window.AlgoliaAnalyticsObject || 'aa';\n\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n\n if (!window[pointer]) {\n window[pointer] = (...args: any[]) => {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n\n window[pointer].queue.push(args);\n };\n }\n\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n\n insightsClient = window[pointer];\n\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n\n if (insightsInitParams) {\n insightsClient('init', { partial: true, ...insightsInitParams });\n }\n\n const insights = createSearchInsightsApi(insightsClient);\n const previousItems = createRef([]);\n\n const debouncedOnStateChange = debounce<{\n state: AutocompleteState;\n }>(({ state }) => {\n if (!state.isOpen) {\n return;\n }\n\n const items = state.collections\n .reduce((acc, current) => {\n return [...acc, ...current.items];\n }, [])\n .filter(isAlgoliaInsightsHit);\n\n if (\n !isEqual(\n previousItems.current.map((x) => x.objectID),\n items.map((x) => x.objectID)\n )\n ) {\n previousItems.current = items;\n\n if (items.length > 0) {\n sendViewedObjectIDs({ onItemsChange, items, insights, state });\n }\n }\n }, 0);\n\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe({ setContext, onSelect, onActive }) {\n let isAuthenticatedToken = false;\n function setInsightsContext(userToken?: InsightsEvent['userToken']) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: {\n ...(__autocomplete_clickAnalytics\n ? { clickAnalytics: true }\n : {}),\n ...(userToken\n ? { userToken: normalizeUserToken(userToken) }\n : {}),\n },\n insights,\n },\n });\n }\n\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n\n setInsightsContext();\n\n // Handles user token changes\n insightsClient('onUserTokenChange', (userToken) => {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n insightsClient('getUserToken', null, (_error, userToken) => {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n\n // Handles authenticated user token changes\n insightsClient(\n 'onAuthenticatedUserTokenChange',\n (authenticatedUserToken) => {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n } else {\n isAuthenticatedToken = false;\n insightsClient('getUserToken', null, (_error, userToken) =>\n setInsightsContext(userToken)\n );\n }\n }\n );\n insightsClient(\n 'getAuthenticatedUserToken',\n null,\n (_error, authenticatedUserToken) => {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n }\n }\n );\n\n onSelect(({ item, state, event, source }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onSelectEvent({\n state: state as AutocompleteState,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Selected',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n\n onActive(({ item, source, state, event }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onActiveEvent({\n state: state as AutocompleteState,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Active',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n },\n onStateChange({ state }) {\n debouncedOnStateChange({ state: state as AutocompleteState });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getAlgoliaSources(\n algoliaSourceBase: string[] = [],\n context: AutocompleteContext\n) {\n return [\n ...algoliaSourceBase,\n 'autocomplete-internal',\n ...((context.algoliaInsightsPlugin as Record)\n ?.__automaticInsights\n ? ['autocomplete-automatic']\n : []),\n ];\n}\n\nfunction getOptions(options: CreateAlgoliaInsightsPluginParams) {\n return {\n onItemsChange({ insights, insightsEvents, state }: OnItemsChangeParams) {\n insights.viewedObjectIDs(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onSelect({ insights, insightsEvents, state }: OnSelectParams) {\n insights.clickedObjectIDsAfterSearch(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true,\n ...options,\n };\n}\n\nfunction loadInsights(environment: typeof window) {\n const errorMessage = `[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete`;\n\n try {\n const script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n\n script.onerror = () => {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n\n/**\n * While `search-insights` supports both string and number user tokens,\n * the Search API only accepts strings. This function normalizes the user token.\n */\nfunction normalizeUserToken(\n userToken: NonNullable\n): string {\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}\n","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}"],"names":["debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","createClickedEvent","_ref","item","_ref$items","items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","chunk","chunkSize","chunks","i","objectIDs","push","_objectSpread","slice","mapToInsightsParamsApi","params","map","param","_objectWithoutProperties","_excluded","_ref2","createSearchInsightsApi","searchInsights","_split$map2","major","minor","canSendHeaders","_slicedToArray","version","split","Number","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","headers","appId","apiKey","concat","_toConsumableArray","init","setAuthenticatedUserToken","authenticatedUserToken","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","reduce","acc","_ref3","_excluded2","_ref4","payload","forEach","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","current","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","state","insightsEvents","event","eventName","getAlgoliaSources","_context$algoliaInsig","algoliaSourceBase","context","algoliaInsightsPlugin","__automaticInsights","normalizeUserToken","toString","options","_getOptions","_ref8","onSelect","_ref9","onActive","__autocomplete_clickAnalytics","getOptions","providedInsightsClient","insightsClient","insightsInitParams","onSelectEvent","onActiveEvent","callback","window","safelyRunOnBrowser","pointer","AlgoliaAnalyticsObject","queue","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause","loadInsights","partial","previousItems","debouncedOnStateChange","isOpen","collections","filter","name","subscribe","setContext","isAuthenticatedToken","setInsightsContext","__algoliaSearchParameters","clickAnalytics","_error","source","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-plugin-algolia-insights/package.json b/node_modules/@algolia/autocomplete-plugin-algolia-insights/package.json deleted file mode 100644 index a6d8ed5..0000000 --- a/node_modules/@algolia/autocomplete-plugin-algolia-insights/package.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "name": "@algolia/autocomplete-plugin-algolia-insights", - "description": "A plugin to add Algolia Insights to Algolia Autocomplete.", - "version": "1.17.7", - "license": "MIT", - "homepage": "https://github.com/algolia/autocomplete", - "repository": "algolia/autocomplete", - "author": { - "name": "Algolia, Inc.", - "url": "https://www.algolia.com" - }, - "source": "src/index.ts", - "types": "dist/esm/index.d.ts", - "module": "dist/esm/index.js", - "main": "dist/umd/index.production.js", - "umd:main": "dist/umd/index.production.js", - "unpkg": "dist/umd/index.production.js", - "jsdelivr": "dist/umd/index.production.js", - "sideEffects": false, - "files": [ - "dist/" - ], - "scripts": { - "build:clean": "rm -rf ./dist", - "build:esm": "babel src --root-mode upward --extensions '.ts,.tsx' --out-dir dist/esm --ignore '**/*/__tests__/'", - "build:types": "tsc -p ./tsconfig.declaration.json --outDir ./dist/esm", - "build:umd": "rollup --config", - "build": "rm -rf ./dist && yarn build:umd && yarn build:esm && yarn build:types", - "on:change": "concurrently \"yarn build:esm\" \"yarn build:types\"", - "prepare": "yarn run build:esm && yarn build:types", - "watch": "watch \"yarn on:change\" --ignoreDirectoryPattern \"/dist/\"" - }, - "dependencies": { - "@algolia/autocomplete-shared": "1.17.7" - }, - "peerDependencies": { - "search-insights": ">= 1 < 3" - } -} diff --git a/node_modules/@algolia/autocomplete-preset-algolia/README.md b/node_modules/@algolia/autocomplete-preset-algolia/README.md deleted file mode 100644 index da4d3c1..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# @algolia/autocomplete-preset-algolia - -The Algolia preset provides fetching and highlighting utilities for usage with Algolia. - -## Installation - -```sh -yarn add @algolia/autocomplete-preset-algolia -# or -npm install @algolia/autocomplete-preset-algolia -``` - -## Documentation - -See [**Documentation**](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-preset-algolia). diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.d.ts deleted file mode 100644 index eefc295..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export declare const HIGHLIGHT_PRE_TAG = "__aa-highlight__"; -export declare const HIGHLIGHT_POST_TAG = "__/aa-highlight__"; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.js deleted file mode 100644 index 66dcdd1..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.js +++ /dev/null @@ -1,2 +0,0 @@ -export var HIGHLIGHT_PRE_TAG = '__aa-highlight__'; -export var HIGHLIGHT_POST_TAG = '__/aa-highlight__'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.d.ts deleted file mode 100644 index 5a71fa4..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { HighlightResult } from '../types'; -export declare type HighlightedHit = THit & { - _highlightResult?: HighlightResult; -}; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/HighlightedHit.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.d.ts deleted file mode 100644 index 93bb3cc..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare type ParseAlgoliaHitParams = { - hit: TItem; - attribute: keyof TItem | Array; -}; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParseAlgoliaHitParams.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.d.ts deleted file mode 100644 index 977a68d..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare type ParsedAttribute = { - value: string; - isHighlighted: boolean; -}; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/ParsedAttribute.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.d.ts deleted file mode 100644 index 0299206..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { SnippetResult } from '../types'; -export declare type SnippetedHit = THit & { - _snippetResult?: SnippetResult; -}; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/SnippetedHit.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.d.ts deleted file mode 100644 index fdc8b21..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * from './HighlightedHit'; -export * from './parseAlgoliaHitHighlight'; -export * from './parseAlgoliaHitReverseHighlight'; -export * from './parseAlgoliaHitReverseSnippet'; -export * from './parseAlgoliaHitSnippet'; -export * from './SnippetedHit'; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.js deleted file mode 100644 index 2f9950e..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/index.js +++ /dev/null @@ -1,6 +0,0 @@ -export * from './HighlightedHit'; -export * from './parseAlgoliaHitHighlight'; -export * from './parseAlgoliaHitReverseHighlight'; -export * from './parseAlgoliaHitReverseSnippet'; -export * from './parseAlgoliaHitSnippet'; -export * from './SnippetedHit'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.d.ts deleted file mode 100644 index d588c3f..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { ParsedAttribute } from './ParsedAttribute'; -export declare function isPartHighlighted(parts: ParsedAttribute[], i: number): boolean; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.js deleted file mode 100644 index 16ea008..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.js +++ /dev/null @@ -1,25 +0,0 @@ -var htmlEscapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" -}; -var hasAlphanumeric = new RegExp(/\w/i); -var regexEscapedHtml = /&(amp|quot|lt|gt|#39);/g; -var regexHasEscapedHtml = RegExp(regexEscapedHtml.source); -function unescape(value) { - return value && regexHasEscapedHtml.test(value) ? value.replace(regexEscapedHtml, function (character) { - return htmlEscapes[character]; - }) : value; -} -export function isPartHighlighted(parts, i) { - var _parts, _parts2; - var current = parts[i]; - var isNextHighlighted = ((_parts = parts[i + 1]) === null || _parts === void 0 ? void 0 : _parts.isHighlighted) || true; - var isPreviousHighlighted = ((_parts2 = parts[i - 1]) === null || _parts2 === void 0 ? void 0 : _parts2.isHighlighted) || true; - if (!hasAlphanumeric.test(unescape(current.value)) && isPreviousHighlighted === isNextHighlighted) { - return isPreviousHighlighted; - } - return current.isHighlighted; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.d.ts deleted file mode 100644 index d045d31..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { HighlightedHit } from './HighlightedHit'; -import { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams'; -import { ParsedAttribute } from './ParsedAttribute'; -export declare function parseAlgoliaHitHighlight>({ hit, attribute, }: ParseAlgoliaHitParams): ParsedAttribute[]; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.js deleted file mode 100644 index f2413da..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.js +++ /dev/null @@ -1,21 +0,0 @@ -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -import { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared'; -import { parseAttribute } from './parseAttribute'; -export function parseAlgoliaHitHighlight(_ref) { - var hit = _ref.hit, - attribute = _ref.attribute; - var path = Array.isArray(attribute) ? attribute : [attribute]; - var highlightedValue = getAttributeValueByPath(hit, ['_highlightResult'].concat(_toConsumableArray(path), ['value'])); - if (typeof highlightedValue !== 'string') { - process.env.NODE_ENV !== 'production' ? warn(false, "The attribute \"".concat(path.join('.'), "\" described by the path ").concat(JSON.stringify(path), " does not exist on the hit. Did you set it in `attributesToHighlight`?") + '\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToHighlight/') : void 0; - highlightedValue = getAttributeValueByPath(hit, path) || ''; - } - return parseAttribute({ - highlightedValue: highlightedValue - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.d.ts deleted file mode 100644 index d18eb18..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { HighlightedHit } from './HighlightedHit'; -import { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams'; -import { ParsedAttribute } from './ParsedAttribute'; -export declare function parseAlgoliaHitReverseHighlight>(props: ParseAlgoliaHitParams): ParsedAttribute[]; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.js deleted file mode 100644 index ab35f17..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.js +++ /dev/null @@ -1,5 +0,0 @@ -import { parseAlgoliaHitHighlight } from './parseAlgoliaHitHighlight'; -import { reverseHighlightedParts } from './reverseHighlightedParts'; -export function parseAlgoliaHitReverseHighlight(props) { - return reverseHighlightedParts(parseAlgoliaHitHighlight(props)); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.d.ts deleted file mode 100644 index dd17c6b..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams'; -import { ParsedAttribute } from './ParsedAttribute'; -import { SnippetedHit } from './SnippetedHit'; -export declare function parseAlgoliaHitReverseSnippet>(props: ParseAlgoliaHitParams): ParsedAttribute[]; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.js deleted file mode 100644 index fbaf477..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.js +++ /dev/null @@ -1,5 +0,0 @@ -import { parseAlgoliaHitSnippet } from './parseAlgoliaHitSnippet'; -import { reverseHighlightedParts } from './reverseHighlightedParts'; -export function parseAlgoliaHitReverseSnippet(props) { - return reverseHighlightedParts(parseAlgoliaHitSnippet(props)); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.d.ts deleted file mode 100644 index 9ec48cd..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams'; -import { ParsedAttribute } from './ParsedAttribute'; -import { SnippetedHit } from './SnippetedHit'; -export declare function parseAlgoliaHitSnippet>({ hit, attribute, }: ParseAlgoliaHitParams): ParsedAttribute[]; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.js deleted file mode 100644 index dbbbe4c..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.js +++ /dev/null @@ -1,21 +0,0 @@ -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -import { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared'; -import { parseAttribute } from './parseAttribute'; -export function parseAlgoliaHitSnippet(_ref) { - var hit = _ref.hit, - attribute = _ref.attribute; - var path = Array.isArray(attribute) ? attribute : [attribute]; - var highlightedValue = getAttributeValueByPath(hit, ['_snippetResult'].concat(_toConsumableArray(path), ['value'])); - if (typeof highlightedValue !== 'string') { - process.env.NODE_ENV !== 'production' ? warn(false, "The attribute \"".concat(path.join('.'), "\" described by the path ").concat(JSON.stringify(path), " does not exist on the hit. Did you set it in `attributesToSnippet`?") + '\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToSnippet/') : void 0; - highlightedValue = getAttributeValueByPath(hit, path) || ''; - } - return parseAttribute({ - highlightedValue: highlightedValue - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.d.ts deleted file mode 100644 index da17b62..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ParsedAttribute } from './ParsedAttribute'; -declare type ParseAttributeParams = { - highlightedValue: string; -}; -export declare function parseAttribute({ highlightedValue, }: ParseAttributeParams): ParsedAttribute[]; -export {}; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.js deleted file mode 100644 index e19997e..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.js +++ /dev/null @@ -1,48 +0,0 @@ -import { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants'; -/** - * Creates a data structure that allows to concatenate similar highlighting - * parts in a single value. - */ -function createAttributeSet() { - var initialValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var value = initialValue; - return { - get: function get() { - return value; - }, - add: function add(part) { - var lastPart = value[value.length - 1]; - if ((lastPart === null || lastPart === void 0 ? void 0 : lastPart.isHighlighted) === part.isHighlighted) { - value[value.length - 1] = { - value: lastPart.value + part.value, - isHighlighted: lastPart.isHighlighted - }; - } else { - value.push(part); - } - } - }; -} -export function parseAttribute(_ref) { - var highlightedValue = _ref.highlightedValue; - var preTagParts = highlightedValue.split(HIGHLIGHT_PRE_TAG); - var firstValue = preTagParts.shift(); - var parts = createAttributeSet(firstValue ? [{ - value: firstValue, - isHighlighted: false - }] : []); - preTagParts.forEach(function (part) { - var postTagParts = part.split(HIGHLIGHT_POST_TAG); - parts.add({ - value: postTagParts[0], - isHighlighted: true - }); - if (postTagParts[1] !== '') { - parts.add({ - value: postTagParts[1], - isHighlighted: false - }); - } - }); - return parts.get(); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.d.ts deleted file mode 100644 index 2c979a9..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { ParsedAttribute } from './ParsedAttribute'; -export declare function reverseHighlightedParts(parts: ParsedAttribute[]): { - isHighlighted: boolean; - value: string; -}[]; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.js deleted file mode 100644 index 169d1b2..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.js +++ /dev/null @@ -1,24 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -import { isPartHighlighted } from './isPartHighlighted'; -export function reverseHighlightedParts(parts) { - // We don't want to highlight the whole word when no parts match. - if (!parts.some(function (part) { - return part.isHighlighted; - })) { - return parts.map(function (part) { - return _objectSpread(_objectSpread({}, part), {}, { - isHighlighted: false - }); - }); - } - return parts.map(function (part, i) { - return _objectSpread(_objectSpread({}, part), {}, { - isHighlighted: !isPartHighlighted(parts, i) - }); - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.d.ts deleted file mode 100644 index eb7fce6..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from './highlight'; -export * from './requester'; -export * from './search'; -export * from './types'; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.js deleted file mode 100644 index ae79690..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/index.js +++ /dev/null @@ -1,4 +0,0 @@ -export * from './highlight'; -export * from './requester'; -export * from './search'; -export * from './types'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.d.ts deleted file mode 100644 index 6b7477c..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const createAlgoliaRequester: (requesterParams: import("@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester").RequesterParams) => (requestParams: import("@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester").RequestParams) => import("@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester").RequesterDescription; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.js deleted file mode 100644 index cad7daa..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createAlgoliaRequester.js +++ /dev/null @@ -1,3 +0,0 @@ -import { fetchAlgoliaResults } from '../search'; -import { createRequester } from './createRequester'; -export var createAlgoliaRequester = createRequester(fetchAlgoliaResults, 'algolia'); \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.d.ts deleted file mode 100644 index 0e5eb9d..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import type { Fetcher, RequesterParams, RequestParams, RequesterDescription } from '../types'; -export declare function createRequester(fetcher: Fetcher, requesterId?: string): (requesterParams: RequesterParams) => (requestParams: RequestParams) => RequesterDescription; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.js deleted file mode 100644 index 9cd971c..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.js +++ /dev/null @@ -1,35 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -export function createRequester(fetcher, requesterId) { - function execute(fetcherParams) { - return fetcher({ - searchClient: fetcherParams.searchClient, - queries: fetcherParams.requests.map(function (x) { - return x.query; - }) - }).then(function (responses) { - return responses.map(function (response, index) { - var _fetcherParams$reques = fetcherParams.requests[index], - sourceId = _fetcherParams$reques.sourceId, - transformResponse = _fetcherParams$reques.transformResponse; - return { - items: response, - sourceId: sourceId, - transformResponse: transformResponse - }; - }); - }); - } - return function createSpecifiedRequester(requesterParams) { - return function requester(requestParams) { - return _objectSpread(_objectSpread({ - requesterId: requesterId, - execute: execute - }, requesterParams), requestParams); - }; - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.d.ts deleted file mode 100644 index 34993f3..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { RequestParams } from '../types'; -/** - * Retrieves Algolia facet hits from multiple indices. - */ -export declare function getAlgoliaFacets(requestParams: RequestParams): import("@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester").RequesterDescription; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.js deleted file mode 100644 index 847dc0b..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaFacets.js +++ /dev/null @@ -1,28 +0,0 @@ -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -import { invariant } from '@algolia/autocomplete-shared'; -import { createAlgoliaRequester } from './createAlgoliaRequester'; - -/** - * Retrieves Algolia facet hits from multiple indices. - */ -export function getAlgoliaFacets(requestParams) { - invariant(_typeof(requestParams.searchClient) === 'object', 'The `searchClient` parameter is required for getAlgoliaFacets({ searchClient }).'); - var requester = createAlgoliaRequester({ - transformResponse: function transformResponse(response) { - return response.facetHits; - } - }); - var queries = requestParams.queries.map(function (query) { - return _objectSpread(_objectSpread({}, query), {}, { - type: 'facet' - }); - }); - return requester(_objectSpread(_objectSpread({}, requestParams), {}, { - queries: queries - })); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.d.ts deleted file mode 100644 index 4fc1786..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { RequestParams } from '../types'; -/** - * Retrieves Algolia results from multiple indices. - */ -export declare function getAlgoliaResults(requestParams: RequestParams): import("@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester").RequesterDescription; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.js deleted file mode 100644 index 456e0fc..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/getAlgoliaResults.js +++ /dev/null @@ -1,16 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -import { invariant } from '@algolia/autocomplete-shared'; -import { createAlgoliaRequester } from './createAlgoliaRequester'; - -/** - * Retrieves Algolia results from multiple indices. - */ -export function getAlgoliaResults(requestParams) { - invariant(_typeof(requestParams.searchClient) === 'object', 'The `searchClient` parameter is required for getAlgoliaResults({ searchClient }).'); - var requester = createAlgoliaRequester({ - transformResponse: function transformResponse(response) { - return response.hits; - } - }); - return requester(requestParams); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.d.ts deleted file mode 100644 index b6123a4..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './createRequester'; -export * from './getAlgoliaFacets'; -export * from './getAlgoliaResults'; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.js deleted file mode 100644 index a2c16b9..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/index.js +++ /dev/null @@ -1,3 +0,0 @@ -export * from './createRequester'; -export * from './getAlgoliaFacets'; -export * from './getAlgoliaResults'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.d.ts deleted file mode 100644 index 5090eff..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type { SearchResponse } from '@algolia/autocomplete-shared'; -import type { SearchForFacetValuesResponse, SearchParams } from '../types'; -export declare function fetchAlgoliaResults({ searchClient, queries, userAgents, }: SearchParams): Promise | SearchForFacetValuesResponse>>; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.js deleted file mode 100644 index 2accdda..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.js +++ /dev/null @@ -1,65 +0,0 @@ -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -var _excluded = ["params"]; -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } -function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } -function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } -function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } -function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } -function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } -function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } -function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } -function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -import { userAgents as coreUserAgents, invariant } from '@algolia/autocomplete-shared'; -import { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants'; -import { getAppIdAndApiKey } from '../utils'; -export function fetchAlgoliaResults(_ref) { - var searchClient = _ref.searchClient, - queries = _ref.queries, - _ref$userAgents = _ref.userAgents, - userAgents = _ref$userAgents === void 0 ? [] : _ref$userAgents; - if (typeof searchClient.addAlgoliaAgent === 'function') { - var algoliaAgents = [].concat(_toConsumableArray(coreUserAgents), _toConsumableArray(userAgents)); - algoliaAgents.forEach(function (_ref2) { - var segment = _ref2.segment, - version = _ref2.version; - searchClient.addAlgoliaAgent(segment, version); - }); - } - var _getAppIdAndApiKey = getAppIdAndApiKey(searchClient), - appId = _getAppIdAndApiKey.appId, - apiKey = _getAppIdAndApiKey.apiKey; - invariant(Boolean(appId), 'The Algolia `appId` was not accessible from the searchClient passed.'); - invariant(Boolean(apiKey), 'The Algolia `apiKey` was not accessible from the searchClient passed.'); - return searchClient.search(queries.map(function (searchParameters) { - var params = searchParameters.params, - headers = _objectWithoutProperties(searchParameters, _excluded); - return _objectSpread(_objectSpread({}, headers), {}, { - params: _objectSpread({ - hitsPerPage: 5, - highlightPreTag: HIGHLIGHT_PRE_TAG, - highlightPostTag: HIGHLIGHT_POST_TAG - }, params) - }); - })).then(function (response) { - return response.results.map(function (result, resultIndex) { - var _result$hits; - return _objectSpread(_objectSpread({}, result), {}, { - hits: (_result$hits = result.hits) === null || _result$hits === void 0 ? void 0 : _result$hits.map(function (hit) { - return _objectSpread(_objectSpread({}, hit), {}, { - // Bring support for the Insights plugin. - __autocomplete_indexName: result.index || queries[resultIndex].indexName, - __autocomplete_queryID: result.queryID, - __autocomplete_algoliaCredentials: { - appId: appId, - apiKey: apiKey - } - }); - }) - }); - }); - }); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.d.ts deleted file mode 100644 index f8277f2..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './fetchAlgoliaResults'; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.js deleted file mode 100644 index 4fc44bf..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/index.js +++ /dev/null @@ -1 +0,0 @@ -export * from './fetchAlgoliaResults'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.d.ts deleted file mode 100644 index 232a6ba..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from '@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch'; -export * from '@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester'; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.js deleted file mode 100644 index 4001f4e..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/types/index.js +++ /dev/null @@ -1,2 +0,0 @@ -export * from '@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch'; -export * from '@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.d.ts deleted file mode 100644 index 94bcb15..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare function getAppIdAndApiKey(searchClient: any): { - appId: string; - apiKey: string; -}; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.js deleted file mode 100644 index 4117ab1..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.js +++ /dev/null @@ -1,14 +0,0 @@ -// typed as any, since it accepts the _real_ js clients, not the interface we otherwise expect -export function getAppIdAndApiKey(searchClient) { - var transporter = searchClient.transporter || {}; - var headers = transporter.headers || transporter.baseHeaders || {}; - var queryParameters = transporter.queryParameters || transporter.baseQueryParameters || {}; - var APP_ID = 'x-algolia-application-id'; - var API_KEY = 'x-algolia-api-key'; - var appId = headers[APP_ID] || queryParameters[APP_ID]; - var apiKey = headers[API_KEY] || queryParameters[API_KEY]; - return { - appId: appId, - apiKey: apiKey - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.d.ts b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.d.ts deleted file mode 100644 index 4ae8e1a..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './getAppIdAndApiKey'; diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.js deleted file mode 100644 index acf5814..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/index.js +++ /dev/null @@ -1 +0,0 @@ -export * from './getAppIdAndApiKey'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js deleted file mode 100644 index 1b8bee9..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js +++ /dev/null @@ -1,437 +0,0 @@ -/*! @algolia/autocomplete-preset-algolia 1.17.7 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : - typeof define === 'function' && define.amd ? define(['exports'], factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@algolia/autocomplete-preset-algolia"] = {})); -})(this, (function (exports) { 'use strict'; - - function ownKeys(object, enumerableOnly) { - var keys = Object.keys(object); - if (Object.getOwnPropertySymbols) { - var symbols = Object.getOwnPropertySymbols(object); - enumerableOnly && (symbols = symbols.filter(function (sym) { - return Object.getOwnPropertyDescriptor(object, sym).enumerable; - })), keys.push.apply(keys, symbols); - } - return keys; - } - function _objectSpread2(target) { - for (var i = 1; i < arguments.length; i++) { - var source = null != arguments[i] ? arguments[i] : {}; - i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { - _defineProperty(target, key, source[key]); - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { - Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); - }); - } - return target; - } - function _typeof(obj) { - "@babel/helpers - typeof"; - - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { - return typeof obj; - } : function (obj) { - return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }, _typeof(obj); - } - function _defineProperty(obj, key, value) { - key = _toPropertyKey(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; - } - function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } - return target; - } - function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; - var target = _objectWithoutPropertiesLoose(source, excluded); - var key, i; - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } - return target; - } - function _toConsumableArray(arr) { - return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); - } - function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) return _arrayLikeToArray(arr); - } - function _iterableToArray(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); - } - function _unsupportedIterableToArray(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); - } - function _arrayLikeToArray(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _toPrimitive(input, hint) { - if (typeof input !== "object" || input === null) return input; - var prim = input[Symbol.toPrimitive]; - if (prim !== undefined) { - var res = prim.call(input, hint || "default"); - if (typeof res !== "object") return res; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - return (hint === "string" ? String : Number)(input); - } - function _toPropertyKey(arg) { - var key = _toPrimitive(arg, "string"); - return typeof key === "symbol" ? key : String(key); - } - - function getAttributeValueByPath(record, path) { - return path.reduce(function (current, key) { - return current && current[key]; - }, record); - } - - /** - * Throws an error if the condition is not met in development mode. - * This is used to make development a better experience to provide guidance as - * to where the error comes from. - */ - function invariant(condition, message) { - if (!condition) { - throw new Error("[Autocomplete] ".concat(typeof message === 'function' ? message() : message)); - } - } - - var version = '1.17.7'; - - var userAgents = [{ - segment: 'autocomplete-core', - version: version - }]; - - var warnCache = { - current: {} - }; - - /** - * Logs a warning if the condition is not met. - * This is used to log issues in development environment only. - */ - function warn(condition, message) { - if (condition) { - return; - } - var sanitizedMessage = message.trim(); - var hasAlreadyPrinted = warnCache.current[sanitizedMessage]; - if (!hasAlreadyPrinted) { - warnCache.current[sanitizedMessage] = true; - - // eslint-disable-next-line no-console - console.warn("[Autocomplete] ".concat(sanitizedMessage)); - } - } - - var HIGHLIGHT_PRE_TAG = '__aa-highlight__'; - var HIGHLIGHT_POST_TAG = '__/aa-highlight__'; - - /** - * Creates a data structure that allows to concatenate similar highlighting - * parts in a single value. - */ - function createAttributeSet() { - var initialValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var value = initialValue; - return { - get: function get() { - return value; - }, - add: function add(part) { - var lastPart = value[value.length - 1]; - if ((lastPart === null || lastPart === void 0 ? void 0 : lastPart.isHighlighted) === part.isHighlighted) { - value[value.length - 1] = { - value: lastPart.value + part.value, - isHighlighted: lastPart.isHighlighted - }; - } else { - value.push(part); - } - } - }; - } - function parseAttribute(_ref) { - var highlightedValue = _ref.highlightedValue; - var preTagParts = highlightedValue.split(HIGHLIGHT_PRE_TAG); - var firstValue = preTagParts.shift(); - var parts = createAttributeSet(firstValue ? [{ - value: firstValue, - isHighlighted: false - }] : []); - preTagParts.forEach(function (part) { - var postTagParts = part.split(HIGHLIGHT_POST_TAG); - parts.add({ - value: postTagParts[0], - isHighlighted: true - }); - if (postTagParts[1] !== '') { - parts.add({ - value: postTagParts[1], - isHighlighted: false - }); - } - }); - return parts.get(); - } - - function parseAlgoliaHitHighlight(_ref) { - var hit = _ref.hit, - attribute = _ref.attribute; - var path = Array.isArray(attribute) ? attribute : [attribute]; - var highlightedValue = getAttributeValueByPath(hit, ['_highlightResult'].concat(_toConsumableArray(path), ['value'])); - if (typeof highlightedValue !== 'string') { - "development" !== 'production' ? warn(false, "The attribute \"".concat(path.join('.'), "\" described by the path ").concat(JSON.stringify(path), " does not exist on the hit. Did you set it in `attributesToHighlight`?") + '\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToHighlight/') : void 0; - highlightedValue = getAttributeValueByPath(hit, path) || ''; - } - return parseAttribute({ - highlightedValue: highlightedValue - }); - } - - var htmlEscapes = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'" - }; - var hasAlphanumeric = new RegExp(/\w/i); - var regexEscapedHtml = /&(amp|quot|lt|gt|#39);/g; - var regexHasEscapedHtml = RegExp(regexEscapedHtml.source); - function unescape(value) { - return value && regexHasEscapedHtml.test(value) ? value.replace(regexEscapedHtml, function (character) { - return htmlEscapes[character]; - }) : value; - } - function isPartHighlighted(parts, i) { - var _parts, _parts2; - var current = parts[i]; - var isNextHighlighted = ((_parts = parts[i + 1]) === null || _parts === void 0 ? void 0 : _parts.isHighlighted) || true; - var isPreviousHighlighted = ((_parts2 = parts[i - 1]) === null || _parts2 === void 0 ? void 0 : _parts2.isHighlighted) || true; - if (!hasAlphanumeric.test(unescape(current.value)) && isPreviousHighlighted === isNextHighlighted) { - return isPreviousHighlighted; - } - return current.isHighlighted; - } - - function reverseHighlightedParts(parts) { - // We don't want to highlight the whole word when no parts match. - if (!parts.some(function (part) { - return part.isHighlighted; - })) { - return parts.map(function (part) { - return _objectSpread2(_objectSpread2({}, part), {}, { - isHighlighted: false - }); - }); - } - return parts.map(function (part, i) { - return _objectSpread2(_objectSpread2({}, part), {}, { - isHighlighted: !isPartHighlighted(parts, i) - }); - }); - } - - function parseAlgoliaHitReverseHighlight(props) { - return reverseHighlightedParts(parseAlgoliaHitHighlight(props)); - } - - function parseAlgoliaHitSnippet(_ref) { - var hit = _ref.hit, - attribute = _ref.attribute; - var path = Array.isArray(attribute) ? attribute : [attribute]; - var highlightedValue = getAttributeValueByPath(hit, ['_snippetResult'].concat(_toConsumableArray(path), ['value'])); - if (typeof highlightedValue !== 'string') { - "development" !== 'production' ? warn(false, "The attribute \"".concat(path.join('.'), "\" described by the path ").concat(JSON.stringify(path), " does not exist on the hit. Did you set it in `attributesToSnippet`?") + '\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToSnippet/') : void 0; - highlightedValue = getAttributeValueByPath(hit, path) || ''; - } - return parseAttribute({ - highlightedValue: highlightedValue - }); - } - - function parseAlgoliaHitReverseSnippet(props) { - return reverseHighlightedParts(parseAlgoliaHitSnippet(props)); - } - - function createRequester(fetcher, requesterId) { - function execute(fetcherParams) { - return fetcher({ - searchClient: fetcherParams.searchClient, - queries: fetcherParams.requests.map(function (x) { - return x.query; - }) - }).then(function (responses) { - return responses.map(function (response, index) { - var _fetcherParams$reques = fetcherParams.requests[index], - sourceId = _fetcherParams$reques.sourceId, - transformResponse = _fetcherParams$reques.transformResponse; - return { - items: response, - sourceId: sourceId, - transformResponse: transformResponse - }; - }); - }); - } - return function createSpecifiedRequester(requesterParams) { - return function requester(requestParams) { - return _objectSpread2(_objectSpread2({ - requesterId: requesterId, - execute: execute - }, requesterParams), requestParams); - }; - }; - } - - // typed as any, since it accepts the _real_ js clients, not the interface we otherwise expect - function getAppIdAndApiKey(searchClient) { - var transporter = searchClient.transporter || {}; - var headers = transporter.headers || transporter.baseHeaders || {}; - var queryParameters = transporter.queryParameters || transporter.baseQueryParameters || {}; - var APP_ID = 'x-algolia-application-id'; - var API_KEY = 'x-algolia-api-key'; - var appId = headers[APP_ID] || queryParameters[APP_ID]; - var apiKey = headers[API_KEY] || queryParameters[API_KEY]; - return { - appId: appId, - apiKey: apiKey - }; - } - - var _excluded = ["params"]; - function fetchAlgoliaResults(_ref) { - var searchClient = _ref.searchClient, - queries = _ref.queries, - _ref$userAgents = _ref.userAgents, - userAgents$1 = _ref$userAgents === void 0 ? [] : _ref$userAgents; - if (typeof searchClient.addAlgoliaAgent === 'function') { - var algoliaAgents = [].concat(_toConsumableArray(userAgents), _toConsumableArray(userAgents$1)); - algoliaAgents.forEach(function (_ref2) { - var segment = _ref2.segment, - version = _ref2.version; - searchClient.addAlgoliaAgent(segment, version); - }); - } - var _getAppIdAndApiKey = getAppIdAndApiKey(searchClient), - appId = _getAppIdAndApiKey.appId, - apiKey = _getAppIdAndApiKey.apiKey; - invariant(Boolean(appId), 'The Algolia `appId` was not accessible from the searchClient passed.'); - invariant(Boolean(apiKey), 'The Algolia `apiKey` was not accessible from the searchClient passed.'); - return searchClient.search(queries.map(function (searchParameters) { - var params = searchParameters.params, - headers = _objectWithoutProperties(searchParameters, _excluded); - return _objectSpread2(_objectSpread2({}, headers), {}, { - params: _objectSpread2({ - hitsPerPage: 5, - highlightPreTag: HIGHLIGHT_PRE_TAG, - highlightPostTag: HIGHLIGHT_POST_TAG - }, params) - }); - })).then(function (response) { - return response.results.map(function (result, resultIndex) { - var _result$hits; - return _objectSpread2(_objectSpread2({}, result), {}, { - hits: (_result$hits = result.hits) === null || _result$hits === void 0 ? void 0 : _result$hits.map(function (hit) { - return _objectSpread2(_objectSpread2({}, hit), {}, { - // Bring support for the Insights plugin. - __autocomplete_indexName: result.index || queries[resultIndex].indexName, - __autocomplete_queryID: result.queryID, - __autocomplete_algoliaCredentials: { - appId: appId, - apiKey: apiKey - } - }); - }) - }); - }); - }); - } - - var createAlgoliaRequester = createRequester(fetchAlgoliaResults, 'algolia'); - - /** - * Retrieves Algolia facet hits from multiple indices. - */ - function getAlgoliaFacets(requestParams) { - invariant(_typeof(requestParams.searchClient) === 'object', 'The `searchClient` parameter is required for getAlgoliaFacets({ searchClient }).'); - var requester = createAlgoliaRequester({ - transformResponse: function transformResponse(response) { - return response.facetHits; - } - }); - var queries = requestParams.queries.map(function (query) { - return _objectSpread2(_objectSpread2({}, query), {}, { - type: 'facet' - }); - }); - return requester(_objectSpread2(_objectSpread2({}, requestParams), {}, { - queries: queries - })); - } - - /** - * Retrieves Algolia results from multiple indices. - */ - function getAlgoliaResults(requestParams) { - invariant(_typeof(requestParams.searchClient) === 'object', 'The `searchClient` parameter is required for getAlgoliaResults({ searchClient }).'); - var requester = createAlgoliaRequester({ - transformResponse: function transformResponse(response) { - return response.hits; - } - }); - return requester(requestParams); - } - - exports.createRequester = createRequester; - exports.fetchAlgoliaResults = fetchAlgoliaResults; - exports.getAlgoliaFacets = getAlgoliaFacets; - exports.getAlgoliaResults = getAlgoliaResults; - exports.parseAlgoliaHitHighlight = parseAlgoliaHitHighlight; - exports.parseAlgoliaHitReverseHighlight = parseAlgoliaHitReverseHighlight; - exports.parseAlgoliaHitReverseSnippet = parseAlgoliaHitReverseSnippet; - exports.parseAlgoliaHitSnippet = parseAlgoliaHitSnippet; - - Object.defineProperty(exports, '__esModule', { value: true }); - -})); -//# sourceMappingURL=index.development.js.map diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js.map b/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js.map deleted file mode 100644 index fb8bd9c..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.development.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.development.js","sources":["../../../autocomplete-shared/dist/esm/getAttributeValueByPath.js","../../../autocomplete-shared/dist/esm/invariant.js","../../../autocomplete-shared/dist/esm/version.js","../../../autocomplete-shared/dist/esm/userAgents.js","../../../autocomplete-shared/dist/esm/warn.js","../../src/constants/index.ts","../../src/highlight/parseAttribute.ts","../../src/highlight/parseAlgoliaHitHighlight.ts","../../src/highlight/isPartHighlighted.ts","../../src/highlight/reverseHighlightedParts.ts","../../src/highlight/parseAlgoliaHitReverseHighlight.ts","../../src/highlight/parseAlgoliaHitSnippet.ts","../../src/highlight/parseAlgoliaHitReverseSnippet.ts","../../src/requester/createRequester.ts","../../src/utils/getAppIdAndApiKey.ts","../../src/search/fetchAlgoliaResults.ts","../../src/requester/createAlgoliaRequester.ts","../../src/requester/getAlgoliaFacets.ts","../../src/requester/getAlgoliaResults.ts"],"sourcesContent":["export function getAttributeValueByPath(record, path) {\n return path.reduce(function (current, key) {\n return current && current[key];\n }, record);\n}","/**\n * Throws an error if the condition is not met in development mode.\n * This is used to make development a better experience to provide guidance as\n * to where the error comes from.\n */\nexport function invariant(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n if (!condition) {\n throw new Error(\"[Autocomplete] \".concat(typeof message === 'function' ? message() : message));\n }\n}","export var version = '1.17.7';","import { version } from './version';\nexport var userAgents = [{\n segment: 'autocomplete-core',\n version: version\n}];","export var warnCache = {\n current: {}\n};\n\n/**\n * Logs a warning if the condition is not met.\n * This is used to log issues in development environment only.\n */\nexport function warn(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n if (condition) {\n return;\n }\n var sanitizedMessage = message.trim();\n var hasAlreadyPrinted = warnCache.current[sanitizedMessage];\n if (!hasAlreadyPrinted) {\n warnCache.current[sanitizedMessage] = true;\n\n // eslint-disable-next-line no-console\n console.warn(\"[Autocomplete] \".concat(sanitizedMessage));\n }\n}","export const HIGHLIGHT_PRE_TAG = '__aa-highlight__';\nexport const HIGHLIGHT_POST_TAG = '__/aa-highlight__';\n","import { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants';\n\nimport { ParsedAttribute } from './ParsedAttribute';\n\n/**\n * Creates a data structure that allows to concatenate similar highlighting\n * parts in a single value.\n */\nfunction createAttributeSet(initialValue: ParsedAttribute[] = []) {\n const value = initialValue;\n\n return {\n get() {\n return value;\n },\n add(part: ParsedAttribute) {\n const lastPart: ParsedAttribute | undefined = value[value.length - 1];\n\n if (lastPart?.isHighlighted === part.isHighlighted) {\n value[value.length - 1] = {\n value: lastPart.value + part.value,\n isHighlighted: lastPart.isHighlighted,\n };\n } else {\n value.push(part);\n }\n },\n };\n}\n\ntype ParseAttributeParams = {\n highlightedValue: string;\n};\n\nexport function parseAttribute({\n highlightedValue,\n}: ParseAttributeParams): ParsedAttribute[] {\n const preTagParts = highlightedValue.split(HIGHLIGHT_PRE_TAG);\n const firstValue = preTagParts.shift();\n const parts = createAttributeSet(\n firstValue ? [{ value: firstValue, isHighlighted: false }] : []\n );\n\n preTagParts.forEach((part) => {\n const postTagParts = part.split(HIGHLIGHT_POST_TAG);\n\n parts.add({\n value: postTagParts[0],\n isHighlighted: true,\n });\n\n if (postTagParts[1] !== '') {\n parts.add({\n value: postTagParts[1],\n isHighlighted: false,\n });\n }\n });\n\n return parts.get();\n}\n","import { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared';\n\nimport { HighlightedHit } from './HighlightedHit';\nimport { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { parseAttribute } from './parseAttribute';\nimport { ParsedAttribute } from './ParsedAttribute';\n\nexport function parseAlgoliaHitHighlight>({\n hit,\n attribute,\n}: ParseAlgoliaHitParams): ParsedAttribute[] {\n const path = Array.isArray(attribute) ? attribute : ([attribute] as string[]);\n let highlightedValue = getAttributeValueByPath(hit, [\n '_highlightResult',\n ...path,\n 'value',\n ]);\n\n if (typeof highlightedValue !== 'string') {\n warn(\n false,\n `The attribute \"${path.join('.')}\" described by the path ${JSON.stringify(\n path\n )} does not exist on the hit. Did you set it in \\`attributesToHighlight\\`?` +\n '\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToHighlight/'\n );\n\n highlightedValue = getAttributeValueByPath(hit, path) || '';\n }\n\n return parseAttribute({ highlightedValue });\n}\n","import { ParsedAttribute } from './ParsedAttribute';\n\nconst htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\",\n};\nconst hasAlphanumeric = new RegExp(/\\w/i);\nconst regexEscapedHtml = /&(amp|quot|lt|gt|#39);/g;\nconst regexHasEscapedHtml = RegExp(regexEscapedHtml.source);\n\nfunction unescape(value: string): string {\n return value && regexHasEscapedHtml.test(value)\n ? value.replace(regexEscapedHtml, (character) => htmlEscapes[character])\n : value;\n}\n\nexport function isPartHighlighted(parts: ParsedAttribute[], i: number) {\n const current = parts[i];\n const isNextHighlighted = parts[i + 1]?.isHighlighted || true;\n const isPreviousHighlighted = parts[i - 1]?.isHighlighted || true;\n\n if (\n !hasAlphanumeric.test(unescape(current.value)) &&\n isPreviousHighlighted === isNextHighlighted\n ) {\n return isPreviousHighlighted;\n }\n\n return current.isHighlighted;\n}\n","import { isPartHighlighted } from './isPartHighlighted';\nimport { ParsedAttribute } from './ParsedAttribute';\n\nexport function reverseHighlightedParts(parts: ParsedAttribute[]) {\n // We don't want to highlight the whole word when no parts match.\n if (!parts.some((part) => part.isHighlighted)) {\n return parts.map((part) => ({ ...part, isHighlighted: false }));\n }\n\n return parts.map((part, i) => ({\n ...part,\n isHighlighted: !isPartHighlighted(parts, i),\n }));\n}\n","import { HighlightedHit } from './HighlightedHit';\nimport { parseAlgoliaHitHighlight } from './parseAlgoliaHitHighlight';\nimport { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { ParsedAttribute } from './ParsedAttribute';\nimport { reverseHighlightedParts } from './reverseHighlightedParts';\n\nexport function parseAlgoliaHitReverseHighlight<\n THit extends HighlightedHit\n>(props: ParseAlgoliaHitParams): ParsedAttribute[] {\n return reverseHighlightedParts(parseAlgoliaHitHighlight(props));\n}\n","import { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared';\n\nimport { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { parseAttribute } from './parseAttribute';\nimport { ParsedAttribute } from './ParsedAttribute';\nimport { SnippetedHit } from './SnippetedHit';\n\nexport function parseAlgoliaHitSnippet>({\n hit,\n attribute,\n}: ParseAlgoliaHitParams): ParsedAttribute[] {\n const path = Array.isArray(attribute) ? attribute : ([attribute] as string[]);\n let highlightedValue = getAttributeValueByPath(hit, [\n '_snippetResult',\n ...path,\n 'value',\n ]);\n\n if (typeof highlightedValue !== 'string') {\n warn(\n false,\n `The attribute \"${path.join('.')}\" described by the path ${JSON.stringify(\n path\n )} does not exist on the hit. Did you set it in \\`attributesToSnippet\\`?` +\n '\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToSnippet/'\n );\n\n highlightedValue = getAttributeValueByPath(hit, path) || '';\n }\n\n return parseAttribute({ highlightedValue });\n}\n","import { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { parseAlgoliaHitSnippet } from './parseAlgoliaHitSnippet';\nimport { ParsedAttribute } from './ParsedAttribute';\nimport { reverseHighlightedParts } from './reverseHighlightedParts';\nimport { SnippetedHit } from './SnippetedHit';\n\nexport function parseAlgoliaHitReverseSnippet<\n THit extends SnippetedHit\n>(props: ParseAlgoliaHitParams): ParsedAttribute[] {\n return reverseHighlightedParts(parseAlgoliaHitSnippet(props));\n}\n","import type {\n Fetcher,\n ExecuteParams,\n RequesterParams,\n RequestParams,\n RequesterDescription,\n} from '../types';\n\nexport function createRequester(fetcher: Fetcher, requesterId?: string) {\n function execute(fetcherParams: ExecuteParams) {\n return fetcher({\n searchClient: fetcherParams.searchClient,\n queries: fetcherParams.requests.map((x) => x.query),\n }).then((responses) =>\n responses.map((response, index) => {\n const { sourceId, transformResponse } = fetcherParams.requests[index];\n\n return {\n items: response,\n sourceId,\n transformResponse,\n };\n })\n );\n }\n\n return function createSpecifiedRequester(\n requesterParams: RequesterParams\n ) {\n return function requester(\n requestParams: RequestParams\n ): RequesterDescription {\n return {\n requesterId,\n execute,\n ...requesterParams,\n ...requestParams,\n };\n };\n };\n}\n","// typed as any, since it accepts the _real_ js clients, not the interface we otherwise expect\nexport function getAppIdAndApiKey(searchClient: any): {\n appId: string;\n apiKey: string;\n} {\n const transporter = searchClient.transporter || {};\n const headers = transporter.headers || transporter.baseHeaders || {};\n const queryParameters =\n transporter.queryParameters || transporter.baseQueryParameters || {};\n const APP_ID = 'x-algolia-application-id';\n const API_KEY = 'x-algolia-api-key';\n const appId = headers[APP_ID] || queryParameters[APP_ID];\n const apiKey = headers[API_KEY] || queryParameters[API_KEY];\n return { appId, apiKey };\n}\n","import {\n userAgents as coreUserAgents,\n UserAgent,\n invariant,\n} from '@algolia/autocomplete-shared';\nimport type { SearchResponse } from '@algolia/autocomplete-shared';\n\nimport { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants';\nimport type { SearchForFacetValuesResponse, SearchParams } from '../types';\nimport { getAppIdAndApiKey } from '../utils';\n\nexport function fetchAlgoliaResults({\n searchClient,\n queries,\n userAgents = [],\n}: SearchParams): Promise<\n Array | SearchForFacetValuesResponse>\n> {\n if (typeof searchClient.addAlgoliaAgent === 'function') {\n const algoliaAgents: UserAgent[] = [...coreUserAgents, ...userAgents];\n\n algoliaAgents.forEach(({ segment, version }) => {\n searchClient.addAlgoliaAgent(segment, version);\n });\n }\n\n const { appId, apiKey } = getAppIdAndApiKey(searchClient);\n\n invariant(\n Boolean(appId),\n 'The Algolia `appId` was not accessible from the searchClient passed.'\n );\n invariant(\n Boolean(apiKey),\n 'The Algolia `apiKey` was not accessible from the searchClient passed.'\n );\n\n return searchClient\n .search(\n queries.map((searchParameters) => {\n const { params, ...headers } = searchParameters;\n\n return {\n ...headers,\n params: {\n hitsPerPage: 5,\n highlightPreTag: HIGHLIGHT_PRE_TAG,\n highlightPostTag: HIGHLIGHT_POST_TAG,\n ...params,\n },\n };\n })\n )\n .then((response) => {\n return response.results.map((result, resultIndex) => ({\n ...result,\n hits: result.hits?.map((hit) => ({\n ...hit,\n // Bring support for the Insights plugin.\n __autocomplete_indexName:\n result.index || queries[resultIndex].indexName,\n __autocomplete_queryID: result.queryID,\n __autocomplete_algoliaCredentials: {\n appId,\n apiKey,\n },\n })),\n }));\n });\n}\n","import { fetchAlgoliaResults } from '../search';\n\nimport { createRequester } from './createRequester';\n\nexport const createAlgoliaRequester = createRequester(\n fetchAlgoliaResults,\n 'algolia'\n);\n","import { invariant } from '@algolia/autocomplete-shared';\n\nimport type { MultipleQueriesQuery } from '../types';\nimport { RequestParams } from '../types';\n\nimport { createAlgoliaRequester } from './createAlgoliaRequester';\n\n/**\n * Retrieves Algolia facet hits from multiple indices.\n */\nexport function getAlgoliaFacets(requestParams: RequestParams) {\n invariant(\n typeof requestParams.searchClient === 'object',\n 'The `searchClient` parameter is required for getAlgoliaFacets({ searchClient }).'\n );\n\n const requester = createAlgoliaRequester({\n transformResponse: (response) => response.facetHits,\n });\n\n const queries = requestParams.queries.map((query) => ({\n ...query,\n type: 'facet',\n })) as MultipleQueriesQuery[];\n\n return requester({\n ...requestParams,\n queries,\n });\n}\n","import { invariant } from '@algolia/autocomplete-shared';\n\nimport { RequestParams } from '../types';\n\nimport { createAlgoliaRequester } from './createAlgoliaRequester';\n\n/**\n * Retrieves Algolia results from multiple indices.\n */\nexport function getAlgoliaResults(requestParams: RequestParams) {\n invariant(\n typeof requestParams.searchClient === 'object',\n 'The `searchClient` parameter is required for getAlgoliaResults({ searchClient }).'\n );\n\n const requester = createAlgoliaRequester({\n transformResponse: (response) => response.hits,\n });\n\n return requester(requestParams);\n}\n"],"names":["getAttributeValueByPath","record","path","reduce","current","key","invariant","condition","message","Error","concat","version","userAgents","segment","warnCache","warn","sanitizedMessage","trim","hasAlreadyPrinted","console","HIGHLIGHT_PRE_TAG","HIGHLIGHT_POST_TAG","createAttributeSet","initialValue","arguments","length","undefined","value","get","add","part","lastPart","isHighlighted","push","parseAttribute","_ref","highlightedValue","preTagParts","split","firstValue","shift","parts","forEach","postTagParts","parseAlgoliaHitHighlight","hit","attribute","Array","isArray","_toConsumableArray","process","join","JSON","stringify","htmlEscapes","hasAlphanumeric","RegExp","regexEscapedHtml","regexHasEscapedHtml","source","unescape","test","replace","character","isPartHighlighted","i","_parts","_parts2","isNextHighlighted","isPreviousHighlighted","reverseHighlightedParts","some","map","_objectSpread","parseAlgoliaHitReverseHighlight","props","parseAlgoliaHitSnippet","parseAlgoliaHitReverseSnippet","createRequester","fetcher","requesterId","execute","fetcherParams","searchClient","queries","requests","x","query","then","responses","response","index","_fetcherParams$reques","sourceId","transformResponse","items","createSpecifiedRequester","requesterParams","requester","requestParams","getAppIdAndApiKey","transporter","headers","baseHeaders","queryParameters","baseQueryParameters","APP_ID","API_KEY","appId","apiKey","fetchAlgoliaResults","_ref$userAgents","addAlgoliaAgent","algoliaAgents","coreUserAgents","_ref2","_getAppIdAndApiKey","Boolean","search","searchParameters","params","_objectWithoutProperties","_excluded","hitsPerPage","highlightPreTag","highlightPostTag","results","result","resultIndex","_result$hits","hits","__autocomplete_indexName","indexName","__autocomplete_queryID","queryID","__autocomplete_algoliaCredentials","createAlgoliaRequester","getAlgoliaFacets","_typeof","facetHits","type","getAlgoliaResults"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASA,CAAuBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEC,IAAI,CAAE,CAAA,CAAA;GACpD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOA,IAAI,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAUC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAEC,CAAAA,CAAAA,CAAAA,CAAG,CAAE,CAAA,CAAA;AACzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAOD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIA,OAAO,CAACC,CAAAA,CAAAA,CAAG,CAAC,CAAA;GAC/B,CAAA,CAAA,CAAA,CAAEJ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AACZ,CAAA,CAAA,CAAA;;ACJA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AACO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASK,CAASA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEC,OAAO,CAAE,CAAA,CAAA;GAI5C,CAAA,CAAA,CAAA,CAAA,CAAI,CAACD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAE,CAAA,CAAA;AACd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAM,CAAIE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOF,OAAO,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,GAAGA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,GAAGA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;EAChG,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA;;ECZO,CAAIG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,GAAG,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ECCtB,CAAIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,GAAG,CAAC,CAAA;EACvBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAE,CAAmB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAC5BF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAEA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AACX,CAAA,CAAA,CAAC,CAAC,CAAA;;ACJK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIG,SAAS,CAAG,CAAA,CAAA,CAAA;EACrBV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAE,CAAC,CAAA;AACZ,CAAA,CAAA,CAAC,CAAA;;AAED,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AACO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASW,CAAIA,CAAAA,CAAAA,CAAAA,CAACR,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEC,OAAO,CAAE,CAAA,CAAA;EAIvC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAID,SAAS,CAAE,CAAA,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,IAAIS,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGR,OAAO,CAACS,CAAAA,CAAAA,CAAAA,CAAI,EAAE,CAAA;EACrC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,iBAAiB,CAAGJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAACV,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACY,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GAC3D,CAAA,CAAA,CAAA,CAAA,CAAI,CAACE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAE,CAAA,CAAA;EACtBJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAACV,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACY,gBAAgB,CAAC,CAAA,CAAA,CAAG,IAAI,CAAA;;AAE1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GACAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACJ,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAACL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAACM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAC,CAAC,CAAA;EAC1D,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA;;ECvBO,CAAMI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAA;EAC5C,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkB,GAAG,CAAmB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;ACGrD,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASC,kBAAkBA,CAAuC,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAtCC,YAA+B,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAE,SAAA,CAAAF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAE,CAAA;IAC9D,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAGJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAA;IAE1B,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MACLK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAG,CAAA,CAAA,CAAA;EACJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOD,KAAK,CAAA;GACb,CAAA,CAAA,CAAA,CAAA,CAAA;MACDE,GAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAACC,CAAAA,CAAAA,CAAAA,IAAqB,CAAE,CAAA,CAAA;GACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,CAAqC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGJ,CAAK,CAAA,CAAA,CAAA,CAAA,CAACA,CAAK,CAAA,CAAA,CAAA,CAAA,CAACF,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAC,CAAA;EAErE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAARA,IAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,KAARA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEC,aAAa,CAAKF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAACE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAE,CAAA,CAAA;EAClDL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACA,CAAK,CAAA,CAAA,CAAA,CAAA,CAACF,MAAM,CAAG,CAAA,CAAA,CAAC,CAAC,CAAG,CAAA,CAAA,CAAA;EACxBE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAAEI,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACJ,KAAK,CAAGG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAACH,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;YAClCK,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAED,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;WACzB,CAAA;AACH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACLL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,KAAK,CAACM,CAAAA,CAAAA,CAAAA,CAAI,CAACH,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAAA;EAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA;KACD,CAAA;EACH,CAAA;EAMO,CAASI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAcA,CAAAC,CAAAA,CAAAA,CAAAA,CAAA,CAEc,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,IAD1CC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAD,CAAA,CAAA,CAAA,CAAA,CAAhBC,gBAAgB,CAAA;EAEhB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,WAAW,CAAGD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAACE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAClB,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;AAC7D,CAAA,CAAA,CAAA,CAAA,IAAMmB,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGF,WAAW,CAACG,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAAE,CAAA;AACtC,CAAA,CAAA,CAAA,CAAA,IAAMC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGnB,kBAAkB,CAC9BiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,GAAG,CAAC,CAAA;EAAEZ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAAEY,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAEP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA;KAAO,CAAC,CAAA,CAAA,CAAG,CAAE,CAAA,CAChE,CAAA;AAEDK,CAAAA,CAAAA,CAAAA,CAAAA,WAAW,CAACK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACZ,IAAI,CAAK,CAAA,CAAA;EAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMa,YAAY,CAAGb,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAACQ,CAAK,CAAA,CAAA,CAAA,CAAA,CAACjB,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;GAEnDoB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACZ,CAAAA,CAAAA,CAAG,CAAC,CAAA;AACRF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEgB,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC,CAAA;EACtBX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA,CAAA,CAAA,CAAA;AACjB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAEF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAIW,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAE,CAAA,CAAA;GAC1BF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACZ,CAAAA,CAAAA,CAAG,CAAC,CAAA;AACRF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEgB,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC,CAAA;EACtBX,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA;AACjB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;EACJ,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;IAEF,CAAOS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACb,CAAAA,CAAAA,CAAG,EAAE,CAAA;AACpB,CAAA,CAAA,CAAA;;ECrDO,CAASgB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwBA,CAAAT,CAAAA,CAAAA,CAAAA,CAAA,CAGW,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAFjDU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAG,CAAAV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAHU,CAAG,CAAA,CAAA,CAAA;MACHC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAX,CAAA,CAAA,CAAA,CAAA,CAATW,SAAS,CAAA;AAET,CAAA,CAAA,CAAA,CAAA,CAAM5C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAAG6C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACF,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,GAAGA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAACA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAc,CAAA;EAC7E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIV,gBAAgB,CAAGpC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAuB,CAAC6C,CAAG,CAAA,CAAA,CAAA,CAChD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAAnC,CAAAA,MAAA,CAAAuC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CACf/C,CAAAA,CAAAA,CAAAA,CAAI,CAAA,CAAA,CAAA,CACP,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACP,CAAA,CAAA,CAAA;AAEF,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOkC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,QAAQ,CAAE,CAAA,CAAA;AAlB5Cc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAoB,CAAA,CAAA,CAAA,CAAA,CAAK,YAAY,CAmBjCnC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CACF,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CACL,kBAAA,CAAAL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAkBR,CAAI,CAAA,CAAA,CAAA,CAACiD,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAzC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAA2B0C,CAAI,CAAA,CAAA,CAAA,CAACC,SAAS,CACvEnD,CAAAA,CAAAA,CAAAA,CAAI,CACL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuF,CAC1F,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAEDkC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAGpC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAuB,CAAC6C,CAAAA,CAAAA,CAAG,EAAE3C,CAAI,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;EAC7D,CAAA,CAAA,CAAA;EAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOgC,cAAc,CAAC,CAAA;EAAEE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,EAAhBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAAiB,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAC7C,CAAA,CAAA,CAAA;;AC7BA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMkB,WAAW,CAAG,CAAA,CAAA,CAAA;EAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAG,CAAA,CAAA,CAAA;EACZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,EAAE,CAAG,CAAA,CAAA,CAAA;EACX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,EAAE,CAAG,CAAA,CAAA,CAAA;EACX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,EAAE,CAAG,CAAA,CAAA,CAAA;EACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAA,CAAA,CAAA;AACX,CAAA,CAAA,CAAC,CAAA;AACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,eAAe,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA;EACzC,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAyB,CAAA;EAClD,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmB,GAAGF,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,gBAAgB,CAACE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA;EAE3D,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQA,CAACjC,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAU,CAAA,CAAA;AACvC,CAAA,CAAA,CAAA,CAAA,OAAOA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI+B,mBAAmB,CAACG,CAAAA,CAAAA,CAAAA,CAAI,CAAClC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAC3CA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACmC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACL,gBAAgB,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACM,SAAS,CAAA,CAAA,CAAA;MAAA,CAAKT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAC,CAAA;EAAA,CAAA,CAAA,CAAA,CAAC,CACtEpC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAA;EACX,CAAA;AAEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASqC,CAAiBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACvB,CAAwB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEwB,CAAS,CAAE,CAAA,CAAA;IAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA;AACrE,CAAA,CAAA,CAAA,CAAA,IAAM/D,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGqC,KAAK,CAACwB,CAAC,CAAC,CAAA;AACxB,CAAA,CAAA,CAAA,CAAA,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAAF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAAzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACwB,CAAC,CAAG,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,SAAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAZA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAclC,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,IAAI,CAAA;AAC7D,CAAA,CAAA,CAAA,CAAA,CAAMqC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAqB,CAAG,CAAA,CAAA,CAAA,CAAAF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACwB,CAAC,CAAG,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,SAAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAZA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAcnC,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,IAAI,CAAA;AAEjE,CAAA,CAAA,CAAA,CAAA,IACE,CAACuB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,CAACM,CAAAA,CAAAA,CAAAA,CAAI,CAACD,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACxD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACuB,KAAK,CAAC,CAAC,IAC9C0C,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKD,iBAAiB,CAC3C,CAAA,CAAA;EACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOC,qBAAqB,CAAA;EAC9B,CAAA,CAAA,CAAA;IAEA,CAAOjE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC4B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAA;AAC9B,CAAA,CAAA,CAAA;;EC7BO,CAASsC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAuBA,CAAC7B,CAAAA,CAAAA,CAAAA,CAAAA,CAAwB,CAAE,CAAA,CAAA;AAChE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAACA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC8B,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACzC,IAAI,CAAA,CAAA,CAAA;MAAA,CAAKA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAACE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAA;AAC7C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAOS,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC+B,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC1C,IAAI,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA2C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW3C,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAEE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA;AAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA;EACjE,CAAA,CAAA,CAAA;EAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOS,KAAK,CAAC+B,CAAAA,CAAAA,CAAG,CAAC,CAAC1C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAAEmC,CAAAA,CAAC,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACpB3C,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACPE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,EAAE,CAACgC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAACvB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEwB,CAAC,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAC3C,CAAC,CAAA;AACL,CAAA,CAAA,CAAA;;ECPO,CAASS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA+BA,CAE7CC,CAAAA,CAAAA,CAAAA,CAAAA,CAAkC,CAAqB,CAAA,CAAA;EACvD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOL,uBAAuB,CAAC1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwB,CAAO+B,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACvE,CAAA,CAAA,CAAA;;ECHO,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAsBA,CAAAzC,CAAAA,CAAAA,CAAAA,CAAA,CAGa,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAFjDU,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAG,CAAAV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAHU,CAAG,CAAA,CAAA,CAAA;MACHC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAX,CAAA,CAAA,CAAA,CAAA,CAATW,SAAS,CAAA;AAET,CAAA,CAAA,CAAA,CAAA,CAAM5C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAAG6C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAACC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACF,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,GAAGA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAACA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAc,CAAA;EAC7E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIV,gBAAgB,CAAGpC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAuB,CAAC6C,CAAG,CAAA,CAAA,CAAA,CAChD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAAnC,CAAAA,MAAA,CAAAuC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CACb/C,CAAAA,CAAAA,CAAAA,CAAI,CAAA,CAAA,CAAA,CACP,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACP,CAAA,CAAA,CAAA;AAEF,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOkC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,QAAQ,CAAE,CAAA,CAAA;AAlB5Cc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAoB,CAAA,CAAA,CAAA,CAAA,CAAK,YAAY,CAmBjCnC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CACF,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CACL,kBAAA,CAAAL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAkBR,CAAI,CAAA,CAAA,CAAA,CAACiD,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAzC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAA2B0C,CAAI,CAAA,CAAA,CAAA,CAACC,SAAS,CACvEnD,CAAAA,CAAAA,CAAAA,CAAI,CACL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqF,CACxF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAEDkC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAGpC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAuB,CAAC6C,CAAAA,CAAAA,CAAG,EAAE3C,CAAI,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;EAC7D,CAAA,CAAA,CAAA;EAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOgC,cAAc,CAAC,CAAA;EAAEE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,EAAhBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAAiB,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AAC7C,CAAA,CAAA,CAAA;;ECzBO,CAASyC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA6BA,CAE3CF,CAAAA,CAAAA,CAAAA,CAAAA,CAAkC,CAAqB,CAAA,CAAA;EACvD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOL,uBAAuB,CAACM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAsB,CAAOD,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACrE,CAAA,CAAA,CAAA;;ACFO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASG,CAAeA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEC,WAAoB,CAAE,CAAA,CAAA;IACtE,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOA,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkC,CAAE,CAAA,CAAA;EACzD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOH,OAAO,CAAO,CAAA;QACnBI,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAED,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GACxCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAEF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAACG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACb,CAAG,CAAA,CAAA,CAAC,CAACc,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAAA,CAAA,CAAA;UAAA,CAAKA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACpD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAACC,CAAAA,CAAAA,CAAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACC,SAAS,CAAA,CAAA,CAAA;GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAChBA,SAAS,CAACjB,CAAAA,CAAAA,CAAG,CAAC,CAACkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAEC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAK,CAAA,CAAA;EACjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAC,qBAAA,CAAwCV,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAACG,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACM,KAAK,CAAC,CAAA;YAA7DE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAARC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YAAEC,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAjBE,iBAAiB,CAAA;UAEnC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACLC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAAEL,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACfG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,EAARA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACRC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,EAAjBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;WACD,CAAA;AACH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;OACH,CAAA,CAAA;EACH,CAAA,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASE,CAAwBA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACtCC,eAAqC,CACrC,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASC,CAASA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACvBC,aAAmC,CACN,CAAA,CAAA;QAC7B,CAAA1B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EACEO,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAXA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACXC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAPA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;SACGgB,EAAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EACfE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAA,CAAA;OAEnB,CAAA;KACF,CAAA;AACH,CAAA,CAAA,CAAA;;ACxCA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACO,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiBA,CAACjB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAGjD,CAAA,CAAA;EACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMkB,WAAW,CAAGlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAACkB,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,EAAE,CAAA;IAClD,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAGD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAID,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;IACpE,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,CACnBH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,CAAIH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAACI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmB,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAA;IACtE,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0B,CAAA;IACzC,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmB,CAAA;IACnC,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAGN,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAC,CAAA,CAAA,CAAA,CAAIF,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;IACxD,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAGP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAIH,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA;IAC3D,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAEC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;EAAEC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,EAANA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;KAAQ,CAAA;AAC1B,CAAA,CAAA,CAAA;;;ECHO,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmBA,CAAA3E,CAAAA,CAAAA,CAAAA,CAAA,CAMjC,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CALAgD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAAhD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAZgD,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MACZC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAjD,CAAA,CAAA,CAAA,CAAA,CAAPiD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MAAA2B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA5E,CAAA,CAAA,CAAA,CAAA,CACPvB,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAVA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAAmG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA;AAIf,CAAA,CAAA,CAAA,CAAA,IAAI,CAAO5B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC6B,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,UAAU,CAAE,CAAA,CAAA;MACtD,IAAMC,CAA0B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAvG,CAAAA,CAAAA,CAAAA,MAAA,CAAAuC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAOiE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,CAAAjE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAKrC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAA,CAAA;AAErEqG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAa,CAACvE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAyE,KAAA,CAA0B,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAvBtG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAAsG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAPtG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UAAEF,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAwG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAPxG,OAAO,CAAA;EACvCwE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAY,CAAC6B,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACnG,OAAO,CAAEF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA;AAChD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;EACJ,CAAA,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,IAAAyG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0BhB,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACjB,YAAY,CAAC,CAAA;MAAjDyB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAALR,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;MAAEC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAANP,MAAM,CAAA;EAErBvG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CACP+G,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACT,KAAK,CAAC,CAAA,CACd,CAAsE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACvE,CAAA;EACDtG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CACP+G,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACR,MAAM,CAAC,CAAA,CACf,CAAuE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACxE,CAAA;GAED,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO1B,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAChBmC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CACLlC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACZ,CAAG,CAAA,CAAA,CAAC,CAAC+C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAK,CAAA,CAAA;AAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAiBD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,CAAvCC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAKlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,GAAAmB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKF,gBAAgB,CAAAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EAE/C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAjD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACK6B,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACVkB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAA/C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA;EACJkD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,EAAE,CAAC,CAAA;EACdC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,EAAExG,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAClCyG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgB,EAAExG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;EAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACjCmG,MAAM,CAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEL,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CACH,CACAhC,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACE,QAAQ,CAAK,CAAA,CAAA;GAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACoC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACtD,CAAG,CAAA,CAAA,CAAC,CAACuD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAAEC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAC,YAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAxD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC3CsD,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACTG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,CAAAD,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEF,MAAM,CAACG,CAAAA,CAAAA,CAAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAXA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAazD,CAAG,CAAA,CAAA,CAAC,CAAC3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAG,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA4B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACtB5B,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GACAsF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAwB,CACtBJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,CAACpC,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAIP,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC4C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC,CAACI,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;cAChDC,CAAsB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEN,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAACO,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACtCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,iCAAiC,CAAE,CAAA,CAAA;EACjC3B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,EAALA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;EACLC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAM,EAANA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;EACF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;WACD,CAAA;AAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACH,CAAC,CAAA;AACL,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;AACN,CAAA,CAAA,CAAA;;ACjEO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM2B,sBAAsB,CAAG1D,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,CACnDgC,CAAmB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACnB,SAAS,CACV,CAAA;;ACAD,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;EACO,CAAS2B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAgBA,CAAQtC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmC,CAAE,CAAA,CAAA;IAC3E7F,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACPoI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOvC,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAChB,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAC9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkF,CACnF,CAAA;IAED,CAAMe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAGsC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAsB,CAAC,CAAA;MACvC1C,iBAAiB,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACJ,QAAQ,CAAA,CAAA,CAAA;QAAA,CAAKA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACiD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACrD,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;GAEF,CAAA,CAAA,CAAA,CAAA,CAAMvD,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGe,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACf,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACZ,CAAG,CAAA,CAAA,CAAC,CAACe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAA,CAAA,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC3Cc,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EACRqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,EAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CAAA,CACb,CAA2B,CAAA;AAE7B,CAAA,CAAA,CAAA,CAAA,CAAO1C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAAzB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,IACX0B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;EAChBf,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,EAAPA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA;GACA,CAAA,CAAA,CAAA,CAAA,CAAA;AACJ,CAAA,CAAA,CAAA;;ACvBA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA;EACO,CAASyD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiBA,CAAQ1C,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmC,CAAE,CAAA,CAAA;IAC5E7F,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACPoI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOvC,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAChB,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAC9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmF,CACpF,CAAA;IAED,CAAMe,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAGsC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAsB,CAAC,CAAA;MACvC1C,iBAAiB,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACJ,QAAQ,CAAA,CAAA,CAAA;QAAA,CAAKA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAACwC,CAAAA,CAAAA,CAAAA,CAAI,CAAA;EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAChD,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA;IAEF,CAAOhC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAC,CAAA;AACjC,CAAA,CAAA,CAAA;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js b/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js deleted file mode 100644 index c03eb17..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! @algolia/autocomplete-preset-algolia 1.17.7 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-preset-algolia"]={})}(this,(function(e){"use strict";function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function r(e){for(var r=1;r=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function u(e){return function(e){if(Array.isArray(e))return a(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return a(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return a(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&void 0!==arguments[0]?arguments[0]:[];return{get:function(){return e},add:function(t){var r=e[e.length-1];(null==r?void 0:r.isHighlighted)===t.isHighlighted?e[e.length-1]={value:r.value+t.value,isHighlighted:r.isHighlighted}:e.push(t)}}}(r?[{value:r,isHighlighted:!1}]:[]);return t.forEach((function(e){var t=e.split(f);n.add({value:t[0],isHighlighted:!0}),""!==t[1]&&n.add({value:t[1],isHighlighted:!1})})),n.get()}function g(e){var t=e.hit,r=e.attribute,n=Array.isArray(r)?r:[r],i=l(t,["_highlightResult"].concat(u(n),["value"]));return"string"!=typeof i&&(i=l(t,n)||""),p({highlightedValue:i})}var h={"&":"&","<":"<",">":">",""":'"',"'":"'"},d=new RegExp(/\w/i),y=/&(amp|quot|lt|gt|#39);/g,m=RegExp(y.source);function v(e,t){var r,n,i,o=e[t],u=(null===(r=e[t+1])||void 0===r?void 0:r.isHighlighted)||!0,a=(null===(n=e[t-1])||void 0===n?void 0:n.isHighlighted)||!0;return d.test((i=o.value)&&m.test(i)?i.replace(y,(function(e){return h[e]})):i)||a!==u?o.isHighlighted:a}function b(e){return e.some((function(e){return e.isHighlighted}))?e.map((function(t,n){return r(r({},t),{},{isHighlighted:!v(e,n)})})):e.map((function(e){return r(r({},e),{},{isHighlighted:!1})}))}function O(e){var t=e.hit,r=e.attribute,n=Array.isArray(r)?r:[r],i=l(t,["_snippetResult"].concat(u(n),["value"]));return"string"!=typeof i&&(i=l(t,n)||""),p({highlightedValue:i})}function j(e,t){function n(t){return e({searchClient:t.searchClient,queries:t.requests.map((function(e){return e.query}))}).then((function(e){return e.map((function(e,r){var n=t.requests[r];return{items:e,sourceId:n.sourceId,transformResponse:n.transformResponse}}))}))}return function(e){return function(i){return r(r({requesterId:t,execute:n},e),i)}}}var A=["params"];function H(e){var t=e.searchClient,n=e.queries,i=e.userAgents,a=void 0===i?[]:i;"function"==typeof t.addAlgoliaAgent&&[].concat(u(s),u(a)).forEach((function(e){var r=e.segment,n=e.version;t.addAlgoliaAgent(r,n)}));var l=function(e){var t=e.transporter||{},r=t.headers||t.baseHeaders||{},n=t.queryParameters||t.baseQueryParameters||{},i="x-algolia-application-id",o="x-algolia-api-key";return{appId:r[i]||n[i],apiKey:r[o]||n[o]}}(t),p=l.appId,g=l.apiKey;return t.search(n.map((function(e){var t=e.params;return r(r({},o(e,A)),{},{params:r({hitsPerPage:5,highlightPreTag:c,highlightPostTag:f},t)})}))).then((function(e){return e.results.map((function(e,t){var i;return r(r({},e),{},{hits:null===(i=e.hits)||void 0===i?void 0:i.map((function(i){return r(r({},i),{},{__autocomplete_indexName:e.index||n[t].indexName,__autocomplete_queryID:e.queryID,__autocomplete_algoliaCredentials:{appId:p,apiKey:g}})}))})}))}))}var _=j(H,"algolia");e.createRequester=j,e.fetchAlgoliaResults=H,e.getAlgoliaFacets=function(e){n(e.searchClient);var t=_({transformResponse:function(e){return e.facetHits}}),i=e.queries.map((function(e){return r(r({},e),{},{type:"facet"})}));return t(r(r({},e),{},{queries:i}))},e.getAlgoliaResults=function(e){return n(e.searchClient),_({transformResponse:function(e){return e.hits}})(e)},e.parseAlgoliaHitHighlight=g,e.parseAlgoliaHitReverseHighlight=function(e){return b(g(e))},e.parseAlgoliaHitReverseSnippet=function(e){return b(O(e))},e.parseAlgoliaHitSnippet=O,Object.defineProperty(e,"__esModule",{value:!0})})); -//# sourceMappingURL=index.production.js.map diff --git a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js.map b/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js.map deleted file mode 100644 index d3788f7..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/dist/umd/index.production.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.production.js","sources":["../../../autocomplete-shared/dist/esm/getAttributeValueByPath.js","../../../autocomplete-shared/dist/esm/version.js","../../../autocomplete-shared/dist/esm/userAgents.js","../../src/constants/index.ts","../../src/highlight/parseAttribute.ts","../../src/highlight/parseAlgoliaHitHighlight.ts","../../src/highlight/isPartHighlighted.ts","../../src/highlight/reverseHighlightedParts.ts","../../src/highlight/parseAlgoliaHitSnippet.ts","../../src/requester/createRequester.ts","../../src/search/fetchAlgoliaResults.ts","../../src/utils/getAppIdAndApiKey.ts","../../src/requester/createAlgoliaRequester.ts","../../src/requester/getAlgoliaFacets.ts","../../src/requester/getAlgoliaResults.ts","../../src/highlight/parseAlgoliaHitReverseHighlight.ts","../../src/highlight/parseAlgoliaHitReverseSnippet.ts"],"sourcesContent":["export function getAttributeValueByPath(record, path) {\n return path.reduce(function (current, key) {\n return current && current[key];\n }, record);\n}","export var version = '1.17.7';","import { version } from './version';\nexport var userAgents = [{\n segment: 'autocomplete-core',\n version: version\n}];","export const HIGHLIGHT_PRE_TAG = '__aa-highlight__';\nexport const HIGHLIGHT_POST_TAG = '__/aa-highlight__';\n","import { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants';\n\nimport { ParsedAttribute } from './ParsedAttribute';\n\n/**\n * Creates a data structure that allows to concatenate similar highlighting\n * parts in a single value.\n */\nfunction createAttributeSet(initialValue: ParsedAttribute[] = []) {\n const value = initialValue;\n\n return {\n get() {\n return value;\n },\n add(part: ParsedAttribute) {\n const lastPart: ParsedAttribute | undefined = value[value.length - 1];\n\n if (lastPart?.isHighlighted === part.isHighlighted) {\n value[value.length - 1] = {\n value: lastPart.value + part.value,\n isHighlighted: lastPart.isHighlighted,\n };\n } else {\n value.push(part);\n }\n },\n };\n}\n\ntype ParseAttributeParams = {\n highlightedValue: string;\n};\n\nexport function parseAttribute({\n highlightedValue,\n}: ParseAttributeParams): ParsedAttribute[] {\n const preTagParts = highlightedValue.split(HIGHLIGHT_PRE_TAG);\n const firstValue = preTagParts.shift();\n const parts = createAttributeSet(\n firstValue ? [{ value: firstValue, isHighlighted: false }] : []\n );\n\n preTagParts.forEach((part) => {\n const postTagParts = part.split(HIGHLIGHT_POST_TAG);\n\n parts.add({\n value: postTagParts[0],\n isHighlighted: true,\n });\n\n if (postTagParts[1] !== '') {\n parts.add({\n value: postTagParts[1],\n isHighlighted: false,\n });\n }\n });\n\n return parts.get();\n}\n","import { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared';\n\nimport { HighlightedHit } from './HighlightedHit';\nimport { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { parseAttribute } from './parseAttribute';\nimport { ParsedAttribute } from './ParsedAttribute';\n\nexport function parseAlgoliaHitHighlight>({\n hit,\n attribute,\n}: ParseAlgoliaHitParams): ParsedAttribute[] {\n const path = Array.isArray(attribute) ? attribute : ([attribute] as string[]);\n let highlightedValue = getAttributeValueByPath(hit, [\n '_highlightResult',\n ...path,\n 'value',\n ]);\n\n if (typeof highlightedValue !== 'string') {\n warn(\n false,\n `The attribute \"${path.join('.')}\" described by the path ${JSON.stringify(\n path\n )} does not exist on the hit. Did you set it in \\`attributesToHighlight\\`?` +\n '\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToHighlight/'\n );\n\n highlightedValue = getAttributeValueByPath(hit, path) || '';\n }\n\n return parseAttribute({ highlightedValue });\n}\n","import { ParsedAttribute } from './ParsedAttribute';\n\nconst htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\",\n};\nconst hasAlphanumeric = new RegExp(/\\w/i);\nconst regexEscapedHtml = /&(amp|quot|lt|gt|#39);/g;\nconst regexHasEscapedHtml = RegExp(regexEscapedHtml.source);\n\nfunction unescape(value: string): string {\n return value && regexHasEscapedHtml.test(value)\n ? value.replace(regexEscapedHtml, (character) => htmlEscapes[character])\n : value;\n}\n\nexport function isPartHighlighted(parts: ParsedAttribute[], i: number) {\n const current = parts[i];\n const isNextHighlighted = parts[i + 1]?.isHighlighted || true;\n const isPreviousHighlighted = parts[i - 1]?.isHighlighted || true;\n\n if (\n !hasAlphanumeric.test(unescape(current.value)) &&\n isPreviousHighlighted === isNextHighlighted\n ) {\n return isPreviousHighlighted;\n }\n\n return current.isHighlighted;\n}\n","import { isPartHighlighted } from './isPartHighlighted';\nimport { ParsedAttribute } from './ParsedAttribute';\n\nexport function reverseHighlightedParts(parts: ParsedAttribute[]) {\n // We don't want to highlight the whole word when no parts match.\n if (!parts.some((part) => part.isHighlighted)) {\n return parts.map((part) => ({ ...part, isHighlighted: false }));\n }\n\n return parts.map((part, i) => ({\n ...part,\n isHighlighted: !isPartHighlighted(parts, i),\n }));\n}\n","import { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared';\n\nimport { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { parseAttribute } from './parseAttribute';\nimport { ParsedAttribute } from './ParsedAttribute';\nimport { SnippetedHit } from './SnippetedHit';\n\nexport function parseAlgoliaHitSnippet>({\n hit,\n attribute,\n}: ParseAlgoliaHitParams): ParsedAttribute[] {\n const path = Array.isArray(attribute) ? attribute : ([attribute] as string[]);\n let highlightedValue = getAttributeValueByPath(hit, [\n '_snippetResult',\n ...path,\n 'value',\n ]);\n\n if (typeof highlightedValue !== 'string') {\n warn(\n false,\n `The attribute \"${path.join('.')}\" described by the path ${JSON.stringify(\n path\n )} does not exist on the hit. Did you set it in \\`attributesToSnippet\\`?` +\n '\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToSnippet/'\n );\n\n highlightedValue = getAttributeValueByPath(hit, path) || '';\n }\n\n return parseAttribute({ highlightedValue });\n}\n","import type {\n Fetcher,\n ExecuteParams,\n RequesterParams,\n RequestParams,\n RequesterDescription,\n} from '../types';\n\nexport function createRequester(fetcher: Fetcher, requesterId?: string) {\n function execute(fetcherParams: ExecuteParams) {\n return fetcher({\n searchClient: fetcherParams.searchClient,\n queries: fetcherParams.requests.map((x) => x.query),\n }).then((responses) =>\n responses.map((response, index) => {\n const { sourceId, transformResponse } = fetcherParams.requests[index];\n\n return {\n items: response,\n sourceId,\n transformResponse,\n };\n })\n );\n }\n\n return function createSpecifiedRequester(\n requesterParams: RequesterParams\n ) {\n return function requester(\n requestParams: RequestParams\n ): RequesterDescription {\n return {\n requesterId,\n execute,\n ...requesterParams,\n ...requestParams,\n };\n };\n };\n}\n","import {\n userAgents as coreUserAgents,\n UserAgent,\n invariant,\n} from '@algolia/autocomplete-shared';\nimport type { SearchResponse } from '@algolia/autocomplete-shared';\n\nimport { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants';\nimport type { SearchForFacetValuesResponse, SearchParams } from '../types';\nimport { getAppIdAndApiKey } from '../utils';\n\nexport function fetchAlgoliaResults({\n searchClient,\n queries,\n userAgents = [],\n}: SearchParams): Promise<\n Array | SearchForFacetValuesResponse>\n> {\n if (typeof searchClient.addAlgoliaAgent === 'function') {\n const algoliaAgents: UserAgent[] = [...coreUserAgents, ...userAgents];\n\n algoliaAgents.forEach(({ segment, version }) => {\n searchClient.addAlgoliaAgent(segment, version);\n });\n }\n\n const { appId, apiKey } = getAppIdAndApiKey(searchClient);\n\n invariant(\n Boolean(appId),\n 'The Algolia `appId` was not accessible from the searchClient passed.'\n );\n invariant(\n Boolean(apiKey),\n 'The Algolia `apiKey` was not accessible from the searchClient passed.'\n );\n\n return searchClient\n .search(\n queries.map((searchParameters) => {\n const { params, ...headers } = searchParameters;\n\n return {\n ...headers,\n params: {\n hitsPerPage: 5,\n highlightPreTag: HIGHLIGHT_PRE_TAG,\n highlightPostTag: HIGHLIGHT_POST_TAG,\n ...params,\n },\n };\n })\n )\n .then((response) => {\n return response.results.map((result, resultIndex) => ({\n ...result,\n hits: result.hits?.map((hit) => ({\n ...hit,\n // Bring support for the Insights plugin.\n __autocomplete_indexName:\n result.index || queries[resultIndex].indexName,\n __autocomplete_queryID: result.queryID,\n __autocomplete_algoliaCredentials: {\n appId,\n apiKey,\n },\n })),\n }));\n });\n}\n","// typed as any, since it accepts the _real_ js clients, not the interface we otherwise expect\nexport function getAppIdAndApiKey(searchClient: any): {\n appId: string;\n apiKey: string;\n} {\n const transporter = searchClient.transporter || {};\n const headers = transporter.headers || transporter.baseHeaders || {};\n const queryParameters =\n transporter.queryParameters || transporter.baseQueryParameters || {};\n const APP_ID = 'x-algolia-application-id';\n const API_KEY = 'x-algolia-api-key';\n const appId = headers[APP_ID] || queryParameters[APP_ID];\n const apiKey = headers[API_KEY] || queryParameters[API_KEY];\n return { appId, apiKey };\n}\n","import { fetchAlgoliaResults } from '../search';\n\nimport { createRequester } from './createRequester';\n\nexport const createAlgoliaRequester = createRequester(\n fetchAlgoliaResults,\n 'algolia'\n);\n","import { invariant } from '@algolia/autocomplete-shared';\n\nimport type { MultipleQueriesQuery } from '../types';\nimport { RequestParams } from '../types';\n\nimport { createAlgoliaRequester } from './createAlgoliaRequester';\n\n/**\n * Retrieves Algolia facet hits from multiple indices.\n */\nexport function getAlgoliaFacets(requestParams: RequestParams) {\n invariant(\n typeof requestParams.searchClient === 'object',\n 'The `searchClient` parameter is required for getAlgoliaFacets({ searchClient }).'\n );\n\n const requester = createAlgoliaRequester({\n transformResponse: (response) => response.facetHits,\n });\n\n const queries = requestParams.queries.map((query) => ({\n ...query,\n type: 'facet',\n })) as MultipleQueriesQuery[];\n\n return requester({\n ...requestParams,\n queries,\n });\n}\n","import { invariant } from '@algolia/autocomplete-shared';\n\nimport { RequestParams } from '../types';\n\nimport { createAlgoliaRequester } from './createAlgoliaRequester';\n\n/**\n * Retrieves Algolia results from multiple indices.\n */\nexport function getAlgoliaResults(requestParams: RequestParams) {\n invariant(\n typeof requestParams.searchClient === 'object',\n 'The `searchClient` parameter is required for getAlgoliaResults({ searchClient }).'\n );\n\n const requester = createAlgoliaRequester({\n transformResponse: (response) => response.hits,\n });\n\n return requester(requestParams);\n}\n","import { HighlightedHit } from './HighlightedHit';\nimport { parseAlgoliaHitHighlight } from './parseAlgoliaHitHighlight';\nimport { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { ParsedAttribute } from './ParsedAttribute';\nimport { reverseHighlightedParts } from './reverseHighlightedParts';\n\nexport function parseAlgoliaHitReverseHighlight<\n THit extends HighlightedHit\n>(props: ParseAlgoliaHitParams): ParsedAttribute[] {\n return reverseHighlightedParts(parseAlgoliaHitHighlight(props));\n}\n","import { ParseAlgoliaHitParams } from './ParseAlgoliaHitParams';\nimport { parseAlgoliaHitSnippet } from './parseAlgoliaHitSnippet';\nimport { ParsedAttribute } from './ParsedAttribute';\nimport { reverseHighlightedParts } from './reverseHighlightedParts';\nimport { SnippetedHit } from './SnippetedHit';\n\nexport function parseAlgoliaHitReverseSnippet<\n THit extends SnippetedHit\n>(props: ParseAlgoliaHitParams): ParsedAttribute[] {\n return reverseHighlightedParts(parseAlgoliaHitSnippet(props));\n}\n"],"names":["getAttributeValueByPath","record","path","reduce","current","key","userAgents","segment","version","HIGHLIGHT_PRE_TAG","HIGHLIGHT_POST_TAG","parseAttribute","_ref","preTagParts","highlightedValue","split","firstValue","shift","parts","value","arguments","length","undefined","get","add","part","lastPart","isHighlighted","push","createAttributeSet","forEach","postTagParts","parseAlgoliaHitHighlight","hit","attribute","Array","isArray","concat","_toConsumableArray","htmlEscapes","hasAlphanumeric","RegExp","regexEscapedHtml","regexHasEscapedHtml","source","isPartHighlighted","i","_parts","_parts2","isNextHighlighted","isPreviousHighlighted","test","replace","character","reverseHighlightedParts","some","map","_objectSpread","parseAlgoliaHitSnippet","createRequester","fetcher","requesterId","execute","fetcherParams","searchClient","queries","requests","x","query","then","responses","response","index","_fetcherParams$reques","items","sourceId","transformResponse","requesterParams","requestParams","fetchAlgoliaResults","_ref$userAgents","addAlgoliaAgent","coreUserAgents","_ref2","_getAppIdAndApiKey","transporter","headers","baseHeaders","queryParameters","baseQueryParameters","APP_ID","API_KEY","appId","apiKey","getAppIdAndApiKey","search","searchParameters","params","_objectWithoutProperties","_excluded","hitsPerPage","highlightPreTag","highlightPostTag","results","result","resultIndex","_result$hits","hits","__autocomplete_indexName","indexName","__autocomplete_queryID","queryID","__autocomplete_algoliaCredentials","createAlgoliaRequester","_typeof","requester","facetHits","type","props"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-preset-algolia/package.json b/node_modules/@algolia/autocomplete-preset-algolia/package.json deleted file mode 100644 index 229175d..0000000 --- a/node_modules/@algolia/autocomplete-preset-algolia/package.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "name": "@algolia/autocomplete-preset-algolia", - "description": "Presets for building autocomplete experiences with Algolia.", - "version": "1.17.7", - "license": "MIT", - "homepage": "https://github.com/algolia/autocomplete", - "repository": "algolia/autocomplete", - "author": { - "name": "Algolia, Inc.", - "url": "https://www.algolia.com" - }, - "sideEffects": false, - "files": [ - "dist/" - ], - "source": "src/index.ts", - "types": "dist/esm/index.d.ts", - "module": "dist/esm/index.js", - "main": "dist/umd/index.production.js", - "umd:main": "dist/umd/index.production.js", - "unpkg": "dist/umd/index.production.js", - "jsdelivr": "dist/umd/index.production.js", - "scripts": { - "build:clean": "rm -rf ./dist", - "build:esm": "babel src --root-mode upward --extensions '.ts,.tsx' --out-dir dist/esm --ignore '**/*/__tests__/'", - "build:types": "tsc -p ./tsconfig.declaration.json --outDir ./dist/esm", - "build:umd": "rollup --config", - "build": "yarn build:clean && yarn build:umd && yarn build:esm && yarn build:types", - "on:change": "concurrently \"yarn build:esm\" \"yarn build:types\"", - "prepare": "yarn build:esm && yarn build:types", - "watch": "watch \"yarn on:change\" --ignoreDirectoryPattern \"/dist/\"" - }, - "dependencies": { - "@algolia/autocomplete-shared": "1.17.7" - }, - "devDependencies": { - "algoliasearch": "4.16.0" - }, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.d.ts deleted file mode 100644 index b4c928d..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare type MaybePromise = Promise | TResolution; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.js b/node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/MaybePromise.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.d.ts deleted file mode 100644 index 2f5fa9d..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare type UserAgent = { - segment: string; - version?: string; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.js b/node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/UserAgent.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.d.ts deleted file mode 100644 index 08e16b2..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { AutocompleteNavigator } from './AutocompleteNavigator'; -import { AutocompletePropGetters } from './AutocompletePropGetters'; -import { AutocompleteSetters } from './AutocompleteSetters'; -export declare type BaseItem = Record; -export interface AutocompleteScopeApi extends AutocompleteSetters { - /** - * Triggers a search to refresh the state. - */ - refresh(): Promise; - /** - * Functions to navigate to a URL. - */ - navigator: AutocompleteNavigator; -} -export declare type AutocompleteApi = AutocompleteScopeApi & AutocompletePropGetters; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteApi.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.d.ts deleted file mode 100644 index e6c3b89..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { BaseItem } from './AutocompleteApi'; -import { InternalAutocompleteSource } from './AutocompleteSource'; -export interface AutocompleteCollection { - source: InternalAutocompleteSource; - items: TItem[]; -} -export interface AutocompleteCollectionItemsArray { - source: InternalAutocompleteSource; - items: TItem[][]; -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteCollection.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.d.ts deleted file mode 100644 index e75149e..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export interface AutocompleteContext { - [key: string]: unknown; -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteContext.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.d.ts deleted file mode 100644 index f1f5efd..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -export declare type AutocompleteEnvironment = Window | { - [prop: string]: unknown; - addEventListener: Window['addEventListener']; - removeEventListener: Window['removeEventListener']; - setTimeout: Window['setTimeout']; - clearTimeout: Window['clearTimeout']; - document: Window['document']; - location: { - assign: Location['assign']; - }; - open: Window['open']; - navigator?: Partial; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteEnvironment.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.d.ts deleted file mode 100644 index 4a32775..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { BaseItem } from './AutocompleteApi'; -import { AutocompleteState } from './AutocompleteState'; -export interface AutocompleteNavigator { - /** - * Called when a URL should be open in the current page. - */ - navigate(params: { - itemUrl: string; - item: TItem; - state: AutocompleteState; - }): void; - /** - * Called when a URL should be open in a new tab. - */ - navigateNewTab(params: { - itemUrl: string; - item: TItem; - state: AutocompleteState; - }): void; - /** - * Called when a URL should be open in a new window. - */ - navigateNewWindow(params: { - itemUrl: string; - item: TItem; - state: AutocompleteState; - }): void; -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteNavigator.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.d.ts deleted file mode 100644 index d992890..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.d.ts +++ /dev/null @@ -1,202 +0,0 @@ -import type { MaybePromise } from '../MaybePromise'; -import { AutocompleteScopeApi, BaseItem } from './AutocompleteApi'; -import { AutocompleteEnvironment } from './AutocompleteEnvironment'; -import { AutocompleteNavigator } from './AutocompleteNavigator'; -import { AutocompletePlugin } from './AutocompletePlugin'; -import { Reshape } from './AutocompleteReshape'; -import { AutocompleteSource, InternalAutocompleteSource } from './AutocompleteSource'; -import { AutocompleteState } from './AutocompleteState'; -export declare type AutocompleteEnterKeyHint = 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'; -export interface OnSubmitParams extends AutocompleteScopeApi { - state: AutocompleteState; - event: any; -} -export declare type OnResetParams = OnSubmitParams; -export interface OnInputParams extends AutocompleteScopeApi { - query: string; - state: AutocompleteState; -} -export declare type GetSourcesParams = OnInputParams; -export declare type GetSources = (params: GetSourcesParams) => MaybePromise | boolean | undefined>>; -export declare type InternalGetSources = (params: GetSourcesParams) => Promise>>; -interface OnStateChangeProps extends AutocompleteScopeApi { - /** - * The current Autocomplete state. - */ - state: AutocompleteState; - /** - * The previous Autocomplete state. - */ - prevState: AutocompleteState; -} -export interface AutocompleteOptions { - /** - * A flag to activate the debug mode. - * - * This is useful while developing because it keeps the panel open even when the blur event occurs. **Make sure to disable it in production.** - * - * See [**Debugging**](https://www.algolia.com/doc/ui-libraries/autocomplete/guides/debugging/) for more information. - * - * @default false - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-debug - */ - debug?: boolean; - /** - * An ID for the autocomplete to create accessible attributes. - * - * It is incremented by default when creating a new Autocomplete instance. - * - * @default "autocomplete-0" - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-id - */ - id?: string; - /** - * The function called when the internal state changes. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-onstatechange - */ - onStateChange?(props: OnStateChangeProps): void; - /** - * The action label or icon to present for the enter key on virtual keyboards. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-enterkeyhint - */ - enterKeyHint?: AutocompleteEnterKeyHint; - /** - * Whether to update the search input value in the middle of a - * composition session. - * - * @default false - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-ignorecompositionevents - */ - ignoreCompositionEvents?: boolean; - /** - * The placeholder text to show in the search input when there's no query. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-placeholder - */ - placeholder?: string; - /** - * Whether to focus the search input or not when the page is loaded. - * - * @default false - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-autofocus - */ - autoFocus?: boolean; - /** - * The default item index to pre-select. - * - * We recommend using `0` when the autocomplete is used to open links, instead of triggering a search in an application. - * - * @default null - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-defaultactiveitemid - */ - defaultActiveItemId?: number | null; - /** - * Whether to open the panel on focus when there's no query. - * - * @default false - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-openonfocus - */ - openOnFocus?: boolean; - /** - * How many milliseconds must elapse before considering the autocomplete experience [stalled](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-status). - * - * @default 300 - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-stallthreshold - */ - stallThreshold?: number; - /** - * The initial state to apply when autocomplete is created. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-initialstate - */ - initialState?: Partial>; - /** - * The [sources](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/) to get the suggestions from. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-getsources - */ - getSources?: GetSources; - /** - * The environment in which your application is running. - * - * This is useful if you're using autocomplete in a different context than `window`. - * - * @default window - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-environment - */ - environment?: AutocompleteEnvironment; - /** - * An implementation of Autocomplete's Navigator API to redirect the user when opening a link. - * - * Learn more on the [**Navigator API**](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/keyboard-navigation/) documentation. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-navigator - */ - navigator?: Partial>; - /** - * The function called to determine whether the panel should open or not. - * - * By default, the panel opens when there are items in the state. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-shouldpanelopen - */ - shouldPanelOpen?(params: { - state: AutocompleteState; - }): boolean; - /** - * The function called when submitting the Autocomplete form. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-onsubmit - */ - onSubmit?(params: OnSubmitParams): void; - /** - * The function called when resetting the Autocomplete form. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-onreset - */ - onReset?(params: OnResetParams): void; - /** - * The plugins that encapsulate and distribute custom Autocomplete behaviors. - * - * See [**Plugins**](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/plugins/) for more information. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-plugins - */ - plugins?: Array>; - /** - * The function called to reshape the sources after they're resolved. - * - * This is useful to transform sources before rendering them. You can group sources by attribute, remove duplicates, create shared limits between sources, etc. - * - * See [**Reshaping sources**](https://www.algolia.com/doc/ui-libraries/autocomplete/guides/reshaping-sources/) for more information. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-reshape - */ - reshape?: Reshape; -} -export interface InternalAutocompleteOptions extends AutocompleteOptions { - debug: boolean; - id: string; - onStateChange(props: OnStateChangeProps): void; - enterKeyHint: AutocompleteEnterKeyHint | undefined; - ignoreCompositionEvents: boolean; - placeholder: string; - autoFocus: boolean; - defaultActiveItemId: number | null; - openOnFocus: boolean; - stallThreshold: number; - initialState: AutocompleteState; - getSources: InternalGetSources; - environment: AutocompleteEnvironment; - navigator: AutocompleteNavigator; - plugins: Array>; - shouldPanelOpen(params: { - state: AutocompleteState; - }): boolean; - onSubmit(params: OnSubmitParams): void; - onReset(params: OnResetParams): void; - reshape: Reshape; -} -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteOptions.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.d.ts deleted file mode 100644 index f7822f8..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { AutocompleteScopeApi, BaseItem } from './AutocompleteApi'; -import { AutocompleteOptions } from './AutocompleteOptions'; -import { PluginReshape } from './AutocompleteReshape'; -import { OnSelectParams, OnActiveParams, OnResolveParams } from './AutocompleteSource'; -declare type PluginSubscriber = (params: TParams) => void; -export interface PluginSubscribeParams extends AutocompleteScopeApi { - onSelect(fn: PluginSubscriber>): void; - onActive(fn: PluginSubscriber>): void; - onResolve(fn: PluginSubscriber>): void; -} -export declare type AutocompletePlugin = Partial, 'onStateChange' | 'onSubmit' | 'onReset'> & Pick, 'getSources'>> & { - /** - * The function called when Autocomplete starts. - * - * It lets you subscribe to lifecycle hooks and interact with the instance's state and context. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/plugins/#param-subscribe - */ - subscribe?(params: PluginSubscribeParams): void; - /** - * An extra plugin object to expose properties and functions as APIs. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/plugins/#param-data - */ - data?: TData; - /** - * A name to identify the plugin. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/plugins/#param-name - */ - name?: string; - /** - * A function to reshape the sources. - * - * It gets called before the user's reshape function. - */ - reshape?: PluginReshape; - /** - * @internal - */ - __autocomplete_pluginOptions?: Record; -}; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePlugin.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.d.ts deleted file mode 100644 index 1f99cef..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.d.ts +++ /dev/null @@ -1,101 +0,0 @@ -import { BaseItem } from './AutocompleteApi'; -import { AutocompleteEnterKeyHint } from './AutocompleteOptions'; -import { InternalAutocompleteSource } from './AutocompleteSource'; -export interface AutocompletePropGetters { - getEnvironmentProps: GetEnvironmentProps; - getRootProps: GetRootProps; - getFormProps: GetFormProps; - getLabelProps: GetLabelProps; - getInputProps: GetInputProps; - getPanelProps: GetPanelProps; - getListProps: GetListProps; - getItemProps: GetItemProps; -} -export declare type GetEnvironmentProps = (props: { - [key: string]: unknown; - formElement: HTMLElement; - inputElement: HTMLInputElement; - panelElement: HTMLElement; -}) => { - onTouchStart(event: TouchEvent): void; - onTouchMove(event: TouchEvent): void; - onMouseDown(event: MouseEvent): void; -}; -export declare type GetRootProps = (props?: { - [key: string]: unknown; -}) => { - role: 'combobox'; - 'aria-expanded': boolean; - 'aria-haspopup': boolean | 'dialog' | 'menu' | 'true' | 'false' | 'grid' | 'listbox' | 'tree' | undefined; - 'aria-controls': string | undefined; - 'aria-labelledby': string; -}; -export declare type GetFormProps = (props: { - [key: string]: unknown; - inputElement: HTMLInputElement | null; -}) => { - action: ''; - noValidate: true; - role: 'search'; - onSubmit(event: TEvent): void; - onReset(event: TEvent): void; -}; -export declare type GetLabelProps = (props?: { - [key: string]: unknown; -}) => { - htmlFor: string; - id: string; -}; -export declare type GetInputProps = (props: { - [key: string]: unknown; - inputElement: HTMLInputElement | null; - maxLength?: number; -}) => { - id: string; - value: string; - autoFocus: boolean; - placeholder: string; - autoComplete: 'on' | 'off'; - autoCorrect: 'on' | 'off'; - autoCapitalize: 'on' | 'off'; - enterKeyHint: AutocompleteEnterKeyHint; - spellCheck: 'false'; - maxLength: number; - type: 'search'; - 'aria-autocomplete': 'none' | 'inline' | 'list' | 'both'; - 'aria-activedescendant': string | undefined; - 'aria-controls': string | undefined; - 'aria-labelledby': string; - onChange(event: TEvent): void; - onCompositionEnd(event: TEvent): void; - onKeyDown(event: TKeyboardEvent): void; - onFocus(event: TEvent): void; - onBlur(): void; - onClick(event: TMouseEvent): void; -}; -export declare type GetPanelProps = (props?: { - [key: string]: unknown; -}) => { - onMouseDown(event: TMouseEvent): void; - onMouseLeave(): void; -}; -export declare type GetListProps = (props?: { - [key: string]: unknown; - source: InternalAutocompleteSource; -}) => { - role: 'listbox'; - 'aria-labelledby': string; - id: string; -}; -export declare type GetItemProps = (props: { - [key: string]: unknown; - item: TItem; - source: InternalAutocompleteSource; -}) => { - id: string; - role: 'option'; - 'aria-selected': boolean; - onMouseMove(event: TMouseEvent): void; - onMouseDown(event: TMouseEvent): void; - onClick(event: TMouseEvent): void; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompletePropGetters.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.d.ts deleted file mode 100644 index 4be7907..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { BaseItem } from './AutocompleteApi'; -import { AutocompleteSource } from './AutocompleteSource'; -import { AutocompleteState } from './AutocompleteState'; -export declare type AutocompleteReshapeSource = AutocompleteSource & { - getItems(): TItem[]; -}; -export declare type AutocompleteReshapeSourcesBySourceId = Record>; -export declare type ReshapeParams = AutocompleteState> = { - /** - * The resolved sources provided by [`getSources`](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getsources) - */ - sources: Array>; - /** - * The resolved sources grouped by [`sourceId`](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-sourceid)s - */ - sourcesBySourceId: AutocompleteReshapeSourcesBySourceId; - /** - * The current Autocomplete state. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state - */ - state: TState; -}; -export declare type Reshape = AutocompleteState> = (params: ReshapeParams) => Array>; -export declare type PluginReshape = AutocompleteState> = (params: Omit, 'sources'>) => Omit, 'sources'>; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteReshape.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.d.ts deleted file mode 100644 index ecd9c14..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { BaseItem } from './AutocompleteApi'; -import { AutocompleteCollection, AutocompleteCollectionItemsArray } from './AutocompleteCollection'; -import { AutocompleteState } from './AutocompleteState'; -export declare type StateUpdater = (value: TState) => void; -export interface AutocompleteSetters { - /** - * Sets the highlighted item index. - * - * Pass `null` to unselect items. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-setactiveitemid - */ - setActiveItemId: StateUpdater['activeItemId']>; - /** - * Sets the query. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-setquery - */ - setQuery: StateUpdater['query']>; - /** - * Sets the collections. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-setcollections - */ - setCollections: StateUpdater | AutocompleteCollectionItemsArray>>; - /** - * Sets whether the panel is open or not. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-setisopen - */ - setIsOpen: StateUpdater['isOpen']>; - /** - * Sets the status of the autocomplete. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-setisopen - */ - setStatus: StateUpdater['status']>; - /** - * Sets the context passed to lifecycle hooks. - * - * See more in [**Context**](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/context/). - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-setcontext - */ - setContext: StateUpdater['context']>; -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSetters.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.d.ts deleted file mode 100644 index 7b90dfe..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.d.ts +++ /dev/null @@ -1,77 +0,0 @@ -import type { Hit } from '@algolia/client-search'; -import type { MaybePromise } from '../MaybePromise'; -import type { FacetHit, SearchForFacetValuesResponse } from '../preset-algolia/algoliasearch'; -import type { RequesterDescription } from '../preset-algolia/createRequester'; -import type { SearchResponse } from '../SearchResponse'; -import { AutocompleteScopeApi, BaseItem } from './AutocompleteApi'; -import { GetSourcesParams } from './AutocompleteOptions'; -import { AutocompleteState } from './AutocompleteState'; -export interface OnSelectParams extends AutocompleteScopeApi { - state: AutocompleteState; - event: any; - item: TItem; - itemInputValue: ReturnType['getItemInputValue']>; - itemUrl: ReturnType['getItemUrl']>; - source: InternalAutocompleteSource; -} -export declare type OnActiveParams = OnSelectParams; -export declare type OnResolveParams = { - source: AutocompleteSource; - results: SearchForFacetValuesResponse | SearchResponse | TItem[] | TItem[][]; - items: FacetHit[][] | FacetHit[] | Array> | Array | TItem[] | TItem[][]>; - state: AutocompleteState; -}; -declare type DefaultIndicator = { - /** - * Optional key on a function to indicate it's the default value of this function. - */ - __default?: boolean; -}; -export interface AutocompleteSource { - /** - * Unique identifier for the source. - */ - sourceId: string; - /** - * The function called to get the value of an item. - * - * The value is used to fill the search box. - */ - getItemInputValue?: DefaultIndicator & (({ item, state, }: { - item: TItem; - state: AutocompleteState; - }) => string); - /** - * The function called to get the URL of the item. - * - * The value is used to add [keyboard accessibility](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/keyboard-navigation/) features to let users open items in the current tab, a new tab, or a new window. - */ - getItemUrl?: DefaultIndicator & (({ item, state, }: { - item: TItem; - state: AutocompleteState; - }) => string | undefined); - /** - * The function called when the input changes. - * - * You can use this function to filter the items based on the query. - */ - getItems(params: GetSourcesParams): MaybePromise>; - /** - * The function called whenever an item is selected. - */ - onSelect?: DefaultIndicator & ((params: OnSelectParams) => void); - /** - * The function called whenever an item is active. - * - * You can trigger different behaviors if the item is active depending on the triggering event using the `event` parameter. - */ - onActive?: DefaultIndicator & ((params: OnActiveParams) => void); - /** - * The function called whenever a source resolves. - */ - onResolve?: DefaultIndicator & ((params: OnResolveParams) => void); -} -export declare type InternalAutocompleteSource = { - [KParam in keyof AutocompleteSource]-?: AutocompleteSource[KParam]; -}; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteSource.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.d.ts deleted file mode 100644 index 4654b00..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { BaseItem } from './AutocompleteApi'; -import { AutocompleteCollection } from './AutocompleteCollection'; -import { AutocompleteContext } from './AutocompleteContext'; -export interface AutocompleteState { - activeItemId: number | null; - query: string; - completion: string | null; - collections: Array>; - isOpen: boolean; - status: 'idle' | 'loading' | 'stalled' | 'error'; - context: AutocompleteContext; -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/AutocompleteState.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/index.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/core/index.d.ts deleted file mode 100644 index a25eed7..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export * from './AutocompleteApi'; -export * from './AutocompleteCollection'; -export * from './AutocompleteContext'; -export * from './AutocompleteEnvironment'; -export * from './AutocompleteOptions'; -export * from './AutocompleteSource'; -export * from './AutocompletePropGetters'; -export * from './AutocompletePlugin'; -export * from './AutocompleteReshape'; -export * from './AutocompleteSetters'; -export * from './AutocompleteState'; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/core/index.js b/node_modules/@algolia/autocomplete-shared/dist/esm/core/index.js deleted file mode 100644 index a8667be..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/core/index.js +++ /dev/null @@ -1,11 +0,0 @@ -export * from './AutocompleteApi'; -export * from './AutocompleteCollection'; -export * from './AutocompleteContext'; -export * from './AutocompleteEnvironment'; -export * from './AutocompleteOptions'; -export * from './AutocompleteSource'; -export * from './AutocompletePropGetters'; -export * from './AutocompletePlugin'; -export * from './AutocompleteReshape'; -export * from './AutocompleteSetters'; -export * from './AutocompleteState'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/createRef.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/createRef.d.ts deleted file mode 100644 index feeb168..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/createRef.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare function createRef(initialValue: TValue): { - current: TValue; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/createRef.js b/node_modules/@algolia/autocomplete-shared/dist/esm/createRef.js deleted file mode 100644 index c8f0f3f..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/createRef.js +++ /dev/null @@ -1,5 +0,0 @@ -export function createRef(initialValue) { - return { - current: initialValue - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/debounce.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/debounce.d.ts deleted file mode 100644 index c6440ae..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/debounce.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function debounce(fn: (...params: TParams[]) => void, time: number): (...args: TParams[]) => void; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/debounce.js b/node_modules/@algolia/autocomplete-shared/dist/esm/debounce.js deleted file mode 100644 index 5940ffb..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/debounce.js +++ /dev/null @@ -1,14 +0,0 @@ -export function debounce(fn, time) { - var timerId = undefined; - return function () { - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - if (timerId) { - clearTimeout(timerId); - } - timerId = setTimeout(function () { - return fn.apply(void 0, args); - }, time); - }; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/decycle.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/decycle.d.ts deleted file mode 100644 index df6b1d9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/decycle.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/** - * Decycles objects with circular references. - * This is used to print cyclic structures in development environment only. - */ -export declare function decycle(obj: any, seen?: Set): any; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/decycle.js b/node_modules/@algolia/autocomplete-shared/dist/esm/decycle.js deleted file mode 100644 index 8b6b839..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/decycle.js +++ /dev/null @@ -1,32 +0,0 @@ -function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } -function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } -function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } -function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } -function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } } -function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } -function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } -/** - * Decycles objects with circular references. - * This is used to print cyclic structures in development environment only. - */ -export function decycle(obj) { - var seen = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Set(); - if (!(process.env.NODE_ENV !== 'production') || !obj || _typeof(obj) !== 'object') { - return obj; - } - if (seen.has(obj)) { - return '[Circular]'; - } - var newSeen = seen.add(obj); - if (Array.isArray(obj)) { - return obj.map(function (x) { - return decycle(x, newSeen); - }); - } - return Object.fromEntries(Object.entries(obj).map(function (_ref) { - var _ref2 = _slicedToArray(_ref, 2), - key = _ref2[0], - value = _ref2[1]; - return [key, decycle(value, newSeen)]; - })); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/flatten.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/flatten.d.ts deleted file mode 100644 index 931dbf5..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/flatten.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function flatten(values: Array): TType[]; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/flatten.js b/node_modules/@algolia/autocomplete-shared/dist/esm/flatten.js deleted file mode 100644 index d088bb2..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/flatten.js +++ /dev/null @@ -1,5 +0,0 @@ -export function flatten(values) { - return values.reduce(function (a, b) { - return a.concat(b); - }, []); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.d.ts deleted file mode 100644 index f7aa41a..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function generateAutocompleteId(): string; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.js b/node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.js deleted file mode 100644 index 2e1353b..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.js +++ /dev/null @@ -1,4 +0,0 @@ -var autocompleteId = 0; -export function generateAutocompleteId() { - return "autocomplete-".concat(autocompleteId++); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.d.ts deleted file mode 100644 index 9d50a2a..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function getAttributeValueByPath(record: TRecord, path: Array): any; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.js b/node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.js deleted file mode 100644 index 851dc1f..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.js +++ /dev/null @@ -1,5 +0,0 @@ -export function getAttributeValueByPath(record, path) { - return path.reduce(function (current, key) { - return current && current[key]; - }, record); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.d.ts deleted file mode 100644 index 342a839..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare function getItemsCount(state: TAutocompleteState): number; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.js b/node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.js deleted file mode 100644 index f7b461a..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.js +++ /dev/null @@ -1,8 +0,0 @@ -export function getItemsCount(state) { - if (state.collections.length === 0) { - return 0; - } - return state.collections.reduce(function (sum, collection) { - return sum + collection.items.length; - }, 0); -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/index.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/index.d.ts deleted file mode 100644 index 915857d..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/index.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -export * from './createRef'; -export * from './debounce'; -export * from './decycle'; -export * from './flatten'; -export * from './generateAutocompleteId'; -export * from './getAttributeValueByPath'; -export * from './getItemsCount'; -export * from './invariant'; -export * from './isEqual'; -export * from './MaybePromise'; -export * from './noop'; -export * from './safelyRunOnBrowser'; -export * from './SearchResponse'; -export * from './UserAgent'; -export * from './userAgents'; -export * from './version'; -export * from './warn'; -export * from './js'; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/index.js b/node_modules/@algolia/autocomplete-shared/dist/esm/index.js deleted file mode 100644 index 18174ed..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/index.js +++ /dev/null @@ -1,18 +0,0 @@ -export * from './createRef'; -export * from './debounce'; -export * from './decycle'; -export * from './flatten'; -export * from './generateAutocompleteId'; -export * from './getAttributeValueByPath'; -export * from './getItemsCount'; -export * from './invariant'; -export * from './isEqual'; -export * from './MaybePromise'; -export * from './noop'; -export * from './safelyRunOnBrowser'; -export * from './SearchResponse'; -export * from './UserAgent'; -export * from './userAgents'; -export * from './version'; -export * from './warn'; -export * from './js'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/invariant.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/invariant.d.ts deleted file mode 100644 index 4ef4fe6..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/invariant.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/** - * Throws an error if the condition is not met in development mode. - * This is used to make development a better experience to provide guidance as - * to where the error comes from. - */ -export declare function invariant(condition: boolean, message: string | (() => string)): void; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/invariant.js b/node_modules/@algolia/autocomplete-shared/dist/esm/invariant.js deleted file mode 100644 index c97f513..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/invariant.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Throws an error if the condition is not met in development mode. - * This is used to make development a better experience to provide guidance as - * to where the error comes from. - */ -export function invariant(condition, message) { - if (!(process.env.NODE_ENV !== 'production')) { - return; - } - if (!condition) { - throw new Error("[Autocomplete] ".concat(typeof message === 'function' ? message() : message)); - } -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.d.ts deleted file mode 100644 index 9700125..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function isEqual(first: any, second: any): boolean; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.js b/node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.js deleted file mode 100644 index 7193508..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.js +++ /dev/null @@ -1,24 +0,0 @@ -function isPrimitive(obj) { - return obj !== Object(obj); -} -export function isEqual(first, second) { - if (first === second) { - return true; - } - if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') { - return first === second; - } - if (Object.keys(first).length !== Object.keys(second).length) { - return false; - } - for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) { - var key = _Object$keys[_i]; - if (!(key in second)) { - return false; - } - if (!isEqual(first[key], second[key])) { - return false; - } - } - return true; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.d.ts deleted file mode 100644 index 3798dee..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -export declare type AutocompleteClassNames = { - detachedCancelButton: string; - detachedFormContainer: string; - detachedContainer: string; - detachedOverlay: string; - detachedSearchButton: string; - detachedSearchButtonIcon: string; - detachedSearchButtonPlaceholder: string; - detachedSearchButtonQuery: string; - form: string; - input: string; - inputWrapper: string; - inputWrapperPrefix: string; - inputWrapperSuffix: string; - item: string; - label: string; - list: string; - loadingIndicator: string; - panel: string; - panelLayout: string; - clearButton: string; - root: string; - source: string; - sourceFooter: string; - sourceHeader: string; - sourceNoResults: string; - submitButton: string; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteClassNames.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.d.ts deleted file mode 100644 index ef6833c..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { BaseItem } from '../core'; -import { InternalAutocompleteSource } from './AutocompleteSource'; -export interface AutocompleteCollection { - source: InternalAutocompleteSource; - items: TItem[]; -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteCollection.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.d.ts deleted file mode 100644 index c233807..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -/// -import { HighlightHitParams } from './HighlightHitParams'; -declare type AutocompleteHighlightComponent = ({ hit, attribute, tagName, }: HighlightHitParams) => JSX.Element; -export declare type PublicAutocompleteComponents = Record JSX.Element>; -export interface AutocompleteComponents extends PublicAutocompleteComponents { - /** - * Highlight matches in an Algolia hit. - */ - Highlight: AutocompleteHighlightComponent; - /** - * Reverse-highlight matches in an Algolia hit. - */ - ReverseHighlight: AutocompleteHighlightComponent; - /** - * Reverse-highlight and snippets matches in an Algolia hit. - */ - ReverseSnippet: AutocompleteHighlightComponent; - /** - * Highlight and snippet matches in an Algolia hit. - */ - Snippet: AutocompleteHighlightComponent; -} -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteComponents.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.d.ts deleted file mode 100644 index 61a3ceb..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.d.ts +++ /dev/null @@ -1,106 +0,0 @@ -import { AutocompleteScopeApi, AutocompleteOptions as AutocompleteCoreOptions, BaseItem, GetSourcesParams } from '../core'; -import { MaybePromise } from '../MaybePromise'; -import { AutocompleteClassNames } from './AutocompleteClassNames'; -import { PublicAutocompleteComponents } from './AutocompleteComponents'; -import { AutocompletePlugin } from './AutocompletePlugin'; -import { AutocompletePropGetters } from './AutocompletePropGetters'; -import { AutocompleteRender } from './AutocompleteRender'; -import { AutocompleteRenderer } from './AutocompleteRenderer'; -import { AutocompleteSource } from './AutocompleteSource'; -import { AutocompleteState } from './AutocompleteState'; -import { AutocompleteTranslations } from './AutocompleteTranslations'; -export interface OnStateChangeProps extends AutocompleteScopeApi { - /** - * The current Autocomplete state. - */ - state: AutocompleteState; - /** - * The previous Autocomplete state. - */ - prevState: AutocompleteState; -} -export declare type GetSources = (params: GetSourcesParams) => MaybePromise | boolean | undefined>>; -export interface AutocompleteOptions extends AutocompleteCoreOptions, Partial> { - /** - * The container for the Autocomplete search box. - * - * You can either pass a [CSS selector](https://developer.mozilla.org/docs/Web/CSS/CSS_Selectors) or an [Element](https://developer.mozilla.org/docs/Web/API/HTMLElement). If there are several containers matching the selector, Autocomplete picks up the first one. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-container - */ - container: string | HTMLElement; - /** - * The container for the Autocomplete panel. - * - * You can either pass a [CSS selector](https://developer.mozilla.org/docs/Web/CSS/CSS_Selectors) or an [Element](https://developer.mozilla.org/docs/Web/API/HTMLElement). If there are several containers matching the selector, Autocomplete picks up the first one. - * - * @default document.body - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-panelcontainer - */ - panelContainer?: string | HTMLElement; - /** - * The Media Query to turn Autocomplete into a detached experience. - * - * @default "(max-width: 680px)" - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-detachedmediaquery - * @link https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Using_media_queries - */ - detachedMediaQuery?: string; - getSources?: GetSources; - /** - * The panel's horizontal position. - * - * @default "input-wrapper-width" - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-panelplacement - */ - panelPlacement?: 'start' | 'end' | 'full-width' | 'input-wrapper-width'; - /** - * Class names to inject for each created DOM element. - * - * This is useful to style your autocomplete with external CSS frameworks. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-classnames - */ - classNames?: Partial; - /** - * The function that renders the autocomplete panel. - * - * This is useful to customize the rendering, for example, using multi-row or multi-column layouts. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-render - */ - render?: AutocompleteRender; - /** - * The function that renders a no results section when there are no hits. - * - * This is useful to let the user know that the query returned no results. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-rendernoresults - */ - renderNoResults?: AutocompleteRender; - initialState?: Partial>; - onStateChange?(props: OnStateChangeProps): void; - /** - * The virtual DOM implementation to plug to Autocomplete. It defaults to Preact. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-renderer - */ - renderer?: AutocompleteRenderer; - plugins?: Array>; - /** - * Components to register in the Autocomplete rendering lifecycles. - * - * Registered components become available in [`templates`](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/templates/), [`render`](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-render), and in [`renderNoResults`](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-rendernoresults). - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-components - */ - components?: PublicAutocompleteComponents; - /** - * A mapping of translation strings. - * - * Defaults to English values. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-translations - */ - translations?: Partial; -} diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteOptions.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.d.ts deleted file mode 100644 index 8629671..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { BaseItem } from '../core'; -import { AutocompletePlugin as AutocompleteCorePlugin } from '../core/AutocompletePlugin'; -import { AutocompleteOptions } from './AutocompleteOptions'; -export declare type AutocompletePlugin = Omit, 'getSources'> & { - /** - * The [sources](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/) to get the suggestions from. - * - * When defined, they’re merged with the sources of your Autocomplete instance. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/plugins/#param-getsources - */ - getSources?: AutocompleteOptions['getSources']; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePlugin.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.d.ts deleted file mode 100644 index a0f451f..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { BaseItem, AutocompleteApi as AutocompleteCoreApi, AutocompleteScopeApi } from '../core'; -import { AutocompleteState } from './AutocompleteState'; -declare type PropsGetterParams = TParam & { - state: AutocompleteState; -} & AutocompleteScopeApi; -export declare type AutocompletePropGetters = { - getEnvironmentProps(params: PropsGetterParams['getEnvironmentProps']>; - }>): ReturnType['getEnvironmentProps']>; - getFormProps(params: PropsGetterParams['getFormProps']>; - }>): ReturnType['getFormProps']>; - getInputProps(params: PropsGetterParams['getInputProps']>; - inputElement: HTMLInputElement; - }>): ReturnType['getInputProps']>; - getItemProps(params: PropsGetterParams['getItemProps']>; - }>): ReturnType['getItemProps']>; - getLabelProps(params: PropsGetterParams['getLabelProps']>; - }>): ReturnType['getLabelProps']>; - getListProps(params: PropsGetterParams['getListProps']>; - }>): ReturnType['getListProps']>; - getPanelProps(params: PropsGetterParams['getPanelProps']>; - }>): ReturnType['getPanelProps']>; - getRootProps(params: PropsGetterParams['getRootProps']>; - }>): ReturnType['getRootProps']>; -}; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompletePropGetters.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.d.ts deleted file mode 100644 index e6bb073..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { AutocompleteScopeApi, BaseItem } from '../core'; -import { AutocompleteComponents } from './AutocompleteComponents'; -import { HTMLTemplate, Pragma, PragmaFrag, Render, VNode } from './AutocompleteRenderer'; -import { AutocompleteState } from './AutocompleteState'; -export declare type AutocompleteRender = (params: AutocompleteScopeApi & { - children: VNode; - state: AutocompleteState; - sections: VNode[]; - elements: Record; - components: AutocompleteComponents; - createElement: Pragma; - Fragment: PragmaFrag; - html: HTMLTemplate; - render: Render; -}, root: HTMLElement) => void; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRender.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.d.ts deleted file mode 100644 index 3ca05d5..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -/// -export declare type Pragma = (type: any, props: Record | null, ...children: ComponentChildren[]) => JSX.Element; -export declare type PragmaFrag = any; -declare type ComponentChild = VNode | string | number | boolean | null | undefined; -declare type ComponentChildren = ComponentChild[] | ComponentChild; -export declare type VNode = { - type: any; - key: string | number | any; - props: TProps & { - children: ComponentChildren; - }; -}; -export declare type Render = (vnode: ComponentChild, parent: Element | Document | ShadowRoot | DocumentFragment, replaceNode?: Element | Text | undefined) => void; -export declare type AutocompleteRenderer = { - /** - * The function to create virtual nodes. - * - * @default preact.createElement - */ - createElement: Pragma; - /** - * The component to use to create fragments. - * - * @default preact.Fragment - */ - Fragment: PragmaFrag; - /** - * The function to render children to an element. - */ - render?: Render; -}; -export declare type HTMLTemplate = (strings: TemplateStringsArray, ...values: any[]) => VNode | VNode[]; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteRenderer.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.d.ts deleted file mode 100644 index de10a5e..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.d.ts +++ /dev/null @@ -1,74 +0,0 @@ -import { AutocompleteSource as AutocompleteCoreSource, InternalAutocompleteSource as InternalAutocompleteCoreSource, BaseItem } from '../core'; -import { AutocompleteComponents } from './AutocompleteComponents'; -import { AutocompleteRenderer, HTMLTemplate, VNode } from './AutocompleteRenderer'; -import { AutocompleteState } from './AutocompleteState'; -declare type Template = (params: TParams & AutocompleteRenderer & { - components: AutocompleteComponents; - html: HTMLTemplate; -}) => VNode | VNode[] | string; -/** - * Templates to display in the autocomplete panel. - * - * A template can either return a string, or perform DOM mutations (manipulating DOM elements with JavaScript and attaching events) without returning a string. - */ -export declare type SourceTemplates = { - /** - * A function that returns the template for each item of the source. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/templates/#param-item - */ - item: Template<{ - item: TItem; - state: AutocompleteState; - }>; - /** - * A function that returns the template for the header (before the list of items). - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/templates/#param-header - */ - header?: Template<{ - state: AutocompleteState; - source: AutocompleteSource; - items: TItem[]; - }>; - /** - * A function that returns the template for the footer (after the list of items). - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/templates/#param-footer - */ - footer?: Template<{ - state: AutocompleteState; - source: AutocompleteSource; - items: TItem[]; - }>; - /** - * A function that returns the template for when there are no items. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/templates/#param-noresults - */ - noResults?: Template<{ - state: AutocompleteState; - source: AutocompleteSource; - }>; -}; -declare type WithTemplates = TType & { - /** - * A set of templates to customize how sections and their items are displayed. - * - * See [**Displaying items with Templates**](templates) for more information. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-templates - */ - templates: SourceTemplates; -}; -export interface AutocompleteCoreSourceWithDocs extends AutocompleteCoreSource { - /** - * Unique identifier for the source. - * - * It is used as value for the `data-autocomplete-source-id` attribute of the source `section` container. - */ - sourceId: string; -} -export declare type AutocompleteSource = WithTemplates, TItem>; -export declare type InternalAutocompleteSource = WithTemplates, TItem>; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteSource.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.d.ts deleted file mode 100644 index c5e6eb3..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { AutocompleteState as AutocompleteCoreState, BaseItem } from '../core'; -import { AutocompleteCollection } from './AutocompleteCollection'; -export declare type AutocompleteState = Omit, 'collections'> & { - /** - * The collections of items. - * - * @link https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/state/#param-collections - */ - collections: Array>; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteState.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.d.ts deleted file mode 100644 index 45e6c5c..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export declare type AutocompleteTranslations = { - detachedCancelButtonText: string; - clearButtonTitle: string; - submitButtonTitle: string; - detachedSearchButtonTitle: string; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/AutocompleteTranslations.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.d.ts deleted file mode 100644 index 711e158..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -export declare type HighlightHitParams = { - /** - * The Algolia hit whose attribute to retrieve the highlighted parts from. - */ - hit: THit; - /** - * The attribute to retrieve the highlighted parts from. - * - * You can use the array syntax to reference nested attributes. - */ - attribute: keyof THit | Array; - /** - * The tag name to use for highlighted parts. - * - * @default "mark" - */ - tagName?: string; -}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/HighlightHitParams.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/index.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/js/index.d.ts deleted file mode 100644 index c84c13b..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/index.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -export * from './AutocompleteClassNames'; -export * from './AutocompleteCollection'; -export * from './AutocompleteComponents'; -export * from './AutocompleteOptions'; -export * from './AutocompletePlugin'; -export * from './AutocompletePropGetters'; -export * from './AutocompleteRender'; -export * from './AutocompleteRenderer'; -export * from './AutocompleteSource'; -export * from './AutocompleteState'; -export * from './AutocompleteTranslations'; -export * from './HighlightHitParams'; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/js/index.js b/node_modules/@algolia/autocomplete-shared/dist/esm/js/index.js deleted file mode 100644 index 5bbbe43..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/js/index.js +++ /dev/null @@ -1,12 +0,0 @@ -export * from './AutocompleteClassNames'; -export * from './AutocompleteCollection'; -export * from './AutocompleteComponents'; -export * from './AutocompleteOptions'; -export * from './AutocompletePlugin'; -export * from './AutocompletePropGetters'; -export * from './AutocompleteRender'; -export * from './AutocompleteRenderer'; -export * from './AutocompleteSource'; -export * from './AutocompleteState'; -export * from './AutocompleteTranslations'; -export * from './HighlightHitParams'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/noop.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/noop.d.ts deleted file mode 100644 index 27abd08..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/noop.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const noop: () => void; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/noop.js b/node_modules/@algolia/autocomplete-shared/dist/esm/noop.js deleted file mode 100644 index 9ef70ae..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/noop.js +++ /dev/null @@ -1 +0,0 @@ -export var noop = function noop() {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.d.ts deleted file mode 100644 index d69aca2..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.d.ts +++ /dev/null @@ -1,60 +0,0 @@ -import * as ClientSearch from '@algolia/client-search'; -import type * as AlgoliaSearch from 'algoliasearch/lite'; -declare type AnyToUnknown = (0 extends 1 & TSubject ? true : false) extends true ? unknown : TSubject; -declare type SearchClientShape = { - search: unknown; -}; -declare type ClientLiteV5 = AnyToUnknown< -/** @ts-ignore */ -ReturnType>; -declare type ClientSearchV5 = AnyToUnknown< -/** @ts-ignore */ -ReturnType>; -declare type ClientV5 = ClientLiteV5 extends SearchClientShape ? ClientLiteV5 : ClientSearchV5 extends SearchClientShape ? ClientSearchV5 : unknown; -declare type PickForClient = ClientV5 extends SearchClientShape ? TMapping['v5'] : TMapping['v4']; -export declare type SearchClient = PickForClient<{ - /** @ts-ignore */ - v4: AlgoliaSearch.SearchClient; - /** @ts-ignore */ - v5: ClientV5; -}>; -export declare type MultipleQueriesQuery = PickForClient<{ - /** @ts-ignore */ - v4: ClientSearch.MultipleQueriesQuery; - /** @ts-ignore */ - v5: AlgoliaSearch.LegacySearchMethodProps[number]; -}>; -export declare type SearchForFacetValuesResponse = PickForClient<{ - /** @ts-ignore */ - v4: ClientSearch.SearchForFacetValuesResponse; - /** @ts-ignore */ - v5: AlgoliaSearch.SearchForFacetValuesResponse; -}>; -export declare type SearchResponse = PickForClient<{ - /** @ts-ignore */ - v4: ClientSearch.SearchResponse; - /** @ts-ignore */ - v5: AlgoliaSearch.SearchResponse; -}>; -export declare type HighlightResult = PickForClient<{ - /** @ts-ignore */ - v4: ClientSearch.HighlightResult; - /** @ts-ignore */ - v5: AlgoliaSearch.HighlightResult; -}>; -export declare type SnippetResult = PickForClient<{ - /** @ts-ignore */ - v4: ClientSearch.SnippetResult; - /** @ts-ignore */ - v5: AlgoliaSearch.SnippetResult; -}>; -export declare type FacetHit = PickForClient<{ - /** @ts-ignore */ - v4: ClientSearch.FacetHit; - /** @ts-ignore */ - v5: AlgoliaSearch.FacetHits; -}>; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.js b/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/algoliasearch.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.d.ts deleted file mode 100644 index a32c5bf..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.d.ts +++ /dev/null @@ -1,90 +0,0 @@ -import type { SearchResponse } from '../SearchResponse'; -import { UserAgent } from '../UserAgent'; -import { MultipleQueriesQuery, SearchClient, SearchForFacetValuesResponse } from './algoliasearch'; -export interface SearchParams { - /** - * The initialized Algolia search client. - */ - searchClient: SearchClient; - /** - * A list of queries to execute. - */ - queries: MultipleQueriesQuery[]; - /** - * A list of user agents to add to the search client. - * - * This is useful to track usage of an integration. - */ - userAgents?: UserAgent[]; -} -export declare type Fetcher = ({ searchClient, queries, userAgents, }: SearchParams) => Promise>>; -declare type FacetHit = { - label: string; - count: number; - _highlightResult: { - label: { - value: string; - }; - }; -}; -export declare type FetcherParams = Pick[0], 'searchClient' | 'queries'>; -export declare type RequesterParams = { - transformResponse(response: TransformResponseParams): TransformedRequesterResponse; -}; -declare type TransformResponseParams = { - results: Array | SearchForFacetValuesResponse>; - hits: Array['hits']>; - facetHits: FacetHit[][]; -}; -export declare type TransformedRequesterResponse = Array['hits']> | SearchResponse['hits'] | FacetHit[][] | FacetHit[]; -export declare type TransformResponse = (response: TransformResponseParams) => TransformedRequesterResponse; -declare type FetcherParamsQuery = { - query: MultipleQueriesQuery; - sourceId: string; - transformResponse: TransformResponse; -}; -export declare type ExecuteParams = { - searchClient: SearchClient; - requests: Array>; -}; -export declare type Execute = (params: ExecuteParams) => Promise>; -export declare type ExecuteResponse = Array<{ - items: SearchResponse | SearchForFacetValuesResponse; - sourceId: string; - transformResponse: TransformResponse; -}>; -export declare type RequestParams = FetcherParams & { - /** - * The function to transform the Algolia response before passing it to the Autocomplete state. You have access to the full Algolia results, as well as the pre-computed hits and facet hits. - * - * This is useful to manipulate the hits, or store data from the results in the [context](https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/context/). - */ - transformResponse?: TransformResponse; -}; -export declare type RequesterDescription = { - /** - * The search client used for this request. Multiple queries with the same client are batched (if `requesterId` is also the same). - */ - searchClient: SearchClient; - /** - * Identifies requesters to confirm their queries should be batched. - * This ensures that requesters with the same client but different - * post-processing functions don't get batched. - * When falsy, batching is disabled. - * For example, the Algolia requesters use "algolia". - */ - requesterId?: string; - /** - * The search parameters used for this query. - */ - queries: MultipleQueriesQuery[]; - /** - * Transforms the response of this search before returning it to the caller. - */ - transformResponse: TransformResponse; - /** - * Post-processing function for multi-queries. - */ - execute: Execute; -}; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.js b/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.js deleted file mode 100644 index 8cec2e9..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/preset-algolia/createRequester.js +++ /dev/null @@ -1 +0,0 @@ -export {}; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.d.ts deleted file mode 100644 index 6fd9184..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -declare type BrowserCallback = (params: { - window: typeof window; -}) => TReturn; -/** - * Safely runs code meant for browser environments only. - */ -export declare function safelyRunOnBrowser(callback: BrowserCallback): TReturn | undefined; -export {}; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.js b/node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.js deleted file mode 100644 index f703136..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.js +++ /dev/null @@ -1,11 +0,0 @@ -/** - * Safely runs code meant for browser environments only. - */ -export function safelyRunOnBrowser(callback) { - if (typeof window !== 'undefined') { - return callback({ - window: window - }); - } - return undefined; -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.d.ts deleted file mode 100644 index 7a20313..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare const userAgents: { - segment: string; - version: string; -}[]; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.js b/node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.js deleted file mode 100644 index 3744a3d..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.js +++ /dev/null @@ -1,5 +0,0 @@ -import { version } from './version'; -export var userAgents = [{ - segment: 'autocomplete-core', - version: version -}]; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/version.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/version.d.ts deleted file mode 100644 index 570652f..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/version.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare const version = "1.17.7"; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/version.js b/node_modules/@algolia/autocomplete-shared/dist/esm/version.js deleted file mode 100644 index 81adcce..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/version.js +++ /dev/null @@ -1 +0,0 @@ -export var version = '1.17.7'; \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/warn.d.ts b/node_modules/@algolia/autocomplete-shared/dist/esm/warn.d.ts deleted file mode 100644 index 5807f75..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/warn.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export declare const warnCache: { - current: {}; -}; -/** - * Logs a warning if the condition is not met. - * This is used to log issues in development environment only. - */ -export declare function warn(condition: boolean, message: string): void; diff --git a/node_modules/@algolia/autocomplete-shared/dist/esm/warn.js b/node_modules/@algolia/autocomplete-shared/dist/esm/warn.js deleted file mode 100644 index 9e3335d..0000000 --- a/node_modules/@algolia/autocomplete-shared/dist/esm/warn.js +++ /dev/null @@ -1,24 +0,0 @@ -export var warnCache = { - current: {} -}; - -/** - * Logs a warning if the condition is not met. - * This is used to log issues in development environment only. - */ -export function warn(condition, message) { - if (!(process.env.NODE_ENV !== 'production')) { - return; - } - if (condition) { - return; - } - var sanitizedMessage = message.trim(); - var hasAlreadyPrinted = warnCache.current[sanitizedMessage]; - if (!hasAlreadyPrinted) { - warnCache.current[sanitizedMessage] = true; - - // eslint-disable-next-line no-console - console.warn("[Autocomplete] ".concat(sanitizedMessage)); - } -} \ No newline at end of file diff --git a/node_modules/@algolia/autocomplete-shared/package.json b/node_modules/@algolia/autocomplete-shared/package.json deleted file mode 100644 index 70ab2d9..0000000 --- a/node_modules/@algolia/autocomplete-shared/package.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "name": "@algolia/autocomplete-shared", - "description": "Shared utils for Autocomplete packages.", - "version": "1.17.7", - "license": "MIT", - "homepage": "https://github.com/algolia/autocomplete", - "repository": "algolia/autocomplete", - "author": { - "name": "Algolia, Inc.", - "url": "https://www.algolia.com" - }, - "source": "src/index.ts", - "types": "dist/esm/index.d.ts", - "module": "dist/esm/index.js", - "main": "dist/esm/index.js", - "sideEffects": false, - "files": [ - "dist/" - ], - "scripts": { - "build:clean": "rm -rf ./dist", - "build:esm": "babel src --root-mode upward --extensions '.ts,.tsx' --out-dir dist/esm --ignore '**/*/__tests__/'", - "build:types": "tsc -p ./tsconfig.declaration.json --outDir ./dist/esm", - "build": "yarn build:clean && yarn build:esm && yarn build:types", - "on:change": "concurrently \"yarn build:esm\" \"yarn build:types\"", - "prepare": "yarn build:esm && yarn build:types", - "watch": "watch \"yarn on:change\" --ignoreDirectoryPattern \"/dist/\"" - }, - "devDependencies": { - "@algolia/client-search": "4.16.0", - "algoliasearch": "4.16.0" - }, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } -} diff --git a/node_modules/@algolia/client-analytics/index.js b/node_modules/@algolia/client-analytics/index.js deleted file mode 100644 index 21e26aa..0000000 --- a/node_modules/@algolia/client-analytics/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dist/builds/node.cjs'); diff --git a/node_modules/@algolia/client-analytics/package.json b/node_modules/@algolia/client-analytics/package.json deleted file mode 100644 index 1b18e27..0000000 --- a/node_modules/@algolia/client-analytics/package.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "version": "5.48.1", - "repository": { - "type": "git", - "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" - }, - "homepage": "https://github.com/algolia/algoliasearch-client-javascript/tree/main/packages/client-analytics#readme", - "type": "module", - "license": "MIT", - "author": "Algolia", - "scripts": { - "build": "yarn clean && yarn tsup && yarn rollup -c rollup.config.js", - "clean": "rm -rf ./dist || true", - "test:bundle": "publint . && attw --pack ." - }, - "name": "@algolia/client-analytics", - "description": "JavaScript client for client-analytics", - "exports": { - ".": { - "node": { - "types": { - "import": "./dist/node.d.ts", - "module": "./dist/node.d.ts", - "require": "./dist/node.d.cts" - }, - "import": "./dist/builds/node.js", - "module": "./dist/builds/node.js", - "require": "./dist/builds/node.cjs" - }, - "worker": { - "types": "./dist/worker.d.ts", - "default": "./dist/builds/worker.js" - }, - "default": { - "types": "./dist/browser.d.ts", - "module": "./dist/builds/browser.js", - "import": "./dist/builds/browser.js", - "default": "./dist/builds/browser.umd.js" - } - }, - "./dist/builds/*": "./dist/builds/*.js" - }, - "jsdelivr": "./dist/builds/browser.umd.js", - "unpkg": "./dist/builds/browser.umd.js", - "react-native": "./dist/builds/browser.js", - "files": [ - "dist", - "index.js", - "index.d.ts" - ], - "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" - }, - "devDependencies": { - "@arethetypeswrong/cli": "0.18.2", - "@types/node": "25.1.0", - "publint": "0.3.17", - "rollup": "4.57.1", - "tsup": "8.5.1", - "typescript": "5.9.3" - }, - "engines": { - "node": ">= 14.0.0" - }, - "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" -} diff --git a/node_modules/@algolia/client-common/index.js b/node_modules/@algolia/client-common/index.js deleted file mode 100644 index 4c570e1..0000000 --- a/node_modules/@algolia/client-common/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dist/common.cjs'); diff --git a/node_modules/@algolia/client-common/package.json b/node_modules/@algolia/client-common/package.json deleted file mode 100644 index ba39778..0000000 --- a/node_modules/@algolia/client-common/package.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "name": "@algolia/client-common", - "version": "5.48.1", - "description": "Common package for the Algolia JavaScript API client.", - "repository": { - "type": "git", - "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" - }, - "homepage": "https://github.com/algolia/algoliasearch-client-javascript#readme", - "license": "MIT", - "author": "Algolia", - "type": "module", - "files": [ - "dist", - "index.js", - "index.d.ts" - ], - "exports": { - ".": { - "types": { - "import": "./dist/common.d.ts", - "module": "./dist/common.d.ts", - "require": "./dist/common.d.cts" - }, - "import": "./dist/common.js", - "module": "./dist/common.js", - "require": "./dist/common.cjs" - }, - "./src/*": "./src/*.ts" - }, - "scripts": { - "build": "yarn clean && yarn tsup", - "clean": "rm -rf ./dist || true", - "test": "tsc --noEmit && vitest --run", - "test:bundle": "publint . && attw --pack ." - }, - "devDependencies": { - "@arethetypeswrong/cli": "0.18.2", - "@types/node": "24.10.12", - "jsdom": "27.4.0", - "publint": "0.3.17", - "ts-node": "10.9.2", - "tsup": "8.5.1", - "typescript": "5.9.3", - "vitest": "4.0.18" - }, - "engines": { - "node": ">= 14.0.0" - }, - "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" -} diff --git a/node_modules/@algolia/client-personalization/index.js b/node_modules/@algolia/client-personalization/index.js deleted file mode 100644 index 21e26aa..0000000 --- a/node_modules/@algolia/client-personalization/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dist/builds/node.cjs'); diff --git a/node_modules/@algolia/client-personalization/package.json b/node_modules/@algolia/client-personalization/package.json deleted file mode 100644 index 535466d..0000000 --- a/node_modules/@algolia/client-personalization/package.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "version": "5.48.1", - "repository": { - "type": "git", - "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" - }, - "homepage": "https://github.com/algolia/algoliasearch-client-javascript/tree/main/packages/client-personalization#readme", - "type": "module", - "license": "MIT", - "author": "Algolia", - "scripts": { - "build": "yarn clean && yarn tsup && yarn rollup -c rollup.config.js", - "clean": "rm -rf ./dist || true", - "test:bundle": "publint . && attw --pack ." - }, - "name": "@algolia/client-personalization", - "description": "JavaScript client for client-personalization", - "exports": { - ".": { - "node": { - "types": { - "import": "./dist/node.d.ts", - "module": "./dist/node.d.ts", - "require": "./dist/node.d.cts" - }, - "import": "./dist/builds/node.js", - "module": "./dist/builds/node.js", - "require": "./dist/builds/node.cjs" - }, - "worker": { - "types": "./dist/worker.d.ts", - "default": "./dist/builds/worker.js" - }, - "default": { - "types": "./dist/browser.d.ts", - "module": "./dist/builds/browser.js", - "import": "./dist/builds/browser.js", - "default": "./dist/builds/browser.umd.js" - } - }, - "./dist/builds/*": "./dist/builds/*.js" - }, - "jsdelivr": "./dist/builds/browser.umd.js", - "unpkg": "./dist/builds/browser.umd.js", - "react-native": "./dist/builds/browser.js", - "files": [ - "dist", - "index.js", - "index.d.ts" - ], - "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" - }, - "devDependencies": { - "@arethetypeswrong/cli": "0.18.2", - "@types/node": "25.1.0", - "publint": "0.3.17", - "rollup": "4.57.1", - "tsup": "8.5.1", - "typescript": "5.9.3" - }, - "engines": { - "node": ">= 14.0.0" - }, - "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" -} diff --git a/node_modules/@algolia/client-search/index.js b/node_modules/@algolia/client-search/index.js deleted file mode 100644 index 21e26aa..0000000 --- a/node_modules/@algolia/client-search/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dist/builds/node.cjs'); diff --git a/node_modules/@algolia/client-search/package.json b/node_modules/@algolia/client-search/package.json deleted file mode 100644 index 49a5330..0000000 --- a/node_modules/@algolia/client-search/package.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "version": "5.48.1", - "repository": { - "type": "git", - "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" - }, - "homepage": "https://github.com/algolia/algoliasearch-client-javascript/tree/main/packages/client-search#readme", - "type": "module", - "license": "MIT", - "author": "Algolia", - "scripts": { - "build": "yarn clean && yarn tsup && yarn rollup -c rollup.config.js", - "clean": "rm -rf ./dist || true", - "test:bundle": "publint . && attw --pack ." - }, - "name": "@algolia/client-search", - "description": "JavaScript client for client-search", - "exports": { - ".": { - "node": { - "types": { - "import": "./dist/node.d.ts", - "module": "./dist/node.d.ts", - "require": "./dist/node.d.cts" - }, - "import": "./dist/builds/node.js", - "module": "./dist/builds/node.js", - "require": "./dist/builds/node.cjs" - }, - "worker": { - "types": "./dist/worker.d.ts", - "default": "./dist/builds/worker.js" - }, - "default": { - "types": "./dist/browser.d.ts", - "module": "./dist/builds/browser.js", - "import": "./dist/builds/browser.js", - "default": "./dist/builds/browser.umd.js" - } - }, - "./dist/builds/*": "./dist/builds/*.js" - }, - "jsdelivr": "./dist/builds/browser.umd.js", - "unpkg": "./dist/builds/browser.umd.js", - "react-native": "./dist/builds/browser.js", - "files": [ - "dist", - "index.js", - "index.d.ts" - ], - "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" - }, - "devDependencies": { - "@arethetypeswrong/cli": "0.18.2", - "@types/node": "25.1.0", - "publint": "0.3.17", - "rollup": "4.57.1", - "tsup": "8.5.1", - "typescript": "5.9.3" - }, - "engines": { - "node": ">= 14.0.0" - }, - "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" -} diff --git a/node_modules/@algolia/requester-browser-xhr/index.js b/node_modules/@algolia/requester-browser-xhr/index.js deleted file mode 100644 index c92f673..0000000 --- a/node_modules/@algolia/requester-browser-xhr/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dist/requester.xhr.js'); diff --git a/node_modules/@algolia/requester-browser-xhr/package.json b/node_modules/@algolia/requester-browser-xhr/package.json deleted file mode 100644 index a66d502..0000000 --- a/node_modules/@algolia/requester-browser-xhr/package.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "name": "@algolia/requester-browser-xhr", - "version": "5.48.1", - "description": "Promise-based request library for browser using xhr.", - "repository": { - "type": "git", - "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" - }, - "homepage": "https://github.com/algolia/algoliasearch-client-javascript#readme", - "license": "MIT", - "author": "Algolia", - "type": "module", - "exports": { - ".": { - "types": "./dist/requester.xhr.d.ts", - "import": "./dist/requester.xhr.js", - "module": "./dist/requester.xhr.js", - "default": "./dist/requester.xhr.js" - }, - "./src/*": "./src/*.ts" - }, - "react-native": "./dist/requester.xhr.js", - "files": [ - "dist", - "index.d.ts", - "index.js" - ], - "scripts": { - "build": "yarn clean && yarn tsup", - "clean": "rm -rf ./dist || true", - "test": "tsc --noEmit && vitest --run", - "test:bundle": "publint . && attw --pack . --ignore-rules cjs-resolves-to-esm" - }, - "dependencies": { - "@algolia/client-common": "5.48.1" - }, - "devDependencies": { - "@arethetypeswrong/cli": "0.18.2", - "@types/node": "24.10.12", - "jsdom": "27.4.0", - "publint": "0.3.17", - "tsup": "8.5.1", - "typescript": "5.9.3", - "vitest": "4.0.18", - "xhr-mock": "2.5.1" - }, - "engines": { - "node": ">= 14.0.0" - }, - "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" -} diff --git a/node_modules/@algolia/requester-node-http/index.js b/node_modules/@algolia/requester-node-http/index.js deleted file mode 100644 index 2f27540..0000000 --- a/node_modules/@algolia/requester-node-http/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('./dist/requester.http.cjs'); diff --git a/node_modules/@algolia/requester-node-http/package.json b/node_modules/@algolia/requester-node-http/package.json deleted file mode 100644 index 61450ab..0000000 --- a/node_modules/@algolia/requester-node-http/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@algolia/requester-node-http", - "version": "5.48.1", - "description": "Promise-based request library for node using the native http module.", - "repository": { - "type": "git", - "url": "git+https://github.com/algolia/algoliasearch-client-javascript.git" - }, - "homepage": "https://github.com/algolia/algoliasearch-client-javascript#readme", - "license": "MIT", - "author": "Algolia", - "type": "module", - "files": [ - "dist", - "index.d.ts", - "index.js" - ], - "exports": { - ".": { - "types": { - "import": "./dist/requester.http.d.ts", - "module": "./dist/requester.http.d.ts", - "require": "./dist/requester.http.d.cts" - }, - "import": "./dist/requester.http.js", - "module": "./dist/requester.http.js", - "require": "./dist/requester.http.cjs" - }, - "./src/*": "./src/*.ts" - }, - "scripts": { - "build": "yarn clean && yarn tsup", - "clean": "rm -rf ./dist || true", - "test": "tsc --noEmit && vitest --run", - "test:bundle": "publint . && attw --pack ." - }, - "dependencies": { - "@algolia/client-common": "5.48.1" - }, - "devDependencies": { - "@arethetypeswrong/cli": "0.18.2", - "@types/node": "24.10.12", - "nock": "14.0.10", - "publint": "0.3.17", - "tsup": "8.5.1", - "typescript": "5.9.3", - "vitest": "4.0.18" - }, - "engines": { - "node": ">= 14.0.0" - }, - "gitHead": "4bbb3ce8d4cb7b7ad454352d4835cffead91ee30" -} diff --git a/node_modules/@babel/parser/CHANGELOG.md b/node_modules/@babel/parser/CHANGELOG.md deleted file mode 100644 index b3840ac..0000000 --- a/node_modules/@babel/parser/CHANGELOG.md +++ /dev/null @@ -1,1073 +0,0 @@ -# Changelog - -> **Tags:** -> - :boom: [Breaking Change] -> - :eyeglasses: [Spec Compliance] -> - :rocket: [New Feature] -> - :bug: [Bug Fix] -> - :memo: [Documentation] -> - :house: [Internal] -> - :nail_care: [Polish] - -> Semver Policy: https://github.com/babel/babel/tree/main/packages/babel-parser#semver - -_Note: Gaps between patch versions are faulty, broken or test releases._ - -See the [Babel Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) for the pre-6.8.0 version Changelog. - -## 6.17.1 (2017-05-10) - -### :bug: Bug Fix - * Fix typo in flow spread operator error (Brian Ng) - * Fixed invalid number literal parsing ([#473](https://github.com/babel/babylon/pull/473)) (Alex Kuzmenko) - * Fix number parser ([#433](https://github.com/babel/babylon/pull/433)) (Alex Kuzmenko) - * Ensure non pattern shorthand props are checked for reserved words ([#479](https://github.com/babel/babylon/pull/479)) (Brian Ng) - * Remove jsx context when parsing arrow functions ([#475](https://github.com/babel/babylon/pull/475)) (Brian Ng) - * Allow super in class properties ([#499](https://github.com/babel/babylon/pull/499)) (Brian Ng) - * Allow flow class field to be named constructor ([#510](https://github.com/babel/babylon/pull/510)) (Brian Ng) - -## 6.17.0 (2017-04-20) - -### :bug: Bug Fix - * Cherry-pick #418 to 6.x ([#476](https://github.com/babel/babylon/pull/476)) (Sebastian McKenzie) - * Add support for invalid escapes in tagged templates ([#274](https://github.com/babel/babylon/pull/274)) (Kevin Gibbons) - * Throw error if new.target is used outside of a function ([#402](https://github.com/babel/babylon/pull/402)) (Brian Ng) - * Fix parsing of class properties ([#351](https://github.com/babel/babylon/pull/351)) (Kevin Gibbons) - * Fix parsing yield with dynamicImport ([#383](https://github.com/babel/babylon/pull/383)) (Brian Ng) - * Ensure consistent start args for parseParenItem ([#386](https://github.com/babel/babylon/pull/386)) (Brian Ng) - -## 7.0.0-beta.8 (2017-04-04) - -### New Feature -* Add support for flow type spread (#418) (Conrad Buck) -* Allow statics in flow interfaces (#427) (Brian Ng) - -### Bug Fix -* Fix predicate attachment to match flow parser (#428) (Brian Ng) -* Add extra.raw back to JSXText and JSXAttribute (#344) (Alex Rattray) -* Fix rest parameters with array and objects (#424) (Brian Ng) -* Fix number parser (#433) (Alex Kuzmenko) - -### Docs -* Fix CONTRIBUTING.md [skip ci] (#432) (Alex Kuzmenko) - -### Internal -* Use babel-register script when running babel smoke tests (#442) (Brian Ng) - -## 7.0.0-beta.7 (2017-03-22) - -### Spec Compliance -* Remove babylon plugin for template revision since it's stage-4 (#426) (Henry Zhu) - -### Bug Fix - -* Fix push-pop logic in flow (#405) (Daniel Tschinder) - -## 7.0.0-beta.6 (2017-03-21) - -### New Feature -* Add support for invalid escapes in tagged templates (#274) (Kevin Gibbons) - -### Polish -* Improves error message when super is called outside of constructor (#408) (Arshabh Kumar Agarwal) - -### Docs - -* [7.0] Moved value field in spec from ObjectMember to ObjectProperty as ObjectMethod's don't have it (#415) [skip ci] (James Browning) - -## 7.0.0-beta.5 (2017-03-21) - -### Bug Fix -* Throw error if new.target is used outside of a function (#402) (Brian Ng) -* Fix parsing of class properties (#351) (Kevin Gibbons) - -### Other - * Test runner: Detect extra property in 'actual' but not in 'expected'. (#407) (Andy) - * Optimize travis builds (#419) (Daniel Tschinder) - * Update codecov to 2.0 (#412) (Daniel Tschinder) - * Fix spec for ClassMethod: It doesn't have a function, it *is* a function. (#406) [skip ci] (Andy) - * Changed Non-existent RestPattern to RestElement which is what is actually parsed (#409) [skip ci] (James Browning) - * Upgrade flow to 0.41 (Daniel Tschinder) - * Fix watch command (#403) (Brian Ng) - * Update yarn lock (Daniel Tschinder) - * Fix watch command (#403) (Brian Ng) - * chore(package): update flow-bin to version 0.41.0 (#395) (greenkeeper[bot]) - * Add estree test for correct order of directives (Daniel Tschinder) - * Add DoExpression to spec (#364) (Alex Kuzmenko) - * Mention cloning of repository in CONTRIBUTING.md (#391) [skip ci] (Sumedh Nimkarde) - * Explain how to run only one test (#389) [skip ci] (Aaron Ang) - - ## 7.0.0-beta.4 (2017-03-01) - -* Don't consume async when checking for async func decl (#377) (Brian Ng) -* add `ranges` option [skip ci] (Henry Zhu) -* Don't parse class properties without initializers when classProperties is disabled and Flow is enabled (#300) (Andrew Levine) - -## 7.0.0-beta.3 (2017-02-28) - -- [7.0] Change RestProperty/SpreadProperty to RestElement/SpreadElement (#384) -- Merge changes from 6.x - -## 7.0.0-beta.2 (2017-02-20) - -- estree: correctly change literals in all cases (#368) (Daniel Tschinder) - -## 7.0.0-beta.1 (2017-02-20) - -- Fix negative number literal typeannotations (#366) (Daniel Tschinder) -- Update contributing with more test info [skip ci] (#355) (Brian Ng) - -## 7.0.0-beta.0 (2017-02-15) - -- Reintroduce Variance node (#333) (Daniel Tschinder) -- Rename NumericLiteralTypeAnnotation to NumberLiteralTypeAnnotation (#332) (Charles Pick) -- [7.0] Remove ForAwaitStatement, add await flag to ForOfStatement (#349) (Brandon Dail) -- chore(package): update ava to version 0.18.0 (#345) (greenkeeper[bot]) -- chore(package): update babel-plugin-istanbul to version 4.0.0 (#350) (greenkeeper[bot]) -- Change location of ObjectTypeIndexer to match flow (#228) (Daniel Tschinder) -- Rename flow AST Type ExistentialTypeParam to ExistsTypeAnnotation (#322) (Toru Kobayashi) -- Revert "Temporary rollback for erroring on trailing comma with spread (#154)" (#290) (Daniel Tschinder) -- Remove classConstructorCall plugin (#291) (Brian Ng) -- Update yarn.lock (Daniel Tschinder) -- Update cross-env to 3.x (Daniel Tschinder) -- [7.0] Remove node 0.10, 0.12 and 5 from Travis (#284) (Sergey Rubanov) -- Remove `String.fromCodePoint` shim (#279) (Mathias Bynens) - -## 6.16.1 (2017-02-23) - -### :bug: Regression - -- Revert "Fix export default async function to be FunctionDeclaration" ([#375](https://github.com/babel/babylon/pull/375)) - -Need to modify Babel for this AST node change, so moving to 7.0. - -- Revert "Don't parse class properties without initializers when classProperties plugin is disabled, and Flow is enabled" ([#376](https://github.com/babel/babylon/pull/376)) - -[react-native](https://github.com/facebook/react-native/issues/12542) broke with this so we reverted. - -## 6.16.0 (2017-02-23) - -### :rocket: New Feature - -***ESTree*** compatibility as plugin ([#277](https://github.com/babel/babylon/pull/277)) (Daniel Tschinder) - -We finally introduce a new compatibility layer for ESTree. To put babylon into ESTree-compatible mode the new plugin `estree` can be enabled. In this mode the parser will output an AST that is compliant to the specs of [ESTree](https://github.com/estree/estree/) - -We highly recommend everyone who uses babylon outside of babel to use this plugin. This will make it much easier for users to switch between different ESTree-compatible parsers. We so far tested several projects with different parsers and exchanged their parser to babylon and in nearly all cases it worked out of the box. Some other estree-compatible parsers include `acorn`, `esprima`, `espree`, `flow-parser`, etc. - -To enable `estree` mode simply add the plugin in the config: -```json -{ - "plugins": [ "estree" ] -} -``` - -If you want to migrate your project from non-ESTree mode to ESTree, have a look at our [Readme](https://github.com/babel/babylon/#output), where all deviations are mentioned. - -Add a parseExpression public method ([#213](https://github.com/babel/babylon/pull/213)) (jeromew) - -Babylon exports a new function to parse a single expression - -```js -import { parseExpression } from 'babylon'; - -const ast = parseExpression('x || y && z', options); -``` - -The returned AST will only consist of the expression. The options are the same as for `parse()` - -Add startLine option ([#346](https://github.com/babel/babylon/pull/346)) (Raphael Mu) - -A new option was added to babylon allowing to change the initial linenumber for the first line which is usually `1`. -Changing this for example to `100` will make line `1` of the input source to be marked as line `100`, line `2` as `101`, line `3` as `102`, ... - -Function predicate declaration ([#103](https://github.com/babel/babylon/pull/103)) (Panagiotis Vekris) - -Added support for function predicates which flow introduced in version 0.33.0 - -```js -declare function is_number(x: mixed): boolean %checks(typeof x === "number"); -``` - -Allow imports in declare module ([#315](https://github.com/babel/babylon/pull/315)) (Daniel Tschinder) - -Added support for imports within module declarations which flow introduced in version 0.37.0 - -```js -declare module "C" { - import type { DT } from "D"; - declare export type CT = { D: DT }; -} -``` - -### :eyeglasses: Spec Compliance - -Forbid semicolons after decorators in classes ([#352](https://github.com/babel/babylon/pull/352)) (Kevin Gibbons) - -This example now correctly throws an error when there is a semicolon after the decorator: - -```js -class A { -@a; -foo(){} -} -``` - -Keywords are not allowed as local specifier ([#307](https://github.com/babel/babylon/pull/307)) (Daniel Tschinder) - -Using keywords in imports is not allowed anymore: - -```js -import { default } from "foo"; -import { a as debugger } from "foo"; -``` - -Do not allow overwritting of primitive types ([#314](https://github.com/babel/babylon/pull/314)) (Daniel Tschinder) - -In flow it is now forbidden to overwrite the primitive types `"any"`, `"mixed"`, `"empty"`, `"bool"`, `"boolean"`, `"number"`, `"string"`, `"void"` and `"null"` with your own type declaration. - -Disallow import type { type a } from … ([#305](https://github.com/babel/babylon/pull/305)) (Daniel Tschinder) - -The following code now correctly throws an error - -```js -import type { type a } from "foo"; -``` - -Don't parse class properties without initializers when classProperties is disabled and Flow is enabled ([#300](https://github.com/babel/babylon/pull/300)) (Andrew Levine) - -Ensure that you enable the `classProperties` plugin in order to enable correct parsing of class properties. Prior to this version it was possible to parse them by enabling the `flow` plugin but this was not intended the behaviour. - -If you enable the flow plugin you can only define the type of the class properties, but not initialize them. - -Fix export default async function to be FunctionDeclaration ([#324](https://github.com/babel/babylon/pull/324)) (Daniel Tschinder) - -Parsing the following code now returns a `FunctionDeclaration` AST node instead of `FunctionExpression`. - -```js -export default async function bar() {}; -``` - -### :nail_care: Polish - -Improve error message on attempt to destructure named import ([#288](https://github.com/babel/babylon/pull/288)) (Brian Ng) - -### :bug: Bug Fix - -Fix negative number literal typeannotations ([#366](https://github.com/babel/babylon/pull/366)) (Daniel Tschinder) - -Ensure takeDecorators is called on exported class ([#358](https://github.com/babel/babylon/pull/358)) (Brian Ng) - -ESTree: correctly change literals in all cases ([#368](https://github.com/babel/babylon/pull/368)) (Daniel Tschinder) - -Correctly convert RestProperty to Assignable ([#339](https://github.com/babel/babylon/pull/339)) (Daniel Tschinder) - -Fix #321 by allowing question marks in type params ([#338](https://github.com/babel/babylon/pull/338)) (Daniel Tschinder) - -Fix #336 by correctly setting arrow-param ([#337](https://github.com/babel/babylon/pull/337)) (Daniel Tschinder) - -Fix parse error when destructuring `set` with default value ([#317](https://github.com/babel/babylon/pull/317)) (Brian Ng) - -Fix ObjectTypeCallProperty static ([#298](https://github.com/babel/babylon/pull/298)) (Dan Harper) - - -### :house: Internal - -Fix generator-method-with-computed-name spec ([#360](https://github.com/babel/babylon/pull/360)) (Alex Rattray) - -Fix flow type-parameter-declaration test with unintended semantic ([#361](https://github.com/babel/babylon/pull/361)) (Alex Rattray) - -Cleanup and splitup parser functions ([#295](https://github.com/babel/babylon/pull/295)) (Daniel Tschinder) - -chore(package): update flow-bin to version 0.38.0 ([#313](https://github.com/babel/babylon/pull/313)) (greenkeeper[bot]) - -Call inner function instead of 1:1 copy to plugin ([#294](https://github.com/babel/babylon/pull/294)) (Daniel Tschinder) - -Update eslint-config-babel to the latest version 🚀 ([#299](https://github.com/babel/babylon/pull/299)) (greenkeeper[bot]) - -Update eslint-config-babel to the latest version 🚀 ([#293](https://github.com/babel/babylon/pull/293)) (greenkeeper[bot]) - -devDeps: remove eslint-plugin-babel ([#292](https://github.com/babel/babylon/pull/292)) (Kai Cataldo) - -Correct indent eslint rule config ([#276](https://github.com/babel/babylon/pull/276)) (Daniel Tschinder) - -Fail tests that have expected.json and throws-option ([#285](https://github.com/babel/babylon/pull/285)) (Daniel Tschinder) - -### :memo: Documentation - -Update contributing with more test info [skip ci] ([#355](https://github.com/babel/babylon/pull/355)) (Brian Ng) - -Update API documentation ([#330](https://github.com/babel/babylon/pull/330)) (Timothy Gu) - -Added keywords to package.json ([#323](https://github.com/babel/babylon/pull/323)) (Dmytro) - -AST spec: fix casing of `RegExpLiteral` ([#318](https://github.com/babel/babylon/pull/318)) (Mathias Bynens) - -## 6.15.0 (2017-01-10) - -### :eyeglasses: Spec Compliance - -Add support for Flow shorthand import type ([#267](https://github.com/babel/babylon/pull/267)) (Jeff Morrison) - -This change implements flows new shorthand import syntax -and where previously you had to write this code: - -```js -import {someValue} from "blah"; -import type {someType} from "blah"; -import typeof {someOtherValue} from "blah"; -``` - -you can now write it like this: - -```js -import { - someValue, - type someType, - typeof someOtherValue, -} from "blah"; -``` - -For more information look at [this](https://github.com/facebook/flow/pull/2890) pull request. - -flow: allow leading pipes in all positions ([#256](https://github.com/babel/babylon/pull/256)) (Vladimir Kurchatkin) - -This change now allows a leading pipe everywhere types can be used: -```js -var f = (x): | 1 | 2 => 1; -``` - -Throw error when exporting non-declaration ([#241](https://github.com/babel/babylon/pull/241)) (Kai Cataldo) - -Previously babylon parsed the following exports, although they are not valid: -```js -export typeof foo; -export new Foo(); -export function() {}; -export for (;;); -export while(foo); -``` - -### :bug: Bug Fix - -Don't set inType flag when parsing property names ([#266](https://github.com/babel/babylon/pull/266)) (Vladimir Kurchatkin) - -This fixes parsing of this case: - -```js -const map = { - [age <= 17] : 'Too young' -}; -``` - -Fix source location for JSXEmptyExpression nodes (fixes #248) ([#249](https://github.com/babel/babylon/pull/249)) (James Long) - -The following case produced an invalid AST -```js -
{/* foo */}
-``` - -Use fromCodePoint to convert high value unicode entities ([#243](https://github.com/babel/babylon/pull/243)) (Ryan Duffy) - -When high value unicode entities (e.g. 💩) were used in the input source code they are now correctly encoded in the resulting AST. - -Rename folder to avoid Windows-illegal characters ([#281](https://github.com/babel/babylon/pull/281)) (Ryan Plant) - -Allow this.state.clone() when parsing decorators ([#262](https://github.com/babel/babylon/pull/262)) (Alex Rattray) - -### :house: Internal - -User external-helpers ([#254](https://github.com/babel/babylon/pull/254)) (Daniel Tschinder) - -Add watch script for dev ([#234](https://github.com/babel/babylon/pull/234)) (Kai Cataldo) - -Freeze current plugins list for "*" option, and remove from README.md ([#245](https://github.com/babel/babylon/pull/245)) (Andrew Levine) - -Prepare tests for multiple fixture runners. ([#240](https://github.com/babel/babylon/pull/240)) (Daniel Tschinder) - -Add some test coverage for decorators stage-0 plugin ([#250](https://github.com/babel/babylon/pull/250)) (Andrew Levine) - -Refactor tokenizer types file ([#263](https://github.com/babel/babylon/pull/263)) (Sven SAULEAU) - -Update eslint-config-babel to the latest version 🚀 ([#273](https://github.com/babel/babylon/pull/273)) (greenkeeper[bot]) - -chore(package): update rollup to version 0.41.0 ([#272](https://github.com/babel/babylon/pull/272)) (greenkeeper[bot]) - -chore(package): update flow-bin to version 0.37.0 ([#255](https://github.com/babel/babylon/pull/255)) (greenkeeper[bot]) - -## 6.14.1 (2016-11-17) - -### :bug: Bug Fix - -Allow `"plugins": ["*"]` ([#229](https://github.com/babel/babylon/pull/229)) (Daniel Tschinder) - -```js -{ - "plugins": ["*"] -} -``` - -Will include all parser plugins instead of specifying each one individually. Useful for tools like babel-eslint, jscodeshift, and ast-explorer. - -## 6.14.0 (2016-11-16) - -### :eyeglasses: Spec Compliance - -Throw error for reserved words `enum` and `await` ([#195](https://github.com/babel/babylon/pull/195)) (Kai Cataldo) - -[11.6.2.2 Future Reserved Words](http://www.ecma-international.org/ecma-262/6.0/#sec-future-reserved-words) - -Babylon will throw for more reserved words such as `enum` or `await` (in strict mode). - -``` -class enum {} // throws -class await {} // throws in strict mode (module) -``` - -Optional names for function types and object type indexers ([#197](https://github.com/babel/babylon/pull/197)) (Gabe Levi) - -So where you used to have to write - -```js -type A = (x: string, y: boolean) => number; -type B = (z: string) => number; -type C = { [key: string]: number }; -``` - -you can now write (with flow 0.34.0) - -```js -type A = (string, boolean) => number; -type B = string => number; -type C = { [string]: number }; -``` - -Parse flow nested array type annotations like `number[][]` ([#219](https://github.com/babel/babylon/pull/219)) (Bernhard Häussner) - -Supports these form now of specifying array types: - -```js -var a: number[][][][]; -var b: string[][]; -``` - -### :bug: Bug Fix - -Correctly eat semicolon at the end of `DelcareModuleExports` ([#223](https://github.com/babel/babylon/pull/223)) (Daniel Tschinder) - -``` -declare module "foo" { declare module.exports: number } -declare module "foo" { declare module.exports: number; } // also allowed now -``` - -### :house: Internal - - * Count Babel tests towards Babylon code coverage ([#182](https://github.com/babel/babylon/pull/182)) (Moti Zilberman) - * Fix strange line endings ([#214](https://github.com/babel/babylon/pull/214)) (Thomas Grainger) - * Add node 7 (Daniel Tschinder) - * chore(package): update flow-bin to version 0.34.0 ([#204](https://github.com/babel/babylon/pull/204)) (Greenkeeper) - -## v6.13.1 (2016-10-26) - -### :nail_care: Polish - -- Use rollup for bundling to speed up startup time ([#190](https://github.com/babel/babylon/pull/190)) ([@drewml](https://github.com/DrewML)) - -```js -const babylon = require('babylon'); -const ast = babylon.parse('var foo = "lol";'); -``` - -With that test case, there was a ~95ms savings by removing the need for node to build/traverse the dependency graph. - -**Without bundling** -![image](https://cloud.githubusercontent.com/assets/5233399/19420264/3133497e-93ad-11e6-9a6a-2da59c4f5c13.png) - -**With bundling** -![image](https://cloud.githubusercontent.com/assets/5233399/19420267/388f556e-93ad-11e6-813e-7c5c396be322.png) - -- add clean command [skip ci] ([#201](https://github.com/babel/babylon/pull/201)) (Henry Zhu) -- add ForAwaitStatement (async generator already added) [skip ci] ([#196](https://github.com/babel/babylon/pull/196)) (Henry Zhu) - -## v6.13.0 (2016-10-21) - -### :eyeglasses: Spec Compliance - -Property variance type annotations for Flow plugin ([#161](https://github.com/babel/babylon/pull/161)) (Sam Goldman) - -> See https://flowtype.org/docs/variance.html for more information - -```js -type T = { +p: T }; -interface T { -p: T }; -declare class T { +[k:K]: V }; -class T { -[k:K]: V }; -class C2 { +p: T = e }; -``` - -Raise error on duplicate definition of __proto__ ([#183](https://github.com/babel/babylon/pull/183)) (Moti Zilberman) - -```js -({ __proto__: 1, __proto__: 2 }) // Throws an error now -``` - -### :bug: Bug Fix - -Flow: Allow class properties to be named `static` ([#184](https://github.com/babel/babylon/pull/184)) (Moti Zilberman) - -```js -declare class A { - static: T; -} -``` - -Allow "async" as identifier for object literal property shorthand ([#187](https://github.com/babel/babylon/pull/187)) (Andrew Levine) - -```js -var foo = { async, bar }; -``` - -### :nail_care: Polish - -Fix flowtype and add inType to state ([#189](https://github.com/babel/babylon/pull/189)) (Daniel Tschinder) - -> This improves the performance slightly (because of hidden classes) - -### :house: Internal - -Fix .gitattributes line ending setting ([#191](https://github.com/babel/babylon/pull/191)) (Moti Zilberman) - -Increase test coverage ([#175](https://github.com/babel/babylon/pull/175) (Moti Zilberman) - -Readd missin .eslinignore for IDEs (Daniel Tschinder) - -Error on missing expected.json fixture in CI ([#188](https://github.com/babel/babylon/pull/188)) (Moti Zilberman) - -Add .gitattributes and .editorconfig for LF line endings ([#179](https://github.com/babel/babylon/pull/179)) (Moti Zilberman) - -Fixes two tests that are failing after the merge of #172 ([#177](https://github.com/babel/babylon/pull/177)) (Moti Zilberman) - -## v6.12.0 (2016-10-14) - -### :eyeglasses: Spec Compliance - -Implement import() syntax ([#163](https://github.com/babel/babylon/pull/163)) (Jordan Gensler) - -#### Dynamic Import - -- Proposal Repo: https://github.com/domenic/proposal-dynamic-import -- Championed by [@domenic](https://github.com/domenic) -- stage-2 -- [sept-28 tc39 notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-09/sept-28.md#113a-import) - -> This repository contains a proposal for adding a "function-like" import() module loading syntactic form to JavaScript - -```js -import(`./section-modules/${link.dataset.entryModule}.js`) -.then(module => { - module.loadPageInto(main); -}) -``` - -Add EmptyTypeAnnotation ([#171](https://github.com/babel/babylon/pull/171)) (Sam Goldman) - -#### EmptyTypeAnnotation - -Just wasn't covered before. - -```js -type T = empty; -``` - -### :bug: Bug Fix - -Fix crash when exporting with destructuring and sparse array ([#170](https://github.com/babel/babylon/pull/170)) (Jeroen Engels) - -```js -// was failing due to sparse array -export const { foo: [ ,, qux7 ] } = bar; -``` - -Allow keyword in Flow object declaration property names with type parameters ([#146](https://github.com/babel/babylon/pull/146)) (Dan Harper) - -```js -declare class X { - foobar(): void; - static foobar(): void; -} -``` - -Allow keyword in object/class property names with Flow type parameters ([#145](https://github.com/babel/babylon/pull/145)) (Dan Harper) - -```js -class Foo { - delete(item: T): T { - return item; - } -} -``` - -Allow typeAnnotations for yield expressions ([#174](https://github.com/babel/babylon/pull/174))) (Daniel Tschinder) - -```js -function *foo() { - const x = (yield 5: any); -} -``` - -### :nail_care: Polish - -Annotate more errors with expected token ([#172](https://github.com/babel/babylon/pull/172))) (Moti Zilberman) - -```js -// Unexpected token, expected ; (1:6) -{ set 1 } -``` - -### :house: Internal - -Remove kcheck ([#173](https://github.com/babel/babylon/pull/173))) (Daniel Tschinder) - -Also run flow, linting, babel tests on separate instances (add back node 0.10) - -## v6.11.6 (2016-10-12) - -### :bug: Bug Fix/Regression - -Fix crash when exporting with destructuring and sparse array ([#170](https://github.com/babel/babylon/pull/170)) (Jeroen Engels) - -```js -// was failing with `Cannot read property 'type' of null` because of null identifiers -export const { foo: [ ,, qux7 ] } = bar; -``` - -## v6.11.5 (2016-10-12) - -### :eyeglasses: Spec Compliance - -Fix: Check for duplicate named exports in exported destructuring assignments ([#144](https://github.com/babel/babylon/pull/144)) (Kai Cataldo) - -```js -// `foo` has already been exported. Exported identifiers must be unique. (2:20) -export function foo() {}; -export const { a: [{foo}] } = bar; -``` - -Fix: Check for duplicate named exports in exported rest elements/properties ([#164](https://github.com/babel/babylon/pull/164)) (Kai Cataldo) - -```js -// `foo` has already been exported. Exported identifiers must be unique. (2:22) -export const foo = 1; -export const [bar, ...foo] = baz; -``` - -### :bug: Bug Fix - -Fix: Allow identifier `async` for default param in arrow expression ([#165](https://github.com/babel/babylon/pull/165)) (Kai Cataldo) - -```js -// this is ok now -const test = ({async = true}) => {}; -``` - -### :nail_care: Polish - -Babylon will now print out the token it's expecting if there's a `SyntaxError` ([#150](https://github.com/babel/babylon/pull/150)) (Daniel Tschinder) - -```bash -# So in the case of a missing ending curly (`}`) -Module build failed: SyntaxError: Unexpected token, expected } (30:0) - 28 | } - 29 | -> 30 | - | ^ -``` - -## v6.11.4 (2016-10-03) - -Temporary rollback for erroring on trailing comma with spread (#154) (Henry Zhu) - -## v6.11.3 (2016-10-01) - -### :eyeglasses: Spec Compliance - -Add static errors for object rest (#149) ([@danez](https://github.com/danez)) - -> https://github.com/sebmarkbage/ecmascript-rest-spread - -Object rest copies the *rest* of properties from the right hand side `obj` starting from the left to right. - -```js -let { x, y, ...z } = { x: 1, y: 2, z: 3 }; -// x = 1 -// y = 2 -// z = { z: 3 } -``` - -#### New Syntax Errors: - -**SyntaxError**: The rest element has to be the last element when destructuring (1:10) -```bash -> 1 | let { ...x, y, z } = { x: 1, y: 2, z: 3}; - | ^ -# Previous behavior: -# x = { x: 1, y: 2, z: 3 } -# y = 2 -# z = 3 -``` - -Before, this was just a more verbose way of shallow copying `obj` since it doesn't actually do what you think. - -**SyntaxError**: Cannot have multiple rest elements when destructuring (1:13) - -```bash -> 1 | let { x, ...y, ...z } = { x: 1, y: 2, z: 3}; - | ^ -# Previous behavior: -# x = 1 -# y = { y: 2, z: 3 } -# z = { y: 2, z: 3 } -``` - -Before y and z would just be the same value anyway so there is no reason to need to have both. - -**SyntaxError**: A trailing comma is not permitted after the rest element (1:16) - -```js -let { x, y, ...z, } = obj; -``` - -The rationale for this is that the use case for trailing comma is that you can add something at the end without affecting the line above. Since a RestProperty always has to be the last property it doesn't make sense. - ---- - -get / set are valid property names in default assignment (#142) ([@jezell](https://github.com/jezell)) - -```js -// valid -function something({ set = null, get = null }) {} -``` - -## v6.11.2 (2016-09-23) - -### Bug Fix - -- [#139](https://github.com/babel/babylon/issues/139) Don't do the duplicate check if not an identifier (#140) @hzoo - -```js -// regression with duplicate export check -SyntaxError: ./typography.js: `undefined` has already been exported. Exported identifiers must be unique. (22:13) - 20 | - 21 | export const { rhythm } = typography; -> 22 | export const { TypographyStyle } = typography -``` - -Bail out for now, and make a change to account for destructuring in the next release. - -## 6.11.1 (2016-09-22) - -### Bug Fix -- [#137](https://github.com/babel/babylon/pull/137) - Fix a regression with duplicate exports - it was erroring on all keys in `Object.prototype`. @danez - -```javascript -export toString from './toString'; -``` - -```bash -`toString` has already been exported. Exported identifiers must be unique. (1:7) -> 1 | export toString from './toString'; - | ^ - 2 | -``` - -## 6.11.0 (2016-09-22) - -### Spec Compliance (will break CI) - -- Disallow duplicate named exports ([#107](https://github.com/babel/babylon/pull/107)) @kaicataldo - -```js -// Only one default export allowed per module. (2:9) -export default function() {}; -export { foo as default }; - -// Only one default export allowed per module. (2:0) -export default {}; -export default function() {}; - -// `Foo` has already been exported. Exported identifiers must be unique. (2:0) -export { Foo }; -export class Foo {}; -``` - -### New Feature (Syntax) - -- Add support for computed class property names ([#121](https://github.com/babel/babylon/pull/121)) @motiz88 - -```js -// AST -interface ClassProperty <: Node { - type: "ClassProperty"; - key: Identifier; - value: Expression; - computed: boolean; // added -} -``` - -```js -// with "plugins": ["classProperties"] -class Foo { - [x] - ['y'] -} - -class Bar { - [p] - [m] () {} -} - ``` - -### Bug Fix - -- Fix `static` property falling through in the declare class Flow AST ([#135](https://github.com/babel/babylon/pull/135)) @danharper - -```js -declare class X { - a: number; - static b: number; // static - c: number; // this was being marked as static in the AST as well -} -``` - -### Polish - -- Rephrase "assigning/binding to rvalue" errors to include context ([#119](https://github.com/babel/babylon/pull/119)) @motiz88 - -```js -// Used to error with: -// SyntaxError: Assigning to rvalue (1:0) - -// Now: -// Invalid left-hand side in assignment expression (1:0) -3 = 4 - -// Invalid left-hand side in for-in statement (1:5) -for (+i in {}); -``` - -### Internal - -- Fix call to `this.parseMaybeAssign` with correct arguments ([#133](https://github.com/babel/babylon/pull/133)) @danez -- Add semver note to changelog ([#131](https://github.com/babel/babylon/pull/131)) @hzoo - -## 6.10.0 (2016-09-19) - -> We plan to include some spec compliance bugs in patch versions. An example was the multiple default exports issue. - -### Spec Compliance - -* Implement ES2016 check for simple parameter list in strict mode ([#106](https://github.com/babel/babylon/pull/106)) (Timothy Gu) - -> It is a Syntax Error if ContainsUseStrict of FunctionBody is true and IsSimpleParameterList of FormalParameters is false. https://tc39.github.io/ecma262/2016/#sec-function-definitions-static-semantics-early-errors - -More Context: [tc39-notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2015-07/july-29.md#611-the-scope-of-use-strict-with-respect-to-destructuring-in-parameter-lists) - -For example: - -```js -// this errors because it uses destructuring and default parameters -// in a function with a "use strict" directive -function a([ option1, option2 ] = []) { - "use strict"; -} - ``` - -The solution would be to use a top level "use strict" or to remove the destructuring or default parameters when using a function + "use strict" or to. - -### New Feature - -* Exact object type annotations for Flow plugin ([#104](https://github.com/babel/babylon/pull/104)) (Basil Hosmer) - -Added to flow in https://github.com/facebook/flow/commit/c710c40aa2a115435098d6c0dfeaadb023cd39b8 - -Looks like: - -```js -var a : {| x: number, y: string |} = { x: 0, y: 'foo' }; -``` - -### Bug Fixes - -* Include `typeParameter` location in `ArrowFunctionExpression` ([#126](https://github.com/babel/babylon/pull/126)) (Daniel Tschinder) -* Error on invalid flow type annotation with default assignment ([#122](https://github.com/babel/babylon/pull/122)) (Dan Harper) -* Fix Flow return types on arrow functions ([#124](https://github.com/babel/babylon/pull/124)) (Dan Harper) - -### Misc - -* Add tests for export extensions ([#127](https://github.com/babel/babylon/pull/127)) (Daniel Tschinder) -* Fix Contributing guidelines [skip ci] (Daniel Tschinder) - -## 6.9.2 (2016-09-09) - -The only change is to remove the `babel-runtime` dependency by compiling with Babel's ES2015 loose mode. So using babylon standalone should be smaller. - -## 6.9.1 (2016-08-23) - -This release contains mainly small bugfixes but also updates babylons default mode to es2017. The features for `exponentiationOperator`, `asyncFunctions` and `trailingFunctionCommas` which previously needed to be activated via plugin are now enabled by default and the plugins are now no-ops. - -### Bug Fixes - -- Fix issues with default object params in async functions ([#96](https://github.com/babel/babylon/pull/96)) @danez -- Fix issues with flow-types and async function ([#95](https://github.com/babel/babylon/pull/95)) @danez -- Fix arrow functions with destructuring, types & default value ([#94](https://github.com/babel/babylon/pull/94)) @danharper -- Fix declare class with qualified type identifier ([#97](https://github.com/babel/babylon/pull/97)) @danez -- Remove exponentiationOperator, asyncFunctions, trailingFunctionCommas plugins and enable them by default ([#98](https://github.com/babel/babylon/pull/98)) @danez - -## 6.9.0 (2016-08-16) - -### New syntax support - -- Add JSX spread children ([#42](https://github.com/babel/babylon/pull/42)) @calebmer - -(Be aware that React is not going to support this syntax) - -```js -
- {...todos.map(todo => )} -
-``` - -- Add support for declare module.exports ([#72](https://github.com/babel/babylon/pull/72)) @danez - -```js -declare module "foo" { - declare module.exports: {} -} -``` - -### New Features - -- If supplied, attach filename property to comment node loc. ([#80](https://github.com/babel/babylon/pull/80)) @divmain -- Add identifier name to node loc field ([#90](https://github.com/babel/babylon/pull/90)) @kittens - -### Bug Fixes - -- Fix exponential operator to behave according to spec ([#75](https://github.com/babel/babylon/pull/75)) @danez -- Fix lookahead to not add comments to arrays which are not cloned ([#76](https://github.com/babel/babylon/pull/76)) @danez -- Fix accidental fall-through in Flow type parsing. ([#82](https://github.com/babel/babylon/pull/82)) @xiemaisi -- Only allow declares inside declare module ([#73](https://github.com/babel/babylon/pull/73)) @danez -- Small fix for parsing type parameter declarations ([#83](https://github.com/babel/babylon/pull/83)) @gabelevi -- Fix arrow param locations with flow types ([#57](https://github.com/babel/babylon/pull/57)) @danez -- Fixes SyntaxError position with flow optional type ([#65](https://github.com/babel/babylon/pull/65)) @danez - -### Internal - -- Add codecoverage to tests @danez -- Fix tests to not save expected output if we expect the test to fail @danez -- Make a shallow clone of babel for testing @danez -- chore(package): update cross-env to version 2.0.0 ([#77](https://github.com/babel/babylon/pull/77)) @greenkeeperio-bot -- chore(package): update ava to version 0.16.0 ([#86](https://github.com/babel/babylon/pull/86)) @greenkeeperio-bot -- chore(package): update babel-plugin-istanbul to version 2.0.0 ([#89](https://github.com/babel/babylon/pull/89)) @greenkeeperio-bot -- chore(package): update nyc to version 8.0.0 ([#88](https://github.com/babel/babylon/pull/88)) @greenkeeperio-bot - -## 6.8.4 (2016-07-06) - -### Bug Fixes - -- Fix the location of params, when flow and default value used ([#68](https://github.com/babel/babylon/pull/68)) @danez - -## 6.8.3 (2016-07-02) - -### Bug Fixes - -- Fix performance regression introduced in 6.8.2 with conditionals ([#63](https://github.com/babel/babylon/pull/63)) @danez - -## 6.8.2 (2016-06-24) - -### Bug Fixes - -- Fix parse error with yielding jsx elements in generators `function* it() { yield ; }` ([#31](https://github.com/babel/babylon/pull/31)) @eldereal -- When cloning nodes do not clone its comments ([#24](https://github.com/babel/babylon/pull/24)) @danez -- Fix parse errors when using arrow functions with an spread element and return type `(...props): void => {}` ([#10](https://github.com/babel/babylon/pull/10)) @danez -- Fix leading comments added from previous node ([#23](https://github.com/babel/babylon/pull/23)) @danez -- Fix parse errors with flow's optional arguments `(arg?) => {}` ([#19](https://github.com/babel/babylon/pull/19)) @danez -- Support negative numeric type literals @kittens -- Remove line terminator restriction after await keyword @kittens -- Remove grouped type arrow restriction as it seems flow no longer has it @kittens -- Fix parse error with generic methods that have the name `get` or `set` `class foo { get() {} }` ([#55](https://github.com/babel/babylon/pull/55)) @vkurchatkin -- Fix parse error with arrow functions that have flow type parameter declarations `(x: T): T => x;` ([#54](https://github.com/babel/babylon/pull/54)) @gabelevi - -### Documentation - -- Document AST differences from ESTree ([#41](https://github.com/babel/babylon/pull/41)) @nene -- Move ast spec from babel/babel ([#46](https://github.com/babel/babylon/pull/46)) @hzoo - -### Internal - -- Enable skipped tests ([#16](https://github.com/babel/babylon/pull/16)) @danez -- Add script to test latest version of babylon with babel ([#21](https://github.com/babel/babylon/pull/21)) @danez -- Upgrade test runner ava @kittens -- Add missing generate-identifier-regex script @kittens -- Rename parser context types @kittens -- Add node v6 to travis testing @hzoo -- Update to Unicode v9 ([#45](https://github.com/babel/babylon/pull/45)) @mathiasbynens - -## 6.8.1 (2016-06-06) - -### New Feature - -- Parse type parameter declarations with defaults like `type Foo = T` - -### Bug Fixes -- Type parameter declarations need 1 or more type parameters. -- The existential type `*` is not a valid type parameter. -- The existential type `*` is a primary type - -### Spec Compliance -- The param list for type parameter declarations now consists of `TypeParameter` nodes -- New `TypeParameter` AST Node (replaces using the `Identifier` node before) - -``` -interface TypeParameter <: Node { - bound: TypeAnnotation; - default: TypeAnnotation; - name: string; - variance: "plus" | "minus"; -} -``` - -## 6.8.0 (2016-05-02) - -#### New Feature - -##### Parse Method Parameter Decorators ([#12](https://github.com/babel/babylon/pull/12)) - -> [Method Parameter Decorators](https://goo.gl/8MmCMG) is now a TC39 [stage 0 proposal](https://github.com/tc39/ecma262/blob/master/stage0.md). - -Examples: - -```js -class Foo { - constructor(@foo() x, @bar({ a: 123 }) @baz() y) {} -} - -export default function func(@foo() x, @bar({ a: 123 }) @baz() y) {} - -var obj = { - method(@foo() x, @bar({ a: 123 }) @baz() y) {} -}; -``` - -##### Parse for-await statements (w/ `asyncGenerators` plugin) ([#17](https://github.com/babel/babylon/pull/17)) - -There is also a new node type, `ForAwaitStatement`. - -> [Async generators and for-await](https://github.com/tc39/proposal-async-iteration) are now a [stage 2 proposal](https://github.com/tc39/ecma262#current-proposals). - -Example: - -```js -async function f() { - for await (let x of y); -} -``` diff --git a/node_modules/@babel/parser/LICENSE b/node_modules/@babel/parser/LICENSE deleted file mode 100644 index d4c7fc5..0000000 --- a/node_modules/@babel/parser/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (C) 2012-2014 by various contributors (see AUTHORS) - -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/@babel/parser/README.md b/node_modules/@babel/parser/README.md deleted file mode 100644 index a9463e8..0000000 --- a/node_modules/@babel/parser/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# @babel/parser - -> A JavaScript parser - -See our website [@babel/parser](https://babeljs.io/docs/babel-parser) for more information or the [issues](https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20parser%22+is%3Aopen) associated with this package. - -## Install - -Using npm: - -```sh -npm install --save-dev @babel/parser -``` - -or using yarn: - -```sh -yarn add @babel/parser --dev -``` diff --git a/node_modules/@babel/parser/bin/babel-parser.js b/node_modules/@babel/parser/bin/babel-parser.js deleted file mode 100755 index 4808c5e..0000000 --- a/node_modules/@babel/parser/bin/babel-parser.js +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env node -/* eslint-disable no-var, unicorn/prefer-node-protocol */ - -var parser = require(".."); -var fs = require("fs"); - -var filename = process.argv[2]; -if (!filename) { - console.error("no filename specified"); -} else { - var file = fs.readFileSync(filename, "utf8"); - var ast = parser.parse(file); - - console.log(JSON.stringify(ast, null, " ")); -} diff --git a/node_modules/@babel/parser/lib/index.js b/node_modules/@babel/parser/lib/index.js deleted file mode 100644 index fa6628c..0000000 --- a/node_modules/@babel/parser/lib/index.js +++ /dev/null @@ -1,14582 +0,0 @@ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -function _objectWithoutPropertiesLoose(r, e) { - if (null == r) return {}; - var t = {}; - for (var n in r) if ({}.hasOwnProperty.call(r, n)) { - if (-1 !== e.indexOf(n)) continue; - t[n] = r[n]; - } - return t; -} -class Position { - constructor(line, col, index) { - this.line = void 0; - this.column = void 0; - this.index = void 0; - this.line = line; - this.column = col; - this.index = index; - } -} -class SourceLocation { - constructor(start, end) { - this.start = void 0; - this.end = void 0; - this.filename = void 0; - this.identifierName = void 0; - this.start = start; - this.end = end; - } -} -function createPositionWithColumnOffset(position, columnOffset) { - const { - line, - column, - index - } = position; - return new Position(line, column + columnOffset, index + columnOffset); -} -const code = "BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED"; -var ModuleErrors = { - ImportMetaOutsideModule: { - message: `import.meta may appear only with 'sourceType: "module"'`, - code - }, - ImportOutsideModule: { - message: `'import' and 'export' may appear only with 'sourceType: "module"'`, - code - } -}; -const NodeDescriptions = { - ArrayPattern: "array destructuring pattern", - AssignmentExpression: "assignment expression", - AssignmentPattern: "assignment expression", - ArrowFunctionExpression: "arrow function expression", - ConditionalExpression: "conditional expression", - CatchClause: "catch clause", - ForOfStatement: "for-of statement", - ForInStatement: "for-in statement", - ForStatement: "for-loop", - FormalParameters: "function parameter list", - Identifier: "identifier", - ImportSpecifier: "import specifier", - ImportDefaultSpecifier: "import default specifier", - ImportNamespaceSpecifier: "import namespace specifier", - ObjectPattern: "object destructuring pattern", - ParenthesizedExpression: "parenthesized expression", - RestElement: "rest element", - UpdateExpression: { - true: "prefix operation", - false: "postfix operation" - }, - VariableDeclarator: "variable declaration", - YieldExpression: "yield expression" -}; -const toNodeDescription = node => node.type === "UpdateExpression" ? NodeDescriptions.UpdateExpression[`${node.prefix}`] : NodeDescriptions[node.type]; -var StandardErrors = { - AccessorIsGenerator: ({ - kind - }) => `A ${kind}ter cannot be a generator.`, - ArgumentsInClass: "'arguments' is only allowed in functions and class methods.", - AsyncFunctionInSingleStatementContext: "Async functions can only be declared at the top level or inside a block.", - AwaitBindingIdentifier: "Can not use 'await' as identifier inside an async function.", - AwaitBindingIdentifierInStaticBlock: "Can not use 'await' as identifier inside a static block.", - AwaitExpressionFormalParameter: "'await' is not allowed in async function parameters.", - AwaitUsingNotInAsyncContext: "'await using' is only allowed within async functions and at the top levels of modules.", - AwaitNotInAsyncContext: "'await' is only allowed within async functions and at the top levels of modules.", - BadGetterArity: "A 'get' accessor must not have any formal parameters.", - BadSetterArity: "A 'set' accessor must have exactly one formal parameter.", - BadSetterRestParameter: "A 'set' accessor function argument must not be a rest parameter.", - ConstructorClassField: "Classes may not have a field named 'constructor'.", - ConstructorClassPrivateField: "Classes may not have a private field named '#constructor'.", - ConstructorIsAccessor: "Class constructor may not be an accessor.", - ConstructorIsAsync: "Constructor can't be an async function.", - ConstructorIsGenerator: "Constructor can't be a generator.", - DeclarationMissingInitializer: ({ - kind - }) => `Missing initializer in ${kind} declaration.`, - DecoratorArgumentsOutsideParentheses: "Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.", - DecoratorBeforeExport: "Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.", - DecoratorsBeforeAfterExport: "Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.", - DecoratorConstructor: "Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?", - DecoratorExportClass: "Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.", - DecoratorSemicolon: "Decorators must not be followed by a semicolon.", - DecoratorStaticBlock: "Decorators can't be used with a static block.", - DeferImportRequiresNamespace: 'Only `import defer * as x from "./module"` is valid.', - DeletePrivateField: "Deleting a private field is not allowed.", - DestructureNamedImport: "ES2015 named imports do not destructure. Use another statement for destructuring after the import.", - DuplicateConstructor: "Duplicate constructor in the same class.", - DuplicateDefaultExport: "Only one default export allowed per module.", - DuplicateExport: ({ - exportName - }) => `\`${exportName}\` has already been exported. Exported identifiers must be unique.`, - DuplicateProto: "Redefinition of __proto__ property.", - DuplicateRegExpFlags: "Duplicate regular expression flag.", - ElementAfterRest: "Rest element must be last element.", - EscapedCharNotAnIdentifier: "Invalid Unicode escape.", - ExportBindingIsString: ({ - localName, - exportName - }) => `A string literal cannot be used as an exported binding without \`from\`.\n- Did you mean \`export { '${localName}' as '${exportName}' } from 'some-module'\`?`, - ExportDefaultFromAsIdentifier: "'from' is not allowed as an identifier after 'export default'.", - ForInOfLoopInitializer: ({ - type - }) => `'${type === "ForInStatement" ? "for-in" : "for-of"}' loop variable declaration may not have an initializer.`, - ForInUsing: "For-in loop may not start with 'using' declaration.", - ForOfAsync: "The left-hand side of a for-of loop may not be 'async'.", - ForOfLet: "The left-hand side of a for-of loop may not start with 'let'.", - GeneratorInSingleStatementContext: "Generators can only be declared at the top level or inside a block.", - IllegalBreakContinue: ({ - type - }) => `Unsyntactic ${type === "BreakStatement" ? "break" : "continue"}.`, - IllegalLanguageModeDirective: "Illegal 'use strict' directive in function with non-simple parameter list.", - IllegalReturn: "'return' outside of function.", - ImportAttributesUseAssert: "The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.", - ImportBindingIsString: ({ - importName - }) => `A string literal cannot be used as an imported binding.\n- Did you mean \`import { "${importName}" as foo }\`?`, - ImportCallArity: `\`import()\` requires exactly one or two arguments.`, - ImportCallNotNewExpression: "Cannot use new with import(...).", - ImportCallSpreadArgument: "`...` is not allowed in `import()`.", - ImportJSONBindingNotDefault: "A JSON module can only be imported with `default`.", - ImportReflectionHasAssertion: "`import module x` cannot have assertions.", - ImportReflectionNotBinding: 'Only `import module x from "./module"` is valid.', - IncompatibleRegExpUVFlags: "The 'u' and 'v' regular expression flags cannot be enabled at the same time.", - InvalidBigIntLiteral: "Invalid BigIntLiteral.", - InvalidCodePoint: "Code point out of bounds.", - InvalidCoverDiscardElement: "'void' must be followed by an expression when not used in a binding position.", - InvalidCoverInitializedName: "Invalid shorthand property initializer.", - InvalidDecimal: "Invalid decimal.", - InvalidDigit: ({ - radix - }) => `Expected number in radix ${radix}.`, - InvalidEscapeSequence: "Bad character escape sequence.", - InvalidEscapeSequenceTemplate: "Invalid escape sequence in template.", - InvalidEscapedReservedWord: ({ - reservedWord - }) => `Escape sequence in keyword ${reservedWord}.`, - InvalidIdentifier: ({ - identifierName - }) => `Invalid identifier ${identifierName}.`, - InvalidLhs: ({ - ancestor - }) => `Invalid left-hand side in ${toNodeDescription(ancestor)}.`, - InvalidLhsBinding: ({ - ancestor - }) => `Binding invalid left-hand side in ${toNodeDescription(ancestor)}.`, - InvalidLhsOptionalChaining: ({ - ancestor - }) => `Invalid optional chaining in the left-hand side of ${toNodeDescription(ancestor)}.`, - InvalidNumber: "Invalid number.", - InvalidOrMissingExponent: "Floating-point numbers require a valid exponent after the 'e'.", - InvalidOrUnexpectedToken: ({ - unexpected - }) => `Unexpected character '${unexpected}'.`, - InvalidParenthesizedAssignment: "Invalid parenthesized assignment pattern.", - InvalidPrivateFieldResolution: ({ - identifierName - }) => `Private name #${identifierName} is not defined.`, - InvalidPropertyBindingPattern: "Binding member expression.", - InvalidRecordProperty: "Only properties and spread elements are allowed in record definitions.", - InvalidRestAssignmentPattern: "Invalid rest operator's argument.", - LabelRedeclaration: ({ - labelName - }) => `Label '${labelName}' is already declared.`, - LetInLexicalBinding: "'let' is disallowed as a lexically bound name.", - LineTerminatorBeforeArrow: "No line break is allowed before '=>'.", - MalformedRegExpFlags: "Invalid regular expression flag.", - MissingClassName: "A class name is required.", - MissingEqInAssignment: "Only '=' operator can be used for specifying default value.", - MissingSemicolon: "Missing semicolon.", - MissingPlugin: ({ - missingPlugin - }) => `This experimental syntax requires enabling the parser plugin: ${missingPlugin.map(name => JSON.stringify(name)).join(", ")}.`, - MissingOneOfPlugins: ({ - missingPlugin - }) => `This experimental syntax requires enabling one of the following parser plugin(s): ${missingPlugin.map(name => JSON.stringify(name)).join(", ")}.`, - MissingUnicodeEscape: "Expecting Unicode escape sequence \\uXXXX.", - MixingCoalesceWithLogical: "Nullish coalescing operator(??) requires parens when mixing with logical operators.", - ModuleAttributeDifferentFromType: "The only accepted module attribute is `type`.", - ModuleAttributeInvalidValue: "Only string literals are allowed as module attribute values.", - ModuleAttributesWithDuplicateKeys: ({ - key - }) => `Duplicate key "${key}" is not allowed in module attributes.`, - ModuleExportNameHasLoneSurrogate: ({ - surrogateCharCode - }) => `An export name cannot include a lone surrogate, found '\\u${surrogateCharCode.toString(16)}'.`, - ModuleExportUndefined: ({ - localName - }) => `Export '${localName}' is not defined.`, - MultipleDefaultsInSwitch: "Multiple default clauses.", - NewlineAfterThrow: "Illegal newline after throw.", - NoCatchOrFinally: "Missing catch or finally clause.", - NumberIdentifier: "Identifier directly after number.", - NumericSeparatorInEscapeSequence: "Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.", - ObsoleteAwaitStar: "'await*' has been removed from the async functions proposal. Use Promise.all() instead.", - OptionalChainingNoNew: "Constructors in/after an Optional Chain are not allowed.", - OptionalChainingNoTemplate: "Tagged Template Literals are not allowed in optionalChain.", - OverrideOnConstructor: "'override' modifier cannot appear on a constructor declaration.", - ParamDupe: "Argument name clash.", - PatternHasAccessor: "Object pattern can't contain getter or setter.", - PatternHasMethod: "Object pattern can't contain methods.", - PrivateInExpectedIn: ({ - identifierName - }) => `Private names are only allowed in property accesses (\`obj.#${identifierName}\`) or in \`in\` expressions (\`#${identifierName} in obj\`).`, - PrivateNameRedeclaration: ({ - identifierName - }) => `Duplicate private name #${identifierName}.`, - RecordExpressionBarIncorrectEndSyntaxType: "Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - RecordExpressionBarIncorrectStartSyntaxType: "Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - RecordExpressionHashIncorrectStartSyntaxType: "Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.", - RecordNoProto: "'__proto__' is not allowed in Record expressions.", - RestTrailingComma: "Unexpected trailing comma after rest element.", - SloppyFunction: "In non-strict mode code, functions can only be declared at top level or inside a block.", - SloppyFunctionAnnexB: "In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.", - SourcePhaseImportRequiresDefault: 'Only `import source x from "./module"` is valid.', - StaticPrototype: "Classes may not have static property named prototype.", - SuperNotAllowed: "`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?", - SuperPrivateField: "Private fields can't be accessed on super.", - TrailingDecorator: "Decorators must be attached to a class element.", - TupleExpressionBarIncorrectEndSyntaxType: "Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - TupleExpressionBarIncorrectStartSyntaxType: "Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - TupleExpressionHashIncorrectStartSyntaxType: "Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.", - UnexpectedArgumentPlaceholder: "Unexpected argument placeholder.", - UnexpectedAwaitAfterPipelineBody: 'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.', - UnexpectedDigitAfterHash: "Unexpected digit after hash token.", - UnexpectedImportExport: "'import' and 'export' may only appear at the top level.", - UnexpectedKeyword: ({ - keyword - }) => `Unexpected keyword '${keyword}'.`, - UnexpectedLeadingDecorator: "Leading decorators must be attached to a class declaration.", - UnexpectedLexicalDeclaration: "Lexical declaration cannot appear in a single-statement context.", - UnexpectedNewTarget: "`new.target` can only be used in functions or class properties.", - UnexpectedNumericSeparator: "A numeric separator is only allowed between two digits.", - UnexpectedPrivateField: "Unexpected private name.", - UnexpectedReservedWord: ({ - reservedWord - }) => `Unexpected reserved word '${reservedWord}'.`, - UnexpectedSuper: "'super' is only allowed in object methods and classes.", - UnexpectedToken: ({ - expected, - unexpected - }) => `Unexpected token${unexpected ? ` '${unexpected}'.` : ""}${expected ? `, expected "${expected}"` : ""}`, - UnexpectedTokenUnaryExponentiation: "Illegal expression. Wrap left hand side or entire exponentiation in parentheses.", - UnexpectedUsingDeclaration: "Using declaration cannot appear in the top level when source type is `script` or in the bare case statement.", - UnexpectedVoidPattern: "Unexpected void binding.", - UnsupportedBind: "Binding should be performed on object property.", - UnsupportedDecoratorExport: "A decorated export must export a class declaration.", - UnsupportedDefaultExport: "Only expressions, functions or classes are allowed as the `default` export.", - UnsupportedImport: "`import` can only be used in `import()` or `import.meta`.", - UnsupportedMetaProperty: ({ - target, - onlyValidPropertyName - }) => `The only valid meta property for ${target} is ${target}.${onlyValidPropertyName}.`, - UnsupportedParameterDecorator: "Decorators cannot be used to decorate parameters.", - UnsupportedPropertyDecorator: "Decorators cannot be used to decorate object literal properties.", - UnsupportedSuper: "'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).", - UnterminatedComment: "Unterminated comment.", - UnterminatedRegExp: "Unterminated regular expression.", - UnterminatedString: "Unterminated string constant.", - UnterminatedTemplate: "Unterminated template.", - UsingDeclarationExport: "Using declaration cannot be exported.", - UsingDeclarationHasBindingPattern: "Using declaration cannot have destructuring patterns.", - VarRedeclaration: ({ - identifierName - }) => `Identifier '${identifierName}' has already been declared.`, - VoidPatternCatchClauseParam: "A void binding can not be the catch clause parameter. Use `try { ... } catch { ... }` if you want to discard the caught error.", - VoidPatternInitializer: "A void binding may not have an initializer.", - YieldBindingIdentifier: "Can not use 'yield' as identifier inside a generator.", - YieldInParameter: "Yield expression is not allowed in formal parameters.", - YieldNotInGeneratorFunction: "'yield' is only allowed within generator functions.", - ZeroDigitNumericSeparator: "Numeric separator can not be used after leading 0." -}; -var StrictModeErrors = { - StrictDelete: "Deleting local variable in strict mode.", - StrictEvalArguments: ({ - referenceName - }) => `Assigning to '${referenceName}' in strict mode.`, - StrictEvalArgumentsBinding: ({ - bindingName - }) => `Binding '${bindingName}' in strict mode.`, - StrictFunction: "In strict mode code, functions can only be declared at top level or inside a block.", - StrictNumericEscape: "The only valid numeric escape in strict mode is '\\0'.", - StrictOctalLiteral: "Legacy octal literals are not allowed in strict mode.", - StrictWith: "'with' in strict mode." -}; -var ParseExpressionErrors = { - ParseExpressionEmptyInput: "Unexpected parseExpression() input: The input is empty or contains only comments.", - ParseExpressionExpectsEOF: ({ - unexpected - }) => `Unexpected parseExpression() input: The input should contain exactly one expression, but the first expression is followed by the unexpected character \`${String.fromCodePoint(unexpected)}\`.` -}; -const UnparenthesizedPipeBodyDescriptions = new Set(["ArrowFunctionExpression", "AssignmentExpression", "ConditionalExpression", "YieldExpression"]); -var PipelineOperatorErrors = Object.assign({ - PipeBodyIsTighter: "Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.", - PipeTopicRequiresHackPipes: 'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.', - PipeTopicUnbound: "Topic reference is unbound; it must be inside a pipe body.", - PipeTopicUnconfiguredToken: ({ - token - }) => `Invalid topic token ${token}. In order to use ${token} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${token}" }.`, - PipeTopicUnused: "Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.", - PipeUnparenthesizedBody: ({ - type - }) => `Hack-style pipe body cannot be an unparenthesized ${toNodeDescription({ - type - })}; please wrap it in parentheses.` -}, { - PipelineBodyNoArrow: 'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.', - PipelineBodySequenceExpression: "Pipeline body may not be a comma-separated sequence expression.", - PipelineHeadSequenceExpression: "Pipeline head should not be a comma-separated sequence expression.", - PipelineTopicUnused: "Pipeline is in topic style but does not use topic reference.", - PrimaryTopicNotAllowed: "Topic reference was used in a lexical context without topic binding.", - PrimaryTopicRequiresSmartPipeline: 'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.' -}); -const _excluded = ["message"]; -function defineHidden(obj, key, value) { - Object.defineProperty(obj, key, { - enumerable: false, - configurable: true, - value - }); -} -function toParseErrorConstructor({ - toMessage, - code, - reasonCode, - syntaxPlugin -}) { - const hasMissingPlugin = reasonCode === "MissingPlugin" || reasonCode === "MissingOneOfPlugins"; - const oldReasonCodes = { - AccessorCannotDeclareThisParameter: "AccesorCannotDeclareThisParameter", - AccessorCannotHaveTypeParameters: "AccesorCannotHaveTypeParameters", - ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference: "ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference", - SetAccessorCannotHaveOptionalParameter: "SetAccesorCannotHaveOptionalParameter", - SetAccessorCannotHaveRestParameter: "SetAccesorCannotHaveRestParameter", - SetAccessorCannotHaveReturnType: "SetAccesorCannotHaveReturnType" - }; - if (oldReasonCodes[reasonCode]) { - reasonCode = oldReasonCodes[reasonCode]; - } - return function constructor(loc, details) { - const error = new SyntaxError(); - error.code = code; - error.reasonCode = reasonCode; - error.loc = loc; - error.pos = loc.index; - error.syntaxPlugin = syntaxPlugin; - if (hasMissingPlugin) { - error.missingPlugin = details.missingPlugin; - } - defineHidden(error, "clone", function clone(overrides = {}) { - var _overrides$loc; - const { - line, - column, - index - } = (_overrides$loc = overrides.loc) != null ? _overrides$loc : loc; - return constructor(new Position(line, column, index), Object.assign({}, details, overrides.details)); - }); - defineHidden(error, "details", details); - Object.defineProperty(error, "message", { - configurable: true, - get() { - const message = `${toMessage(details)} (${loc.line}:${loc.column})`; - this.message = message; - return message; - }, - set(value) { - Object.defineProperty(this, "message", { - value, - writable: true - }); - } - }); - return error; - }; -} -function ParseErrorEnum(argument, syntaxPlugin) { - if (Array.isArray(argument)) { - return parseErrorTemplates => ParseErrorEnum(parseErrorTemplates, argument[0]); - } - const ParseErrorConstructors = {}; - for (const reasonCode of Object.keys(argument)) { - const template = argument[reasonCode]; - const _ref = typeof template === "string" ? { - message: () => template - } : typeof template === "function" ? { - message: template - } : template, - { - message - } = _ref, - rest = _objectWithoutPropertiesLoose(_ref, _excluded); - const toMessage = typeof message === "string" ? () => message : message; - ParseErrorConstructors[reasonCode] = toParseErrorConstructor(Object.assign({ - code: "BABEL_PARSER_SYNTAX_ERROR", - reasonCode, - toMessage - }, syntaxPlugin ? { - syntaxPlugin - } : {}, rest)); - } - return ParseErrorConstructors; -} -const Errors = Object.assign({}, ParseErrorEnum(ModuleErrors), ParseErrorEnum(StandardErrors), ParseErrorEnum(StrictModeErrors), ParseErrorEnum(ParseExpressionErrors), ParseErrorEnum`pipelineOperator`(PipelineOperatorErrors)); -function createDefaultOptions() { - return { - sourceType: "script", - sourceFilename: undefined, - startIndex: 0, - startColumn: 0, - startLine: 1, - allowAwaitOutsideFunction: false, - allowReturnOutsideFunction: false, - allowNewTargetOutsideFunction: false, - allowImportExportEverywhere: false, - allowSuperOutsideMethod: false, - allowUndeclaredExports: false, - allowYieldOutsideFunction: false, - plugins: [], - strictMode: undefined, - ranges: false, - tokens: false, - createImportExpressions: false, - createParenthesizedExpressions: false, - errorRecovery: false, - attachComment: true, - annexB: true - }; -} -function getOptions(opts) { - const options = createDefaultOptions(); - if (opts == null) { - return options; - } - if (opts.annexB != null && opts.annexB !== false) { - throw new Error("The `annexB` option can only be set to `false`."); - } - for (const key of Object.keys(options)) { - if (opts[key] != null) options[key] = opts[key]; - } - if (options.startLine === 1) { - if (opts.startIndex == null && options.startColumn > 0) { - options.startIndex = options.startColumn; - } else if (opts.startColumn == null && options.startIndex > 0) { - options.startColumn = options.startIndex; - } - } else if (opts.startColumn == null || opts.startIndex == null) { - if (opts.startIndex != null) { - throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`."); - } - } - if (options.sourceType === "commonjs") { - if (opts.allowAwaitOutsideFunction != null) { - throw new Error("The `allowAwaitOutsideFunction` option cannot be used with `sourceType: 'commonjs'`."); - } - if (opts.allowReturnOutsideFunction != null) { - throw new Error("`sourceType: 'commonjs'` implies `allowReturnOutsideFunction: true`, please remove the `allowReturnOutsideFunction` option or use `sourceType: 'script'`."); - } - if (opts.allowNewTargetOutsideFunction != null) { - throw new Error("`sourceType: 'commonjs'` implies `allowNewTargetOutsideFunction: true`, please remove the `allowNewTargetOutsideFunction` option or use `sourceType: 'script'`."); - } - } - return options; -} -const { - defineProperty -} = Object; -const toUnenumerable = (object, key) => { - if (object) { - defineProperty(object, key, { - enumerable: false, - value: object[key] - }); - } -}; -function toESTreeLocation(node) { - toUnenumerable(node.loc.start, "index"); - toUnenumerable(node.loc.end, "index"); - return node; -} -var estree = superClass => class ESTreeParserMixin extends superClass { - parse() { - const file = toESTreeLocation(super.parse()); - if (this.optionFlags & 256) { - file.tokens = file.tokens.map(toESTreeLocation); - } - return file; - } - parseRegExpLiteral({ - pattern, - flags - }) { - let regex = null; - try { - regex = new RegExp(pattern, flags); - } catch (_) {} - const node = this.estreeParseLiteral(regex); - node.regex = { - pattern, - flags - }; - return node; - } - parseBigIntLiteral(value) { - let bigInt; - try { - bigInt = BigInt(value); - } catch (_unused) { - bigInt = null; - } - const node = this.estreeParseLiteral(bigInt); - node.bigint = String(node.value || value); - return node; - } - parseDecimalLiteral(value) { - const decimal = null; - const node = this.estreeParseLiteral(decimal); - node.decimal = String(node.value || value); - return node; - } - estreeParseLiteral(value) { - return this.parseLiteral(value, "Literal"); - } - parseStringLiteral(value) { - return this.estreeParseLiteral(value); - } - parseNumericLiteral(value) { - return this.estreeParseLiteral(value); - } - parseNullLiteral() { - return this.estreeParseLiteral(null); - } - parseBooleanLiteral(value) { - return this.estreeParseLiteral(value); - } - estreeParseChainExpression(node, endLoc) { - const chain = this.startNodeAtNode(node); - chain.expression = node; - return this.finishNodeAt(chain, "ChainExpression", endLoc); - } - directiveToStmt(directive) { - const expression = directive.value; - delete directive.value; - this.castNodeTo(expression, "Literal"); - expression.raw = expression.extra.raw; - expression.value = expression.extra.expressionValue; - const stmt = this.castNodeTo(directive, "ExpressionStatement"); - stmt.expression = expression; - stmt.directive = expression.extra.rawValue; - delete expression.extra; - return stmt; - } - fillOptionalPropertiesForTSESLint(node) {} - cloneEstreeStringLiteral(node) { - const { - start, - end, - loc, - range, - raw, - value - } = node; - const cloned = Object.create(node.constructor.prototype); - cloned.type = "Literal"; - cloned.start = start; - cloned.end = end; - cloned.loc = loc; - cloned.range = range; - cloned.raw = raw; - cloned.value = value; - return cloned; - } - initFunction(node, isAsync) { - super.initFunction(node, isAsync); - node.expression = false; - } - checkDeclaration(node) { - if (node != null && this.isObjectProperty(node)) { - this.checkDeclaration(node.value); - } else { - super.checkDeclaration(node); - } - } - getObjectOrClassMethodParams(method) { - return method.value.params; - } - isValidDirective(stmt) { - var _stmt$expression$extr; - return stmt.type === "ExpressionStatement" && stmt.expression.type === "Literal" && typeof stmt.expression.value === "string" && !((_stmt$expression$extr = stmt.expression.extra) != null && _stmt$expression$extr.parenthesized); - } - parseBlockBody(node, allowDirectives, topLevel, end, afterBlockParse) { - super.parseBlockBody(node, allowDirectives, topLevel, end, afterBlockParse); - const directiveStatements = node.directives.map(d => this.directiveToStmt(d)); - node.body = directiveStatements.concat(node.body); - delete node.directives; - } - parsePrivateName() { - const node = super.parsePrivateName(); - if (!this.getPluginOption("estree", "classFeatures")) { - return node; - } - return this.convertPrivateNameToPrivateIdentifier(node); - } - convertPrivateNameToPrivateIdentifier(node) { - const name = super.getPrivateNameSV(node); - delete node.id; - node.name = name; - return this.castNodeTo(node, "PrivateIdentifier"); - } - isPrivateName(node) { - if (!this.getPluginOption("estree", "classFeatures")) { - return super.isPrivateName(node); - } - return node.type === "PrivateIdentifier"; - } - getPrivateNameSV(node) { - if (!this.getPluginOption("estree", "classFeatures")) { - return super.getPrivateNameSV(node); - } - return node.name; - } - parseLiteral(value, type) { - const node = super.parseLiteral(value, type); - node.raw = node.extra.raw; - delete node.extra; - return node; - } - parseFunctionBody(node, allowExpression, isMethod = false) { - super.parseFunctionBody(node, allowExpression, isMethod); - node.expression = node.body.type !== "BlockStatement"; - } - parseMethod(node, isGenerator, isAsync, isConstructor, allowDirectSuper, type, inClassScope = false) { - let funcNode = this.startNode(); - funcNode.kind = node.kind; - funcNode = super.parseMethod(funcNode, isGenerator, isAsync, isConstructor, allowDirectSuper, type, inClassScope); - delete funcNode.kind; - const { - typeParameters - } = node; - if (typeParameters) { - delete node.typeParameters; - funcNode.typeParameters = typeParameters; - this.resetStartLocationFromNode(funcNode, typeParameters); - } - const valueNode = this.castNodeTo(funcNode, "FunctionExpression"); - node.value = valueNode; - if (type === "ClassPrivateMethod") { - node.computed = false; - } - if (type === "ObjectMethod") { - if (node.kind === "method") { - node.kind = "init"; - } - node.shorthand = false; - return this.finishNode(node, "Property"); - } else { - return this.finishNode(node, "MethodDefinition"); - } - } - nameIsConstructor(key) { - if (key.type === "Literal") return key.value === "constructor"; - return super.nameIsConstructor(key); - } - parseClassProperty(...args) { - const propertyNode = super.parseClassProperty(...args); - if (!this.getPluginOption("estree", "classFeatures")) { - return propertyNode; - } - this.castNodeTo(propertyNode, "PropertyDefinition"); - return propertyNode; - } - parseClassPrivateProperty(...args) { - const propertyNode = super.parseClassPrivateProperty(...args); - if (!this.getPluginOption("estree", "classFeatures")) { - return propertyNode; - } - this.castNodeTo(propertyNode, "PropertyDefinition"); - propertyNode.computed = false; - return propertyNode; - } - parseClassAccessorProperty(node) { - const accessorPropertyNode = super.parseClassAccessorProperty(node); - if (!this.getPluginOption("estree", "classFeatures")) { - return accessorPropertyNode; - } - if (accessorPropertyNode.abstract && this.hasPlugin("typescript")) { - delete accessorPropertyNode.abstract; - this.castNodeTo(accessorPropertyNode, "TSAbstractAccessorProperty"); - } else { - this.castNodeTo(accessorPropertyNode, "AccessorProperty"); - } - return accessorPropertyNode; - } - parseObjectProperty(prop, startLoc, isPattern, refExpressionErrors) { - const node = super.parseObjectProperty(prop, startLoc, isPattern, refExpressionErrors); - if (node) { - node.kind = "init"; - this.castNodeTo(node, "Property"); - } - return node; - } - finishObjectProperty(node) { - node.kind = "init"; - return this.finishNode(node, "Property"); - } - isValidLVal(type, disallowCallExpression, isUnparenthesizedInAssign, binding) { - return type === "Property" ? "value" : super.isValidLVal(type, disallowCallExpression, isUnparenthesizedInAssign, binding); - } - isAssignable(node, isBinding) { - if (node != null && this.isObjectProperty(node)) { - return this.isAssignable(node.value, isBinding); - } - return super.isAssignable(node, isBinding); - } - toAssignable(node, isLHS = false) { - if (node != null && this.isObjectProperty(node)) { - const { - key, - value - } = node; - if (this.isPrivateName(key)) { - this.classScope.usePrivateName(this.getPrivateNameSV(key), key.loc.start); - } - this.toAssignable(value, isLHS); - } else { - super.toAssignable(node, isLHS); - } - } - toAssignableObjectExpressionProp(prop, isLast, isLHS) { - if (prop.type === "Property" && (prop.kind === "get" || prop.kind === "set")) { - this.raise(Errors.PatternHasAccessor, prop.key); - } else if (prop.type === "Property" && prop.method) { - this.raise(Errors.PatternHasMethod, prop.key); - } else { - super.toAssignableObjectExpressionProp(prop, isLast, isLHS); - } - } - finishCallExpression(unfinished, optional) { - const node = super.finishCallExpression(unfinished, optional); - if (node.callee.type === "Import") { - var _ref, _ref2; - this.castNodeTo(node, "ImportExpression"); - node.source = node.arguments[0]; - node.options = (_ref = node.arguments[1]) != null ? _ref : null; - node.attributes = (_ref2 = node.arguments[1]) != null ? _ref2 : null; - delete node.arguments; - delete node.callee; - } else if (node.type === "OptionalCallExpression") { - this.castNodeTo(node, "CallExpression"); - } else { - node.optional = false; - } - return node; - } - toReferencedArguments(node) { - if (node.type === "ImportExpression") { - return; - } - super.toReferencedArguments(node); - } - parseExport(unfinished, decorators) { - const exportStartLoc = this.state.lastTokStartLoc; - const node = super.parseExport(unfinished, decorators); - switch (node.type) { - case "ExportAllDeclaration": - node.exported = null; - break; - case "ExportNamedDeclaration": - if (node.specifiers.length === 1 && node.specifiers[0].type === "ExportNamespaceSpecifier") { - this.castNodeTo(node, "ExportAllDeclaration"); - node.exported = node.specifiers[0].exported; - delete node.specifiers; - } - case "ExportDefaultDeclaration": - { - var _declaration$decorato; - const { - declaration - } = node; - if ((declaration == null ? void 0 : declaration.type) === "ClassDeclaration" && ((_declaration$decorato = declaration.decorators) == null ? void 0 : _declaration$decorato.length) > 0 && declaration.start === node.start) { - this.resetStartLocation(node, exportStartLoc); - } - } - break; - } - return node; - } - stopParseSubscript(base, state) { - const node = super.stopParseSubscript(base, state); - if (state.optionalChainMember) { - return this.estreeParseChainExpression(node, base.loc.end); - } - return node; - } - parseMember(base, startLoc, state, computed, optional) { - const node = super.parseMember(base, startLoc, state, computed, optional); - if (node.type === "OptionalMemberExpression") { - this.castNodeTo(node, "MemberExpression"); - } else { - node.optional = false; - } - return node; - } - isOptionalMemberExpression(node) { - if (node.type === "ChainExpression") { - return node.expression.type === "MemberExpression"; - } - return super.isOptionalMemberExpression(node); - } - hasPropertyAsPrivateName(node) { - if (node.type === "ChainExpression") { - node = node.expression; - } - return super.hasPropertyAsPrivateName(node); - } - isObjectProperty(node) { - return node.type === "Property" && node.kind === "init" && !node.method; - } - isObjectMethod(node) { - return node.type === "Property" && (node.method || node.kind === "get" || node.kind === "set"); - } - castNodeTo(node, type) { - const result = super.castNodeTo(node, type); - this.fillOptionalPropertiesForTSESLint(result); - return result; - } - cloneIdentifier(node) { - const cloned = super.cloneIdentifier(node); - this.fillOptionalPropertiesForTSESLint(cloned); - return cloned; - } - cloneStringLiteral(node) { - if (node.type === "Literal") { - return this.cloneEstreeStringLiteral(node); - } - return super.cloneStringLiteral(node); - } - finishNodeAt(node, type, endLoc) { - return toESTreeLocation(super.finishNodeAt(node, type, endLoc)); - } - finishNode(node, type) { - const result = super.finishNode(node, type); - this.fillOptionalPropertiesForTSESLint(result); - return result; - } - resetStartLocation(node, startLoc) { - super.resetStartLocation(node, startLoc); - toESTreeLocation(node); - } - resetEndLocation(node, endLoc = this.state.lastTokEndLoc) { - super.resetEndLocation(node, endLoc); - toESTreeLocation(node); - } -}; -class TokContext { - constructor(token, preserveSpace) { - this.token = void 0; - this.preserveSpace = void 0; - this.token = token; - this.preserveSpace = !!preserveSpace; - } -} -const types = { - brace: new TokContext("{"), - j_oTag: new TokContext("...", true) -}; -types.template = new TokContext("`", true); -const beforeExpr = true; -const startsExpr = true; -const isLoop = true; -const isAssign = true; -const prefix = true; -const postfix = true; -class ExportedTokenType { - constructor(label, conf = {}) { - this.label = void 0; - this.keyword = void 0; - this.beforeExpr = void 0; - this.startsExpr = void 0; - this.rightAssociative = void 0; - this.isLoop = void 0; - this.isAssign = void 0; - this.prefix = void 0; - this.postfix = void 0; - this.binop = void 0; - this.label = label; - this.keyword = conf.keyword; - this.beforeExpr = !!conf.beforeExpr; - this.startsExpr = !!conf.startsExpr; - this.rightAssociative = !!conf.rightAssociative; - this.isLoop = !!conf.isLoop; - this.isAssign = !!conf.isAssign; - this.prefix = !!conf.prefix; - this.postfix = !!conf.postfix; - this.binop = conf.binop != null ? conf.binop : null; - this.updateContext = null; - } -} -const keywords$1 = new Map(); -function createKeyword(name, options = {}) { - options.keyword = name; - const token = createToken(name, options); - keywords$1.set(name, token); - return token; -} -function createBinop(name, binop) { - return createToken(name, { - beforeExpr, - binop - }); -} -let tokenTypeCounter = -1; -const tokenTypes = []; -const tokenLabels = []; -const tokenBinops = []; -const tokenBeforeExprs = []; -const tokenStartsExprs = []; -const tokenPrefixes = []; -function createToken(name, options = {}) { - var _options$binop, _options$beforeExpr, _options$startsExpr, _options$prefix; - ++tokenTypeCounter; - tokenLabels.push(name); - tokenBinops.push((_options$binop = options.binop) != null ? _options$binop : -1); - tokenBeforeExprs.push((_options$beforeExpr = options.beforeExpr) != null ? _options$beforeExpr : false); - tokenStartsExprs.push((_options$startsExpr = options.startsExpr) != null ? _options$startsExpr : false); - tokenPrefixes.push((_options$prefix = options.prefix) != null ? _options$prefix : false); - tokenTypes.push(new ExportedTokenType(name, options)); - return tokenTypeCounter; -} -function createKeywordLike(name, options = {}) { - var _options$binop2, _options$beforeExpr2, _options$startsExpr2, _options$prefix2; - ++tokenTypeCounter; - keywords$1.set(name, tokenTypeCounter); - tokenLabels.push(name); - tokenBinops.push((_options$binop2 = options.binop) != null ? _options$binop2 : -1); - tokenBeforeExprs.push((_options$beforeExpr2 = options.beforeExpr) != null ? _options$beforeExpr2 : false); - tokenStartsExprs.push((_options$startsExpr2 = options.startsExpr) != null ? _options$startsExpr2 : false); - tokenPrefixes.push((_options$prefix2 = options.prefix) != null ? _options$prefix2 : false); - tokenTypes.push(new ExportedTokenType("name", options)); - return tokenTypeCounter; -} -const tt = { - bracketL: createToken("[", { - beforeExpr, - startsExpr - }), - bracketHashL: createToken("#[", { - beforeExpr, - startsExpr - }), - bracketBarL: createToken("[|", { - beforeExpr, - startsExpr - }), - bracketR: createToken("]"), - bracketBarR: createToken("|]"), - braceL: createToken("{", { - beforeExpr, - startsExpr - }), - braceBarL: createToken("{|", { - beforeExpr, - startsExpr - }), - braceHashL: createToken("#{", { - beforeExpr, - startsExpr - }), - braceR: createToken("}"), - braceBarR: createToken("|}"), - parenL: createToken("(", { - beforeExpr, - startsExpr - }), - parenR: createToken(")"), - comma: createToken(",", { - beforeExpr - }), - semi: createToken(";", { - beforeExpr - }), - colon: createToken(":", { - beforeExpr - }), - doubleColon: createToken("::", { - beforeExpr - }), - dot: createToken("."), - question: createToken("?", { - beforeExpr - }), - questionDot: createToken("?."), - arrow: createToken("=>", { - beforeExpr - }), - template: createToken("template"), - ellipsis: createToken("...", { - beforeExpr - }), - backQuote: createToken("`", { - startsExpr - }), - dollarBraceL: createToken("${", { - beforeExpr, - startsExpr - }), - templateTail: createToken("...`", { - startsExpr - }), - templateNonTail: createToken("...${", { - beforeExpr, - startsExpr - }), - at: createToken("@"), - hash: createToken("#", { - startsExpr - }), - interpreterDirective: createToken("#!..."), - eq: createToken("=", { - beforeExpr, - isAssign - }), - assign: createToken("_=", { - beforeExpr, - isAssign - }), - slashAssign: createToken("_=", { - beforeExpr, - isAssign - }), - xorAssign: createToken("_=", { - beforeExpr, - isAssign - }), - moduloAssign: createToken("_=", { - beforeExpr, - isAssign - }), - incDec: createToken("++/--", { - prefix, - postfix, - startsExpr - }), - bang: createToken("!", { - beforeExpr, - prefix, - startsExpr - }), - tilde: createToken("~", { - beforeExpr, - prefix, - startsExpr - }), - doubleCaret: createToken("^^", { - startsExpr - }), - doubleAt: createToken("@@", { - startsExpr - }), - pipeline: createBinop("|>", 0), - nullishCoalescing: createBinop("??", 1), - logicalOR: createBinop("||", 1), - logicalAND: createBinop("&&", 2), - bitwiseOR: createBinop("|", 3), - bitwiseXOR: createBinop("^", 4), - bitwiseAND: createBinop("&", 5), - equality: createBinop("==/!=/===/!==", 6), - lt: createBinop("/<=/>=", 7), - gt: createBinop("/<=/>=", 7), - relational: createBinop("/<=/>=", 7), - bitShift: createBinop("<>/>>>", 8), - bitShiftL: createBinop("<>/>>>", 8), - bitShiftR: createBinop("<>/>>>", 8), - plusMin: createToken("+/-", { - beforeExpr, - binop: 9, - prefix, - startsExpr - }), - modulo: createToken("%", { - binop: 10, - startsExpr - }), - star: createToken("*", { - binop: 10 - }), - slash: createBinop("/", 10), - exponent: createToken("**", { - beforeExpr, - binop: 11, - rightAssociative: true - }), - _in: createKeyword("in", { - beforeExpr, - binop: 7 - }), - _instanceof: createKeyword("instanceof", { - beforeExpr, - binop: 7 - }), - _break: createKeyword("break"), - _case: createKeyword("case", { - beforeExpr - }), - _catch: createKeyword("catch"), - _continue: createKeyword("continue"), - _debugger: createKeyword("debugger"), - _default: createKeyword("default", { - beforeExpr - }), - _else: createKeyword("else", { - beforeExpr - }), - _finally: createKeyword("finally"), - _function: createKeyword("function", { - startsExpr - }), - _if: createKeyword("if"), - _return: createKeyword("return", { - beforeExpr - }), - _switch: createKeyword("switch"), - _throw: createKeyword("throw", { - beforeExpr, - prefix, - startsExpr - }), - _try: createKeyword("try"), - _var: createKeyword("var"), - _const: createKeyword("const"), - _with: createKeyword("with"), - _new: createKeyword("new", { - beforeExpr, - startsExpr - }), - _this: createKeyword("this", { - startsExpr - }), - _super: createKeyword("super", { - startsExpr - }), - _class: createKeyword("class", { - startsExpr - }), - _extends: createKeyword("extends", { - beforeExpr - }), - _export: createKeyword("export"), - _import: createKeyword("import", { - startsExpr - }), - _null: createKeyword("null", { - startsExpr - }), - _true: createKeyword("true", { - startsExpr - }), - _false: createKeyword("false", { - startsExpr - }), - _typeof: createKeyword("typeof", { - beforeExpr, - prefix, - startsExpr - }), - _void: createKeyword("void", { - beforeExpr, - prefix, - startsExpr - }), - _delete: createKeyword("delete", { - beforeExpr, - prefix, - startsExpr - }), - _do: createKeyword("do", { - isLoop, - beforeExpr - }), - _for: createKeyword("for", { - isLoop - }), - _while: createKeyword("while", { - isLoop - }), - _as: createKeywordLike("as", { - startsExpr - }), - _assert: createKeywordLike("assert", { - startsExpr - }), - _async: createKeywordLike("async", { - startsExpr - }), - _await: createKeywordLike("await", { - startsExpr - }), - _defer: createKeywordLike("defer", { - startsExpr - }), - _from: createKeywordLike("from", { - startsExpr - }), - _get: createKeywordLike("get", { - startsExpr - }), - _let: createKeywordLike("let", { - startsExpr - }), - _meta: createKeywordLike("meta", { - startsExpr - }), - _of: createKeywordLike("of", { - startsExpr - }), - _sent: createKeywordLike("sent", { - startsExpr - }), - _set: createKeywordLike("set", { - startsExpr - }), - _source: createKeywordLike("source", { - startsExpr - }), - _static: createKeywordLike("static", { - startsExpr - }), - _using: createKeywordLike("using", { - startsExpr - }), - _yield: createKeywordLike("yield", { - startsExpr - }), - _asserts: createKeywordLike("asserts", { - startsExpr - }), - _checks: createKeywordLike("checks", { - startsExpr - }), - _exports: createKeywordLike("exports", { - startsExpr - }), - _global: createKeywordLike("global", { - startsExpr - }), - _implements: createKeywordLike("implements", { - startsExpr - }), - _intrinsic: createKeywordLike("intrinsic", { - startsExpr - }), - _infer: createKeywordLike("infer", { - startsExpr - }), - _is: createKeywordLike("is", { - startsExpr - }), - _mixins: createKeywordLike("mixins", { - startsExpr - }), - _proto: createKeywordLike("proto", { - startsExpr - }), - _require: createKeywordLike("require", { - startsExpr - }), - _satisfies: createKeywordLike("satisfies", { - startsExpr - }), - _keyof: createKeywordLike("keyof", { - startsExpr - }), - _readonly: createKeywordLike("readonly", { - startsExpr - }), - _unique: createKeywordLike("unique", { - startsExpr - }), - _abstract: createKeywordLike("abstract", { - startsExpr - }), - _declare: createKeywordLike("declare", { - startsExpr - }), - _enum: createKeywordLike("enum", { - startsExpr - }), - _module: createKeywordLike("module", { - startsExpr - }), - _namespace: createKeywordLike("namespace", { - startsExpr - }), - _interface: createKeywordLike("interface", { - startsExpr - }), - _type: createKeywordLike("type", { - startsExpr - }), - _opaque: createKeywordLike("opaque", { - startsExpr - }), - name: createToken("name", { - startsExpr - }), - placeholder: createToken("%%", { - startsExpr - }), - string: createToken("string", { - startsExpr - }), - num: createToken("num", { - startsExpr - }), - bigint: createToken("bigint", { - startsExpr - }), - decimal: createToken("decimal", { - startsExpr - }), - regexp: createToken("regexp", { - startsExpr - }), - privateName: createToken("#name", { - startsExpr - }), - eof: createToken("eof"), - jsxName: createToken("jsxName"), - jsxText: createToken("jsxText", { - beforeExpr - }), - jsxTagStart: createToken("jsxTagStart", { - startsExpr - }), - jsxTagEnd: createToken("jsxTagEnd") -}; -function tokenIsIdentifier(token) { - return token >= 93 && token <= 133; -} -function tokenKeywordOrIdentifierIsKeyword(token) { - return token <= 92; -} -function tokenIsKeywordOrIdentifier(token) { - return token >= 58 && token <= 133; -} -function tokenIsLiteralPropertyName(token) { - return token >= 58 && token <= 137; -} -function tokenComesBeforeExpression(token) { - return tokenBeforeExprs[token]; -} -function tokenCanStartExpression(token) { - return tokenStartsExprs[token]; -} -function tokenIsAssignment(token) { - return token >= 29 && token <= 33; -} -function tokenIsFlowInterfaceOrTypeOrOpaque(token) { - return token >= 129 && token <= 131; -} -function tokenIsLoop(token) { - return token >= 90 && token <= 92; -} -function tokenIsKeyword(token) { - return token >= 58 && token <= 92; -} -function tokenIsOperator(token) { - return token >= 39 && token <= 59; -} -function tokenIsPostfix(token) { - return token === 34; -} -function tokenIsPrefix(token) { - return tokenPrefixes[token]; -} -function tokenIsTSTypeOperator(token) { - return token >= 121 && token <= 123; -} -function tokenIsTSDeclarationStart(token) { - return token >= 124 && token <= 130; -} -function tokenLabelName(token) { - return tokenLabels[token]; -} -function tokenOperatorPrecedence(token) { - return tokenBinops[token]; -} -function tokenIsRightAssociative(token) { - return token === 57; -} -function tokenIsTemplate(token) { - return token >= 24 && token <= 25; -} -function getExportedToken(token) { - return tokenTypes[token]; -} -tokenTypes[8].updateContext = context => { - context.pop(); -}; -tokenTypes[5].updateContext = tokenTypes[7].updateContext = tokenTypes[23].updateContext = context => { - context.push(types.brace); -}; -tokenTypes[22].updateContext = context => { - if (context[context.length - 1] === types.template) { - context.pop(); - } else { - context.push(types.template); - } -}; -tokenTypes[143].updateContext = context => { - context.push(types.j_expr, types.j_oTag); -}; -let nonASCIIidentifierStartChars = "\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u0870-\u0887\u0889-\u088f\u08a0-\u08c9\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u09fc\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c5c\u0c5d\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cdc-\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d04-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u1711\u171f-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4c\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c8a\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31bf\u31f0-\u31ff\u3400-\u4dbf\u4e00-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7dc\ua7f1-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab69\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc"; -let nonASCIIidentifierChars = "\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0897-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0cf3\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ece\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\u1add\u1ae0-\u1aeb\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1dff\u200c\u200d\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\u30fb\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f\uff65"; -const nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]"); -const nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]"); -nonASCIIidentifierStartChars = nonASCIIidentifierChars = null; -const astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 4, 51, 13, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 7, 25, 39, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 39, 27, 10, 22, 251, 41, 7, 1, 17, 5, 57, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 31, 9, 2, 0, 3, 0, 2, 37, 2, 0, 26, 0, 2, 0, 45, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 200, 32, 32, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 24, 43, 261, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 26, 3994, 6, 582, 6842, 29, 1763, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 433, 44, 212, 63, 33, 24, 3, 24, 45, 74, 6, 0, 67, 12, 65, 1, 2, 0, 15, 4, 10, 7381, 42, 31, 98, 114, 8702, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 229, 29, 3, 0, 208, 30, 2, 2, 2, 1, 2, 6, 3, 4, 10, 1, 225, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4381, 3, 5773, 3, 7472, 16, 621, 2467, 541, 1507, 4938, 6, 8489]; -const astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 7, 9, 32, 4, 318, 1, 78, 5, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 68, 8, 2, 0, 3, 0, 2, 3, 2, 4, 2, 0, 15, 1, 83, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 7, 19, 58, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 199, 7, 137, 9, 54, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 55, 9, 266, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 10, 5350, 0, 7, 14, 11465, 27, 2343, 9, 87, 9, 39, 4, 60, 6, 26, 9, 535, 9, 470, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4178, 9, 519, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 245, 1, 2, 9, 233, 0, 3, 0, 8, 1, 6, 0, 475, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; -function isInAstralSet(code, set) { - let pos = 0x10000; - for (let i = 0, length = set.length; i < length; i += 2) { - pos += set[i]; - if (pos > code) return false; - pos += set[i + 1]; - if (pos >= code) return true; - } - return false; -} -function isIdentifierStart(code) { - if (code < 65) return code === 36; - if (code <= 90) return true; - if (code < 97) return code === 95; - if (code <= 122) return true; - if (code <= 0xffff) { - return code >= 0xaa && nonASCIIidentifierStart.test(String.fromCharCode(code)); - } - return isInAstralSet(code, astralIdentifierStartCodes); -} -function isIdentifierChar(code) { - if (code < 48) return code === 36; - if (code < 58) return true; - if (code < 65) return false; - if (code <= 90) return true; - if (code < 97) return code === 95; - if (code <= 122) return true; - if (code <= 0xffff) { - return code >= 0xaa && nonASCIIidentifier.test(String.fromCharCode(code)); - } - return isInAstralSet(code, astralIdentifierStartCodes) || isInAstralSet(code, astralIdentifierCodes); -} -const reservedWords = { - keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"], - strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"], - strictBind: ["eval", "arguments"] -}; -const keywords = new Set(reservedWords.keyword); -const reservedWordsStrictSet = new Set(reservedWords.strict); -const reservedWordsStrictBindSet = new Set(reservedWords.strictBind); -function isReservedWord(word, inModule) { - return inModule && word === "await" || word === "enum"; -} -function isStrictReservedWord(word, inModule) { - return isReservedWord(word, inModule) || reservedWordsStrictSet.has(word); -} -function isStrictBindOnlyReservedWord(word) { - return reservedWordsStrictBindSet.has(word); -} -function isStrictBindReservedWord(word, inModule) { - return isStrictReservedWord(word, inModule) || isStrictBindOnlyReservedWord(word); -} -function isKeyword(word) { - return keywords.has(word); -} -function isIteratorStart(current, next, next2) { - return current === 64 && next === 64 && isIdentifierStart(next2); -} -const reservedWordLikeSet = new Set(["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete", "implements", "interface", "let", "package", "private", "protected", "public", "static", "yield", "eval", "arguments", "enum", "await"]); -function canBeReservedWord(word) { - return reservedWordLikeSet.has(word); -} -class Scope { - constructor(flags) { - this.flags = 0; - this.names = new Map(); - this.firstLexicalName = ""; - this.flags = flags; - } -} -class ScopeHandler { - constructor(parser, inModule) { - this.parser = void 0; - this.scopeStack = []; - this.inModule = void 0; - this.undefinedExports = new Map(); - this.parser = parser; - this.inModule = inModule; - } - get inTopLevel() { - return (this.currentScope().flags & 1) > 0; - } - get inFunction() { - return (this.currentVarScopeFlags() & 2) > 0; - } - get allowSuper() { - return (this.currentThisScopeFlags() & 16) > 0; - } - get allowDirectSuper() { - return (this.currentThisScopeFlags() & 32) > 0; - } - get allowNewTarget() { - return (this.currentThisScopeFlags() & 512) > 0; - } - get inClass() { - return (this.currentThisScopeFlags() & 64) > 0; - } - get inClassAndNotInNonArrowFunction() { - const flags = this.currentThisScopeFlags(); - return (flags & 64) > 0 && (flags & 2) === 0; - } - get inStaticBlock() { - for (let i = this.scopeStack.length - 1;; i--) { - const { - flags - } = this.scopeStack[i]; - if (flags & 128) { - return true; - } - if (flags & (1667 | 64)) { - return false; - } - } - } - get inNonArrowFunction() { - return (this.currentThisScopeFlags() & 2) > 0; - } - get inBareCaseStatement() { - return (this.currentScope().flags & 256) > 0; - } - get treatFunctionsAsVar() { - return this.treatFunctionsAsVarInScope(this.currentScope()); - } - createScope(flags) { - return new Scope(flags); - } - enter(flags) { - this.scopeStack.push(this.createScope(flags)); - } - exit() { - const scope = this.scopeStack.pop(); - return scope.flags; - } - treatFunctionsAsVarInScope(scope) { - return !!(scope.flags & (2 | 128) || !this.parser.inModule && scope.flags & 1); - } - declareName(name, bindingType, loc) { - let scope = this.currentScope(); - if (bindingType & 8 || bindingType & 16) { - this.checkRedeclarationInScope(scope, name, bindingType, loc); - let type = scope.names.get(name) || 0; - if (bindingType & 16) { - type = type | 4; - } else { - if (!scope.firstLexicalName) { - scope.firstLexicalName = name; - } - type = type | 2; - } - scope.names.set(name, type); - if (bindingType & 8) { - this.maybeExportDefined(scope, name); - } - } else if (bindingType & 4) { - for (let i = this.scopeStack.length - 1; i >= 0; --i) { - scope = this.scopeStack[i]; - this.checkRedeclarationInScope(scope, name, bindingType, loc); - scope.names.set(name, (scope.names.get(name) || 0) | 1); - this.maybeExportDefined(scope, name); - if (scope.flags & 1667) break; - } - } - if (this.parser.inModule && scope.flags & 1) { - this.undefinedExports.delete(name); - } - } - maybeExportDefined(scope, name) { - if (this.parser.inModule && scope.flags & 1) { - this.undefinedExports.delete(name); - } - } - checkRedeclarationInScope(scope, name, bindingType, loc) { - if (this.isRedeclaredInScope(scope, name, bindingType)) { - this.parser.raise(Errors.VarRedeclaration, loc, { - identifierName: name - }); - } - } - isRedeclaredInScope(scope, name, bindingType) { - if (!(bindingType & 1)) return false; - if (bindingType & 8) { - return scope.names.has(name); - } - const type = scope.names.get(name) || 0; - if (bindingType & 16) { - return (type & 2) > 0 || !this.treatFunctionsAsVarInScope(scope) && (type & 1) > 0; - } - return (type & 2) > 0 && !(scope.flags & 8 && scope.firstLexicalName === name) || !this.treatFunctionsAsVarInScope(scope) && (type & 4) > 0; - } - checkLocalExport(id) { - const { - name - } = id; - const topLevelScope = this.scopeStack[0]; - if (!topLevelScope.names.has(name)) { - this.undefinedExports.set(name, id.loc.start); - } - } - currentScope() { - return this.scopeStack[this.scopeStack.length - 1]; - } - currentVarScopeFlags() { - for (let i = this.scopeStack.length - 1;; i--) { - const { - flags - } = this.scopeStack[i]; - if (flags & 1667) { - return flags; - } - } - } - currentThisScopeFlags() { - for (let i = this.scopeStack.length - 1;; i--) { - const { - flags - } = this.scopeStack[i]; - if (flags & (1667 | 64) && !(flags & 4)) { - return flags; - } - } - } -} -class FlowScope extends Scope { - constructor(...args) { - super(...args); - this.declareFunctions = new Set(); - } -} -class FlowScopeHandler extends ScopeHandler { - createScope(flags) { - return new FlowScope(flags); - } - declareName(name, bindingType, loc) { - const scope = this.currentScope(); - if (bindingType & 2048) { - this.checkRedeclarationInScope(scope, name, bindingType, loc); - this.maybeExportDefined(scope, name); - scope.declareFunctions.add(name); - return; - } - super.declareName(name, bindingType, loc); - } - isRedeclaredInScope(scope, name, bindingType) { - if (super.isRedeclaredInScope(scope, name, bindingType)) return true; - if (bindingType & 2048 && !scope.declareFunctions.has(name)) { - const type = scope.names.get(name); - return (type & 4) > 0 || (type & 2) > 0; - } - return false; - } - checkLocalExport(id) { - if (!this.scopeStack[0].declareFunctions.has(id.name)) { - super.checkLocalExport(id); - } - } -} -const reservedTypes = new Set(["_", "any", "bool", "boolean", "empty", "extends", "false", "interface", "mixed", "null", "number", "static", "string", "true", "typeof", "void"]); -const FlowErrors = ParseErrorEnum`flow`({ - AmbiguousConditionalArrow: "Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.", - AmbiguousDeclareModuleKind: "Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.", - AssignReservedType: ({ - reservedType - }) => `Cannot overwrite reserved type ${reservedType}.`, - DeclareClassElement: "The `declare` modifier can only appear on class fields.", - DeclareClassFieldInitializer: "Initializers are not allowed in fields with the `declare` modifier.", - DuplicateDeclareModuleExports: "Duplicate `declare module.exports` statement.", - EnumBooleanMemberNotInitialized: ({ - memberName, - enumName - }) => `Boolean enum members need to be initialized. Use either \`${memberName} = true,\` or \`${memberName} = false,\` in enum \`${enumName}\`.`, - EnumDuplicateMemberName: ({ - memberName, - enumName - }) => `Enum member names need to be unique, but the name \`${memberName}\` has already been used before in enum \`${enumName}\`.`, - EnumInconsistentMemberValues: ({ - enumName - }) => `Enum \`${enumName}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`, - EnumInvalidExplicitType: ({ - invalidEnumType, - enumName - }) => `Enum type \`${invalidEnumType}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${enumName}\`.`, - EnumInvalidExplicitTypeUnknownSupplied: ({ - enumName - }) => `Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${enumName}\`.`, - EnumInvalidMemberInitializerPrimaryType: ({ - enumName, - memberName, - explicitType - }) => `Enum \`${enumName}\` has type \`${explicitType}\`, so the initializer of \`${memberName}\` needs to be a ${explicitType} literal.`, - EnumInvalidMemberInitializerSymbolType: ({ - enumName, - memberName - }) => `Symbol enum members cannot be initialized. Use \`${memberName},\` in enum \`${enumName}\`.`, - EnumInvalidMemberInitializerUnknownType: ({ - enumName, - memberName - }) => `The enum member initializer for \`${memberName}\` needs to be a literal (either a boolean, number, or string) in enum \`${enumName}\`.`, - EnumInvalidMemberName: ({ - enumName, - memberName, - suggestion - }) => `Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${memberName}\`, consider using \`${suggestion}\`, in enum \`${enumName}\`.`, - EnumNumberMemberNotInitialized: ({ - enumName, - memberName - }) => `Number enum members need to be initialized, e.g. \`${memberName} = 1\` in enum \`${enumName}\`.`, - EnumStringMemberInconsistentlyInitialized: ({ - enumName - }) => `String enum members need to consistently either all use initializers, or use no initializers, in enum \`${enumName}\`.`, - GetterMayNotHaveThisParam: "A getter cannot have a `this` parameter.", - ImportReflectionHasImportType: "An `import module` declaration can not use `type` or `typeof` keyword.", - ImportTypeShorthandOnlyInPureImport: "The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.", - InexactInsideExact: "Explicit inexact syntax cannot appear inside an explicit exact object type.", - InexactInsideNonObject: "Explicit inexact syntax cannot appear in class or interface definitions.", - InexactVariance: "Explicit inexact syntax cannot have variance.", - InvalidNonTypeImportInDeclareModule: "Imports within a `declare module` body must always be `import type` or `import typeof`.", - MissingTypeParamDefault: "Type parameter declaration needs a default, since a preceding type parameter declaration has a default.", - NestedDeclareModule: "`declare module` cannot be used inside another `declare module`.", - NestedFlowComment: "Cannot have a flow comment inside another flow comment.", - PatternIsOptional: Object.assign({ - message: "A binding pattern parameter cannot be optional in an implementation signature." - }, { - reasonCode: "OptionalBindingPattern" - }), - SetterMayNotHaveThisParam: "A setter cannot have a `this` parameter.", - SpreadVariance: "Spread properties cannot have variance.", - ThisParamAnnotationRequired: "A type annotation is required for the `this` parameter.", - ThisParamBannedInConstructor: "Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.", - ThisParamMayNotBeOptional: "The `this` parameter cannot be optional.", - ThisParamMustBeFirst: "The `this` parameter must be the first function parameter.", - ThisParamNoDefault: "The `this` parameter may not have a default value.", - TypeBeforeInitializer: "Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.", - TypeCastInPattern: "The type cast expression is expected to be wrapped with parenthesis.", - UnexpectedExplicitInexactInObject: "Explicit inexact syntax must appear at the end of an inexact object.", - UnexpectedReservedType: ({ - reservedType - }) => `Unexpected reserved type ${reservedType}.`, - UnexpectedReservedUnderscore: "`_` is only allowed as a type argument to call or new.", - UnexpectedSpaceBetweenModuloChecks: "Spaces between `%` and `checks` are not allowed here.", - UnexpectedSpreadType: "Spread operator cannot appear in class or interface definitions.", - UnexpectedSubtractionOperand: 'Unexpected token, expected "number" or "bigint".', - UnexpectedTokenAfterTypeParameter: "Expected an arrow function after this type parameter declaration.", - UnexpectedTypeParameterBeforeAsyncArrowFunction: "Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.", - UnsupportedDeclareExportKind: ({ - unsupportedExportKind, - suggestion - }) => `\`declare export ${unsupportedExportKind}\` is not supported. Use \`${suggestion}\` instead.`, - UnsupportedStatementInDeclareModule: "Only declares and type imports are allowed inside declare module.", - UnterminatedFlowComment: "Unterminated flow-comment." -}); -function isEsModuleType(bodyElement) { - return bodyElement.type === "DeclareExportAllDeclaration" || bodyElement.type === "DeclareExportDeclaration" && (!bodyElement.declaration || bodyElement.declaration.type !== "TypeAlias" && bodyElement.declaration.type !== "InterfaceDeclaration"); -} -function hasTypeImportKind(node) { - return node.importKind === "type" || node.importKind === "typeof"; -} -const exportSuggestions = { - const: "declare export var", - let: "declare export var", - type: "export type", - interface: "export interface" -}; -function partition(list, test) { - const list1 = []; - const list2 = []; - for (let i = 0; i < list.length; i++) { - (test(list[i], i, list) ? list1 : list2).push(list[i]); - } - return [list1, list2]; -} -const FLOW_PRAGMA_REGEX = /\*?\s*@((?:no)?flow)\b/; -var flow = superClass => class FlowParserMixin extends superClass { - constructor(...args) { - super(...args); - this.flowPragma = undefined; - } - getScopeHandler() { - return FlowScopeHandler; - } - shouldParseTypes() { - return this.getPluginOption("flow", "all") || this.flowPragma === "flow"; - } - finishToken(type, val) { - if (type !== 134 && type !== 13 && type !== 28) { - if (this.flowPragma === undefined) { - this.flowPragma = null; - } - } - super.finishToken(type, val); - } - addComment(comment) { - if (this.flowPragma === undefined) { - const matches = FLOW_PRAGMA_REGEX.exec(comment.value); - if (!matches) ;else if (matches[1] === "flow") { - this.flowPragma = "flow"; - } else if (matches[1] === "noflow") { - this.flowPragma = "noflow"; - } else { - throw new Error("Unexpected flow pragma"); - } - } - super.addComment(comment); - } - flowParseTypeInitialiser(tok) { - const oldInType = this.state.inType; - this.state.inType = true; - this.expect(tok || 14); - const type = this.flowParseType(); - this.state.inType = oldInType; - return type; - } - flowParsePredicate() { - const node = this.startNode(); - const moduloLoc = this.state.startLoc; - this.next(); - this.expectContextual(110); - if (this.state.lastTokStartLoc.index > moduloLoc.index + 1) { - this.raise(FlowErrors.UnexpectedSpaceBetweenModuloChecks, moduloLoc); - } - if (this.eat(10)) { - node.value = super.parseExpression(); - this.expect(11); - return this.finishNode(node, "DeclaredPredicate"); - } else { - return this.finishNode(node, "InferredPredicate"); - } - } - flowParseTypeAndPredicateInitialiser() { - const oldInType = this.state.inType; - this.state.inType = true; - this.expect(14); - let type = null; - let predicate = null; - if (this.match(54)) { - this.state.inType = oldInType; - predicate = this.flowParsePredicate(); - } else { - type = this.flowParseType(); - this.state.inType = oldInType; - if (this.match(54)) { - predicate = this.flowParsePredicate(); - } - } - return [type, predicate]; - } - flowParseDeclareClass(node) { - this.next(); - this.flowParseInterfaceish(node, true); - return this.finishNode(node, "DeclareClass"); - } - flowParseDeclareFunction(node) { - this.next(); - const id = node.id = this.parseIdentifier(); - const typeNode = this.startNode(); - const typeContainer = this.startNode(); - if (this.match(47)) { - typeNode.typeParameters = this.flowParseTypeParameterDeclaration(); - } else { - typeNode.typeParameters = null; - } - this.expect(10); - const tmp = this.flowParseFunctionTypeParams(); - typeNode.params = tmp.params; - typeNode.rest = tmp.rest; - typeNode.this = tmp._this; - this.expect(11); - [typeNode.returnType, node.predicate] = this.flowParseTypeAndPredicateInitialiser(); - typeContainer.typeAnnotation = this.finishNode(typeNode, "FunctionTypeAnnotation"); - id.typeAnnotation = this.finishNode(typeContainer, "TypeAnnotation"); - this.resetEndLocation(id); - this.semicolon(); - this.scope.declareName(node.id.name, 2048, node.id.loc.start); - return this.finishNode(node, "DeclareFunction"); - } - flowParseDeclare(node, insideModule) { - if (this.match(80)) { - return this.flowParseDeclareClass(node); - } else if (this.match(68)) { - return this.flowParseDeclareFunction(node); - } else if (this.match(74)) { - return this.flowParseDeclareVariable(node); - } else if (this.eatContextual(127)) { - if (this.match(16)) { - return this.flowParseDeclareModuleExports(node); - } else { - if (insideModule) { - this.raise(FlowErrors.NestedDeclareModule, this.state.lastTokStartLoc); - } - return this.flowParseDeclareModule(node); - } - } else if (this.isContextual(130)) { - return this.flowParseDeclareTypeAlias(node); - } else if (this.isContextual(131)) { - return this.flowParseDeclareOpaqueType(node); - } else if (this.isContextual(129)) { - return this.flowParseDeclareInterface(node); - } else if (this.match(82)) { - return this.flowParseDeclareExportDeclaration(node, insideModule); - } - throw this.unexpected(); - } - flowParseDeclareVariable(node) { - this.next(); - node.id = this.flowParseTypeAnnotatableIdentifier(true); - this.scope.declareName(node.id.name, 5, node.id.loc.start); - this.semicolon(); - return this.finishNode(node, "DeclareVariable"); - } - flowParseDeclareModule(node) { - this.scope.enter(0); - if (this.match(134)) { - node.id = super.parseExprAtom(); - } else { - node.id = this.parseIdentifier(); - } - const bodyNode = node.body = this.startNode(); - const body = bodyNode.body = []; - this.expect(5); - while (!this.match(8)) { - const bodyNode = this.startNode(); - if (this.match(83)) { - this.next(); - if (!this.isContextual(130) && !this.match(87)) { - this.raise(FlowErrors.InvalidNonTypeImportInDeclareModule, this.state.lastTokStartLoc); - } - body.push(super.parseImport(bodyNode)); - } else { - this.expectContextual(125, FlowErrors.UnsupportedStatementInDeclareModule); - body.push(this.flowParseDeclare(bodyNode, true)); - } - } - this.scope.exit(); - this.expect(8); - this.finishNode(bodyNode, "BlockStatement"); - let kind = null; - let hasModuleExport = false; - body.forEach(bodyElement => { - if (isEsModuleType(bodyElement)) { - if (kind === "CommonJS") { - this.raise(FlowErrors.AmbiguousDeclareModuleKind, bodyElement); - } - kind = "ES"; - } else if (bodyElement.type === "DeclareModuleExports") { - if (hasModuleExport) { - this.raise(FlowErrors.DuplicateDeclareModuleExports, bodyElement); - } - if (kind === "ES") { - this.raise(FlowErrors.AmbiguousDeclareModuleKind, bodyElement); - } - kind = "CommonJS"; - hasModuleExport = true; - } - }); - node.kind = kind || "CommonJS"; - return this.finishNode(node, "DeclareModule"); - } - flowParseDeclareExportDeclaration(node, insideModule) { - this.expect(82); - if (this.eat(65)) { - if (this.match(68) || this.match(80)) { - node.declaration = this.flowParseDeclare(this.startNode()); - } else { - node.declaration = this.flowParseType(); - this.semicolon(); - } - node.default = true; - return this.finishNode(node, "DeclareExportDeclaration"); - } else { - if (this.match(75) || this.isLet() || (this.isContextual(130) || this.isContextual(129)) && !insideModule) { - const label = this.state.value; - throw this.raise(FlowErrors.UnsupportedDeclareExportKind, this.state.startLoc, { - unsupportedExportKind: label, - suggestion: exportSuggestions[label] - }); - } - if (this.match(74) || this.match(68) || this.match(80) || this.isContextual(131)) { - node.declaration = this.flowParseDeclare(this.startNode()); - node.default = false; - return this.finishNode(node, "DeclareExportDeclaration"); - } else if (this.match(55) || this.match(5) || this.isContextual(129) || this.isContextual(130) || this.isContextual(131)) { - node = this.parseExport(node, null); - if (node.type === "ExportNamedDeclaration") { - node.default = false; - delete node.exportKind; - return this.castNodeTo(node, "DeclareExportDeclaration"); - } else { - return this.castNodeTo(node, "DeclareExportAllDeclaration"); - } - } - } - throw this.unexpected(); - } - flowParseDeclareModuleExports(node) { - this.next(); - this.expectContextual(111); - node.typeAnnotation = this.flowParseTypeAnnotation(); - this.semicolon(); - return this.finishNode(node, "DeclareModuleExports"); - } - flowParseDeclareTypeAlias(node) { - this.next(); - const finished = this.flowParseTypeAlias(node); - this.castNodeTo(finished, "DeclareTypeAlias"); - return finished; - } - flowParseDeclareOpaqueType(node) { - this.next(); - const finished = this.flowParseOpaqueType(node, true); - this.castNodeTo(finished, "DeclareOpaqueType"); - return finished; - } - flowParseDeclareInterface(node) { - this.next(); - this.flowParseInterfaceish(node, false); - return this.finishNode(node, "DeclareInterface"); - } - flowParseInterfaceish(node, isClass) { - node.id = this.flowParseRestrictedIdentifier(!isClass, true); - this.scope.declareName(node.id.name, isClass ? 17 : 8201, node.id.loc.start); - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterDeclaration(); - } else { - node.typeParameters = null; - } - node.extends = []; - if (this.eat(81)) { - do { - node.extends.push(this.flowParseInterfaceExtends()); - } while (!isClass && this.eat(12)); - } - if (isClass) { - node.implements = []; - node.mixins = []; - if (this.eatContextual(117)) { - do { - node.mixins.push(this.flowParseInterfaceExtends()); - } while (this.eat(12)); - } - if (this.eatContextual(113)) { - do { - node.implements.push(this.flowParseInterfaceExtends()); - } while (this.eat(12)); - } - } - node.body = this.flowParseObjectType({ - allowStatic: isClass, - allowExact: false, - allowSpread: false, - allowProto: isClass, - allowInexact: false - }); - } - flowParseInterfaceExtends() { - const node = this.startNode(); - node.id = this.flowParseQualifiedTypeIdentifier(); - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterInstantiation(); - } else { - node.typeParameters = null; - } - return this.finishNode(node, "InterfaceExtends"); - } - flowParseInterface(node) { - this.flowParseInterfaceish(node, false); - return this.finishNode(node, "InterfaceDeclaration"); - } - checkNotUnderscore(word) { - if (word === "_") { - this.raise(FlowErrors.UnexpectedReservedUnderscore, this.state.startLoc); - } - } - checkReservedType(word, startLoc, declaration) { - if (!reservedTypes.has(word)) return; - this.raise(declaration ? FlowErrors.AssignReservedType : FlowErrors.UnexpectedReservedType, startLoc, { - reservedType: word - }); - } - flowParseRestrictedIdentifier(liberal, declaration) { - this.checkReservedType(this.state.value, this.state.startLoc, declaration); - return this.parseIdentifier(liberal); - } - flowParseTypeAlias(node) { - node.id = this.flowParseRestrictedIdentifier(false, true); - this.scope.declareName(node.id.name, 8201, node.id.loc.start); - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterDeclaration(); - } else { - node.typeParameters = null; - } - node.right = this.flowParseTypeInitialiser(29); - this.semicolon(); - return this.finishNode(node, "TypeAlias"); - } - flowParseOpaqueType(node, declare) { - this.expectContextual(130); - node.id = this.flowParseRestrictedIdentifier(true, true); - this.scope.declareName(node.id.name, 8201, node.id.loc.start); - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterDeclaration(); - } else { - node.typeParameters = null; - } - node.supertype = null; - if (this.match(14)) { - node.supertype = this.flowParseTypeInitialiser(14); - } - node.impltype = null; - if (!declare) { - node.impltype = this.flowParseTypeInitialiser(29); - } - this.semicolon(); - return this.finishNode(node, "OpaqueType"); - } - flowParseTypeParameter(requireDefault = false) { - const nodeStartLoc = this.state.startLoc; - const node = this.startNode(); - const variance = this.flowParseVariance(); - const ident = this.flowParseTypeAnnotatableIdentifier(); - node.name = ident.name; - node.variance = variance; - node.bound = ident.typeAnnotation; - if (this.match(29)) { - this.eat(29); - node.default = this.flowParseType(); - } else { - if (requireDefault) { - this.raise(FlowErrors.MissingTypeParamDefault, nodeStartLoc); - } - } - return this.finishNode(node, "TypeParameter"); - } - flowParseTypeParameterDeclaration() { - const oldInType = this.state.inType; - const node = this.startNode(); - node.params = []; - this.state.inType = true; - if (this.match(47) || this.match(143)) { - this.next(); - } else { - this.unexpected(); - } - let defaultRequired = false; - do { - const typeParameter = this.flowParseTypeParameter(defaultRequired); - node.params.push(typeParameter); - if (typeParameter.default) { - defaultRequired = true; - } - if (!this.match(48)) { - this.expect(12); - } - } while (!this.match(48)); - this.expect(48); - this.state.inType = oldInType; - return this.finishNode(node, "TypeParameterDeclaration"); - } - flowInTopLevelContext(cb) { - if (this.curContext() !== types.brace) { - const oldContext = this.state.context; - this.state.context = [oldContext[0]]; - try { - return cb(); - } finally { - this.state.context = oldContext; - } - } else { - return cb(); - } - } - flowParseTypeParameterInstantiationInExpression() { - if (this.reScan_lt() !== 47) return; - return this.flowParseTypeParameterInstantiation(); - } - flowParseTypeParameterInstantiation() { - const node = this.startNode(); - const oldInType = this.state.inType; - this.state.inType = true; - node.params = []; - this.flowInTopLevelContext(() => { - this.expect(47); - const oldNoAnonFunctionType = this.state.noAnonFunctionType; - this.state.noAnonFunctionType = false; - while (!this.match(48)) { - node.params.push(this.flowParseType()); - if (!this.match(48)) { - this.expect(12); - } - } - this.state.noAnonFunctionType = oldNoAnonFunctionType; - }); - this.state.inType = oldInType; - if (!this.state.inType && this.curContext() === types.brace) { - this.reScan_lt_gt(); - } - this.expect(48); - return this.finishNode(node, "TypeParameterInstantiation"); - } - flowParseTypeParameterInstantiationCallOrNew() { - if (this.reScan_lt() !== 47) return null; - const node = this.startNode(); - const oldInType = this.state.inType; - node.params = []; - this.state.inType = true; - this.expect(47); - while (!this.match(48)) { - node.params.push(this.flowParseTypeOrImplicitInstantiation()); - if (!this.match(48)) { - this.expect(12); - } - } - this.expect(48); - this.state.inType = oldInType; - return this.finishNode(node, "TypeParameterInstantiation"); - } - flowParseInterfaceType() { - const node = this.startNode(); - this.expectContextual(129); - node.extends = []; - if (this.eat(81)) { - do { - node.extends.push(this.flowParseInterfaceExtends()); - } while (this.eat(12)); - } - node.body = this.flowParseObjectType({ - allowStatic: false, - allowExact: false, - allowSpread: false, - allowProto: false, - allowInexact: false - }); - return this.finishNode(node, "InterfaceTypeAnnotation"); - } - flowParseObjectPropertyKey() { - return this.match(135) || this.match(134) ? super.parseExprAtom() : this.parseIdentifier(true); - } - flowParseObjectTypeIndexer(node, isStatic, variance) { - node.static = isStatic; - if (this.lookahead().type === 14) { - node.id = this.flowParseObjectPropertyKey(); - node.key = this.flowParseTypeInitialiser(); - } else { - node.id = null; - node.key = this.flowParseType(); - } - this.expect(3); - node.value = this.flowParseTypeInitialiser(); - node.variance = variance; - return this.finishNode(node, "ObjectTypeIndexer"); - } - flowParseObjectTypeInternalSlot(node, isStatic) { - node.static = isStatic; - node.id = this.flowParseObjectPropertyKey(); - this.expect(3); - this.expect(3); - if (this.match(47) || this.match(10)) { - node.method = true; - node.optional = false; - node.value = this.flowParseObjectTypeMethodish(this.startNodeAt(node.loc.start)); - } else { - node.method = false; - if (this.eat(17)) { - node.optional = true; - } - node.value = this.flowParseTypeInitialiser(); - } - return this.finishNode(node, "ObjectTypeInternalSlot"); - } - flowParseObjectTypeMethodish(node) { - node.params = []; - node.rest = null; - node.typeParameters = null; - node.this = null; - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterDeclaration(); - } - this.expect(10); - if (this.match(78)) { - node.this = this.flowParseFunctionTypeParam(true); - node.this.name = null; - if (!this.match(11)) { - this.expect(12); - } - } - while (!this.match(11) && !this.match(21)) { - node.params.push(this.flowParseFunctionTypeParam(false)); - if (!this.match(11)) { - this.expect(12); - } - } - if (this.eat(21)) { - node.rest = this.flowParseFunctionTypeParam(false); - } - this.expect(11); - node.returnType = this.flowParseTypeInitialiser(); - return this.finishNode(node, "FunctionTypeAnnotation"); - } - flowParseObjectTypeCallProperty(node, isStatic) { - const valueNode = this.startNode(); - node.static = isStatic; - node.value = this.flowParseObjectTypeMethodish(valueNode); - return this.finishNode(node, "ObjectTypeCallProperty"); - } - flowParseObjectType({ - allowStatic, - allowExact, - allowSpread, - allowProto, - allowInexact - }) { - const oldInType = this.state.inType; - this.state.inType = true; - const nodeStart = this.startNode(); - nodeStart.callProperties = []; - nodeStart.properties = []; - nodeStart.indexers = []; - nodeStart.internalSlots = []; - let endDelim; - let exact; - let inexact = false; - if (allowExact && this.match(6)) { - this.expect(6); - endDelim = 9; - exact = true; - } else { - this.expect(5); - endDelim = 8; - exact = false; - } - nodeStart.exact = exact; - while (!this.match(endDelim)) { - let isStatic = false; - let protoStartLoc = null; - let inexactStartLoc = null; - const node = this.startNode(); - if (allowProto && this.isContextual(118)) { - const lookahead = this.lookahead(); - if (lookahead.type !== 14 && lookahead.type !== 17) { - this.next(); - protoStartLoc = this.state.startLoc; - allowStatic = false; - } - } - if (allowStatic && this.isContextual(106)) { - const lookahead = this.lookahead(); - if (lookahead.type !== 14 && lookahead.type !== 17) { - this.next(); - isStatic = true; - } - } - const variance = this.flowParseVariance(); - if (this.eat(0)) { - if (protoStartLoc != null) { - this.unexpected(protoStartLoc); - } - if (this.eat(0)) { - if (variance) { - this.unexpected(variance.loc.start); - } - nodeStart.internalSlots.push(this.flowParseObjectTypeInternalSlot(node, isStatic)); - } else { - nodeStart.indexers.push(this.flowParseObjectTypeIndexer(node, isStatic, variance)); - } - } else if (this.match(10) || this.match(47)) { - if (protoStartLoc != null) { - this.unexpected(protoStartLoc); - } - if (variance) { - this.unexpected(variance.loc.start); - } - nodeStart.callProperties.push(this.flowParseObjectTypeCallProperty(node, isStatic)); - } else { - let kind = "init"; - if (this.isContextual(99) || this.isContextual(104)) { - const lookahead = this.lookahead(); - if (tokenIsLiteralPropertyName(lookahead.type)) { - kind = this.state.value; - this.next(); - } - } - const propOrInexact = this.flowParseObjectTypeProperty(node, isStatic, protoStartLoc, variance, kind, allowSpread, allowInexact != null ? allowInexact : !exact); - if (propOrInexact === null) { - inexact = true; - inexactStartLoc = this.state.lastTokStartLoc; - } else { - nodeStart.properties.push(propOrInexact); - } - } - this.flowObjectTypeSemicolon(); - if (inexactStartLoc && !this.match(8) && !this.match(9)) { - this.raise(FlowErrors.UnexpectedExplicitInexactInObject, inexactStartLoc); - } - } - this.expect(endDelim); - if (allowSpread) { - nodeStart.inexact = inexact; - } - const out = this.finishNode(nodeStart, "ObjectTypeAnnotation"); - this.state.inType = oldInType; - return out; - } - flowParseObjectTypeProperty(node, isStatic, protoStartLoc, variance, kind, allowSpread, allowInexact) { - if (this.eat(21)) { - const isInexactToken = this.match(12) || this.match(13) || this.match(8) || this.match(9); - if (isInexactToken) { - if (!allowSpread) { - this.raise(FlowErrors.InexactInsideNonObject, this.state.lastTokStartLoc); - } else if (!allowInexact) { - this.raise(FlowErrors.InexactInsideExact, this.state.lastTokStartLoc); - } - if (variance) { - this.raise(FlowErrors.InexactVariance, variance); - } - return null; - } - if (!allowSpread) { - this.raise(FlowErrors.UnexpectedSpreadType, this.state.lastTokStartLoc); - } - if (protoStartLoc != null) { - this.unexpected(protoStartLoc); - } - if (variance) { - this.raise(FlowErrors.SpreadVariance, variance); - } - node.argument = this.flowParseType(); - return this.finishNode(node, "ObjectTypeSpreadProperty"); - } else { - node.key = this.flowParseObjectPropertyKey(); - node.static = isStatic; - node.proto = protoStartLoc != null; - node.kind = kind; - let optional = false; - if (this.match(47) || this.match(10)) { - node.method = true; - if (protoStartLoc != null) { - this.unexpected(protoStartLoc); - } - if (variance) { - this.unexpected(variance.loc.start); - } - node.value = this.flowParseObjectTypeMethodish(this.startNodeAt(node.loc.start)); - if (kind === "get" || kind === "set") { - this.flowCheckGetterSetterParams(node); - } - if (!allowSpread && node.key.name === "constructor" && node.value.this) { - this.raise(FlowErrors.ThisParamBannedInConstructor, node.value.this); - } - } else { - if (kind !== "init") this.unexpected(); - node.method = false; - if (this.eat(17)) { - optional = true; - } - node.value = this.flowParseTypeInitialiser(); - node.variance = variance; - } - node.optional = optional; - return this.finishNode(node, "ObjectTypeProperty"); - } - } - flowCheckGetterSetterParams(property) { - const paramCount = property.kind === "get" ? 0 : 1; - const length = property.value.params.length + (property.value.rest ? 1 : 0); - if (property.value.this) { - this.raise(property.kind === "get" ? FlowErrors.GetterMayNotHaveThisParam : FlowErrors.SetterMayNotHaveThisParam, property.value.this); - } - if (length !== paramCount) { - this.raise(property.kind === "get" ? Errors.BadGetterArity : Errors.BadSetterArity, property); - } - if (property.kind === "set" && property.value.rest) { - this.raise(Errors.BadSetterRestParameter, property); - } - } - flowObjectTypeSemicolon() { - if (!this.eat(13) && !this.eat(12) && !this.match(8) && !this.match(9)) { - this.unexpected(); - } - } - flowParseQualifiedTypeIdentifier(startLoc, id) { - startLoc != null ? startLoc : startLoc = this.state.startLoc; - let node = id || this.flowParseRestrictedIdentifier(true); - while (this.eat(16)) { - const node2 = this.startNodeAt(startLoc); - node2.qualification = node; - node2.id = this.flowParseRestrictedIdentifier(true); - node = this.finishNode(node2, "QualifiedTypeIdentifier"); - } - return node; - } - flowParseGenericType(startLoc, id) { - const node = this.startNodeAt(startLoc); - node.typeParameters = null; - node.id = this.flowParseQualifiedTypeIdentifier(startLoc, id); - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterInstantiation(); - } - return this.finishNode(node, "GenericTypeAnnotation"); - } - flowParseTypeofType() { - const node = this.startNode(); - this.expect(87); - node.argument = this.flowParsePrimaryType(); - return this.finishNode(node, "TypeofTypeAnnotation"); - } - flowParseTupleType() { - const node = this.startNode(); - node.types = []; - this.expect(0); - while (this.state.pos < this.length && !this.match(3)) { - node.types.push(this.flowParseType()); - if (this.match(3)) break; - this.expect(12); - } - this.expect(3); - return this.finishNode(node, "TupleTypeAnnotation"); - } - flowParseFunctionTypeParam(first) { - let name = null; - let optional = false; - let typeAnnotation = null; - const node = this.startNode(); - const lh = this.lookahead(); - const isThis = this.state.type === 78; - if (lh.type === 14 || lh.type === 17) { - if (isThis && !first) { - this.raise(FlowErrors.ThisParamMustBeFirst, node); - } - name = this.parseIdentifier(isThis); - if (this.eat(17)) { - optional = true; - if (isThis) { - this.raise(FlowErrors.ThisParamMayNotBeOptional, node); - } - } - typeAnnotation = this.flowParseTypeInitialiser(); - } else { - typeAnnotation = this.flowParseType(); - } - node.name = name; - node.optional = optional; - node.typeAnnotation = typeAnnotation; - return this.finishNode(node, "FunctionTypeParam"); - } - reinterpretTypeAsFunctionTypeParam(type) { - const node = this.startNodeAt(type.loc.start); - node.name = null; - node.optional = false; - node.typeAnnotation = type; - return this.finishNode(node, "FunctionTypeParam"); - } - flowParseFunctionTypeParams(params = []) { - let rest = null; - let _this = null; - if (this.match(78)) { - _this = this.flowParseFunctionTypeParam(true); - _this.name = null; - if (!this.match(11)) { - this.expect(12); - } - } - while (!this.match(11) && !this.match(21)) { - params.push(this.flowParseFunctionTypeParam(false)); - if (!this.match(11)) { - this.expect(12); - } - } - if (this.eat(21)) { - rest = this.flowParseFunctionTypeParam(false); - } - return { - params, - rest, - _this - }; - } - flowIdentToTypeAnnotation(startLoc, node, id) { - switch (id.name) { - case "any": - return this.finishNode(node, "AnyTypeAnnotation"); - case "bool": - case "boolean": - return this.finishNode(node, "BooleanTypeAnnotation"); - case "mixed": - return this.finishNode(node, "MixedTypeAnnotation"); - case "empty": - return this.finishNode(node, "EmptyTypeAnnotation"); - case "number": - return this.finishNode(node, "NumberTypeAnnotation"); - case "string": - return this.finishNode(node, "StringTypeAnnotation"); - case "symbol": - return this.finishNode(node, "SymbolTypeAnnotation"); - default: - this.checkNotUnderscore(id.name); - return this.flowParseGenericType(startLoc, id); - } - } - flowParsePrimaryType() { - const startLoc = this.state.startLoc; - const node = this.startNode(); - let tmp; - let type; - let isGroupedType = false; - const oldNoAnonFunctionType = this.state.noAnonFunctionType; - switch (this.state.type) { - case 5: - return this.flowParseObjectType({ - allowStatic: false, - allowExact: false, - allowSpread: true, - allowProto: false, - allowInexact: true - }); - case 6: - return this.flowParseObjectType({ - allowStatic: false, - allowExact: true, - allowSpread: true, - allowProto: false, - allowInexact: false - }); - case 0: - this.state.noAnonFunctionType = false; - type = this.flowParseTupleType(); - this.state.noAnonFunctionType = oldNoAnonFunctionType; - return type; - case 47: - { - const node = this.startNode(); - node.typeParameters = this.flowParseTypeParameterDeclaration(); - this.expect(10); - tmp = this.flowParseFunctionTypeParams(); - node.params = tmp.params; - node.rest = tmp.rest; - node.this = tmp._this; - this.expect(11); - this.expect(19); - node.returnType = this.flowParseType(); - return this.finishNode(node, "FunctionTypeAnnotation"); - } - case 10: - { - const node = this.startNode(); - this.next(); - if (!this.match(11) && !this.match(21)) { - if (tokenIsIdentifier(this.state.type) || this.match(78)) { - const token = this.lookahead().type; - isGroupedType = token !== 17 && token !== 14; - } else { - isGroupedType = true; - } - } - if (isGroupedType) { - this.state.noAnonFunctionType = false; - type = this.flowParseType(); - this.state.noAnonFunctionType = oldNoAnonFunctionType; - if (this.state.noAnonFunctionType || !(this.match(12) || this.match(11) && this.lookahead().type === 19)) { - this.expect(11); - return type; - } else { - this.eat(12); - } - } - if (type) { - tmp = this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(type)]); - } else { - tmp = this.flowParseFunctionTypeParams(); - } - node.params = tmp.params; - node.rest = tmp.rest; - node.this = tmp._this; - this.expect(11); - this.expect(19); - node.returnType = this.flowParseType(); - node.typeParameters = null; - return this.finishNode(node, "FunctionTypeAnnotation"); - } - case 134: - return this.parseLiteral(this.state.value, "StringLiteralTypeAnnotation"); - case 85: - case 86: - node.value = this.match(85); - this.next(); - return this.finishNode(node, "BooleanLiteralTypeAnnotation"); - case 53: - if (this.state.value === "-") { - this.next(); - if (this.match(135)) { - return this.parseLiteralAtNode(-this.state.value, "NumberLiteralTypeAnnotation", node); - } - if (this.match(136)) { - return this.parseLiteralAtNode(-this.state.value, "BigIntLiteralTypeAnnotation", node); - } - throw this.raise(FlowErrors.UnexpectedSubtractionOperand, this.state.startLoc); - } - throw this.unexpected(); - case 135: - return this.parseLiteral(this.state.value, "NumberLiteralTypeAnnotation"); - case 136: - return this.parseLiteral(this.state.value, "BigIntLiteralTypeAnnotation"); - case 88: - this.next(); - return this.finishNode(node, "VoidTypeAnnotation"); - case 84: - this.next(); - return this.finishNode(node, "NullLiteralTypeAnnotation"); - case 78: - this.next(); - return this.finishNode(node, "ThisTypeAnnotation"); - case 55: - this.next(); - return this.finishNode(node, "ExistsTypeAnnotation"); - case 87: - return this.flowParseTypeofType(); - default: - if (tokenIsKeyword(this.state.type)) { - const label = tokenLabelName(this.state.type); - this.next(); - return super.createIdentifier(node, label); - } else if (tokenIsIdentifier(this.state.type)) { - if (this.isContextual(129)) { - return this.flowParseInterfaceType(); - } - return this.flowIdentToTypeAnnotation(startLoc, node, this.parseIdentifier()); - } - } - throw this.unexpected(); - } - flowParsePostfixType() { - const startLoc = this.state.startLoc; - let type = this.flowParsePrimaryType(); - let seenOptionalIndexedAccess = false; - while ((this.match(0) || this.match(18)) && !this.canInsertSemicolon()) { - const node = this.startNodeAt(startLoc); - const optional = this.eat(18); - seenOptionalIndexedAccess = seenOptionalIndexedAccess || optional; - this.expect(0); - if (!optional && this.match(3)) { - node.elementType = type; - this.next(); - type = this.finishNode(node, "ArrayTypeAnnotation"); - } else { - node.objectType = type; - node.indexType = this.flowParseType(); - this.expect(3); - if (seenOptionalIndexedAccess) { - node.optional = optional; - type = this.finishNode(node, "OptionalIndexedAccessType"); - } else { - type = this.finishNode(node, "IndexedAccessType"); - } - } - } - return type; - } - flowParsePrefixType() { - const node = this.startNode(); - if (this.eat(17)) { - node.typeAnnotation = this.flowParsePrefixType(); - return this.finishNode(node, "NullableTypeAnnotation"); - } else { - return this.flowParsePostfixType(); - } - } - flowParseAnonFunctionWithoutParens() { - const param = this.flowParsePrefixType(); - if (!this.state.noAnonFunctionType && this.eat(19)) { - const node = this.startNodeAt(param.loc.start); - node.params = [this.reinterpretTypeAsFunctionTypeParam(param)]; - node.rest = null; - node.this = null; - node.returnType = this.flowParseType(); - node.typeParameters = null; - return this.finishNode(node, "FunctionTypeAnnotation"); - } - return param; - } - flowParseIntersectionType() { - const node = this.startNode(); - this.eat(45); - const type = this.flowParseAnonFunctionWithoutParens(); - node.types = [type]; - while (this.eat(45)) { - node.types.push(this.flowParseAnonFunctionWithoutParens()); - } - return node.types.length === 1 ? type : this.finishNode(node, "IntersectionTypeAnnotation"); - } - flowParseUnionType() { - const node = this.startNode(); - this.eat(43); - const type = this.flowParseIntersectionType(); - node.types = [type]; - while (this.eat(43)) { - node.types.push(this.flowParseIntersectionType()); - } - return node.types.length === 1 ? type : this.finishNode(node, "UnionTypeAnnotation"); - } - flowParseType() { - const oldInType = this.state.inType; - this.state.inType = true; - const type = this.flowParseUnionType(); - this.state.inType = oldInType; - return type; - } - flowParseTypeOrImplicitInstantiation() { - if (this.state.type === 132 && this.state.value === "_") { - const startLoc = this.state.startLoc; - const node = this.parseIdentifier(); - return this.flowParseGenericType(startLoc, node); - } else { - return this.flowParseType(); - } - } - flowParseTypeAnnotation() { - const node = this.startNode(); - node.typeAnnotation = this.flowParseTypeInitialiser(); - return this.finishNode(node, "TypeAnnotation"); - } - flowParseTypeAnnotatableIdentifier(allowPrimitiveOverride) { - const ident = allowPrimitiveOverride ? this.parseIdentifier() : this.flowParseRestrictedIdentifier(); - if (this.match(14)) { - ident.typeAnnotation = this.flowParseTypeAnnotation(); - this.resetEndLocation(ident); - } - return ident; - } - typeCastToParameter(node) { - node.expression.typeAnnotation = node.typeAnnotation; - this.resetEndLocation(node.expression, node.typeAnnotation.loc.end); - return node.expression; - } - flowParseVariance() { - let variance = null; - if (this.match(53)) { - variance = this.startNode(); - if (this.state.value === "+") { - variance.kind = "plus"; - } else { - variance.kind = "minus"; - } - this.next(); - return this.finishNode(variance, "Variance"); - } - return variance; - } - parseFunctionBody(node, allowExpressionBody, isMethod = false) { - if (allowExpressionBody) { - this.forwardNoArrowParamsConversionAt(node, () => super.parseFunctionBody(node, true, isMethod)); - return; - } - super.parseFunctionBody(node, false, isMethod); - } - parseFunctionBodyAndFinish(node, type, isMethod = false) { - if (this.match(14)) { - const typeNode = this.startNode(); - [typeNode.typeAnnotation, node.predicate] = this.flowParseTypeAndPredicateInitialiser(); - node.returnType = typeNode.typeAnnotation ? this.finishNode(typeNode, "TypeAnnotation") : null; - } - return super.parseFunctionBodyAndFinish(node, type, isMethod); - } - parseStatementLike(flags) { - if (this.state.strict && this.isContextual(129)) { - const lookahead = this.lookahead(); - if (tokenIsKeywordOrIdentifier(lookahead.type)) { - const node = this.startNode(); - this.next(); - return this.flowParseInterface(node); - } - } else if (this.isContextual(126)) { - const node = this.startNode(); - this.next(); - return this.flowParseEnumDeclaration(node); - } - const stmt = super.parseStatementLike(flags); - if (this.flowPragma === undefined && !this.isValidDirective(stmt)) { - this.flowPragma = null; - } - return stmt; - } - parseExpressionStatement(node, expr, decorators) { - if (expr.type === "Identifier") { - if (expr.name === "declare") { - if (this.match(80) || tokenIsIdentifier(this.state.type) || this.match(68) || this.match(74) || this.match(82)) { - return this.flowParseDeclare(node); - } - } else if (tokenIsIdentifier(this.state.type)) { - if (expr.name === "interface") { - return this.flowParseInterface(node); - } else if (expr.name === "type") { - return this.flowParseTypeAlias(node); - } else if (expr.name === "opaque") { - return this.flowParseOpaqueType(node, false); - } - } - } - return super.parseExpressionStatement(node, expr, decorators); - } - shouldParseExportDeclaration() { - const { - type - } = this.state; - if (type === 126 || tokenIsFlowInterfaceOrTypeOrOpaque(type)) { - return !this.state.containsEsc; - } - return super.shouldParseExportDeclaration(); - } - isExportDefaultSpecifier() { - const { - type - } = this.state; - if (type === 126 || tokenIsFlowInterfaceOrTypeOrOpaque(type)) { - return this.state.containsEsc; - } - return super.isExportDefaultSpecifier(); - } - parseExportDefaultExpression() { - if (this.isContextual(126)) { - const node = this.startNode(); - this.next(); - return this.flowParseEnumDeclaration(node); - } - return super.parseExportDefaultExpression(); - } - parseConditional(expr, startLoc, refExpressionErrors) { - if (!this.match(17)) return expr; - if (this.state.maybeInArrowParameters) { - const nextCh = this.lookaheadCharCode(); - if (nextCh === 44 || nextCh === 61 || nextCh === 58 || nextCh === 41) { - this.setOptionalParametersError(refExpressionErrors); - return expr; - } - } - this.expect(17); - const state = this.state.clone(); - const originalNoArrowAt = this.state.noArrowAt; - const node = this.startNodeAt(startLoc); - let { - consequent, - failed - } = this.tryParseConditionalConsequent(); - let [valid, invalid] = this.getArrowLikeExpressions(consequent); - if (failed || invalid.length > 0) { - const noArrowAt = [...originalNoArrowAt]; - if (invalid.length > 0) { - this.state = state; - this.state.noArrowAt = noArrowAt; - for (let i = 0; i < invalid.length; i++) { - noArrowAt.push(invalid[i].start); - } - ({ - consequent, - failed - } = this.tryParseConditionalConsequent()); - [valid, invalid] = this.getArrowLikeExpressions(consequent); - } - if (failed && valid.length > 1) { - this.raise(FlowErrors.AmbiguousConditionalArrow, state.startLoc); - } - if (failed && valid.length === 1) { - this.state = state; - noArrowAt.push(valid[0].start); - this.state.noArrowAt = noArrowAt; - ({ - consequent, - failed - } = this.tryParseConditionalConsequent()); - } - } - this.getArrowLikeExpressions(consequent, true); - this.state.noArrowAt = originalNoArrowAt; - this.expect(14); - node.test = expr; - node.consequent = consequent; - node.alternate = this.forwardNoArrowParamsConversionAt(node, () => this.parseMaybeAssign(undefined, undefined)); - return this.finishNode(node, "ConditionalExpression"); - } - tryParseConditionalConsequent() { - this.state.noArrowParamsConversionAt.push(this.state.start); - const consequent = this.parseMaybeAssignAllowIn(); - const failed = !this.match(14); - this.state.noArrowParamsConversionAt.pop(); - return { - consequent, - failed - }; - } - getArrowLikeExpressions(node, disallowInvalid) { - const stack = [node]; - const arrows = []; - while (stack.length !== 0) { - const node = stack.pop(); - if (node.type === "ArrowFunctionExpression" && node.body.type !== "BlockStatement") { - if (node.typeParameters || !node.returnType) { - this.finishArrowValidation(node); - } else { - arrows.push(node); - } - stack.push(node.body); - } else if (node.type === "ConditionalExpression") { - stack.push(node.consequent); - stack.push(node.alternate); - } - } - if (disallowInvalid) { - arrows.forEach(node => this.finishArrowValidation(node)); - return [arrows, []]; - } - return partition(arrows, node => node.params.every(param => this.isAssignable(param, true))); - } - finishArrowValidation(node) { - var _node$extra; - this.toAssignableList(node.params, (_node$extra = node.extra) == null ? void 0 : _node$extra.trailingCommaLoc, false); - this.scope.enter(514 | 4); - super.checkParams(node, false, true); - this.scope.exit(); - } - forwardNoArrowParamsConversionAt(node, parse) { - let result; - if (this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(node.start))) { - this.state.noArrowParamsConversionAt.push(this.state.start); - result = parse(); - this.state.noArrowParamsConversionAt.pop(); - } else { - result = parse(); - } - return result; - } - parseParenItem(node, startLoc) { - const newNode = super.parseParenItem(node, startLoc); - if (this.eat(17)) { - newNode.optional = true; - this.resetEndLocation(node); - } - if (this.match(14)) { - const typeCastNode = this.startNodeAt(startLoc); - typeCastNode.expression = newNode; - typeCastNode.typeAnnotation = this.flowParseTypeAnnotation(); - return this.finishNode(typeCastNode, "TypeCastExpression"); - } - return newNode; - } - assertModuleNodeAllowed(node) { - if (node.type === "ImportDeclaration" && (node.importKind === "type" || node.importKind === "typeof") || node.type === "ExportNamedDeclaration" && node.exportKind === "type" || node.type === "ExportAllDeclaration" && node.exportKind === "type") { - return; - } - super.assertModuleNodeAllowed(node); - } - parseExportDeclaration(node) { - if (this.isContextual(130)) { - node.exportKind = "type"; - const declarationNode = this.startNode(); - this.next(); - if (this.match(5)) { - node.specifiers = this.parseExportSpecifiers(true); - super.parseExportFrom(node); - return null; - } else { - return this.flowParseTypeAlias(declarationNode); - } - } else if (this.isContextual(131)) { - node.exportKind = "type"; - const declarationNode = this.startNode(); - this.next(); - return this.flowParseOpaqueType(declarationNode, false); - } else if (this.isContextual(129)) { - node.exportKind = "type"; - const declarationNode = this.startNode(); - this.next(); - return this.flowParseInterface(declarationNode); - } else if (this.isContextual(126)) { - node.exportKind = "value"; - const declarationNode = this.startNode(); - this.next(); - return this.flowParseEnumDeclaration(declarationNode); - } else { - return super.parseExportDeclaration(node); - } - } - eatExportStar(node) { - if (super.eatExportStar(node)) return true; - if (this.isContextual(130) && this.lookahead().type === 55) { - node.exportKind = "type"; - this.next(); - this.next(); - return true; - } - return false; - } - maybeParseExportNamespaceSpecifier(node) { - const { - startLoc - } = this.state; - const hasNamespace = super.maybeParseExportNamespaceSpecifier(node); - if (hasNamespace && node.exportKind === "type") { - this.unexpected(startLoc); - } - return hasNamespace; - } - parseClassId(node, isStatement, optionalId) { - super.parseClassId(node, isStatement, optionalId); - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterDeclaration(); - } - } - parseClassMember(classBody, member, state) { - const { - startLoc - } = this.state; - if (this.isContextual(125)) { - if (super.parseClassMemberFromModifier(classBody, member)) { - return; - } - member.declare = true; - } - super.parseClassMember(classBody, member, state); - if (member.declare) { - if (member.type !== "ClassProperty" && member.type !== "ClassPrivateProperty" && member.type !== "PropertyDefinition") { - this.raise(FlowErrors.DeclareClassElement, startLoc); - } else if (member.value) { - this.raise(FlowErrors.DeclareClassFieldInitializer, member.value); - } - } - } - isIterator(word) { - return word === "iterator" || word === "asyncIterator"; - } - readIterator() { - const word = super.readWord1(); - const fullWord = "@@" + word; - if (!this.isIterator(word) || !this.state.inType) { - this.raise(Errors.InvalidIdentifier, this.state.curPosition(), { - identifierName: fullWord - }); - } - this.finishToken(132, fullWord); - } - getTokenFromCode(code) { - const next = this.input.charCodeAt(this.state.pos + 1); - if (code === 123 && next === 124) { - this.finishOp(6, 2); - } else if (this.state.inType && (code === 62 || code === 60)) { - this.finishOp(code === 62 ? 48 : 47, 1); - } else if (this.state.inType && code === 63) { - if (next === 46) { - this.finishOp(18, 2); - } else { - this.finishOp(17, 1); - } - } else if (isIteratorStart(code, next, this.input.charCodeAt(this.state.pos + 2))) { - this.state.pos += 2; - this.readIterator(); - } else { - super.getTokenFromCode(code); - } - } - isAssignable(node, isBinding) { - if (node.type === "TypeCastExpression") { - return this.isAssignable(node.expression, isBinding); - } else { - return super.isAssignable(node, isBinding); - } - } - toAssignable(node, isLHS = false) { - if (!isLHS && node.type === "AssignmentExpression" && node.left.type === "TypeCastExpression") { - node.left = this.typeCastToParameter(node.left); - } - super.toAssignable(node, isLHS); - } - toAssignableList(exprList, trailingCommaLoc, isLHS) { - for (let i = 0; i < exprList.length; i++) { - const expr = exprList[i]; - if ((expr == null ? void 0 : expr.type) === "TypeCastExpression") { - exprList[i] = this.typeCastToParameter(expr); - } - } - super.toAssignableList(exprList, trailingCommaLoc, isLHS); - } - toReferencedList(exprList, isParenthesizedExpr) { - for (let i = 0; i < exprList.length; i++) { - var _expr$extra; - const expr = exprList[i]; - if (expr && expr.type === "TypeCastExpression" && !((_expr$extra = expr.extra) != null && _expr$extra.parenthesized) && (exprList.length > 1 || !isParenthesizedExpr)) { - this.raise(FlowErrors.TypeCastInPattern, expr.typeAnnotation); - } - } - return exprList; - } - parseArrayLike(close, isTuple, refExpressionErrors) { - const node = super.parseArrayLike(close, isTuple, refExpressionErrors); - if (refExpressionErrors != null && !this.state.maybeInArrowParameters) { - this.toReferencedList(node.elements); - } - return node; - } - isValidLVal(type, disallowCallExpression, isParenthesized, binding) { - return type === "TypeCastExpression" || super.isValidLVal(type, disallowCallExpression, isParenthesized, binding); - } - parseClassProperty(node) { - if (this.match(14)) { - node.typeAnnotation = this.flowParseTypeAnnotation(); - } - return super.parseClassProperty(node); - } - parseClassPrivateProperty(node) { - if (this.match(14)) { - node.typeAnnotation = this.flowParseTypeAnnotation(); - } - return super.parseClassPrivateProperty(node); - } - isClassMethod() { - return this.match(47) || super.isClassMethod(); - } - isClassProperty() { - return this.match(14) || super.isClassProperty(); - } - isNonstaticConstructor(method) { - return !this.match(14) && super.isNonstaticConstructor(method); - } - pushClassMethod(classBody, method, isGenerator, isAsync, isConstructor, allowsDirectSuper) { - if (method.variance) { - this.unexpected(method.variance.loc.start); - } - delete method.variance; - if (this.match(47)) { - method.typeParameters = this.flowParseTypeParameterDeclaration(); - } - super.pushClassMethod(classBody, method, isGenerator, isAsync, isConstructor, allowsDirectSuper); - if (method.params && isConstructor) { - const params = method.params; - if (params.length > 0 && this.isThisParam(params[0])) { - this.raise(FlowErrors.ThisParamBannedInConstructor, method); - } - } else if (method.type === "MethodDefinition" && isConstructor && method.value.params) { - const params = method.value.params; - if (params.length > 0 && this.isThisParam(params[0])) { - this.raise(FlowErrors.ThisParamBannedInConstructor, method); - } - } - } - pushClassPrivateMethod(classBody, method, isGenerator, isAsync) { - if (method.variance) { - this.unexpected(method.variance.loc.start); - } - delete method.variance; - if (this.match(47)) { - method.typeParameters = this.flowParseTypeParameterDeclaration(); - } - super.pushClassPrivateMethod(classBody, method, isGenerator, isAsync); - } - parseClassSuper(node) { - super.parseClassSuper(node); - if (node.superClass && (this.match(47) || this.match(51))) { - node.superTypeParameters = this.flowParseTypeParameterInstantiationInExpression(); - } - if (this.isContextual(113)) { - this.next(); - const implemented = node.implements = []; - do { - const node = this.startNode(); - node.id = this.flowParseRestrictedIdentifier(true); - if (this.match(47)) { - node.typeParameters = this.flowParseTypeParameterInstantiation(); - } else { - node.typeParameters = null; - } - implemented.push(this.finishNode(node, "ClassImplements")); - } while (this.eat(12)); - } - } - checkGetterSetterParams(method) { - super.checkGetterSetterParams(method); - const params = this.getObjectOrClassMethodParams(method); - if (params.length > 0) { - const param = params[0]; - if (this.isThisParam(param) && method.kind === "get") { - this.raise(FlowErrors.GetterMayNotHaveThisParam, param); - } else if (this.isThisParam(param)) { - this.raise(FlowErrors.SetterMayNotHaveThisParam, param); - } - } - } - parsePropertyNamePrefixOperator(node) { - node.variance = this.flowParseVariance(); - } - parseObjPropValue(prop, startLoc, isGenerator, isAsync, isPattern, isAccessor, refExpressionErrors) { - if (prop.variance) { - this.unexpected(prop.variance.loc.start); - } - delete prop.variance; - let typeParameters; - if (this.match(47) && !isAccessor) { - typeParameters = this.flowParseTypeParameterDeclaration(); - if (!this.match(10)) this.unexpected(); - } - const result = super.parseObjPropValue(prop, startLoc, isGenerator, isAsync, isPattern, isAccessor, refExpressionErrors); - if (typeParameters) { - (result.value || result).typeParameters = typeParameters; - } - return result; - } - parseFunctionParamType(param) { - if (this.eat(17)) { - if (param.type !== "Identifier") { - this.raise(FlowErrors.PatternIsOptional, param); - } - if (this.isThisParam(param)) { - this.raise(FlowErrors.ThisParamMayNotBeOptional, param); - } - param.optional = true; - } - if (this.match(14)) { - param.typeAnnotation = this.flowParseTypeAnnotation(); - } else if (this.isThisParam(param)) { - this.raise(FlowErrors.ThisParamAnnotationRequired, param); - } - if (this.match(29) && this.isThisParam(param)) { - this.raise(FlowErrors.ThisParamNoDefault, param); - } - this.resetEndLocation(param); - return param; - } - parseMaybeDefault(startLoc, left) { - const node = super.parseMaybeDefault(startLoc, left); - if (node.type === "AssignmentPattern" && node.typeAnnotation && node.right.start < node.typeAnnotation.start) { - this.raise(FlowErrors.TypeBeforeInitializer, node.typeAnnotation); - } - return node; - } - checkImportReflection(node) { - super.checkImportReflection(node); - if (node.module && node.importKind !== "value") { - this.raise(FlowErrors.ImportReflectionHasImportType, node.specifiers[0].loc.start); - } - } - parseImportSpecifierLocal(node, specifier, type) { - specifier.local = hasTypeImportKind(node) ? this.flowParseRestrictedIdentifier(true, true) : this.parseIdentifier(); - node.specifiers.push(this.finishImportSpecifier(specifier, type)); - } - isPotentialImportPhase(isExport) { - if (super.isPotentialImportPhase(isExport)) return true; - if (this.isContextual(130)) { - if (!isExport) return true; - const ch = this.lookaheadCharCode(); - return ch === 123 || ch === 42; - } - return !isExport && this.isContextual(87); - } - applyImportPhase(node, isExport, phase, loc) { - super.applyImportPhase(node, isExport, phase, loc); - if (isExport) { - if (!phase && this.match(65)) { - return; - } - node.exportKind = phase === "type" ? phase : "value"; - } else { - if (phase === "type" && this.match(55)) this.unexpected(); - node.importKind = phase === "type" || phase === "typeof" ? phase : "value"; - } - } - parseImportSpecifier(specifier, importedIsString, isInTypeOnlyImport, isMaybeTypeOnly, bindingType) { - const firstIdent = specifier.imported; - let specifierTypeKind = null; - if (firstIdent.type === "Identifier") { - if (firstIdent.name === "type") { - specifierTypeKind = "type"; - } else if (firstIdent.name === "typeof") { - specifierTypeKind = "typeof"; - } - } - let isBinding = false; - if (this.isContextual(93) && !this.isLookaheadContextual("as")) { - const as_ident = this.parseIdentifier(true); - if (specifierTypeKind !== null && !tokenIsKeywordOrIdentifier(this.state.type)) { - specifier.imported = as_ident; - specifier.importKind = specifierTypeKind; - specifier.local = this.cloneIdentifier(as_ident); - } else { - specifier.imported = firstIdent; - specifier.importKind = null; - specifier.local = this.parseIdentifier(); - } - } else { - if (specifierTypeKind !== null && tokenIsKeywordOrIdentifier(this.state.type)) { - specifier.imported = this.parseIdentifier(true); - specifier.importKind = specifierTypeKind; - } else { - if (importedIsString) { - throw this.raise(Errors.ImportBindingIsString, specifier, { - importName: firstIdent.value - }); - } - specifier.imported = firstIdent; - specifier.importKind = null; - } - if (this.eatContextual(93)) { - specifier.local = this.parseIdentifier(); - } else { - isBinding = true; - specifier.local = this.cloneIdentifier(specifier.imported); - } - } - const specifierIsTypeImport = hasTypeImportKind(specifier); - if (isInTypeOnlyImport && specifierIsTypeImport) { - this.raise(FlowErrors.ImportTypeShorthandOnlyInPureImport, specifier); - } - if (isInTypeOnlyImport || specifierIsTypeImport) { - this.checkReservedType(specifier.local.name, specifier.local.loc.start, true); - } - if (isBinding && !isInTypeOnlyImport && !specifierIsTypeImport) { - this.checkReservedWord(specifier.local.name, specifier.loc.start, true, true); - } - return this.finishImportSpecifier(specifier, "ImportSpecifier"); - } - parseBindingAtom() { - switch (this.state.type) { - case 78: - return this.parseIdentifier(true); - default: - return super.parseBindingAtom(); - } - } - parseFunctionParams(node, isConstructor) { - const kind = node.kind; - if (kind !== "get" && kind !== "set" && this.match(47)) { - node.typeParameters = this.flowParseTypeParameterDeclaration(); - } - super.parseFunctionParams(node, isConstructor); - } - parseVarId(decl, kind) { - super.parseVarId(decl, kind); - if (this.match(14)) { - decl.id.typeAnnotation = this.flowParseTypeAnnotation(); - this.resetEndLocation(decl.id); - } - } - parseAsyncArrowFromCallExpression(node, call) { - if (this.match(14)) { - const oldNoAnonFunctionType = this.state.noAnonFunctionType; - this.state.noAnonFunctionType = true; - node.returnType = this.flowParseTypeAnnotation(); - this.state.noAnonFunctionType = oldNoAnonFunctionType; - } - return super.parseAsyncArrowFromCallExpression(node, call); - } - shouldParseAsyncArrow() { - return this.match(14) || super.shouldParseAsyncArrow(); - } - parseMaybeAssign(refExpressionErrors, afterLeftParse) { - var _jsx; - let state = null; - let jsx; - if (this.hasPlugin("jsx") && (this.match(143) || this.match(47))) { - state = this.state.clone(); - jsx = this.tryParse(() => super.parseMaybeAssign(refExpressionErrors, afterLeftParse), state); - if (!jsx.error) return jsx.node; - const { - context - } = this.state; - const currentContext = context[context.length - 1]; - if (currentContext === types.j_oTag || currentContext === types.j_expr) { - context.pop(); - } - } - if ((_jsx = jsx) != null && _jsx.error || this.match(47)) { - var _jsx2, _jsx3; - state = state || this.state.clone(); - let typeParameters; - const arrow = this.tryParse(abort => { - var _arrowExpression$extr; - typeParameters = this.flowParseTypeParameterDeclaration(); - const arrowExpression = this.forwardNoArrowParamsConversionAt(typeParameters, () => { - const result = super.parseMaybeAssign(refExpressionErrors, afterLeftParse); - this.resetStartLocationFromNode(result, typeParameters); - return result; - }); - if ((_arrowExpression$extr = arrowExpression.extra) != null && _arrowExpression$extr.parenthesized) abort(); - const expr = this.maybeUnwrapTypeCastExpression(arrowExpression); - if (expr.type !== "ArrowFunctionExpression") abort(); - expr.typeParameters = typeParameters; - this.resetStartLocationFromNode(expr, typeParameters); - return arrowExpression; - }, state); - let arrowExpression = null; - if (arrow.node && this.maybeUnwrapTypeCastExpression(arrow.node).type === "ArrowFunctionExpression") { - if (!arrow.error && !arrow.aborted) { - if (arrow.node.async) { - this.raise(FlowErrors.UnexpectedTypeParameterBeforeAsyncArrowFunction, typeParameters); - } - return arrow.node; - } - arrowExpression = arrow.node; - } - if ((_jsx2 = jsx) != null && _jsx2.node) { - this.state = jsx.failState; - return jsx.node; - } - if (arrowExpression) { - this.state = arrow.failState; - return arrowExpression; - } - if ((_jsx3 = jsx) != null && _jsx3.thrown) throw jsx.error; - if (arrow.thrown) throw arrow.error; - throw this.raise(FlowErrors.UnexpectedTokenAfterTypeParameter, typeParameters); - } - return super.parseMaybeAssign(refExpressionErrors, afterLeftParse); - } - parseArrow(node) { - if (this.match(14)) { - const result = this.tryParse(() => { - const oldNoAnonFunctionType = this.state.noAnonFunctionType; - this.state.noAnonFunctionType = true; - const typeNode = this.startNode(); - [typeNode.typeAnnotation, node.predicate] = this.flowParseTypeAndPredicateInitialiser(); - this.state.noAnonFunctionType = oldNoAnonFunctionType; - if (this.canInsertSemicolon()) this.unexpected(); - if (!this.match(19)) this.unexpected(); - return typeNode; - }); - if (result.thrown) return null; - if (result.error) this.state = result.failState; - node.returnType = result.node.typeAnnotation ? this.finishNode(result.node, "TypeAnnotation") : null; - } - return super.parseArrow(node); - } - shouldParseArrow(params) { - return this.match(14) || super.shouldParseArrow(params); - } - setArrowFunctionParameters(node, params) { - if (this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(node.start))) { - node.params = params; - } else { - super.setArrowFunctionParameters(node, params); - } - } - checkParams(node, allowDuplicates, isArrowFunction, strictModeChanged = true) { - if (isArrowFunction && this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(node.start))) { - return; - } - for (let i = 0; i < node.params.length; i++) { - if (this.isThisParam(node.params[i]) && i > 0) { - this.raise(FlowErrors.ThisParamMustBeFirst, node.params[i]); - } - } - super.checkParams(node, allowDuplicates, isArrowFunction, strictModeChanged); - } - parseParenAndDistinguishExpression(canBeArrow) { - return super.parseParenAndDistinguishExpression(canBeArrow && !this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start))); - } - parseSubscripts(base, startLoc, noCalls) { - if (base.type === "Identifier" && base.name === "async" && this.state.noArrowAt.includes(startLoc.index)) { - this.next(); - const node = this.startNodeAt(startLoc); - node.callee = base; - node.arguments = super.parseCallExpressionArguments(); - base = this.finishNode(node, "CallExpression"); - } else if (base.type === "Identifier" && base.name === "async" && this.match(47)) { - const state = this.state.clone(); - const arrow = this.tryParse(abort => this.parseAsyncArrowWithTypeParameters(startLoc) || abort(), state); - if (!arrow.error && !arrow.aborted) return arrow.node; - const result = this.tryParse(() => super.parseSubscripts(base, startLoc, noCalls), state); - if (result.node && !result.error) return result.node; - if (arrow.node) { - this.state = arrow.failState; - return arrow.node; - } - if (result.node) { - this.state = result.failState; - return result.node; - } - throw arrow.error || result.error; - } - return super.parseSubscripts(base, startLoc, noCalls); - } - parseSubscript(base, startLoc, noCalls, subscriptState) { - if (this.match(18) && this.isLookaheadToken_lt()) { - subscriptState.optionalChainMember = true; - if (noCalls) { - subscriptState.stop = true; - return base; - } - this.next(); - const node = this.startNodeAt(startLoc); - node.callee = base; - node.typeArguments = this.flowParseTypeParameterInstantiationInExpression(); - this.expect(10); - node.arguments = this.parseCallExpressionArguments(); - node.optional = true; - return this.finishCallExpression(node, true); - } else if (!noCalls && this.shouldParseTypes() && (this.match(47) || this.match(51))) { - const node = this.startNodeAt(startLoc); - node.callee = base; - const result = this.tryParse(() => { - node.typeArguments = this.flowParseTypeParameterInstantiationCallOrNew(); - this.expect(10); - node.arguments = super.parseCallExpressionArguments(); - if (subscriptState.optionalChainMember) { - node.optional = false; - } - return this.finishCallExpression(node, subscriptState.optionalChainMember); - }); - if (result.node) { - if (result.error) this.state = result.failState; - return result.node; - } - } - return super.parseSubscript(base, startLoc, noCalls, subscriptState); - } - parseNewCallee(node) { - super.parseNewCallee(node); - let targs = null; - if (this.shouldParseTypes() && this.match(47)) { - targs = this.tryParse(() => this.flowParseTypeParameterInstantiationCallOrNew()).node; - } - node.typeArguments = targs; - } - parseAsyncArrowWithTypeParameters(startLoc) { - const node = this.startNodeAt(startLoc); - this.parseFunctionParams(node, false); - if (!this.parseArrow(node)) return; - return super.parseArrowExpression(node, undefined, true); - } - readToken_mult_modulo(code) { - const next = this.input.charCodeAt(this.state.pos + 1); - if (code === 42 && next === 47 && this.state.hasFlowComment) { - this.state.hasFlowComment = false; - this.state.pos += 2; - this.nextToken(); - return; - } - super.readToken_mult_modulo(code); - } - readToken_pipe_amp(code) { - const next = this.input.charCodeAt(this.state.pos + 1); - if (code === 124 && next === 125) { - this.finishOp(9, 2); - return; - } - super.readToken_pipe_amp(code); - } - parseTopLevel(file, program) { - const fileNode = super.parseTopLevel(file, program); - if (this.state.hasFlowComment) { - this.raise(FlowErrors.UnterminatedFlowComment, this.state.curPosition()); - } - return fileNode; - } - skipBlockComment() { - if (this.hasPlugin("flowComments") && this.skipFlowComment()) { - if (this.state.hasFlowComment) { - throw this.raise(FlowErrors.NestedFlowComment, this.state.startLoc); - } - this.hasFlowCommentCompletion(); - const commentSkip = this.skipFlowComment(); - if (commentSkip) { - this.state.pos += commentSkip; - this.state.hasFlowComment = true; - } - return; - } - return super.skipBlockComment(this.state.hasFlowComment ? "*-/" : "*/"); - } - skipFlowComment() { - const { - pos - } = this.state; - let shiftToFirstNonWhiteSpace = 2; - while ([32, 9].includes(this.input.charCodeAt(pos + shiftToFirstNonWhiteSpace))) { - shiftToFirstNonWhiteSpace++; - } - const ch2 = this.input.charCodeAt(shiftToFirstNonWhiteSpace + pos); - const ch3 = this.input.charCodeAt(shiftToFirstNonWhiteSpace + pos + 1); - if (ch2 === 58 && ch3 === 58) { - return shiftToFirstNonWhiteSpace + 2; - } - if (this.input.slice(shiftToFirstNonWhiteSpace + pos, shiftToFirstNonWhiteSpace + pos + 12) === "flow-include") { - return shiftToFirstNonWhiteSpace + 12; - } - if (ch2 === 58 && ch3 !== 58) { - return shiftToFirstNonWhiteSpace; - } - return false; - } - hasFlowCommentCompletion() { - const end = this.input.indexOf("*/", this.state.pos); - if (end === -1) { - throw this.raise(Errors.UnterminatedComment, this.state.curPosition()); - } - } - flowEnumErrorBooleanMemberNotInitialized(loc, { - enumName, - memberName - }) { - this.raise(FlowErrors.EnumBooleanMemberNotInitialized, loc, { - memberName, - enumName - }); - } - flowEnumErrorInvalidMemberInitializer(loc, enumContext) { - return this.raise(!enumContext.explicitType ? FlowErrors.EnumInvalidMemberInitializerUnknownType : enumContext.explicitType === "symbol" ? FlowErrors.EnumInvalidMemberInitializerSymbolType : FlowErrors.EnumInvalidMemberInitializerPrimaryType, loc, enumContext); - } - flowEnumErrorNumberMemberNotInitialized(loc, details) { - this.raise(FlowErrors.EnumNumberMemberNotInitialized, loc, details); - } - flowEnumErrorStringMemberInconsistentlyInitialized(node, details) { - this.raise(FlowErrors.EnumStringMemberInconsistentlyInitialized, node, details); - } - flowEnumMemberInit() { - const startLoc = this.state.startLoc; - const endOfInit = () => this.match(12) || this.match(8); - switch (this.state.type) { - case 135: - { - const literal = this.parseNumericLiteral(this.state.value); - if (endOfInit()) { - return { - type: "number", - loc: literal.loc.start, - value: literal - }; - } - return { - type: "invalid", - loc: startLoc - }; - } - case 134: - { - const literal = this.parseStringLiteral(this.state.value); - if (endOfInit()) { - return { - type: "string", - loc: literal.loc.start, - value: literal - }; - } - return { - type: "invalid", - loc: startLoc - }; - } - case 85: - case 86: - { - const literal = this.parseBooleanLiteral(this.match(85)); - if (endOfInit()) { - return { - type: "boolean", - loc: literal.loc.start, - value: literal - }; - } - return { - type: "invalid", - loc: startLoc - }; - } - default: - return { - type: "invalid", - loc: startLoc - }; - } - } - flowEnumMemberRaw() { - const loc = this.state.startLoc; - const id = this.parseIdentifier(true); - const init = this.eat(29) ? this.flowEnumMemberInit() : { - type: "none", - loc - }; - return { - id, - init - }; - } - flowEnumCheckExplicitTypeMismatch(loc, context, expectedType) { - const { - explicitType - } = context; - if (explicitType === null) { - return; - } - if (explicitType !== expectedType) { - this.flowEnumErrorInvalidMemberInitializer(loc, context); - } - } - flowEnumMembers({ - enumName, - explicitType - }) { - const seenNames = new Set(); - const members = { - booleanMembers: [], - numberMembers: [], - stringMembers: [], - defaultedMembers: [] - }; - let hasUnknownMembers = false; - while (!this.match(8)) { - if (this.eat(21)) { - hasUnknownMembers = true; - break; - } - const memberNode = this.startNode(); - const { - id, - init - } = this.flowEnumMemberRaw(); - const memberName = id.name; - if (memberName === "") { - continue; - } - if (/^[a-z]/.test(memberName)) { - this.raise(FlowErrors.EnumInvalidMemberName, id, { - memberName, - suggestion: memberName[0].toUpperCase() + memberName.slice(1), - enumName - }); - } - if (seenNames.has(memberName)) { - this.raise(FlowErrors.EnumDuplicateMemberName, id, { - memberName, - enumName - }); - } - seenNames.add(memberName); - const context = { - enumName, - explicitType, - memberName - }; - memberNode.id = id; - switch (init.type) { - case "boolean": - { - this.flowEnumCheckExplicitTypeMismatch(init.loc, context, "boolean"); - memberNode.init = init.value; - members.booleanMembers.push(this.finishNode(memberNode, "EnumBooleanMember")); - break; - } - case "number": - { - this.flowEnumCheckExplicitTypeMismatch(init.loc, context, "number"); - memberNode.init = init.value; - members.numberMembers.push(this.finishNode(memberNode, "EnumNumberMember")); - break; - } - case "string": - { - this.flowEnumCheckExplicitTypeMismatch(init.loc, context, "string"); - memberNode.init = init.value; - members.stringMembers.push(this.finishNode(memberNode, "EnumStringMember")); - break; - } - case "invalid": - { - throw this.flowEnumErrorInvalidMemberInitializer(init.loc, context); - } - case "none": - { - switch (explicitType) { - case "boolean": - this.flowEnumErrorBooleanMemberNotInitialized(init.loc, context); - break; - case "number": - this.flowEnumErrorNumberMemberNotInitialized(init.loc, context); - break; - default: - members.defaultedMembers.push(this.finishNode(memberNode, "EnumDefaultedMember")); - } - } - } - if (!this.match(8)) { - this.expect(12); - } - } - return { - members, - hasUnknownMembers - }; - } - flowEnumStringMembers(initializedMembers, defaultedMembers, { - enumName - }) { - if (initializedMembers.length === 0) { - return defaultedMembers; - } else if (defaultedMembers.length === 0) { - return initializedMembers; - } else if (defaultedMembers.length > initializedMembers.length) { - for (const member of initializedMembers) { - this.flowEnumErrorStringMemberInconsistentlyInitialized(member, { - enumName - }); - } - return defaultedMembers; - } else { - for (const member of defaultedMembers) { - this.flowEnumErrorStringMemberInconsistentlyInitialized(member, { - enumName - }); - } - return initializedMembers; - } - } - flowEnumParseExplicitType({ - enumName - }) { - if (!this.eatContextual(102)) return null; - if (!tokenIsIdentifier(this.state.type)) { - throw this.raise(FlowErrors.EnumInvalidExplicitTypeUnknownSupplied, this.state.startLoc, { - enumName - }); - } - const { - value - } = this.state; - this.next(); - if (value !== "boolean" && value !== "number" && value !== "string" && value !== "symbol") { - this.raise(FlowErrors.EnumInvalidExplicitType, this.state.startLoc, { - enumName, - invalidEnumType: value - }); - } - return value; - } - flowEnumBody(node, id) { - const enumName = id.name; - const nameLoc = id.loc.start; - const explicitType = this.flowEnumParseExplicitType({ - enumName - }); - this.expect(5); - const { - members, - hasUnknownMembers - } = this.flowEnumMembers({ - enumName, - explicitType - }); - node.hasUnknownMembers = hasUnknownMembers; - switch (explicitType) { - case "boolean": - node.explicitType = true; - node.members = members.booleanMembers; - this.expect(8); - return this.finishNode(node, "EnumBooleanBody"); - case "number": - node.explicitType = true; - node.members = members.numberMembers; - this.expect(8); - return this.finishNode(node, "EnumNumberBody"); - case "string": - node.explicitType = true; - node.members = this.flowEnumStringMembers(members.stringMembers, members.defaultedMembers, { - enumName - }); - this.expect(8); - return this.finishNode(node, "EnumStringBody"); - case "symbol": - node.members = members.defaultedMembers; - this.expect(8); - return this.finishNode(node, "EnumSymbolBody"); - default: - { - const empty = () => { - node.members = []; - this.expect(8); - return this.finishNode(node, "EnumStringBody"); - }; - node.explicitType = false; - const boolsLen = members.booleanMembers.length; - const numsLen = members.numberMembers.length; - const strsLen = members.stringMembers.length; - const defaultedLen = members.defaultedMembers.length; - if (!boolsLen && !numsLen && !strsLen && !defaultedLen) { - return empty(); - } else if (!boolsLen && !numsLen) { - node.members = this.flowEnumStringMembers(members.stringMembers, members.defaultedMembers, { - enumName - }); - this.expect(8); - return this.finishNode(node, "EnumStringBody"); - } else if (!numsLen && !strsLen && boolsLen >= defaultedLen) { - for (const member of members.defaultedMembers) { - this.flowEnumErrorBooleanMemberNotInitialized(member.loc.start, { - enumName, - memberName: member.id.name - }); - } - node.members = members.booleanMembers; - this.expect(8); - return this.finishNode(node, "EnumBooleanBody"); - } else if (!boolsLen && !strsLen && numsLen >= defaultedLen) { - for (const member of members.defaultedMembers) { - this.flowEnumErrorNumberMemberNotInitialized(member.loc.start, { - enumName, - memberName: member.id.name - }); - } - node.members = members.numberMembers; - this.expect(8); - return this.finishNode(node, "EnumNumberBody"); - } else { - this.raise(FlowErrors.EnumInconsistentMemberValues, nameLoc, { - enumName - }); - return empty(); - } - } - } - } - flowParseEnumDeclaration(node) { - const id = this.parseIdentifier(); - node.id = id; - node.body = this.flowEnumBody(this.startNode(), id); - return this.finishNode(node, "EnumDeclaration"); - } - jsxParseOpeningElementAfterName(node) { - if (this.shouldParseTypes()) { - if (this.match(47) || this.match(51)) { - node.typeArguments = this.flowParseTypeParameterInstantiationInExpression(); - } - } - return super.jsxParseOpeningElementAfterName(node); - } - isLookaheadToken_lt() { - const next = this.nextTokenStart(); - if (this.input.charCodeAt(next) === 60) { - const afterNext = this.input.charCodeAt(next + 1); - return afterNext !== 60 && afterNext !== 61; - } - return false; - } - reScan_lt_gt() { - const { - type - } = this.state; - if (type === 47) { - this.state.pos -= 1; - this.readToken_lt(); - } else if (type === 48) { - this.state.pos -= 1; - this.readToken_gt(); - } - } - reScan_lt() { - const { - type - } = this.state; - if (type === 51) { - this.state.pos -= 2; - this.finishOp(47, 1); - return 47; - } - return type; - } - maybeUnwrapTypeCastExpression(node) { - return node.type === "TypeCastExpression" ? node.expression : node; - } -}; -const entities = { - __proto__: null, - quot: "\u0022", - amp: "&", - apos: "\u0027", - lt: "<", - gt: ">", - nbsp: "\u00A0", - iexcl: "\u00A1", - cent: "\u00A2", - pound: "\u00A3", - curren: "\u00A4", - yen: "\u00A5", - brvbar: "\u00A6", - sect: "\u00A7", - uml: "\u00A8", - copy: "\u00A9", - ordf: "\u00AA", - laquo: "\u00AB", - not: "\u00AC", - shy: "\u00AD", - reg: "\u00AE", - macr: "\u00AF", - deg: "\u00B0", - plusmn: "\u00B1", - sup2: "\u00B2", - sup3: "\u00B3", - acute: "\u00B4", - micro: "\u00B5", - para: "\u00B6", - middot: "\u00B7", - cedil: "\u00B8", - sup1: "\u00B9", - ordm: "\u00BA", - raquo: "\u00BB", - frac14: "\u00BC", - frac12: "\u00BD", - frac34: "\u00BE", - iquest: "\u00BF", - Agrave: "\u00C0", - Aacute: "\u00C1", - Acirc: "\u00C2", - Atilde: "\u00C3", - Auml: "\u00C4", - Aring: "\u00C5", - AElig: "\u00C6", - Ccedil: "\u00C7", - Egrave: "\u00C8", - Eacute: "\u00C9", - Ecirc: "\u00CA", - Euml: "\u00CB", - Igrave: "\u00CC", - Iacute: "\u00CD", - Icirc: "\u00CE", - Iuml: "\u00CF", - ETH: "\u00D0", - Ntilde: "\u00D1", - Ograve: "\u00D2", - Oacute: "\u00D3", - Ocirc: "\u00D4", - Otilde: "\u00D5", - Ouml: "\u00D6", - times: "\u00D7", - Oslash: "\u00D8", - Ugrave: "\u00D9", - Uacute: "\u00DA", - Ucirc: "\u00DB", - Uuml: "\u00DC", - Yacute: "\u00DD", - THORN: "\u00DE", - szlig: "\u00DF", - agrave: "\u00E0", - aacute: "\u00E1", - acirc: "\u00E2", - atilde: "\u00E3", - auml: "\u00E4", - aring: "\u00E5", - aelig: "\u00E6", - ccedil: "\u00E7", - egrave: "\u00E8", - eacute: "\u00E9", - ecirc: "\u00EA", - euml: "\u00EB", - igrave: "\u00EC", - iacute: "\u00ED", - icirc: "\u00EE", - iuml: "\u00EF", - eth: "\u00F0", - ntilde: "\u00F1", - ograve: "\u00F2", - oacute: "\u00F3", - ocirc: "\u00F4", - otilde: "\u00F5", - ouml: "\u00F6", - divide: "\u00F7", - oslash: "\u00F8", - ugrave: "\u00F9", - uacute: "\u00FA", - ucirc: "\u00FB", - uuml: "\u00FC", - yacute: "\u00FD", - thorn: "\u00FE", - yuml: "\u00FF", - OElig: "\u0152", - oelig: "\u0153", - Scaron: "\u0160", - scaron: "\u0161", - Yuml: "\u0178", - fnof: "\u0192", - circ: "\u02C6", - tilde: "\u02DC", - Alpha: "\u0391", - Beta: "\u0392", - Gamma: "\u0393", - Delta: "\u0394", - Epsilon: "\u0395", - Zeta: "\u0396", - Eta: "\u0397", - Theta: "\u0398", - Iota: "\u0399", - Kappa: "\u039A", - Lambda: "\u039B", - Mu: "\u039C", - Nu: "\u039D", - Xi: "\u039E", - Omicron: "\u039F", - Pi: "\u03A0", - Rho: "\u03A1", - Sigma: "\u03A3", - Tau: "\u03A4", - Upsilon: "\u03A5", - Phi: "\u03A6", - Chi: "\u03A7", - Psi: "\u03A8", - Omega: "\u03A9", - alpha: "\u03B1", - beta: "\u03B2", - gamma: "\u03B3", - delta: "\u03B4", - epsilon: "\u03B5", - zeta: "\u03B6", - eta: "\u03B7", - theta: "\u03B8", - iota: "\u03B9", - kappa: "\u03BA", - lambda: "\u03BB", - mu: "\u03BC", - nu: "\u03BD", - xi: "\u03BE", - omicron: "\u03BF", - pi: "\u03C0", - rho: "\u03C1", - sigmaf: "\u03C2", - sigma: "\u03C3", - tau: "\u03C4", - upsilon: "\u03C5", - phi: "\u03C6", - chi: "\u03C7", - psi: "\u03C8", - omega: "\u03C9", - thetasym: "\u03D1", - upsih: "\u03D2", - piv: "\u03D6", - ensp: "\u2002", - emsp: "\u2003", - thinsp: "\u2009", - zwnj: "\u200C", - zwj: "\u200D", - lrm: "\u200E", - rlm: "\u200F", - ndash: "\u2013", - mdash: "\u2014", - lsquo: "\u2018", - rsquo: "\u2019", - sbquo: "\u201A", - ldquo: "\u201C", - rdquo: "\u201D", - bdquo: "\u201E", - dagger: "\u2020", - Dagger: "\u2021", - bull: "\u2022", - hellip: "\u2026", - permil: "\u2030", - prime: "\u2032", - Prime: "\u2033", - lsaquo: "\u2039", - rsaquo: "\u203A", - oline: "\u203E", - frasl: "\u2044", - euro: "\u20AC", - image: "\u2111", - weierp: "\u2118", - real: "\u211C", - trade: "\u2122", - alefsym: "\u2135", - larr: "\u2190", - uarr: "\u2191", - rarr: "\u2192", - darr: "\u2193", - harr: "\u2194", - crarr: "\u21B5", - lArr: "\u21D0", - uArr: "\u21D1", - rArr: "\u21D2", - dArr: "\u21D3", - hArr: "\u21D4", - forall: "\u2200", - part: "\u2202", - exist: "\u2203", - empty: "\u2205", - nabla: "\u2207", - isin: "\u2208", - notin: "\u2209", - ni: "\u220B", - prod: "\u220F", - sum: "\u2211", - minus: "\u2212", - lowast: "\u2217", - radic: "\u221A", - prop: "\u221D", - infin: "\u221E", - ang: "\u2220", - and: "\u2227", - or: "\u2228", - cap: "\u2229", - cup: "\u222A", - int: "\u222B", - there4: "\u2234", - sim: "\u223C", - cong: "\u2245", - asymp: "\u2248", - ne: "\u2260", - equiv: "\u2261", - le: "\u2264", - ge: "\u2265", - sub: "\u2282", - sup: "\u2283", - nsub: "\u2284", - sube: "\u2286", - supe: "\u2287", - oplus: "\u2295", - otimes: "\u2297", - perp: "\u22A5", - sdot: "\u22C5", - lceil: "\u2308", - rceil: "\u2309", - lfloor: "\u230A", - rfloor: "\u230B", - lang: "\u2329", - rang: "\u232A", - loz: "\u25CA", - spades: "\u2660", - clubs: "\u2663", - hearts: "\u2665", - diams: "\u2666" -}; -const lineBreak = /\r\n|[\r\n\u2028\u2029]/; -const lineBreakG = new RegExp(lineBreak.source, "g"); -function isNewLine(code) { - switch (code) { - case 10: - case 13: - case 8232: - case 8233: - return true; - default: - return false; - } -} -function hasNewLine(input, start, end) { - for (let i = start; i < end; i++) { - if (isNewLine(input.charCodeAt(i))) { - return true; - } - } - return false; -} -const skipWhiteSpace = /(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g; -const skipWhiteSpaceInLine = /(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g; -function isWhitespace(code) { - switch (code) { - case 0x0009: - case 0x000b: - case 0x000c: - case 32: - case 160: - case 5760: - case 0x2000: - case 0x2001: - case 0x2002: - case 0x2003: - case 0x2004: - case 0x2005: - case 0x2006: - case 0x2007: - case 0x2008: - case 0x2009: - case 0x200a: - case 0x202f: - case 0x205f: - case 0x3000: - case 0xfeff: - return true; - default: - return false; - } -} -const JsxErrors = ParseErrorEnum`jsx`({ - AttributeIsEmpty: "JSX attributes must only be assigned a non-empty expression.", - MissingClosingTagElement: ({ - openingTagName - }) => `Expected corresponding JSX closing tag for <${openingTagName}>.`, - MissingClosingTagFragment: "Expected corresponding JSX closing tag for <>.", - UnexpectedSequenceExpression: "Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?", - UnexpectedToken: ({ - unexpected, - HTMLEntity - }) => `Unexpected token \`${unexpected}\`. Did you mean \`${HTMLEntity}\` or \`{'${unexpected}'}\`?`, - UnsupportedJsxValue: "JSX value should be either an expression or a quoted JSX text.", - UnterminatedJsxContent: "Unterminated JSX contents.", - UnwrappedAdjacentJSXElements: "Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?" -}); -function isFragment(object) { - return object ? object.type === "JSXOpeningFragment" || object.type === "JSXClosingFragment" : false; -} -function getQualifiedJSXName(object) { - if (object.type === "JSXIdentifier") { - return object.name; - } - if (object.type === "JSXNamespacedName") { - return object.namespace.name + ":" + object.name.name; - } - if (object.type === "JSXMemberExpression") { - return getQualifiedJSXName(object.object) + "." + getQualifiedJSXName(object.property); - } - throw new Error("Node had unexpected type: " + object.type); -} -var jsx = superClass => class JSXParserMixin extends superClass { - jsxReadToken() { - let out = ""; - let chunkStart = this.state.pos; - for (;;) { - if (this.state.pos >= this.length) { - throw this.raise(JsxErrors.UnterminatedJsxContent, this.state.startLoc); - } - const ch = this.input.charCodeAt(this.state.pos); - switch (ch) { - case 60: - case 123: - if (this.state.pos === this.state.start) { - if (ch === 60 && this.state.canStartJSXElement) { - ++this.state.pos; - this.finishToken(143); - } else { - super.getTokenFromCode(ch); - } - return; - } - out += this.input.slice(chunkStart, this.state.pos); - this.finishToken(142, out); - return; - case 38: - out += this.input.slice(chunkStart, this.state.pos); - out += this.jsxReadEntity(); - chunkStart = this.state.pos; - break; - case 62: - case 125: - default: - if (isNewLine(ch)) { - out += this.input.slice(chunkStart, this.state.pos); - out += this.jsxReadNewLine(true); - chunkStart = this.state.pos; - } else { - ++this.state.pos; - } - } - } - } - jsxReadNewLine(normalizeCRLF) { - const ch = this.input.charCodeAt(this.state.pos); - let out; - ++this.state.pos; - if (ch === 13 && this.input.charCodeAt(this.state.pos) === 10) { - ++this.state.pos; - out = normalizeCRLF ? "\n" : "\r\n"; - } else { - out = String.fromCharCode(ch); - } - ++this.state.curLine; - this.state.lineStart = this.state.pos; - return out; - } - jsxReadString(quote) { - let out = ""; - let chunkStart = ++this.state.pos; - for (;;) { - if (this.state.pos >= this.length) { - throw this.raise(Errors.UnterminatedString, this.state.startLoc); - } - const ch = this.input.charCodeAt(this.state.pos); - if (ch === quote) break; - if (ch === 38) { - out += this.input.slice(chunkStart, this.state.pos); - out += this.jsxReadEntity(); - chunkStart = this.state.pos; - } else if (isNewLine(ch)) { - out += this.input.slice(chunkStart, this.state.pos); - out += this.jsxReadNewLine(false); - chunkStart = this.state.pos; - } else { - ++this.state.pos; - } - } - out += this.input.slice(chunkStart, this.state.pos++); - this.finishToken(134, out); - } - jsxReadEntity() { - const startPos = ++this.state.pos; - if (this.codePointAtPos(this.state.pos) === 35) { - ++this.state.pos; - let radix = 10; - if (this.codePointAtPos(this.state.pos) === 120) { - radix = 16; - ++this.state.pos; - } - const codePoint = this.readInt(radix, undefined, false, "bail"); - if (codePoint !== null && this.codePointAtPos(this.state.pos) === 59) { - ++this.state.pos; - return String.fromCodePoint(codePoint); - } - } else { - let count = 0; - let semi = false; - while (count++ < 10 && this.state.pos < this.length && !(semi = this.codePointAtPos(this.state.pos) === 59)) { - ++this.state.pos; - } - if (semi) { - const desc = this.input.slice(startPos, this.state.pos); - const entity = entities[desc]; - ++this.state.pos; - if (entity) { - return entity; - } - } - } - this.state.pos = startPos; - return "&"; - } - jsxReadWord() { - let ch; - const start = this.state.pos; - do { - ch = this.input.charCodeAt(++this.state.pos); - } while (isIdentifierChar(ch) || ch === 45); - this.finishToken(141, this.input.slice(start, this.state.pos)); - } - jsxParseIdentifier() { - const node = this.startNode(); - if (this.match(141)) { - node.name = this.state.value; - } else if (tokenIsKeyword(this.state.type)) { - node.name = tokenLabelName(this.state.type); - } else { - this.unexpected(); - } - this.next(); - return this.finishNode(node, "JSXIdentifier"); - } - jsxParseNamespacedName() { - const startLoc = this.state.startLoc; - const name = this.jsxParseIdentifier(); - if (!this.eat(14)) return name; - const node = this.startNodeAt(startLoc); - node.namespace = name; - node.name = this.jsxParseIdentifier(); - return this.finishNode(node, "JSXNamespacedName"); - } - jsxParseElementName() { - const startLoc = this.state.startLoc; - let node = this.jsxParseNamespacedName(); - if (node.type === "JSXNamespacedName") { - return node; - } - while (this.eat(16)) { - const newNode = this.startNodeAt(startLoc); - newNode.object = node; - newNode.property = this.jsxParseIdentifier(); - node = this.finishNode(newNode, "JSXMemberExpression"); - } - return node; - } - jsxParseAttributeValue() { - let node; - switch (this.state.type) { - case 5: - node = this.startNode(); - this.setContext(types.brace); - this.next(); - node = this.jsxParseExpressionContainer(node, types.j_oTag); - if (node.expression.type === "JSXEmptyExpression") { - this.raise(JsxErrors.AttributeIsEmpty, node); - } - return node; - case 143: - case 134: - return this.parseExprAtom(); - default: - throw this.raise(JsxErrors.UnsupportedJsxValue, this.state.startLoc); - } - } - jsxParseEmptyExpression() { - const node = this.startNodeAt(this.state.lastTokEndLoc); - return this.finishNodeAt(node, "JSXEmptyExpression", this.state.startLoc); - } - jsxParseSpreadChild(node) { - this.next(); - node.expression = this.parseExpression(); - this.setContext(types.j_expr); - this.state.canStartJSXElement = true; - this.expect(8); - return this.finishNode(node, "JSXSpreadChild"); - } - jsxParseExpressionContainer(node, previousContext) { - if (this.match(8)) { - node.expression = this.jsxParseEmptyExpression(); - } else { - const expression = this.parseExpression(); - node.expression = expression; - } - this.setContext(previousContext); - this.state.canStartJSXElement = true; - this.expect(8); - return this.finishNode(node, "JSXExpressionContainer"); - } - jsxParseAttribute() { - const node = this.startNode(); - if (this.match(5)) { - this.setContext(types.brace); - this.next(); - this.expect(21); - node.argument = this.parseMaybeAssignAllowIn(); - this.setContext(types.j_oTag); - this.state.canStartJSXElement = true; - this.expect(8); - return this.finishNode(node, "JSXSpreadAttribute"); - } - node.name = this.jsxParseNamespacedName(); - node.value = this.eat(29) ? this.jsxParseAttributeValue() : null; - return this.finishNode(node, "JSXAttribute"); - } - jsxParseOpeningElementAt(startLoc) { - const node = this.startNodeAt(startLoc); - if (this.eat(144)) { - return this.finishNode(node, "JSXOpeningFragment"); - } - node.name = this.jsxParseElementName(); - return this.jsxParseOpeningElementAfterName(node); - } - jsxParseOpeningElementAfterName(node) { - const attributes = []; - while (!this.match(56) && !this.match(144)) { - attributes.push(this.jsxParseAttribute()); - } - node.attributes = attributes; - node.selfClosing = this.eat(56); - this.expect(144); - return this.finishNode(node, "JSXOpeningElement"); - } - jsxParseClosingElementAt(startLoc) { - const node = this.startNodeAt(startLoc); - if (this.eat(144)) { - return this.finishNode(node, "JSXClosingFragment"); - } - node.name = this.jsxParseElementName(); - this.expect(144); - return this.finishNode(node, "JSXClosingElement"); - } - jsxParseElementAt(startLoc) { - const node = this.startNodeAt(startLoc); - const children = []; - const openingElement = this.jsxParseOpeningElementAt(startLoc); - let closingElement = null; - if (!openingElement.selfClosing) { - contents: for (;;) { - switch (this.state.type) { - case 143: - startLoc = this.state.startLoc; - this.next(); - if (this.eat(56)) { - closingElement = this.jsxParseClosingElementAt(startLoc); - break contents; - } - children.push(this.jsxParseElementAt(startLoc)); - break; - case 142: - children.push(this.parseLiteral(this.state.value, "JSXText")); - break; - case 5: - { - const node = this.startNode(); - this.setContext(types.brace); - this.next(); - if (this.match(21)) { - children.push(this.jsxParseSpreadChild(node)); - } else { - children.push(this.jsxParseExpressionContainer(node, types.j_expr)); - } - break; - } - default: - this.unexpected(); - } - } - if (isFragment(openingElement) && !isFragment(closingElement) && closingElement !== null) { - this.raise(JsxErrors.MissingClosingTagFragment, closingElement); - } else if (!isFragment(openingElement) && isFragment(closingElement)) { - this.raise(JsxErrors.MissingClosingTagElement, closingElement, { - openingTagName: getQualifiedJSXName(openingElement.name) - }); - } else if (!isFragment(openingElement) && !isFragment(closingElement)) { - if (getQualifiedJSXName(closingElement.name) !== getQualifiedJSXName(openingElement.name)) { - this.raise(JsxErrors.MissingClosingTagElement, closingElement, { - openingTagName: getQualifiedJSXName(openingElement.name) - }); - } - } - } - if (isFragment(openingElement)) { - node.openingFragment = openingElement; - node.closingFragment = closingElement; - } else { - node.openingElement = openingElement; - node.closingElement = closingElement; - } - node.children = children; - if (this.match(47)) { - throw this.raise(JsxErrors.UnwrappedAdjacentJSXElements, this.state.startLoc); - } - return isFragment(openingElement) ? this.finishNode(node, "JSXFragment") : this.finishNode(node, "JSXElement"); - } - jsxParseElement() { - const startLoc = this.state.startLoc; - this.next(); - return this.jsxParseElementAt(startLoc); - } - setContext(newContext) { - const { - context - } = this.state; - context[context.length - 1] = newContext; - } - parseExprAtom(refExpressionErrors) { - if (this.match(143)) { - return this.jsxParseElement(); - } else if (this.match(47) && this.input.charCodeAt(this.state.pos) !== 33) { - this.replaceToken(143); - return this.jsxParseElement(); - } else { - return super.parseExprAtom(refExpressionErrors); - } - } - skipSpace() { - const curContext = this.curContext(); - if (!curContext.preserveSpace) super.skipSpace(); - } - getTokenFromCode(code) { - const context = this.curContext(); - if (context === types.j_expr) { - this.jsxReadToken(); - return; - } - if (context === types.j_oTag || context === types.j_cTag) { - if (isIdentifierStart(code)) { - this.jsxReadWord(); - return; - } - if (code === 62) { - ++this.state.pos; - this.finishToken(144); - return; - } - if ((code === 34 || code === 39) && context === types.j_oTag) { - this.jsxReadString(code); - return; - } - } - if (code === 60 && this.state.canStartJSXElement && this.input.charCodeAt(this.state.pos + 1) !== 33) { - ++this.state.pos; - this.finishToken(143); - return; - } - super.getTokenFromCode(code); - } - updateContext(prevType) { - const { - context, - type - } = this.state; - if (type === 56 && prevType === 143) { - context.splice(-2, 2, types.j_cTag); - this.state.canStartJSXElement = false; - } else if (type === 143) { - context.push(types.j_oTag); - } else if (type === 144) { - const out = context[context.length - 1]; - if (out === types.j_oTag && prevType === 56 || out === types.j_cTag) { - context.pop(); - this.state.canStartJSXElement = context[context.length - 1] === types.j_expr; - } else { - this.setContext(types.j_expr); - this.state.canStartJSXElement = true; - } - } else { - this.state.canStartJSXElement = tokenComesBeforeExpression(type); - } - } -}; -class TypeScriptScope extends Scope { - constructor(...args) { - super(...args); - this.tsNames = new Map(); - } -} -class TypeScriptScopeHandler extends ScopeHandler { - constructor(...args) { - super(...args); - this.importsStack = []; - } - createScope(flags) { - this.importsStack.push(new Set()); - return new TypeScriptScope(flags); - } - enter(flags) { - if (flags === 1024) { - this.importsStack.push(new Set()); - } - super.enter(flags); - } - exit() { - const flags = super.exit(); - if (flags === 1024) { - this.importsStack.pop(); - } - return flags; - } - hasImport(name, allowShadow) { - const len = this.importsStack.length; - if (this.importsStack[len - 1].has(name)) { - return true; - } - if (!allowShadow && len > 1) { - for (let i = 0; i < len - 1; i++) { - if (this.importsStack[i].has(name)) return true; - } - } - return false; - } - declareName(name, bindingType, loc) { - if (bindingType & 4096) { - if (this.hasImport(name, true)) { - this.parser.raise(Errors.VarRedeclaration, loc, { - identifierName: name - }); - } - this.importsStack[this.importsStack.length - 1].add(name); - return; - } - const scope = this.currentScope(); - let type = scope.tsNames.get(name) || 0; - if (bindingType & 1024) { - this.maybeExportDefined(scope, name); - scope.tsNames.set(name, type | 16); - return; - } - super.declareName(name, bindingType, loc); - if (bindingType & 2) { - if (!(bindingType & 1)) { - this.checkRedeclarationInScope(scope, name, bindingType, loc); - this.maybeExportDefined(scope, name); - } - type = type | 1; - } - if (bindingType & 256) { - type = type | 2; - } - if (bindingType & 512) { - type = type | 4; - } - if (bindingType & 128) { - type = type | 8; - } - if (type) scope.tsNames.set(name, type); - } - isRedeclaredInScope(scope, name, bindingType) { - const type = scope.tsNames.get(name); - if ((type & 2) > 0) { - if (bindingType & 256) { - const isConst = !!(bindingType & 512); - const wasConst = (type & 4) > 0; - return isConst !== wasConst; - } - return true; - } - if (bindingType & 128 && (type & 8) > 0) { - if (scope.names.get(name) & 2) { - return !!(bindingType & 1); - } else { - return false; - } - } - if (bindingType & 2 && (type & 1) > 0) { - return true; - } - return super.isRedeclaredInScope(scope, name, bindingType); - } - checkLocalExport(id) { - const { - name - } = id; - if (this.hasImport(name)) return; - const len = this.scopeStack.length; - for (let i = len - 1; i >= 0; i--) { - const scope = this.scopeStack[i]; - const type = scope.tsNames.get(name); - if ((type & 1) > 0 || (type & 16) > 0) { - return; - } - } - super.checkLocalExport(id); - } -} -class ProductionParameterHandler { - constructor() { - this.stacks = []; - } - enter(flags) { - this.stacks.push(flags); - } - exit() { - this.stacks.pop(); - } - currentFlags() { - return this.stacks[this.stacks.length - 1]; - } - get hasAwait() { - return (this.currentFlags() & 2) > 0; - } - get hasYield() { - return (this.currentFlags() & 1) > 0; - } - get hasReturn() { - return (this.currentFlags() & 4) > 0; - } - get hasIn() { - return (this.currentFlags() & 8) > 0; - } -} -function functionFlags(isAsync, isGenerator) { - return (isAsync ? 2 : 0) | (isGenerator ? 1 : 0); -} -class BaseParser { - constructor() { - this.sawUnambiguousESM = false; - this.ambiguousScriptDifferentAst = false; - } - sourceToOffsetPos(sourcePos) { - return sourcePos + this.startIndex; - } - offsetToSourcePos(offsetPos) { - return offsetPos - this.startIndex; - } - hasPlugin(pluginConfig) { - if (typeof pluginConfig === "string") { - return this.plugins.has(pluginConfig); - } else { - const [pluginName, pluginOptions] = pluginConfig; - if (!this.hasPlugin(pluginName)) { - return false; - } - const actualOptions = this.plugins.get(pluginName); - for (const key of Object.keys(pluginOptions)) { - if ((actualOptions == null ? void 0 : actualOptions[key]) !== pluginOptions[key]) { - return false; - } - } - return true; - } - } - getPluginOption(plugin, name) { - var _this$plugins$get; - return (_this$plugins$get = this.plugins.get(plugin)) == null ? void 0 : _this$plugins$get[name]; - } -} -function setTrailingComments(node, comments) { - if (node.trailingComments === undefined) { - node.trailingComments = comments; - } else { - node.trailingComments.unshift(...comments); - } -} -function setLeadingComments(node, comments) { - if (node.leadingComments === undefined) { - node.leadingComments = comments; - } else { - node.leadingComments.unshift(...comments); - } -} -function setInnerComments(node, comments) { - if (node.innerComments === undefined) { - node.innerComments = comments; - } else { - node.innerComments.unshift(...comments); - } -} -function adjustInnerComments(node, elements, commentWS) { - let lastElement = null; - let i = elements.length; - while (lastElement === null && i > 0) { - lastElement = elements[--i]; - } - if (lastElement === null || lastElement.start > commentWS.start) { - setInnerComments(node, commentWS.comments); - } else { - setTrailingComments(lastElement, commentWS.comments); - } -} -class CommentsParser extends BaseParser { - addComment(comment) { - if (this.filename) comment.loc.filename = this.filename; - const { - commentsLen - } = this.state; - if (this.comments.length !== commentsLen) { - this.comments.length = commentsLen; - } - this.comments.push(comment); - this.state.commentsLen++; - } - processComment(node) { - const { - commentStack - } = this.state; - const commentStackLength = commentStack.length; - if (commentStackLength === 0) return; - let i = commentStackLength - 1; - const lastCommentWS = commentStack[i]; - if (lastCommentWS.start === node.end) { - lastCommentWS.leadingNode = node; - i--; - } - const { - start: nodeStart - } = node; - for (; i >= 0; i--) { - const commentWS = commentStack[i]; - const commentEnd = commentWS.end; - if (commentEnd > nodeStart) { - commentWS.containingNode = node; - this.finalizeComment(commentWS); - commentStack.splice(i, 1); - } else { - if (commentEnd === nodeStart) { - commentWS.trailingNode = node; - } - break; - } - } - } - finalizeComment(commentWS) { - var _node$options; - const { - comments - } = commentWS; - if (commentWS.leadingNode !== null || commentWS.trailingNode !== null) { - if (commentWS.leadingNode !== null) { - setTrailingComments(commentWS.leadingNode, comments); - } - if (commentWS.trailingNode !== null) { - setLeadingComments(commentWS.trailingNode, comments); - } - } else { - const node = commentWS.containingNode; - const commentStart = commentWS.start; - if (this.input.charCodeAt(this.offsetToSourcePos(commentStart) - 1) === 44) { - switch (node.type) { - case "ObjectExpression": - case "ObjectPattern": - adjustInnerComments(node, node.properties, commentWS); - break; - case "CallExpression": - case "OptionalCallExpression": - adjustInnerComments(node, node.arguments, commentWS); - break; - case "ImportExpression": - adjustInnerComments(node, [node.source, (_node$options = node.options) != null ? _node$options : null], commentWS); - break; - case "FunctionDeclaration": - case "FunctionExpression": - case "ArrowFunctionExpression": - case "ObjectMethod": - case "ClassMethod": - case "ClassPrivateMethod": - adjustInnerComments(node, node.params, commentWS); - break; - case "ArrayExpression": - case "ArrayPattern": - adjustInnerComments(node, node.elements, commentWS); - break; - case "ExportNamedDeclaration": - case "ImportDeclaration": - adjustInnerComments(node, node.specifiers, commentWS); - break; - case "TSEnumDeclaration": - adjustInnerComments(node, node.members, commentWS); - break; - case "TSEnumBody": - adjustInnerComments(node, node.members, commentWS); - break; - default: - { - if (node.type === "RecordExpression") { - adjustInnerComments(node, node.properties, commentWS); - break; - } - if (node.type === "TupleExpression") { - adjustInnerComments(node, node.elements, commentWS); - break; - } - setInnerComments(node, comments); - } - } - } else { - setInnerComments(node, comments); - } - } - } - finalizeRemainingComments() { - const { - commentStack - } = this.state; - for (let i = commentStack.length - 1; i >= 0; i--) { - this.finalizeComment(commentStack[i]); - } - this.state.commentStack = []; - } - resetPreviousNodeTrailingComments(node) { - const { - commentStack - } = this.state; - const { - length - } = commentStack; - if (length === 0) return; - const commentWS = commentStack[length - 1]; - if (commentWS.leadingNode === node) { - commentWS.leadingNode = null; - } - } - takeSurroundingComments(node, start, end) { - const { - commentStack - } = this.state; - const commentStackLength = commentStack.length; - if (commentStackLength === 0) return; - let i = commentStackLength - 1; - for (; i >= 0; i--) { - const commentWS = commentStack[i]; - const commentEnd = commentWS.end; - const commentStart = commentWS.start; - if (commentStart === end) { - commentWS.leadingNode = node; - } else if (commentEnd === start) { - commentWS.trailingNode = node; - } else if (commentEnd < start) { - break; - } - } - } -} -class State { - constructor() { - this.flags = 1024; - this.startIndex = void 0; - this.curLine = void 0; - this.lineStart = void 0; - this.startLoc = void 0; - this.endLoc = void 0; - this.errors = []; - this.potentialArrowAt = -1; - this.noArrowAt = []; - this.noArrowParamsConversionAt = []; - this.topicContext = { - maxNumOfResolvableTopics: 0, - maxTopicIndex: null - }; - this.labels = []; - this.commentsLen = 0; - this.commentStack = []; - this.pos = 0; - this.type = 140; - this.value = null; - this.start = 0; - this.end = 0; - this.lastTokEndLoc = null; - this.lastTokStartLoc = null; - this.context = [types.brace]; - this.firstInvalidTemplateEscapePos = null; - this.strictErrors = new Map(); - this.tokensLength = 0; - } - get strict() { - return (this.flags & 1) > 0; - } - set strict(v) { - if (v) this.flags |= 1;else this.flags &= -2; - } - init({ - strictMode, - sourceType, - startIndex, - startLine, - startColumn - }) { - this.strict = strictMode === false ? false : strictMode === true ? true : sourceType === "module"; - this.startIndex = startIndex; - this.curLine = startLine; - this.lineStart = -startColumn; - this.startLoc = this.endLoc = new Position(startLine, startColumn, startIndex); - } - get maybeInArrowParameters() { - return (this.flags & 2) > 0; - } - set maybeInArrowParameters(v) { - if (v) this.flags |= 2;else this.flags &= -3; - } - get inType() { - return (this.flags & 4) > 0; - } - set inType(v) { - if (v) this.flags |= 4;else this.flags &= -5; - } - get noAnonFunctionType() { - return (this.flags & 8) > 0; - } - set noAnonFunctionType(v) { - if (v) this.flags |= 8;else this.flags &= -9; - } - get hasFlowComment() { - return (this.flags & 16) > 0; - } - set hasFlowComment(v) { - if (v) this.flags |= 16;else this.flags &= -17; - } - get isAmbientContext() { - return (this.flags & 32) > 0; - } - set isAmbientContext(v) { - if (v) this.flags |= 32;else this.flags &= -33; - } - get inAbstractClass() { - return (this.flags & 64) > 0; - } - set inAbstractClass(v) { - if (v) this.flags |= 64;else this.flags &= -65; - } - get inDisallowConditionalTypesContext() { - return (this.flags & 128) > 0; - } - set inDisallowConditionalTypesContext(v) { - if (v) this.flags |= 128;else this.flags &= -129; - } - get soloAwait() { - return (this.flags & 256) > 0; - } - set soloAwait(v) { - if (v) this.flags |= 256;else this.flags &= -257; - } - get inFSharpPipelineDirectBody() { - return (this.flags & 512) > 0; - } - set inFSharpPipelineDirectBody(v) { - if (v) this.flags |= 512;else this.flags &= -513; - } - get canStartJSXElement() { - return (this.flags & 1024) > 0; - } - set canStartJSXElement(v) { - if (v) this.flags |= 1024;else this.flags &= -1025; - } - get containsEsc() { - return (this.flags & 2048) > 0; - } - set containsEsc(v) { - if (v) this.flags |= 2048;else this.flags &= -2049; - } - get hasTopLevelAwait() { - return (this.flags & 4096) > 0; - } - set hasTopLevelAwait(v) { - if (v) this.flags |= 4096;else this.flags &= -4097; - } - curPosition() { - return new Position(this.curLine, this.pos - this.lineStart, this.pos + this.startIndex); - } - clone() { - const state = new State(); - state.flags = this.flags; - state.startIndex = this.startIndex; - state.curLine = this.curLine; - state.lineStart = this.lineStart; - state.startLoc = this.startLoc; - state.endLoc = this.endLoc; - state.errors = this.errors.slice(); - state.potentialArrowAt = this.potentialArrowAt; - state.noArrowAt = this.noArrowAt.slice(); - state.noArrowParamsConversionAt = this.noArrowParamsConversionAt.slice(); - state.topicContext = this.topicContext; - state.labels = this.labels.slice(); - state.commentsLen = this.commentsLen; - state.commentStack = this.commentStack.slice(); - state.pos = this.pos; - state.type = this.type; - state.value = this.value; - state.start = this.start; - state.end = this.end; - state.lastTokEndLoc = this.lastTokEndLoc; - state.lastTokStartLoc = this.lastTokStartLoc; - state.context = this.context.slice(); - state.firstInvalidTemplateEscapePos = this.firstInvalidTemplateEscapePos; - state.strictErrors = this.strictErrors; - state.tokensLength = this.tokensLength; - return state; - } -} -var _isDigit = function isDigit(code) { - return code >= 48 && code <= 57; -}; -const forbiddenNumericSeparatorSiblings = { - decBinOct: new Set([46, 66, 69, 79, 95, 98, 101, 111]), - hex: new Set([46, 88, 95, 120]) -}; -const isAllowedNumericSeparatorSibling = { - bin: ch => ch === 48 || ch === 49, - oct: ch => ch >= 48 && ch <= 55, - dec: ch => ch >= 48 && ch <= 57, - hex: ch => ch >= 48 && ch <= 57 || ch >= 65 && ch <= 70 || ch >= 97 && ch <= 102 -}; -function readStringContents(type, input, pos, lineStart, curLine, errors) { - const initialPos = pos; - const initialLineStart = lineStart; - const initialCurLine = curLine; - let out = ""; - let firstInvalidLoc = null; - let chunkStart = pos; - const { - length - } = input; - for (;;) { - if (pos >= length) { - errors.unterminated(initialPos, initialLineStart, initialCurLine); - out += input.slice(chunkStart, pos); - break; - } - const ch = input.charCodeAt(pos); - if (isStringEnd(type, ch, input, pos)) { - out += input.slice(chunkStart, pos); - break; - } - if (ch === 92) { - out += input.slice(chunkStart, pos); - const res = readEscapedChar(input, pos, lineStart, curLine, type === "template", errors); - if (res.ch === null && !firstInvalidLoc) { - firstInvalidLoc = { - pos, - lineStart, - curLine - }; - } else { - out += res.ch; - } - ({ - pos, - lineStart, - curLine - } = res); - chunkStart = pos; - } else if (ch === 8232 || ch === 8233) { - ++pos; - ++curLine; - lineStart = pos; - } else if (ch === 10 || ch === 13) { - if (type === "template") { - out += input.slice(chunkStart, pos) + "\n"; - ++pos; - if (ch === 13 && input.charCodeAt(pos) === 10) { - ++pos; - } - ++curLine; - chunkStart = lineStart = pos; - } else { - errors.unterminated(initialPos, initialLineStart, initialCurLine); - } - } else { - ++pos; - } - } - return { - pos, - str: out, - firstInvalidLoc, - lineStart, - curLine, - containsInvalid: !!firstInvalidLoc - }; -} -function isStringEnd(type, ch, input, pos) { - if (type === "template") { - return ch === 96 || ch === 36 && input.charCodeAt(pos + 1) === 123; - } - return ch === (type === "double" ? 34 : 39); -} -function readEscapedChar(input, pos, lineStart, curLine, inTemplate, errors) { - const throwOnInvalid = !inTemplate; - pos++; - const res = ch => ({ - pos, - ch, - lineStart, - curLine - }); - const ch = input.charCodeAt(pos++); - switch (ch) { - case 110: - return res("\n"); - case 114: - return res("\r"); - case 120: - { - let code; - ({ - code, - pos - } = readHexChar(input, pos, lineStart, curLine, 2, false, throwOnInvalid, errors)); - return res(code === null ? null : String.fromCharCode(code)); - } - case 117: - { - let code; - ({ - code, - pos - } = readCodePoint(input, pos, lineStart, curLine, throwOnInvalid, errors)); - return res(code === null ? null : String.fromCodePoint(code)); - } - case 116: - return res("\t"); - case 98: - return res("\b"); - case 118: - return res("\u000b"); - case 102: - return res("\f"); - case 13: - if (input.charCodeAt(pos) === 10) { - ++pos; - } - case 10: - lineStart = pos; - ++curLine; - case 8232: - case 8233: - return res(""); - case 56: - case 57: - if (inTemplate) { - return res(null); - } else { - errors.strictNumericEscape(pos - 1, lineStart, curLine); - } - default: - if (ch >= 48 && ch <= 55) { - const startPos = pos - 1; - const match = /^[0-7]+/.exec(input.slice(startPos, pos + 2)); - let octalStr = match[0]; - let octal = parseInt(octalStr, 8); - if (octal > 255) { - octalStr = octalStr.slice(0, -1); - octal = parseInt(octalStr, 8); - } - pos += octalStr.length - 1; - const next = input.charCodeAt(pos); - if (octalStr !== "0" || next === 56 || next === 57) { - if (inTemplate) { - return res(null); - } else { - errors.strictNumericEscape(startPos, lineStart, curLine); - } - } - return res(String.fromCharCode(octal)); - } - return res(String.fromCharCode(ch)); - } -} -function readHexChar(input, pos, lineStart, curLine, len, forceLen, throwOnInvalid, errors) { - const initialPos = pos; - let n; - ({ - n, - pos - } = readInt(input, pos, lineStart, curLine, 16, len, forceLen, false, errors, !throwOnInvalid)); - if (n === null) { - if (throwOnInvalid) { - errors.invalidEscapeSequence(initialPos, lineStart, curLine); - } else { - pos = initialPos - 1; - } - } - return { - code: n, - pos - }; -} -function readInt(input, pos, lineStart, curLine, radix, len, forceLen, allowNumSeparator, errors, bailOnError) { - const start = pos; - const forbiddenSiblings = radix === 16 ? forbiddenNumericSeparatorSiblings.hex : forbiddenNumericSeparatorSiblings.decBinOct; - const isAllowedSibling = radix === 16 ? isAllowedNumericSeparatorSibling.hex : radix === 10 ? isAllowedNumericSeparatorSibling.dec : radix === 8 ? isAllowedNumericSeparatorSibling.oct : isAllowedNumericSeparatorSibling.bin; - let invalid = false; - let total = 0; - for (let i = 0, e = len == null ? Infinity : len; i < e; ++i) { - const code = input.charCodeAt(pos); - let val; - if (code === 95 && allowNumSeparator !== "bail") { - const prev = input.charCodeAt(pos - 1); - const next = input.charCodeAt(pos + 1); - if (!allowNumSeparator) { - if (bailOnError) return { - n: null, - pos - }; - errors.numericSeparatorInEscapeSequence(pos, lineStart, curLine); - } else if (Number.isNaN(next) || !isAllowedSibling(next) || forbiddenSiblings.has(prev) || forbiddenSiblings.has(next)) { - if (bailOnError) return { - n: null, - pos - }; - errors.unexpectedNumericSeparator(pos, lineStart, curLine); - } - ++pos; - continue; - } - if (code >= 97) { - val = code - 97 + 10; - } else if (code >= 65) { - val = code - 65 + 10; - } else if (_isDigit(code)) { - val = code - 48; - } else { - val = Infinity; - } - if (val >= radix) { - if (val <= 9 && bailOnError) { - return { - n: null, - pos - }; - } else if (val <= 9 && errors.invalidDigit(pos, lineStart, curLine, radix)) { - val = 0; - } else if (forceLen) { - val = 0; - invalid = true; - } else { - break; - } - } - ++pos; - total = total * radix + val; - } - if (pos === start || len != null && pos - start !== len || invalid) { - return { - n: null, - pos - }; - } - return { - n: total, - pos - }; -} -function readCodePoint(input, pos, lineStart, curLine, throwOnInvalid, errors) { - const ch = input.charCodeAt(pos); - let code; - if (ch === 123) { - ++pos; - ({ - code, - pos - } = readHexChar(input, pos, lineStart, curLine, input.indexOf("}", pos) - pos, true, throwOnInvalid, errors)); - ++pos; - if (code !== null && code > 0x10ffff) { - if (throwOnInvalid) { - errors.invalidCodePoint(pos, lineStart, curLine); - } else { - return { - code: null, - pos - }; - } - } - } else { - ({ - code, - pos - } = readHexChar(input, pos, lineStart, curLine, 4, false, throwOnInvalid, errors)); - } - return { - code, - pos - }; -} -function buildPosition(pos, lineStart, curLine) { - return new Position(curLine, pos - lineStart, pos); -} -const VALID_REGEX_FLAGS = new Set([103, 109, 115, 105, 121, 117, 100, 118]); -class Token { - constructor(state) { - const startIndex = state.startIndex || 0; - this.type = state.type; - this.value = state.value; - this.start = startIndex + state.start; - this.end = startIndex + state.end; - this.loc = new SourceLocation(state.startLoc, state.endLoc); - } -} -class Tokenizer extends CommentsParser { - constructor(options, input) { - super(); - this.isLookahead = void 0; - this.tokens = []; - this.errorHandlers_readInt = { - invalidDigit: (pos, lineStart, curLine, radix) => { - if (!(this.optionFlags & 2048)) return false; - this.raise(Errors.InvalidDigit, buildPosition(pos, lineStart, curLine), { - radix - }); - return true; - }, - numericSeparatorInEscapeSequence: this.errorBuilder(Errors.NumericSeparatorInEscapeSequence), - unexpectedNumericSeparator: this.errorBuilder(Errors.UnexpectedNumericSeparator) - }; - this.errorHandlers_readCodePoint = Object.assign({}, this.errorHandlers_readInt, { - invalidEscapeSequence: this.errorBuilder(Errors.InvalidEscapeSequence), - invalidCodePoint: this.errorBuilder(Errors.InvalidCodePoint) - }); - this.errorHandlers_readStringContents_string = Object.assign({}, this.errorHandlers_readCodePoint, { - strictNumericEscape: (pos, lineStart, curLine) => { - this.recordStrictModeErrors(Errors.StrictNumericEscape, buildPosition(pos, lineStart, curLine)); - }, - unterminated: (pos, lineStart, curLine) => { - throw this.raise(Errors.UnterminatedString, buildPosition(pos - 1, lineStart, curLine)); - } - }); - this.errorHandlers_readStringContents_template = Object.assign({}, this.errorHandlers_readCodePoint, { - strictNumericEscape: this.errorBuilder(Errors.StrictNumericEscape), - unterminated: (pos, lineStart, curLine) => { - throw this.raise(Errors.UnterminatedTemplate, buildPosition(pos, lineStart, curLine)); - } - }); - this.state = new State(); - this.state.init(options); - this.input = input; - this.length = input.length; - this.comments = []; - this.isLookahead = false; - } - pushToken(token) { - this.tokens.length = this.state.tokensLength; - this.tokens.push(token); - ++this.state.tokensLength; - } - next() { - this.checkKeywordEscapes(); - if (this.optionFlags & 256) { - this.pushToken(new Token(this.state)); - } - this.state.lastTokEndLoc = this.state.endLoc; - this.state.lastTokStartLoc = this.state.startLoc; - this.nextToken(); - } - eat(type) { - if (this.match(type)) { - this.next(); - return true; - } else { - return false; - } - } - match(type) { - return this.state.type === type; - } - createLookaheadState(state) { - return { - pos: state.pos, - value: null, - type: state.type, - start: state.start, - end: state.end, - context: [this.curContext()], - inType: state.inType, - startLoc: state.startLoc, - lastTokEndLoc: state.lastTokEndLoc, - curLine: state.curLine, - lineStart: state.lineStart, - curPosition: state.curPosition - }; - } - lookahead() { - const old = this.state; - this.state = this.createLookaheadState(old); - this.isLookahead = true; - this.nextToken(); - this.isLookahead = false; - const curr = this.state; - this.state = old; - return curr; - } - nextTokenStart() { - return this.nextTokenStartSince(this.state.pos); - } - nextTokenStartSince(pos) { - skipWhiteSpace.lastIndex = pos; - return skipWhiteSpace.test(this.input) ? skipWhiteSpace.lastIndex : pos; - } - lookaheadCharCode() { - return this.lookaheadCharCodeSince(this.state.pos); - } - lookaheadCharCodeSince(pos) { - return this.input.charCodeAt(this.nextTokenStartSince(pos)); - } - nextTokenInLineStart() { - return this.nextTokenInLineStartSince(this.state.pos); - } - nextTokenInLineStartSince(pos) { - skipWhiteSpaceInLine.lastIndex = pos; - return skipWhiteSpaceInLine.test(this.input) ? skipWhiteSpaceInLine.lastIndex : pos; - } - lookaheadInLineCharCode() { - return this.input.charCodeAt(this.nextTokenInLineStart()); - } - codePointAtPos(pos) { - let cp = this.input.charCodeAt(pos); - if ((cp & 0xfc00) === 0xd800 && ++pos < this.input.length) { - const trail = this.input.charCodeAt(pos); - if ((trail & 0xfc00) === 0xdc00) { - cp = 0x10000 + ((cp & 0x3ff) << 10) + (trail & 0x3ff); - } - } - return cp; - } - setStrict(strict) { - this.state.strict = strict; - if (strict) { - this.state.strictErrors.forEach(([toParseError, at]) => this.raise(toParseError, at)); - this.state.strictErrors.clear(); - } - } - curContext() { - return this.state.context[this.state.context.length - 1]; - } - nextToken() { - this.skipSpace(); - this.state.start = this.state.pos; - if (!this.isLookahead) this.state.startLoc = this.state.curPosition(); - if (this.state.pos >= this.length) { - this.finishToken(140); - return; - } - this.getTokenFromCode(this.codePointAtPos(this.state.pos)); - } - skipBlockComment(commentEnd) { - let startLoc; - if (!this.isLookahead) startLoc = this.state.curPosition(); - const start = this.state.pos; - const end = this.input.indexOf(commentEnd, start + 2); - if (end === -1) { - throw this.raise(Errors.UnterminatedComment, this.state.curPosition()); - } - this.state.pos = end + commentEnd.length; - lineBreakG.lastIndex = start + 2; - while (lineBreakG.test(this.input) && lineBreakG.lastIndex <= end) { - ++this.state.curLine; - this.state.lineStart = lineBreakG.lastIndex; - } - if (this.isLookahead) return; - const comment = { - type: "CommentBlock", - value: this.input.slice(start + 2, end), - start: this.sourceToOffsetPos(start), - end: this.sourceToOffsetPos(end + commentEnd.length), - loc: new SourceLocation(startLoc, this.state.curPosition()) - }; - if (this.optionFlags & 256) this.pushToken(comment); - return comment; - } - skipLineComment(startSkip) { - const start = this.state.pos; - let startLoc; - if (!this.isLookahead) startLoc = this.state.curPosition(); - let ch = this.input.charCodeAt(this.state.pos += startSkip); - if (this.state.pos < this.length) { - while (!isNewLine(ch) && ++this.state.pos < this.length) { - ch = this.input.charCodeAt(this.state.pos); - } - } - if (this.isLookahead) return; - const end = this.state.pos; - const value = this.input.slice(start + startSkip, end); - const comment = { - type: "CommentLine", - value, - start: this.sourceToOffsetPos(start), - end: this.sourceToOffsetPos(end), - loc: new SourceLocation(startLoc, this.state.curPosition()) - }; - if (this.optionFlags & 256) this.pushToken(comment); - return comment; - } - skipSpace() { - const spaceStart = this.state.pos; - const comments = this.optionFlags & 4096 ? [] : null; - loop: while (this.state.pos < this.length) { - const ch = this.input.charCodeAt(this.state.pos); - switch (ch) { - case 32: - case 160: - case 9: - ++this.state.pos; - break; - case 13: - if (this.input.charCodeAt(this.state.pos + 1) === 10) { - ++this.state.pos; - } - case 10: - case 8232: - case 8233: - ++this.state.pos; - ++this.state.curLine; - this.state.lineStart = this.state.pos; - break; - case 47: - switch (this.input.charCodeAt(this.state.pos + 1)) { - case 42: - { - const comment = this.skipBlockComment("*/"); - if (comment !== undefined) { - this.addComment(comment); - comments == null || comments.push(comment); - } - break; - } - case 47: - { - const comment = this.skipLineComment(2); - if (comment !== undefined) { - this.addComment(comment); - comments == null || comments.push(comment); - } - break; - } - default: - break loop; - } - break; - default: - if (isWhitespace(ch)) { - ++this.state.pos; - } else if (ch === 45 && !this.inModule && this.optionFlags & 8192) { - const pos = this.state.pos; - if (this.input.charCodeAt(pos + 1) === 45 && this.input.charCodeAt(pos + 2) === 62 && (spaceStart === 0 || this.state.lineStart > spaceStart)) { - const comment = this.skipLineComment(3); - if (comment !== undefined) { - this.addComment(comment); - comments == null || comments.push(comment); - } - } else { - break loop; - } - } else if (ch === 60 && !this.inModule && this.optionFlags & 8192) { - const pos = this.state.pos; - if (this.input.charCodeAt(pos + 1) === 33 && this.input.charCodeAt(pos + 2) === 45 && this.input.charCodeAt(pos + 3) === 45) { - const comment = this.skipLineComment(4); - if (comment !== undefined) { - this.addComment(comment); - comments == null || comments.push(comment); - } - } else { - break loop; - } - } else { - break loop; - } - } - } - if ((comments == null ? void 0 : comments.length) > 0) { - const end = this.state.pos; - const commentWhitespace = { - start: this.sourceToOffsetPos(spaceStart), - end: this.sourceToOffsetPos(end), - comments: comments, - leadingNode: null, - trailingNode: null, - containingNode: null - }; - this.state.commentStack.push(commentWhitespace); - } - } - finishToken(type, val) { - this.state.end = this.state.pos; - this.state.endLoc = this.state.curPosition(); - const prevType = this.state.type; - this.state.type = type; - this.state.value = val; - if (!this.isLookahead) { - this.updateContext(prevType); - } - } - replaceToken(type) { - this.state.type = type; - this.updateContext(); - } - readToken_numberSign() { - if (this.state.pos === 0 && this.readToken_interpreter()) { - return; - } - const nextPos = this.state.pos + 1; - const next = this.codePointAtPos(nextPos); - if (next >= 48 && next <= 57) { - throw this.raise(Errors.UnexpectedDigitAfterHash, this.state.curPosition()); - } - if (next === 123 || next === 91 && this.hasPlugin("recordAndTuple")) { - this.expectPlugin("recordAndTuple"); - if (this.getPluginOption("recordAndTuple", "syntaxType") === "bar") { - throw this.raise(next === 123 ? Errors.RecordExpressionHashIncorrectStartSyntaxType : Errors.TupleExpressionHashIncorrectStartSyntaxType, this.state.curPosition()); - } - this.state.pos += 2; - if (next === 123) { - this.finishToken(7); - } else { - this.finishToken(1); - } - } else if (isIdentifierStart(next)) { - ++this.state.pos; - this.finishToken(139, this.readWord1(next)); - } else if (next === 92) { - ++this.state.pos; - this.finishToken(139, this.readWord1()); - } else { - this.finishOp(27, 1); - } - } - readToken_dot() { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next >= 48 && next <= 57) { - this.readNumber(true); - return; - } - if (next === 46 && this.input.charCodeAt(this.state.pos + 2) === 46) { - this.state.pos += 3; - this.finishToken(21); - } else { - ++this.state.pos; - this.finishToken(16); - } - } - readToken_slash() { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next === 61) { - this.finishOp(31, 2); - } else { - this.finishOp(56, 1); - } - } - readToken_interpreter() { - if (this.state.pos !== 0 || this.length < 2) return false; - let ch = this.input.charCodeAt(this.state.pos + 1); - if (ch !== 33) return false; - const start = this.state.pos; - this.state.pos += 1; - while (!isNewLine(ch) && ++this.state.pos < this.length) { - ch = this.input.charCodeAt(this.state.pos); - } - const value = this.input.slice(start + 2, this.state.pos); - this.finishToken(28, value); - return true; - } - readToken_mult_modulo(code) { - let type = code === 42 ? 55 : 54; - let width = 1; - let next = this.input.charCodeAt(this.state.pos + 1); - if (code === 42 && next === 42) { - width++; - next = this.input.charCodeAt(this.state.pos + 2); - type = 57; - } - if (next === 61 && !this.state.inType) { - width++; - type = code === 37 ? 33 : 30; - } - this.finishOp(type, width); - } - readToken_pipe_amp(code) { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next === code) { - if (this.input.charCodeAt(this.state.pos + 2) === 61) { - this.finishOp(30, 3); - } else { - this.finishOp(code === 124 ? 41 : 42, 2); - } - return; - } - if (code === 124) { - if (next === 62) { - this.finishOp(39, 2); - return; - } - if (this.hasPlugin("recordAndTuple") && next === 125) { - if (this.getPluginOption("recordAndTuple", "syntaxType") !== "bar") { - throw this.raise(Errors.RecordExpressionBarIncorrectEndSyntaxType, this.state.curPosition()); - } - this.state.pos += 2; - this.finishToken(9); - return; - } - if (this.hasPlugin("recordAndTuple") && next === 93) { - if (this.getPluginOption("recordAndTuple", "syntaxType") !== "bar") { - throw this.raise(Errors.TupleExpressionBarIncorrectEndSyntaxType, this.state.curPosition()); - } - this.state.pos += 2; - this.finishToken(4); - return; - } - } - if (next === 61) { - this.finishOp(30, 2); - return; - } - this.finishOp(code === 124 ? 43 : 45, 1); - } - readToken_caret() { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next === 61 && !this.state.inType) { - this.finishOp(32, 2); - } else if (next === 94 && this.hasPlugin(["pipelineOperator", { - proposal: "hack", - topicToken: "^^" - }])) { - this.finishOp(37, 2); - const lookaheadCh = this.input.codePointAt(this.state.pos); - if (lookaheadCh === 94) { - this.unexpected(); - } - } else { - this.finishOp(44, 1); - } - } - readToken_atSign() { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next === 64 && this.hasPlugin(["pipelineOperator", { - proposal: "hack", - topicToken: "@@" - }])) { - this.finishOp(38, 2); - } else { - this.finishOp(26, 1); - } - } - readToken_plus_min(code) { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next === code) { - this.finishOp(34, 2); - return; - } - if (next === 61) { - this.finishOp(30, 2); - } else { - this.finishOp(53, 1); - } - } - readToken_lt() { - const { - pos - } = this.state; - const next = this.input.charCodeAt(pos + 1); - if (next === 60) { - if (this.input.charCodeAt(pos + 2) === 61) { - this.finishOp(30, 3); - return; - } - this.finishOp(51, 2); - return; - } - if (next === 61) { - this.finishOp(49, 2); - return; - } - this.finishOp(47, 1); - } - readToken_gt() { - const { - pos - } = this.state; - const next = this.input.charCodeAt(pos + 1); - if (next === 62) { - const size = this.input.charCodeAt(pos + 2) === 62 ? 3 : 2; - if (this.input.charCodeAt(pos + size) === 61) { - this.finishOp(30, size + 1); - return; - } - this.finishOp(52, size); - return; - } - if (next === 61) { - this.finishOp(49, 2); - return; - } - this.finishOp(48, 1); - } - readToken_eq_excl(code) { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next === 61) { - this.finishOp(46, this.input.charCodeAt(this.state.pos + 2) === 61 ? 3 : 2); - return; - } - if (code === 61 && next === 62) { - this.state.pos += 2; - this.finishToken(19); - return; - } - this.finishOp(code === 61 ? 29 : 35, 1); - } - readToken_question() { - const next = this.input.charCodeAt(this.state.pos + 1); - const next2 = this.input.charCodeAt(this.state.pos + 2); - if (next === 63) { - if (next2 === 61) { - this.finishOp(30, 3); - } else { - this.finishOp(40, 2); - } - } else if (next === 46 && !(next2 >= 48 && next2 <= 57)) { - this.state.pos += 2; - this.finishToken(18); - } else { - ++this.state.pos; - this.finishToken(17); - } - } - getTokenFromCode(code) { - switch (code) { - case 46: - this.readToken_dot(); - return; - case 40: - ++this.state.pos; - this.finishToken(10); - return; - case 41: - ++this.state.pos; - this.finishToken(11); - return; - case 59: - ++this.state.pos; - this.finishToken(13); - return; - case 44: - ++this.state.pos; - this.finishToken(12); - return; - case 91: - if (this.hasPlugin("recordAndTuple") && this.input.charCodeAt(this.state.pos + 1) === 124) { - if (this.getPluginOption("recordAndTuple", "syntaxType") !== "bar") { - throw this.raise(Errors.TupleExpressionBarIncorrectStartSyntaxType, this.state.curPosition()); - } - this.state.pos += 2; - this.finishToken(2); - } else { - ++this.state.pos; - this.finishToken(0); - } - return; - case 93: - ++this.state.pos; - this.finishToken(3); - return; - case 123: - if (this.hasPlugin("recordAndTuple") && this.input.charCodeAt(this.state.pos + 1) === 124) { - if (this.getPluginOption("recordAndTuple", "syntaxType") !== "bar") { - throw this.raise(Errors.RecordExpressionBarIncorrectStartSyntaxType, this.state.curPosition()); - } - this.state.pos += 2; - this.finishToken(6); - } else { - ++this.state.pos; - this.finishToken(5); - } - return; - case 125: - ++this.state.pos; - this.finishToken(8); - return; - case 58: - if (this.hasPlugin("functionBind") && this.input.charCodeAt(this.state.pos + 1) === 58) { - this.finishOp(15, 2); - } else { - ++this.state.pos; - this.finishToken(14); - } - return; - case 63: - this.readToken_question(); - return; - case 96: - this.readTemplateToken(); - return; - case 48: - { - const next = this.input.charCodeAt(this.state.pos + 1); - if (next === 120 || next === 88) { - this.readRadixNumber(16); - return; - } - if (next === 111 || next === 79) { - this.readRadixNumber(8); - return; - } - if (next === 98 || next === 66) { - this.readRadixNumber(2); - return; - } - } - case 49: - case 50: - case 51: - case 52: - case 53: - case 54: - case 55: - case 56: - case 57: - this.readNumber(false); - return; - case 34: - case 39: - this.readString(code); - return; - case 47: - this.readToken_slash(); - return; - case 37: - case 42: - this.readToken_mult_modulo(code); - return; - case 124: - case 38: - this.readToken_pipe_amp(code); - return; - case 94: - this.readToken_caret(); - return; - case 43: - case 45: - this.readToken_plus_min(code); - return; - case 60: - this.readToken_lt(); - return; - case 62: - this.readToken_gt(); - return; - case 61: - case 33: - this.readToken_eq_excl(code); - return; - case 126: - this.finishOp(36, 1); - return; - case 64: - this.readToken_atSign(); - return; - case 35: - this.readToken_numberSign(); - return; - case 92: - this.readWord(); - return; - default: - if (isIdentifierStart(code)) { - this.readWord(code); - return; - } - } - throw this.raise(Errors.InvalidOrUnexpectedToken, this.state.curPosition(), { - unexpected: String.fromCodePoint(code) - }); - } - finishOp(type, size) { - const str = this.input.slice(this.state.pos, this.state.pos + size); - this.state.pos += size; - this.finishToken(type, str); - } - readRegexp() { - const startLoc = this.state.startLoc; - const start = this.state.start + 1; - let escaped, inClass; - let { - pos - } = this.state; - for (;; ++pos) { - if (pos >= this.length) { - throw this.raise(Errors.UnterminatedRegExp, createPositionWithColumnOffset(startLoc, 1)); - } - const ch = this.input.charCodeAt(pos); - if (isNewLine(ch)) { - throw this.raise(Errors.UnterminatedRegExp, createPositionWithColumnOffset(startLoc, 1)); - } - if (escaped) { - escaped = false; - } else { - if (ch === 91) { - inClass = true; - } else if (ch === 93 && inClass) { - inClass = false; - } else if (ch === 47 && !inClass) { - break; - } - escaped = ch === 92; - } - } - const content = this.input.slice(start, pos); - ++pos; - let mods = ""; - const nextPos = () => createPositionWithColumnOffset(startLoc, pos + 2 - start); - while (pos < this.length) { - const cp = this.codePointAtPos(pos); - const char = String.fromCharCode(cp); - if (VALID_REGEX_FLAGS.has(cp)) { - if (cp === 118) { - if (mods.includes("u")) { - this.raise(Errors.IncompatibleRegExpUVFlags, nextPos()); - } - } else if (cp === 117) { - if (mods.includes("v")) { - this.raise(Errors.IncompatibleRegExpUVFlags, nextPos()); - } - } - if (mods.includes(char)) { - this.raise(Errors.DuplicateRegExpFlags, nextPos()); - } - } else if (isIdentifierChar(cp) || cp === 92) { - this.raise(Errors.MalformedRegExpFlags, nextPos()); - } else { - break; - } - ++pos; - mods += char; - } - this.state.pos = pos; - this.finishToken(138, { - pattern: content, - flags: mods - }); - } - readInt(radix, len, forceLen = false, allowNumSeparator = true) { - const { - n, - pos - } = readInt(this.input, this.state.pos, this.state.lineStart, this.state.curLine, radix, len, forceLen, allowNumSeparator, this.errorHandlers_readInt, false); - this.state.pos = pos; - return n; - } - readRadixNumber(radix) { - const start = this.state.pos; - const startLoc = this.state.curPosition(); - let isBigInt = false; - this.state.pos += 2; - const val = this.readInt(radix); - if (val == null) { - this.raise(Errors.InvalidDigit, createPositionWithColumnOffset(startLoc, 2), { - radix - }); - } - const next = this.input.charCodeAt(this.state.pos); - if (next === 110) { - ++this.state.pos; - isBigInt = true; - } else if (next === 109) { - throw this.raise(Errors.InvalidDecimal, startLoc); - } - if (isIdentifierStart(this.codePointAtPos(this.state.pos))) { - throw this.raise(Errors.NumberIdentifier, this.state.curPosition()); - } - if (isBigInt) { - const str = this.input.slice(start, this.state.pos).replace(/[_n]/g, ""); - this.finishToken(136, str); - return; - } - this.finishToken(135, val); - } - readNumber(startsWithDot) { - const start = this.state.pos; - const startLoc = this.state.curPosition(); - let isFloat = false; - let isBigInt = false; - let hasExponent = false; - let isOctal = false; - if (!startsWithDot && this.readInt(10) === null) { - this.raise(Errors.InvalidNumber, this.state.curPosition()); - } - const hasLeadingZero = this.state.pos - start >= 2 && this.input.charCodeAt(start) === 48; - if (hasLeadingZero) { - const integer = this.input.slice(start, this.state.pos); - this.recordStrictModeErrors(Errors.StrictOctalLiteral, startLoc); - if (!this.state.strict) { - const underscorePos = integer.indexOf("_"); - if (underscorePos > 0) { - this.raise(Errors.ZeroDigitNumericSeparator, createPositionWithColumnOffset(startLoc, underscorePos)); - } - } - isOctal = hasLeadingZero && !/[89]/.test(integer); - } - let next = this.input.charCodeAt(this.state.pos); - if (next === 46 && !isOctal) { - ++this.state.pos; - this.readInt(10); - isFloat = true; - next = this.input.charCodeAt(this.state.pos); - } - if ((next === 69 || next === 101) && !isOctal) { - next = this.input.charCodeAt(++this.state.pos); - if (next === 43 || next === 45) { - ++this.state.pos; - } - if (this.readInt(10) === null) { - this.raise(Errors.InvalidOrMissingExponent, startLoc); - } - isFloat = true; - hasExponent = true; - next = this.input.charCodeAt(this.state.pos); - } - if (next === 110) { - if (isFloat || hasLeadingZero) { - this.raise(Errors.InvalidBigIntLiteral, startLoc); - } - ++this.state.pos; - isBigInt = true; - } - if (next === 109) { - this.expectPlugin("decimal", this.state.curPosition()); - if (hasExponent || hasLeadingZero) { - this.raise(Errors.InvalidDecimal, startLoc); - } - ++this.state.pos; - var isDecimal = true; - } - if (isIdentifierStart(this.codePointAtPos(this.state.pos))) { - throw this.raise(Errors.NumberIdentifier, this.state.curPosition()); - } - const str = this.input.slice(start, this.state.pos).replace(/[_mn]/g, ""); - if (isBigInt) { - this.finishToken(136, str); - return; - } - if (isDecimal) { - this.finishToken(137, str); - return; - } - const val = isOctal ? parseInt(str, 8) : parseFloat(str); - this.finishToken(135, val); - } - readCodePoint(throwOnInvalid) { - const { - code, - pos - } = readCodePoint(this.input, this.state.pos, this.state.lineStart, this.state.curLine, throwOnInvalid, this.errorHandlers_readCodePoint); - this.state.pos = pos; - return code; - } - readString(quote) { - const { - str, - pos, - curLine, - lineStart - } = readStringContents(quote === 34 ? "double" : "single", this.input, this.state.pos + 1, this.state.lineStart, this.state.curLine, this.errorHandlers_readStringContents_string); - this.state.pos = pos + 1; - this.state.lineStart = lineStart; - this.state.curLine = curLine; - this.finishToken(134, str); - } - readTemplateContinuation() { - if (!this.match(8)) { - this.unexpected(null, 8); - } - this.state.pos--; - this.readTemplateToken(); - } - readTemplateToken() { - const opening = this.input[this.state.pos]; - const { - str, - firstInvalidLoc, - pos, - curLine, - lineStart - } = readStringContents("template", this.input, this.state.pos + 1, this.state.lineStart, this.state.curLine, this.errorHandlers_readStringContents_template); - this.state.pos = pos + 1; - this.state.lineStart = lineStart; - this.state.curLine = curLine; - if (firstInvalidLoc) { - this.state.firstInvalidTemplateEscapePos = new Position(firstInvalidLoc.curLine, firstInvalidLoc.pos - firstInvalidLoc.lineStart, this.sourceToOffsetPos(firstInvalidLoc.pos)); - } - if (this.input.codePointAt(pos) === 96) { - this.finishToken(24, firstInvalidLoc ? null : opening + str + "`"); - } else { - this.state.pos++; - this.finishToken(25, firstInvalidLoc ? null : opening + str + "${"); - } - } - recordStrictModeErrors(toParseError, at) { - const index = at.index; - if (this.state.strict && !this.state.strictErrors.has(index)) { - this.raise(toParseError, at); - } else { - this.state.strictErrors.set(index, [toParseError, at]); - } - } - readWord1(firstCode) { - this.state.containsEsc = false; - let word = ""; - const start = this.state.pos; - let chunkStart = this.state.pos; - if (firstCode !== undefined) { - this.state.pos += firstCode <= 0xffff ? 1 : 2; - } - while (this.state.pos < this.length) { - const ch = this.codePointAtPos(this.state.pos); - if (isIdentifierChar(ch)) { - this.state.pos += ch <= 0xffff ? 1 : 2; - } else if (ch === 92) { - this.state.containsEsc = true; - word += this.input.slice(chunkStart, this.state.pos); - const escStart = this.state.curPosition(); - const identifierCheck = this.state.pos === start ? isIdentifierStart : isIdentifierChar; - if (this.input.charCodeAt(++this.state.pos) !== 117) { - this.raise(Errors.MissingUnicodeEscape, this.state.curPosition()); - chunkStart = this.state.pos - 1; - continue; - } - ++this.state.pos; - const esc = this.readCodePoint(true); - if (esc !== null) { - if (!identifierCheck(esc)) { - this.raise(Errors.EscapedCharNotAnIdentifier, escStart); - } - word += String.fromCodePoint(esc); - } - chunkStart = this.state.pos; - } else { - break; - } - } - return word + this.input.slice(chunkStart, this.state.pos); - } - readWord(firstCode) { - const word = this.readWord1(firstCode); - const type = keywords$1.get(word); - if (type !== undefined) { - this.finishToken(type, tokenLabelName(type)); - } else { - this.finishToken(132, word); - } - } - checkKeywordEscapes() { - const { - type - } = this.state; - if (tokenIsKeyword(type) && this.state.containsEsc) { - this.raise(Errors.InvalidEscapedReservedWord, this.state.startLoc, { - reservedWord: tokenLabelName(type) - }); - } - } - raise(toParseError, at, details = {}) { - const loc = at instanceof Position ? at : at.loc.start; - const error = toParseError(loc, details); - if (!(this.optionFlags & 2048)) throw error; - if (!this.isLookahead) this.state.errors.push(error); - return error; - } - raiseOverwrite(toParseError, at, details = {}) { - const loc = at instanceof Position ? at : at.loc.start; - const pos = loc.index; - const errors = this.state.errors; - for (let i = errors.length - 1; i >= 0; i--) { - const error = errors[i]; - if (error.loc.index === pos) { - return errors[i] = toParseError(loc, details); - } - if (error.loc.index < pos) break; - } - return this.raise(toParseError, at, details); - } - updateContext(prevType) {} - unexpected(loc, type) { - throw this.raise(Errors.UnexpectedToken, loc != null ? loc : this.state.startLoc, { - expected: type ? tokenLabelName(type) : null - }); - } - expectPlugin(pluginName, loc) { - if (this.hasPlugin(pluginName)) { - return true; - } - throw this.raise(Errors.MissingPlugin, loc != null ? loc : this.state.startLoc, { - missingPlugin: [pluginName] - }); - } - expectOnePlugin(pluginNames) { - if (!pluginNames.some(name => this.hasPlugin(name))) { - throw this.raise(Errors.MissingOneOfPlugins, this.state.startLoc, { - missingPlugin: pluginNames - }); - } - } - errorBuilder(error) { - return (pos, lineStart, curLine) => { - this.raise(error, buildPosition(pos, lineStart, curLine)); - }; - } -} -class ClassScope { - constructor() { - this.privateNames = new Set(); - this.loneAccessors = new Map(); - this.undefinedPrivateNames = new Map(); - } -} -class ClassScopeHandler { - constructor(parser) { - this.parser = void 0; - this.stack = []; - this.undefinedPrivateNames = new Map(); - this.parser = parser; - } - current() { - return this.stack[this.stack.length - 1]; - } - enter() { - this.stack.push(new ClassScope()); - } - exit() { - const oldClassScope = this.stack.pop(); - const current = this.current(); - for (const [name, loc] of Array.from(oldClassScope.undefinedPrivateNames)) { - if (current) { - if (!current.undefinedPrivateNames.has(name)) { - current.undefinedPrivateNames.set(name, loc); - } - } else { - this.parser.raise(Errors.InvalidPrivateFieldResolution, loc, { - identifierName: name - }); - } - } - } - declarePrivateName(name, elementType, loc) { - const { - privateNames, - loneAccessors, - undefinedPrivateNames - } = this.current(); - let redefined = privateNames.has(name); - if (elementType & 3) { - const accessor = redefined && loneAccessors.get(name); - if (accessor) { - const oldStatic = accessor & 4; - const newStatic = elementType & 4; - const oldKind = accessor & 3; - const newKind = elementType & 3; - redefined = oldKind === newKind || oldStatic !== newStatic; - if (!redefined) loneAccessors.delete(name); - } else if (!redefined) { - loneAccessors.set(name, elementType); - } - } - if (redefined) { - this.parser.raise(Errors.PrivateNameRedeclaration, loc, { - identifierName: name - }); - } - privateNames.add(name); - undefinedPrivateNames.delete(name); - } - usePrivateName(name, loc) { - let classScope; - for (classScope of this.stack) { - if (classScope.privateNames.has(name)) return; - } - if (classScope) { - classScope.undefinedPrivateNames.set(name, loc); - } else { - this.parser.raise(Errors.InvalidPrivateFieldResolution, loc, { - identifierName: name - }); - } - } -} -class ExpressionScope { - constructor(type = 0) { - this.type = type; - } - canBeArrowParameterDeclaration() { - return this.type === 2 || this.type === 1; - } - isCertainlyParameterDeclaration() { - return this.type === 3; - } -} -class ArrowHeadParsingScope extends ExpressionScope { - constructor(type) { - super(type); - this.declarationErrors = new Map(); - } - recordDeclarationError(ParsingErrorClass, at) { - const index = at.index; - this.declarationErrors.set(index, [ParsingErrorClass, at]); - } - clearDeclarationError(index) { - this.declarationErrors.delete(index); - } - iterateErrors(iterator) { - this.declarationErrors.forEach(iterator); - } -} -class ExpressionScopeHandler { - constructor(parser) { - this.parser = void 0; - this.stack = [new ExpressionScope()]; - this.parser = parser; - } - enter(scope) { - this.stack.push(scope); - } - exit() { - this.stack.pop(); - } - recordParameterInitializerError(toParseError, node) { - const origin = node.loc.start; - const { - stack - } = this; - let i = stack.length - 1; - let scope = stack[i]; - while (!scope.isCertainlyParameterDeclaration()) { - if (scope.canBeArrowParameterDeclaration()) { - scope.recordDeclarationError(toParseError, origin); - } else { - return; - } - scope = stack[--i]; - } - this.parser.raise(toParseError, origin); - } - recordArrowParameterBindingError(error, node) { - const { - stack - } = this; - const scope = stack[stack.length - 1]; - const origin = node.loc.start; - if (scope.isCertainlyParameterDeclaration()) { - this.parser.raise(error, origin); - } else if (scope.canBeArrowParameterDeclaration()) { - scope.recordDeclarationError(error, origin); - } else { - return; - } - } - recordAsyncArrowParametersError(at) { - const { - stack - } = this; - let i = stack.length - 1; - let scope = stack[i]; - while (scope.canBeArrowParameterDeclaration()) { - if (scope.type === 2) { - scope.recordDeclarationError(Errors.AwaitBindingIdentifier, at); - } - scope = stack[--i]; - } - } - validateAsPattern() { - const { - stack - } = this; - const currentScope = stack[stack.length - 1]; - if (!currentScope.canBeArrowParameterDeclaration()) return; - currentScope.iterateErrors(([toParseError, loc]) => { - this.parser.raise(toParseError, loc); - let i = stack.length - 2; - let scope = stack[i]; - while (scope.canBeArrowParameterDeclaration()) { - scope.clearDeclarationError(loc.index); - scope = stack[--i]; - } - }); - } -} -function newParameterDeclarationScope() { - return new ExpressionScope(3); -} -function newArrowHeadScope() { - return new ArrowHeadParsingScope(1); -} -function newAsyncArrowScope() { - return new ArrowHeadParsingScope(2); -} -function newExpressionScope() { - return new ExpressionScope(); -} -class UtilParser extends Tokenizer { - addExtra(node, key, value, enumerable = true) { - if (!node) return; - let { - extra - } = node; - if (extra == null) { - extra = {}; - node.extra = extra; - } - if (enumerable) { - extra[key] = value; - } else { - Object.defineProperty(extra, key, { - enumerable, - value - }); - } - } - isContextual(token) { - return this.state.type === token && !this.state.containsEsc; - } - isUnparsedContextual(nameStart, name) { - if (this.input.startsWith(name, nameStart)) { - const nextCh = this.input.charCodeAt(nameStart + name.length); - return !(isIdentifierChar(nextCh) || (nextCh & 0xfc00) === 0xd800); - } - return false; - } - isLookaheadContextual(name) { - const next = this.nextTokenStart(); - return this.isUnparsedContextual(next, name); - } - eatContextual(token) { - if (this.isContextual(token)) { - this.next(); - return true; - } - return false; - } - expectContextual(token, toParseError) { - if (!this.eatContextual(token)) { - if (toParseError != null) { - throw this.raise(toParseError, this.state.startLoc); - } - this.unexpected(null, token); - } - } - canInsertSemicolon() { - return this.match(140) || this.match(8) || this.hasPrecedingLineBreak(); - } - hasPrecedingLineBreak() { - return hasNewLine(this.input, this.offsetToSourcePos(this.state.lastTokEndLoc.index), this.state.start); - } - hasFollowingLineBreak() { - return hasNewLine(this.input, this.state.end, this.nextTokenStart()); - } - isLineTerminator() { - return this.eat(13) || this.canInsertSemicolon(); - } - semicolon(allowAsi = true) { - if (allowAsi ? this.isLineTerminator() : this.eat(13)) return; - this.raise(Errors.MissingSemicolon, this.state.lastTokEndLoc); - } - expect(type, loc) { - if (!this.eat(type)) { - this.unexpected(loc, type); - } - } - tryParse(fn, oldState = this.state.clone()) { - const abortSignal = { - node: null - }; - try { - const node = fn((node = null) => { - abortSignal.node = node; - throw abortSignal; - }); - if (this.state.errors.length > oldState.errors.length) { - const failState = this.state; - this.state = oldState; - this.state.tokensLength = failState.tokensLength; - return { - node, - error: failState.errors[oldState.errors.length], - thrown: false, - aborted: false, - failState - }; - } - return { - node: node, - error: null, - thrown: false, - aborted: false, - failState: null - }; - } catch (error) { - const failState = this.state; - this.state = oldState; - if (error instanceof SyntaxError) { - return { - node: null, - error, - thrown: true, - aborted: false, - failState - }; - } - if (error === abortSignal) { - return { - node: abortSignal.node, - error: null, - thrown: false, - aborted: true, - failState - }; - } - throw error; - } - } - checkExpressionErrors(refExpressionErrors, andThrow) { - if (!refExpressionErrors) return false; - const { - shorthandAssignLoc, - doubleProtoLoc, - privateKeyLoc, - optionalParametersLoc, - voidPatternLoc - } = refExpressionErrors; - const hasErrors = !!shorthandAssignLoc || !!doubleProtoLoc || !!optionalParametersLoc || !!privateKeyLoc || !!voidPatternLoc; - if (!andThrow) { - return hasErrors; - } - if (shorthandAssignLoc != null) { - this.raise(Errors.InvalidCoverInitializedName, shorthandAssignLoc); - } - if (doubleProtoLoc != null) { - this.raise(Errors.DuplicateProto, doubleProtoLoc); - } - if (privateKeyLoc != null) { - this.raise(Errors.UnexpectedPrivateField, privateKeyLoc); - } - if (optionalParametersLoc != null) { - this.unexpected(optionalParametersLoc); - } - if (voidPatternLoc != null) { - this.raise(Errors.InvalidCoverDiscardElement, voidPatternLoc); - } - } - isLiteralPropertyName() { - return tokenIsLiteralPropertyName(this.state.type); - } - isPrivateName(node) { - return node.type === "PrivateName"; - } - getPrivateNameSV(node) { - return node.id.name; - } - hasPropertyAsPrivateName(node) { - return (node.type === "MemberExpression" || node.type === "OptionalMemberExpression") && this.isPrivateName(node.property); - } - isObjectProperty(node) { - return node.type === "ObjectProperty"; - } - isObjectMethod(node) { - return node.type === "ObjectMethod"; - } - initializeScopes(inModule = this.options.sourceType === "module") { - const oldLabels = this.state.labels; - this.state.labels = []; - const oldExportedIdentifiers = this.exportedIdentifiers; - this.exportedIdentifiers = new Set(); - const oldInModule = this.inModule; - this.inModule = inModule; - const oldScope = this.scope; - const ScopeHandler = this.getScopeHandler(); - this.scope = new ScopeHandler(this, inModule); - const oldProdParam = this.prodParam; - this.prodParam = new ProductionParameterHandler(); - const oldClassScope = this.classScope; - this.classScope = new ClassScopeHandler(this); - const oldExpressionScope = this.expressionScope; - this.expressionScope = new ExpressionScopeHandler(this); - return () => { - this.state.labels = oldLabels; - this.exportedIdentifiers = oldExportedIdentifiers; - this.inModule = oldInModule; - this.scope = oldScope; - this.prodParam = oldProdParam; - this.classScope = oldClassScope; - this.expressionScope = oldExpressionScope; - }; - } - enterInitialScopes() { - let paramFlags = 0; - if (this.inModule || this.optionFlags & 1) { - paramFlags |= 2; - } - if (this.optionFlags & 32) { - paramFlags |= 1; - } - const isCommonJS = !this.inModule && this.options.sourceType === "commonjs"; - if (isCommonJS || this.optionFlags & 2) { - paramFlags |= 4; - } - this.prodParam.enter(paramFlags); - let scopeFlags = isCommonJS ? 514 : 1; - if (this.optionFlags & 4) { - scopeFlags |= 512; - } - this.scope.enter(scopeFlags); - } - checkDestructuringPrivate(refExpressionErrors) { - const { - privateKeyLoc - } = refExpressionErrors; - if (privateKeyLoc !== null) { - this.expectPlugin("destructuringPrivate", privateKeyLoc); - } - } -} -class ExpressionErrors { - constructor() { - this.shorthandAssignLoc = null; - this.doubleProtoLoc = null; - this.privateKeyLoc = null; - this.optionalParametersLoc = null; - this.voidPatternLoc = null; - } -} -class Node { - constructor(parser, pos, loc) { - this.type = ""; - this.start = pos; - this.end = 0; - this.loc = new SourceLocation(loc); - if ((parser == null ? void 0 : parser.optionFlags) & 128) this.range = [pos, 0]; - if (parser != null && parser.filename) this.loc.filename = parser.filename; - } -} -const NodePrototype = Node.prototype; -NodePrototype.__clone = function () { - const newNode = new Node(undefined, this.start, this.loc.start); - const keys = Object.keys(this); - for (let i = 0, length = keys.length; i < length; i++) { - const key = keys[i]; - if (key !== "leadingComments" && key !== "trailingComments" && key !== "innerComments") { - newNode[key] = this[key]; - } - } - return newNode; -}; -class NodeUtils extends UtilParser { - startNode() { - const loc = this.state.startLoc; - return new Node(this, loc.index, loc); - } - startNodeAt(loc) { - return new Node(this, loc.index, loc); - } - startNodeAtNode(type) { - return this.startNodeAt(type.loc.start); - } - finishNode(node, type) { - return this.finishNodeAt(node, type, this.state.lastTokEndLoc); - } - finishNodeAt(node, type, endLoc) { - node.type = type; - node.end = endLoc.index; - node.loc.end = endLoc; - if (this.optionFlags & 128) node.range[1] = endLoc.index; - if (this.optionFlags & 4096) { - this.processComment(node); - } - return node; - } - resetStartLocation(node, startLoc) { - node.start = startLoc.index; - node.loc.start = startLoc; - if (this.optionFlags & 128) node.range[0] = startLoc.index; - } - resetEndLocation(node, endLoc = this.state.lastTokEndLoc) { - node.end = endLoc.index; - node.loc.end = endLoc; - if (this.optionFlags & 128) node.range[1] = endLoc.index; - } - resetStartLocationFromNode(node, locationNode) { - this.resetStartLocation(node, locationNode.loc.start); - } - castNodeTo(node, type) { - node.type = type; - return node; - } - cloneIdentifier(node) { - const { - type, - start, - end, - loc, - range, - name - } = node; - const cloned = Object.create(NodePrototype); - cloned.type = type; - cloned.start = start; - cloned.end = end; - cloned.loc = loc; - cloned.range = range; - cloned.name = name; - if (node.extra) cloned.extra = node.extra; - return cloned; - } - cloneStringLiteral(node) { - const { - type, - start, - end, - loc, - range, - extra - } = node; - const cloned = Object.create(NodePrototype); - cloned.type = type; - cloned.start = start; - cloned.end = end; - cloned.loc = loc; - cloned.range = range; - cloned.extra = extra; - cloned.value = node.value; - return cloned; - } -} -const unwrapParenthesizedExpression = node => { - return node.type === "ParenthesizedExpression" ? unwrapParenthesizedExpression(node.expression) : node; -}; -class LValParser extends NodeUtils { - toAssignable(node, isLHS = false) { - var _node$extra, _node$extra3; - let parenthesized = undefined; - if (node.type === "ParenthesizedExpression" || (_node$extra = node.extra) != null && _node$extra.parenthesized) { - parenthesized = unwrapParenthesizedExpression(node); - if (isLHS) { - if (parenthesized.type === "Identifier") { - this.expressionScope.recordArrowParameterBindingError(Errors.InvalidParenthesizedAssignment, node); - } else if (parenthesized.type !== "CallExpression" && parenthesized.type !== "MemberExpression" && !this.isOptionalMemberExpression(parenthesized)) { - this.raise(Errors.InvalidParenthesizedAssignment, node); - } - } else { - this.raise(Errors.InvalidParenthesizedAssignment, node); - } - } - switch (node.type) { - case "Identifier": - case "ObjectPattern": - case "ArrayPattern": - case "AssignmentPattern": - case "RestElement": - case "VoidPattern": - break; - case "ObjectExpression": - this.castNodeTo(node, "ObjectPattern"); - for (let i = 0, length = node.properties.length, last = length - 1; i < length; i++) { - var _node$extra2; - const prop = node.properties[i]; - const isLast = i === last; - this.toAssignableObjectExpressionProp(prop, isLast, isLHS); - if (isLast && prop.type === "RestElement" && (_node$extra2 = node.extra) != null && _node$extra2.trailingCommaLoc) { - this.raise(Errors.RestTrailingComma, node.extra.trailingCommaLoc); - } - } - break; - case "ObjectProperty": - { - const { - key, - value - } = node; - if (this.isPrivateName(key)) { - this.classScope.usePrivateName(this.getPrivateNameSV(key), key.loc.start); - } - this.toAssignable(value, isLHS); - break; - } - case "SpreadElement": - { - throw new Error("Internal @babel/parser error (this is a bug, please report it)." + " SpreadElement should be converted by .toAssignable's caller."); - } - case "ArrayExpression": - this.castNodeTo(node, "ArrayPattern"); - this.toAssignableList(node.elements, (_node$extra3 = node.extra) == null ? void 0 : _node$extra3.trailingCommaLoc, isLHS); - break; - case "AssignmentExpression": - if (node.operator !== "=") { - this.raise(Errors.MissingEqInAssignment, node.left.loc.end); - } - this.castNodeTo(node, "AssignmentPattern"); - delete node.operator; - if (node.left.type === "VoidPattern") { - this.raise(Errors.VoidPatternInitializer, node.left); - } - this.toAssignable(node.left, isLHS); - break; - case "ParenthesizedExpression": - this.toAssignable(parenthesized, isLHS); - break; - } - } - toAssignableObjectExpressionProp(prop, isLast, isLHS) { - if (prop.type === "ObjectMethod") { - this.raise(prop.kind === "get" || prop.kind === "set" ? Errors.PatternHasAccessor : Errors.PatternHasMethod, prop.key); - } else if (prop.type === "SpreadElement") { - this.castNodeTo(prop, "RestElement"); - const arg = prop.argument; - this.checkToRestConversion(arg, false); - this.toAssignable(arg, isLHS); - if (!isLast) { - this.raise(Errors.RestTrailingComma, prop); - } - } else { - this.toAssignable(prop, isLHS); - } - } - toAssignableList(exprList, trailingCommaLoc, isLHS) { - const end = exprList.length - 1; - for (let i = 0; i <= end; i++) { - const elt = exprList[i]; - if (!elt) continue; - this.toAssignableListItem(exprList, i, isLHS); - if (elt.type === "RestElement") { - if (i < end) { - this.raise(Errors.RestTrailingComma, elt); - } else if (trailingCommaLoc) { - this.raise(Errors.RestTrailingComma, trailingCommaLoc); - } - } - } - } - toAssignableListItem(exprList, index, isLHS) { - const node = exprList[index]; - if (node.type === "SpreadElement") { - this.castNodeTo(node, "RestElement"); - const arg = node.argument; - this.checkToRestConversion(arg, true); - this.toAssignable(arg, isLHS); - } else { - this.toAssignable(node, isLHS); - } - } - isAssignable(node, isBinding) { - switch (node.type) { - case "Identifier": - case "ObjectPattern": - case "ArrayPattern": - case "AssignmentPattern": - case "RestElement": - case "VoidPattern": - return true; - case "ObjectExpression": - { - const last = node.properties.length - 1; - return node.properties.every((prop, i) => { - return prop.type !== "ObjectMethod" && (i === last || prop.type !== "SpreadElement") && this.isAssignable(prop); - }); - } - case "ObjectProperty": - return this.isAssignable(node.value); - case "SpreadElement": - return this.isAssignable(node.argument); - case "ArrayExpression": - return node.elements.every(element => element === null || this.isAssignable(element)); - case "AssignmentExpression": - return node.operator === "="; - case "ParenthesizedExpression": - return this.isAssignable(node.expression); - case "MemberExpression": - case "OptionalMemberExpression": - return !isBinding; - default: - return false; - } - } - toReferencedList(exprList, isParenthesizedExpr) { - return exprList; - } - toReferencedListDeep(exprList, isParenthesizedExpr) { - this.toReferencedList(exprList, isParenthesizedExpr); - for (const expr of exprList) { - if ((expr == null ? void 0 : expr.type) === "ArrayExpression") { - this.toReferencedListDeep(expr.elements); - } - } - } - parseSpread(refExpressionErrors) { - const node = this.startNode(); - this.next(); - node.argument = this.parseMaybeAssignAllowIn(refExpressionErrors, undefined); - return this.finishNode(node, "SpreadElement"); - } - parseRestBinding() { - const node = this.startNode(); - this.next(); - const argument = this.parseBindingAtom(); - if (argument.type === "VoidPattern") { - this.raise(Errors.UnexpectedVoidPattern, argument); - } - node.argument = argument; - return this.finishNode(node, "RestElement"); - } - parseBindingAtom() { - switch (this.state.type) { - case 0: - { - const node = this.startNode(); - this.next(); - node.elements = this.parseBindingList(3, 93, 1); - return this.finishNode(node, "ArrayPattern"); - } - case 5: - return this.parseObjectLike(8, true); - case 88: - return this.parseVoidPattern(null); - } - return this.parseIdentifier(); - } - parseBindingList(close, closeCharCode, flags) { - const allowEmpty = flags & 1; - const elts = []; - let first = true; - while (!this.eat(close)) { - if (first) { - first = false; - } else { - this.expect(12); - } - if (allowEmpty && this.match(12)) { - elts.push(null); - } else if (this.eat(close)) { - break; - } else if (this.match(21)) { - let rest = this.parseRestBinding(); - if (this.hasPlugin("flow") || flags & 2) { - rest = this.parseFunctionParamType(rest); - } - elts.push(rest); - if (!this.checkCommaAfterRest(closeCharCode)) { - this.expect(close); - break; - } - } else { - const decorators = []; - if (flags & 2) { - if (this.match(26) && this.hasPlugin("decorators")) { - this.raise(Errors.UnsupportedParameterDecorator, this.state.startLoc); - } - while (this.match(26)) { - decorators.push(this.parseDecorator()); - } - } - elts.push(this.parseBindingElement(flags, decorators)); - } - } - return elts; - } - parseBindingRestProperty(prop) { - this.next(); - if (this.hasPlugin("discardBinding") && this.match(88)) { - prop.argument = this.parseVoidPattern(null); - this.raise(Errors.UnexpectedVoidPattern, prop.argument); - } else { - prop.argument = this.parseIdentifier(); - } - this.checkCommaAfterRest(125); - return this.finishNode(prop, "RestElement"); - } - parseBindingProperty() { - const { - type, - startLoc - } = this.state; - if (type === 21) { - return this.parseBindingRestProperty(this.startNode()); - } - const prop = this.startNode(); - if (type === 139) { - this.expectPlugin("destructuringPrivate", startLoc); - this.classScope.usePrivateName(this.state.value, startLoc); - prop.key = this.parsePrivateName(); - } else { - this.parsePropertyName(prop); - } - prop.method = false; - return this.parseObjPropValue(prop, startLoc, false, false, true, false); - } - parseBindingElement(flags, decorators) { - const left = this.parseMaybeDefault(); - if (this.hasPlugin("flow") || flags & 2) { - this.parseFunctionParamType(left); - } - if (decorators.length) { - left.decorators = decorators; - this.resetStartLocationFromNode(left, decorators[0]); - } - const elt = this.parseMaybeDefault(left.loc.start, left); - return elt; - } - parseFunctionParamType(param) { - return param; - } - parseMaybeDefault(startLoc, left) { - startLoc != null ? startLoc : startLoc = this.state.startLoc; - left = left != null ? left : this.parseBindingAtom(); - if (!this.eat(29)) return left; - const node = this.startNodeAt(startLoc); - if (left.type === "VoidPattern") { - this.raise(Errors.VoidPatternInitializer, left); - } - node.left = left; - node.right = this.parseMaybeAssignAllowIn(); - return this.finishNode(node, "AssignmentPattern"); - } - isValidLVal(type, disallowCallExpression, isUnparenthesizedInAssign, binding) { - switch (type) { - case "AssignmentPattern": - return "left"; - case "RestElement": - return "argument"; - case "ObjectProperty": - return "value"; - case "ParenthesizedExpression": - return "expression"; - case "ArrayPattern": - return "elements"; - case "ObjectPattern": - return "properties"; - case "VoidPattern": - return true; - case "CallExpression": - if (!disallowCallExpression && !this.state.strict && this.optionFlags & 8192) { - return true; - } - } - return false; - } - isOptionalMemberExpression(expression) { - return expression.type === "OptionalMemberExpression"; - } - checkLVal(expression, ancestor, binding = 64, checkClashes = false, strictModeChanged = false, hasParenthesizedAncestor = false, disallowCallExpression = false) { - var _expression$extra; - const type = expression.type; - if (this.isObjectMethod(expression)) return; - const isOptionalMemberExpression = this.isOptionalMemberExpression(expression); - if (isOptionalMemberExpression || type === "MemberExpression") { - if (isOptionalMemberExpression) { - this.expectPlugin("optionalChainingAssign", expression.loc.start); - if (ancestor.type !== "AssignmentExpression") { - this.raise(Errors.InvalidLhsOptionalChaining, expression, { - ancestor - }); - } - } - if (binding !== 64) { - this.raise(Errors.InvalidPropertyBindingPattern, expression); - } - return; - } - if (type === "Identifier") { - this.checkIdentifier(expression, binding, strictModeChanged); - const { - name - } = expression; - if (checkClashes) { - if (checkClashes.has(name)) { - this.raise(Errors.ParamDupe, expression); - } else { - checkClashes.add(name); - } - } - return; - } else if (type === "VoidPattern" && ancestor.type === "CatchClause") { - this.raise(Errors.VoidPatternCatchClauseParam, expression); - } - const unwrappedExpression = unwrapParenthesizedExpression(expression); - disallowCallExpression || (disallowCallExpression = unwrappedExpression.type === "CallExpression" && (unwrappedExpression.callee.type === "Import" || unwrappedExpression.callee.type === "Super")); - const validity = this.isValidLVal(type, disallowCallExpression, !(hasParenthesizedAncestor || (_expression$extra = expression.extra) != null && _expression$extra.parenthesized) && ancestor.type === "AssignmentExpression", binding); - if (validity === true) return; - if (validity === false) { - const ParseErrorClass = binding === 64 ? Errors.InvalidLhs : Errors.InvalidLhsBinding; - this.raise(ParseErrorClass, expression, { - ancestor - }); - return; - } - let key, isParenthesizedExpression; - if (typeof validity === "string") { - key = validity; - isParenthesizedExpression = type === "ParenthesizedExpression"; - } else { - [key, isParenthesizedExpression] = validity; - } - const nextAncestor = type === "ArrayPattern" || type === "ObjectPattern" ? { - type - } : ancestor; - const val = expression[key]; - if (Array.isArray(val)) { - for (const child of val) { - if (child) { - this.checkLVal(child, nextAncestor, binding, checkClashes, strictModeChanged, isParenthesizedExpression, true); - } - } - } else if (val) { - this.checkLVal(val, nextAncestor, binding, checkClashes, strictModeChanged, isParenthesizedExpression, disallowCallExpression); - } - } - checkIdentifier(at, bindingType, strictModeChanged = false) { - if (this.state.strict && (strictModeChanged ? isStrictBindReservedWord(at.name, this.inModule) : isStrictBindOnlyReservedWord(at.name))) { - if (bindingType === 64) { - this.raise(Errors.StrictEvalArguments, at, { - referenceName: at.name - }); - } else { - this.raise(Errors.StrictEvalArgumentsBinding, at, { - bindingName: at.name - }); - } - } - if (bindingType & 8192 && at.name === "let") { - this.raise(Errors.LetInLexicalBinding, at); - } - if (!(bindingType & 64)) { - this.declareNameFromIdentifier(at, bindingType); - } - } - declareNameFromIdentifier(identifier, binding) { - this.scope.declareName(identifier.name, binding, identifier.loc.start); - } - checkToRestConversion(node, allowPattern) { - switch (node.type) { - case "ParenthesizedExpression": - this.checkToRestConversion(node.expression, allowPattern); - break; - case "Identifier": - case "MemberExpression": - break; - case "ArrayExpression": - case "ObjectExpression": - if (allowPattern) break; - default: - this.raise(Errors.InvalidRestAssignmentPattern, node); - } - } - checkCommaAfterRest(close) { - if (!this.match(12)) { - return false; - } - this.raise(this.lookaheadCharCode() === close ? Errors.RestTrailingComma : Errors.ElementAfterRest, this.state.startLoc); - return true; - } -} -const keywordAndTSRelationalOperator = /in(?:stanceof)?|as|satisfies/y; -function nonNull(x) { - if (x == null) { - throw new Error(`Unexpected ${x} value.`); - } - return x; -} -function assert(x) { - if (!x) { - throw new Error("Assert fail"); - } -} -const TSErrors = ParseErrorEnum`typescript`({ - AbstractMethodHasImplementation: ({ - methodName - }) => `Method '${methodName}' cannot have an implementation because it is marked abstract.`, - AbstractPropertyHasInitializer: ({ - propertyName - }) => `Property '${propertyName}' cannot have an initializer because it is marked abstract.`, - AccessorCannotBeOptional: "An 'accessor' property cannot be declared optional.", - AccessorCannotDeclareThisParameter: "'get' and 'set' accessors cannot declare 'this' parameters.", - AccessorCannotHaveTypeParameters: "An accessor cannot have type parameters.", - ClassMethodHasDeclare: "Class methods cannot have the 'declare' modifier.", - ClassMethodHasReadonly: "Class methods cannot have the 'readonly' modifier.", - ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference: "A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.", - ConstructorHasTypeParameters: "Type parameters cannot appear on a constructor declaration.", - DeclareAccessor: ({ - kind - }) => `'declare' is not allowed in ${kind}ters.`, - DeclareClassFieldHasInitializer: "Initializers are not allowed in ambient contexts.", - DeclareFunctionHasImplementation: "An implementation cannot be declared in ambient contexts.", - DuplicateAccessibilityModifier: ({ - modifier - }) => `Accessibility modifier already seen: '${modifier}'.`, - DuplicateModifier: ({ - modifier - }) => `Duplicate modifier: '${modifier}'.`, - EmptyHeritageClauseType: ({ - token - }) => `'${token}' list cannot be empty.`, - EmptyTypeArguments: "Type argument list cannot be empty.", - EmptyTypeParameters: "Type parameter list cannot be empty.", - ExpectedAmbientAfterExportDeclare: "'export declare' must be followed by an ambient declaration.", - ImportAliasHasImportType: "An import alias can not use 'import type'.", - ImportReflectionHasImportType: "An `import module` declaration can not use `type` modifier", - IncompatibleModifiers: ({ - modifiers - }) => `'${modifiers[0]}' modifier cannot be used with '${modifiers[1]}' modifier.`, - IndexSignatureHasAbstract: "Index signatures cannot have the 'abstract' modifier.", - IndexSignatureHasAccessibility: ({ - modifier - }) => `Index signatures cannot have an accessibility modifier ('${modifier}').`, - IndexSignatureHasDeclare: "Index signatures cannot have the 'declare' modifier.", - IndexSignatureHasOverride: "'override' modifier cannot appear on an index signature.", - IndexSignatureHasStatic: "Index signatures cannot have the 'static' modifier.", - InitializerNotAllowedInAmbientContext: "Initializers are not allowed in ambient contexts.", - InvalidHeritageClauseType: ({ - token - }) => `'${token}' list can only include identifiers or qualified-names with optional type arguments.`, - InvalidModifierOnAwaitUsingDeclaration: modifier => `'${modifier}' modifier cannot appear on an await using declaration.`, - InvalidModifierOnTypeMember: ({ - modifier - }) => `'${modifier}' modifier cannot appear on a type member.`, - InvalidModifierOnTypeParameter: ({ - modifier - }) => `'${modifier}' modifier cannot appear on a type parameter.`, - InvalidModifierOnTypeParameterPositions: ({ - modifier - }) => `'${modifier}' modifier can only appear on a type parameter of a class, interface or type alias.`, - InvalidModifierOnUsingDeclaration: modifier => `'${modifier}' modifier cannot appear on a using declaration.`, - InvalidModifiersOrder: ({ - orderedModifiers - }) => `'${orderedModifiers[0]}' modifier must precede '${orderedModifiers[1]}' modifier.`, - InvalidPropertyAccessAfterInstantiationExpression: "Invalid property access after an instantiation expression. " + "You can either wrap the instantiation expression in parentheses, or delete the type arguments.", - InvalidTupleMemberLabel: "Tuple members must be labeled with a simple identifier.", - MissingInterfaceName: "'interface' declarations must be followed by an identifier.", - NonAbstractClassHasAbstractMethod: "Abstract methods can only appear within an abstract class.", - NonClassMethodPropertyHasAbstractModifier: "'abstract' modifier can only appear on a class, method, or property declaration.", - OptionalTypeBeforeRequired: "A required element cannot follow an optional element.", - OverrideNotInSubClass: "This member cannot have an 'override' modifier because its containing class does not extend another class.", - PatternIsOptional: "A binding pattern parameter cannot be optional in an implementation signature.", - PrivateElementHasAbstract: "Private elements cannot have the 'abstract' modifier.", - PrivateElementHasAccessibility: ({ - modifier - }) => `Private elements cannot have an accessibility modifier ('${modifier}').`, - ReadonlyForMethodSignature: "'readonly' modifier can only appear on a property declaration or index signature.", - ReservedArrowTypeParam: "This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `() => ...`.", - ReservedTypeAssertion: "This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.", - SetAccessorCannotHaveOptionalParameter: "A 'set' accessor cannot have an optional parameter.", - SetAccessorCannotHaveRestParameter: "A 'set' accessor cannot have rest parameter.", - SetAccessorCannotHaveReturnType: "A 'set' accessor cannot have a return type annotation.", - SingleTypeParameterWithoutTrailingComma: ({ - typeParameterName - }) => `Single type parameter ${typeParameterName} should have a trailing comma. Example usage: <${typeParameterName},>.`, - StaticBlockCannotHaveModifier: "Static class blocks cannot have any modifier.", - TupleOptionalAfterType: "A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).", - TypeAnnotationAfterAssign: "Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.", - TypeImportCannotSpecifyDefaultAndNamed: "A type-only import can specify a default import or named bindings, but not both.", - TypeModifierIsUsedInTypeExports: "The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.", - TypeModifierIsUsedInTypeImports: "The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.", - UnexpectedParameterModifier: "A parameter property is only allowed in a constructor implementation.", - UnexpectedReadonly: "'readonly' type modifier is only permitted on array and tuple literal types.", - UnexpectedTypeAnnotation: "Did not expect a type annotation here.", - UnexpectedTypeCastInParameter: "Unexpected type cast in parameter position.", - UnsupportedImportTypeArgument: "Argument in a type import must be a string literal.", - UnsupportedParameterPropertyKind: "A parameter property may not be declared using a binding pattern.", - UnsupportedSignatureParameterKind: ({ - type - }) => `Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${type}.`, - UsingDeclarationInAmbientContext: kind => `'${kind}' declarations are not allowed in ambient contexts.` -}); -function keywordTypeFromName(value) { - switch (value) { - case "any": - return "TSAnyKeyword"; - case "boolean": - return "TSBooleanKeyword"; - case "bigint": - return "TSBigIntKeyword"; - case "never": - return "TSNeverKeyword"; - case "number": - return "TSNumberKeyword"; - case "object": - return "TSObjectKeyword"; - case "string": - return "TSStringKeyword"; - case "symbol": - return "TSSymbolKeyword"; - case "undefined": - return "TSUndefinedKeyword"; - case "unknown": - return "TSUnknownKeyword"; - default: - return undefined; - } -} -function tsIsAccessModifier(modifier) { - return modifier === "private" || modifier === "public" || modifier === "protected"; -} -function tsIsVarianceAnnotations(modifier) { - return modifier === "in" || modifier === "out"; -} -var typescript = superClass => class TypeScriptParserMixin extends superClass { - constructor(...args) { - super(...args); - this.tsParseInOutModifiers = this.tsParseModifiers.bind(this, { - allowedModifiers: ["in", "out"], - disallowedModifiers: ["const", "public", "private", "protected", "readonly", "declare", "abstract", "override"], - errorTemplate: TSErrors.InvalidModifierOnTypeParameter - }); - this.tsParseConstModifier = this.tsParseModifiers.bind(this, { - allowedModifiers: ["const"], - disallowedModifiers: ["in", "out"], - errorTemplate: TSErrors.InvalidModifierOnTypeParameterPositions - }); - this.tsParseInOutConstModifiers = this.tsParseModifiers.bind(this, { - allowedModifiers: ["in", "out", "const"], - disallowedModifiers: ["public", "private", "protected", "readonly", "declare", "abstract", "override"], - errorTemplate: TSErrors.InvalidModifierOnTypeParameter - }); - } - getScopeHandler() { - return TypeScriptScopeHandler; - } - tsIsIdentifier() { - return tokenIsIdentifier(this.state.type); - } - tsTokenCanFollowModifier() { - return this.match(0) || this.match(5) || this.match(55) || this.match(21) || this.match(139) || this.isLiteralPropertyName(); - } - tsNextTokenOnSameLineAndCanFollowModifier() { - this.next(); - if (this.hasPrecedingLineBreak()) { - return false; - } - return this.tsTokenCanFollowModifier(); - } - tsNextTokenCanFollowModifier() { - if (this.match(106)) { - this.next(); - return this.tsTokenCanFollowModifier(); - } - return this.tsNextTokenOnSameLineAndCanFollowModifier(); - } - tsParseModifier(allowedModifiers, stopOnStartOfClassStaticBlock, hasSeenStaticModifier) { - if (!tokenIsIdentifier(this.state.type) && this.state.type !== 58 && this.state.type !== 75) { - return undefined; - } - const modifier = this.state.value; - if (allowedModifiers.includes(modifier)) { - if (hasSeenStaticModifier && this.match(106)) { - return undefined; - } - if (stopOnStartOfClassStaticBlock && this.tsIsStartOfStaticBlocks()) { - return undefined; - } - if (this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this))) { - return modifier; - } - } - return undefined; - } - tsParseModifiers({ - allowedModifiers, - disallowedModifiers, - stopOnStartOfClassStaticBlock, - errorTemplate = TSErrors.InvalidModifierOnTypeMember - }, modified) { - const enforceOrder = (loc, modifier, before, after) => { - if (modifier === before && modified[after]) { - this.raise(TSErrors.InvalidModifiersOrder, loc, { - orderedModifiers: [before, after] - }); - } - }; - const incompatible = (loc, modifier, mod1, mod2) => { - if (modified[mod1] && modifier === mod2 || modified[mod2] && modifier === mod1) { - this.raise(TSErrors.IncompatibleModifiers, loc, { - modifiers: [mod1, mod2] - }); - } - }; - for (;;) { - const { - startLoc - } = this.state; - const modifier = this.tsParseModifier(allowedModifiers.concat(disallowedModifiers != null ? disallowedModifiers : []), stopOnStartOfClassStaticBlock, modified.static); - if (!modifier) break; - if (tsIsAccessModifier(modifier)) { - if (modified.accessibility) { - this.raise(TSErrors.DuplicateAccessibilityModifier, startLoc, { - modifier - }); - } else { - enforceOrder(startLoc, modifier, modifier, "override"); - enforceOrder(startLoc, modifier, modifier, "static"); - enforceOrder(startLoc, modifier, modifier, "readonly"); - modified.accessibility = modifier; - } - } else if (tsIsVarianceAnnotations(modifier)) { - if (modified[modifier]) { - this.raise(TSErrors.DuplicateModifier, startLoc, { - modifier - }); - } - modified[modifier] = true; - enforceOrder(startLoc, modifier, "in", "out"); - } else { - if (hasOwnProperty.call(modified, modifier)) { - this.raise(TSErrors.DuplicateModifier, startLoc, { - modifier - }); - } else { - enforceOrder(startLoc, modifier, "static", "readonly"); - enforceOrder(startLoc, modifier, "static", "override"); - enforceOrder(startLoc, modifier, "override", "readonly"); - enforceOrder(startLoc, modifier, "abstract", "override"); - incompatible(startLoc, modifier, "declare", "override"); - incompatible(startLoc, modifier, "static", "abstract"); - } - modified[modifier] = true; - } - if (disallowedModifiers != null && disallowedModifiers.includes(modifier)) { - this.raise(errorTemplate, startLoc, { - modifier - }); - } - } - } - tsIsListTerminator(kind) { - switch (kind) { - case "EnumMembers": - case "TypeMembers": - return this.match(8); - case "HeritageClauseElement": - return this.match(5); - case "TupleElementTypes": - return this.match(3); - case "TypeParametersOrArguments": - return this.match(48); - } - } - tsParseList(kind, parseElement) { - const result = []; - while (!this.tsIsListTerminator(kind)) { - result.push(parseElement()); - } - return result; - } - tsParseDelimitedList(kind, parseElement, refTrailingCommaPos) { - return nonNull(this.tsParseDelimitedListWorker(kind, parseElement, true, refTrailingCommaPos)); - } - tsParseDelimitedListWorker(kind, parseElement, expectSuccess, refTrailingCommaPos) { - const result = []; - let trailingCommaPos = -1; - for (;;) { - if (this.tsIsListTerminator(kind)) { - break; - } - trailingCommaPos = -1; - const element = parseElement(); - if (element == null) { - return undefined; - } - result.push(element); - if (this.eat(12)) { - trailingCommaPos = this.state.lastTokStartLoc.index; - continue; - } - if (this.tsIsListTerminator(kind)) { - break; - } - if (expectSuccess) { - this.expect(12); - } - return undefined; - } - if (refTrailingCommaPos) { - refTrailingCommaPos.value = trailingCommaPos; - } - return result; - } - tsParseBracketedList(kind, parseElement, bracket, skipFirstToken, refTrailingCommaPos) { - if (!skipFirstToken) { - if (bracket) { - this.expect(0); - } else { - this.expect(47); - } - } - const result = this.tsParseDelimitedList(kind, parseElement, refTrailingCommaPos); - if (bracket) { - this.expect(3); - } else { - this.expect(48); - } - return result; - } - tsParseImportType() { - const node = this.startNode(); - this.expect(83); - this.expect(10); - if (!this.match(134)) { - this.raise(TSErrors.UnsupportedImportTypeArgument, this.state.startLoc); - node.argument = super.parseExprAtom(); - } else { - node.argument = this.parseStringLiteral(this.state.value); - } - if (this.eat(12)) { - node.options = this.tsParseImportTypeOptions(); - } else { - node.options = null; - } - this.expect(11); - if (this.eat(16)) { - node.qualifier = this.tsParseEntityName(1 | 2); - } - if (this.match(47)) { - node.typeParameters = this.tsParseTypeArguments(); - } - return this.finishNode(node, "TSImportType"); - } - tsParseImportTypeOptions() { - const node = this.startNode(); - this.expect(5); - const withProperty = this.startNode(); - if (this.isContextual(76)) { - withProperty.method = false; - withProperty.key = this.parseIdentifier(true); - withProperty.computed = false; - withProperty.shorthand = false; - } else { - this.unexpected(null, 76); - } - this.expect(14); - withProperty.value = this.tsParseImportTypeWithPropertyValue(); - node.properties = [this.finishObjectProperty(withProperty)]; - this.eat(12); - this.expect(8); - return this.finishNode(node, "ObjectExpression"); - } - tsParseImportTypeWithPropertyValue() { - const node = this.startNode(); - const properties = []; - this.expect(5); - while (!this.match(8)) { - const type = this.state.type; - if (tokenIsIdentifier(type) || type === 134) { - properties.push(super.parsePropertyDefinition(null)); - } else { - this.unexpected(); - } - this.eat(12); - } - node.properties = properties; - this.next(); - return this.finishNode(node, "ObjectExpression"); - } - tsParseEntityName(flags) { - let entity; - if (flags & 1 && this.match(78)) { - if (flags & 2) { - entity = this.parseIdentifier(true); - } else { - const node = this.startNode(); - this.next(); - entity = this.finishNode(node, "ThisExpression"); - } - } else { - entity = this.parseIdentifier(!!(flags & 1)); - } - while (this.eat(16)) { - const node = this.startNodeAtNode(entity); - node.left = entity; - node.right = this.parseIdentifier(!!(flags & 1)); - entity = this.finishNode(node, "TSQualifiedName"); - } - return entity; - } - tsParseTypeReference() { - const node = this.startNode(); - node.typeName = this.tsParseEntityName(1); - if (!this.hasPrecedingLineBreak() && this.match(47)) { - node.typeParameters = this.tsParseTypeArguments(); - } - return this.finishNode(node, "TSTypeReference"); - } - tsParseThisTypePredicate(lhs) { - this.next(); - const node = this.startNodeAtNode(lhs); - node.parameterName = lhs; - node.typeAnnotation = this.tsParseTypeAnnotation(false); - node.asserts = false; - return this.finishNode(node, "TSTypePredicate"); - } - tsParseThisTypeNode() { - const node = this.startNode(); - this.next(); - return this.finishNode(node, "TSThisType"); - } - tsParseTypeQuery() { - const node = this.startNode(); - this.expect(87); - if (this.match(83)) { - node.exprName = this.tsParseImportType(); - } else { - node.exprName = this.tsParseEntityName(1 | 2); - } - if (!this.hasPrecedingLineBreak() && this.match(47)) { - node.typeParameters = this.tsParseTypeArguments(); - } - return this.finishNode(node, "TSTypeQuery"); - } - tsParseTypeParameter(parseModifiers) { - const node = this.startNode(); - parseModifiers(node); - node.name = this.tsParseTypeParameterName(); - node.constraint = this.tsEatThenParseType(81); - node.default = this.tsEatThenParseType(29); - return this.finishNode(node, "TSTypeParameter"); - } - tsTryParseTypeParameters(parseModifiers) { - if (this.match(47)) { - return this.tsParseTypeParameters(parseModifiers); - } - } - tsParseTypeParameters(parseModifiers) { - const node = this.startNode(); - if (this.match(47) || this.match(143)) { - this.next(); - } else { - this.unexpected(); - } - const refTrailingCommaPos = { - value: -1 - }; - node.params = this.tsParseBracketedList("TypeParametersOrArguments", this.tsParseTypeParameter.bind(this, parseModifiers), false, true, refTrailingCommaPos); - if (node.params.length === 0) { - this.raise(TSErrors.EmptyTypeParameters, node); - } - if (refTrailingCommaPos.value !== -1) { - this.addExtra(node, "trailingComma", refTrailingCommaPos.value); - } - return this.finishNode(node, "TSTypeParameterDeclaration"); - } - tsFillSignature(returnToken, signature) { - const returnTokenRequired = returnToken === 19; - const paramsKey = "parameters"; - const returnTypeKey = "typeAnnotation"; - signature.typeParameters = this.tsTryParseTypeParameters(this.tsParseConstModifier); - this.expect(10); - signature[paramsKey] = this.tsParseBindingListForSignature(); - if (returnTokenRequired) { - signature[returnTypeKey] = this.tsParseTypeOrTypePredicateAnnotation(returnToken); - } else if (this.match(returnToken)) { - signature[returnTypeKey] = this.tsParseTypeOrTypePredicateAnnotation(returnToken); - } - } - tsParseBindingListForSignature() { - const list = super.parseBindingList(11, 41, 2); - for (const pattern of list) { - const { - type - } = pattern; - if (type === "AssignmentPattern" || type === "TSParameterProperty") { - this.raise(TSErrors.UnsupportedSignatureParameterKind, pattern, { - type - }); - } - } - return list; - } - tsParseTypeMemberSemicolon() { - if (!this.eat(12) && !this.isLineTerminator()) { - this.expect(13); - } - } - tsParseSignatureMember(kind, node) { - this.tsFillSignature(14, node); - this.tsParseTypeMemberSemicolon(); - return this.finishNode(node, kind); - } - tsIsUnambiguouslyIndexSignature() { - this.next(); - if (tokenIsIdentifier(this.state.type)) { - this.next(); - return this.match(14); - } - return false; - } - tsTryParseIndexSignature(node) { - if (!(this.match(0) && this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this)))) { - return; - } - this.expect(0); - const id = this.parseIdentifier(); - id.typeAnnotation = this.tsParseTypeAnnotation(); - this.resetEndLocation(id); - this.expect(3); - node.parameters = [id]; - const type = this.tsTryParseTypeAnnotation(); - if (type) node.typeAnnotation = type; - this.tsParseTypeMemberSemicolon(); - return this.finishNode(node, "TSIndexSignature"); - } - tsParsePropertyOrMethodSignature(node, readonly) { - if (this.eat(17)) node.optional = true; - if (this.match(10) || this.match(47)) { - if (readonly) { - this.raise(TSErrors.ReadonlyForMethodSignature, node); - } - const method = node; - if (method.kind && this.match(47)) { - this.raise(TSErrors.AccessorCannotHaveTypeParameters, this.state.curPosition()); - } - this.tsFillSignature(14, method); - this.tsParseTypeMemberSemicolon(); - const paramsKey = "parameters"; - const returnTypeKey = "typeAnnotation"; - if (method.kind === "get") { - if (method[paramsKey].length > 0) { - this.raise(Errors.BadGetterArity, this.state.curPosition()); - if (this.isThisParam(method[paramsKey][0])) { - this.raise(TSErrors.AccessorCannotDeclareThisParameter, this.state.curPosition()); - } - } - } else if (method.kind === "set") { - if (method[paramsKey].length !== 1) { - this.raise(Errors.BadSetterArity, this.state.curPosition()); - } else { - const firstParameter = method[paramsKey][0]; - if (this.isThisParam(firstParameter)) { - this.raise(TSErrors.AccessorCannotDeclareThisParameter, this.state.curPosition()); - } - if (firstParameter.type === "Identifier" && firstParameter.optional) { - this.raise(TSErrors.SetAccessorCannotHaveOptionalParameter, this.state.curPosition()); - } - if (firstParameter.type === "RestElement") { - this.raise(TSErrors.SetAccessorCannotHaveRestParameter, this.state.curPosition()); - } - } - if (method[returnTypeKey]) { - this.raise(TSErrors.SetAccessorCannotHaveReturnType, method[returnTypeKey]); - } - } else { - method.kind = "method"; - } - return this.finishNode(method, "TSMethodSignature"); - } else { - const property = node; - if (readonly) property.readonly = true; - const type = this.tsTryParseTypeAnnotation(); - if (type) property.typeAnnotation = type; - this.tsParseTypeMemberSemicolon(); - return this.finishNode(property, "TSPropertySignature"); - } - } - tsParseTypeMember() { - const node = this.startNode(); - if (this.match(10) || this.match(47)) { - return this.tsParseSignatureMember("TSCallSignatureDeclaration", node); - } - if (this.match(77)) { - const id = this.startNode(); - this.next(); - if (this.match(10) || this.match(47)) { - return this.tsParseSignatureMember("TSConstructSignatureDeclaration", node); - } else { - node.key = this.createIdentifier(id, "new"); - return this.tsParsePropertyOrMethodSignature(node, false); - } - } - this.tsParseModifiers({ - allowedModifiers: ["readonly"], - disallowedModifiers: ["declare", "abstract", "private", "protected", "public", "static", "override"] - }, node); - const idx = this.tsTryParseIndexSignature(node); - if (idx) { - return idx; - } - super.parsePropertyName(node); - if (!node.computed && node.key.type === "Identifier" && (node.key.name === "get" || node.key.name === "set") && this.tsTokenCanFollowModifier()) { - node.kind = node.key.name; - super.parsePropertyName(node); - if (!this.match(10) && !this.match(47)) { - this.unexpected(null, 10); - } - } - return this.tsParsePropertyOrMethodSignature(node, !!node.readonly); - } - tsParseTypeLiteral() { - const node = this.startNode(); - node.members = this.tsParseObjectTypeMembers(); - return this.finishNode(node, "TSTypeLiteral"); - } - tsParseObjectTypeMembers() { - this.expect(5); - const members = this.tsParseList("TypeMembers", this.tsParseTypeMember.bind(this)); - this.expect(8); - return members; - } - tsIsStartOfMappedType() { - this.next(); - if (this.eat(53)) { - return this.isContextual(122); - } - if (this.isContextual(122)) { - this.next(); - } - if (!this.match(0)) { - return false; - } - this.next(); - if (!this.tsIsIdentifier()) { - return false; - } - this.next(); - return this.match(58); - } - tsParseMappedType() { - const node = this.startNode(); - this.expect(5); - if (this.match(53)) { - node.readonly = this.state.value; - this.next(); - this.expectContextual(122); - } else if (this.eatContextual(122)) { - node.readonly = true; - } - this.expect(0); - const typeParameter = this.startNode(); - typeParameter.name = this.tsParseTypeParameterName(); - typeParameter.constraint = this.tsExpectThenParseType(58); - node.typeParameter = this.finishNode(typeParameter, "TSTypeParameter"); - node.nameType = this.eatContextual(93) ? this.tsParseType() : null; - this.expect(3); - if (this.match(53)) { - node.optional = this.state.value; - this.next(); - this.expect(17); - } else if (this.eat(17)) { - node.optional = true; - } - node.typeAnnotation = this.tsTryParseType(); - this.semicolon(); - this.expect(8); - return this.finishNode(node, "TSMappedType"); - } - tsParseTupleType() { - const node = this.startNode(); - node.elementTypes = this.tsParseBracketedList("TupleElementTypes", this.tsParseTupleElementType.bind(this), true, false); - let seenOptionalElement = false; - node.elementTypes.forEach(elementNode => { - const { - type - } = elementNode; - if (seenOptionalElement && type !== "TSRestType" && type !== "TSOptionalType" && !(type === "TSNamedTupleMember" && elementNode.optional)) { - this.raise(TSErrors.OptionalTypeBeforeRequired, elementNode); - } - seenOptionalElement || (seenOptionalElement = type === "TSNamedTupleMember" && elementNode.optional || type === "TSOptionalType"); - }); - return this.finishNode(node, "TSTupleType"); - } - tsParseTupleElementType() { - const restStartLoc = this.state.startLoc; - const rest = this.eat(21); - const { - startLoc - } = this.state; - let labeled; - let label; - let optional; - let type; - const isWord = tokenIsKeywordOrIdentifier(this.state.type); - const chAfterWord = isWord ? this.lookaheadCharCode() : null; - if (chAfterWord === 58) { - labeled = true; - optional = false; - label = this.parseIdentifier(true); - this.expect(14); - type = this.tsParseType(); - } else if (chAfterWord === 63) { - optional = true; - const wordName = this.state.value; - const typeOrLabel = this.tsParseNonArrayType(); - if (this.lookaheadCharCode() === 58) { - labeled = true; - label = this.createIdentifier(this.startNodeAt(startLoc), wordName); - this.expect(17); - this.expect(14); - type = this.tsParseType(); - } else { - labeled = false; - type = typeOrLabel; - this.expect(17); - } - } else { - type = this.tsParseType(); - optional = this.eat(17); - labeled = this.eat(14); - } - if (labeled) { - let labeledNode; - if (label) { - labeledNode = this.startNodeAt(startLoc); - labeledNode.optional = optional; - labeledNode.label = label; - labeledNode.elementType = type; - if (this.eat(17)) { - labeledNode.optional = true; - this.raise(TSErrors.TupleOptionalAfterType, this.state.lastTokStartLoc); - } - } else { - labeledNode = this.startNodeAt(startLoc); - labeledNode.optional = optional; - this.raise(TSErrors.InvalidTupleMemberLabel, type); - labeledNode.label = type; - labeledNode.elementType = this.tsParseType(); - } - type = this.finishNode(labeledNode, "TSNamedTupleMember"); - } else if (optional) { - const optionalTypeNode = this.startNodeAt(startLoc); - optionalTypeNode.typeAnnotation = type; - type = this.finishNode(optionalTypeNode, "TSOptionalType"); - } - if (rest) { - const restNode = this.startNodeAt(restStartLoc); - restNode.typeAnnotation = type; - type = this.finishNode(restNode, "TSRestType"); - } - return type; - } - tsParseParenthesizedType() { - const node = this.startNode(); - this.expect(10); - node.typeAnnotation = this.tsParseType(); - this.expect(11); - return this.finishNode(node, "TSParenthesizedType"); - } - tsParseFunctionOrConstructorType(type, abstract) { - const node = this.startNode(); - if (type === "TSConstructorType") { - node.abstract = !!abstract; - if (abstract) this.next(); - this.next(); - } - this.tsInAllowConditionalTypesContext(() => this.tsFillSignature(19, node)); - return this.finishNode(node, type); - } - tsParseLiteralTypeNode() { - const node = this.startNode(); - switch (this.state.type) { - case 135: - case 136: - case 134: - case 85: - case 86: - node.literal = super.parseExprAtom(); - break; - default: - this.unexpected(); - } - return this.finishNode(node, "TSLiteralType"); - } - tsParseTemplateLiteralType() { - const node = this.startNode(); - node.literal = super.parseTemplate(false); - return this.finishNode(node, "TSLiteralType"); - } - parseTemplateSubstitution() { - if (this.state.inType) return this.tsParseType(); - return super.parseTemplateSubstitution(); - } - tsParseThisTypeOrThisTypePredicate() { - const thisKeyword = this.tsParseThisTypeNode(); - if (this.isContextual(116) && !this.hasPrecedingLineBreak()) { - return this.tsParseThisTypePredicate(thisKeyword); - } else { - return thisKeyword; - } - } - tsParseNonArrayType() { - switch (this.state.type) { - case 134: - case 135: - case 136: - case 85: - case 86: - return this.tsParseLiteralTypeNode(); - case 53: - if (this.state.value === "-") { - const node = this.startNode(); - const nextToken = this.lookahead(); - if (nextToken.type !== 135 && nextToken.type !== 136) { - this.unexpected(); - } - node.literal = this.parseMaybeUnary(); - return this.finishNode(node, "TSLiteralType"); - } - break; - case 78: - return this.tsParseThisTypeOrThisTypePredicate(); - case 87: - return this.tsParseTypeQuery(); - case 83: - return this.tsParseImportType(); - case 5: - return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this)) ? this.tsParseMappedType() : this.tsParseTypeLiteral(); - case 0: - return this.tsParseTupleType(); - case 10: - return this.tsParseParenthesizedType(); - case 25: - case 24: - return this.tsParseTemplateLiteralType(); - default: - { - const { - type - } = this.state; - if (tokenIsIdentifier(type) || type === 88 || type === 84) { - const nodeType = type === 88 ? "TSVoidKeyword" : type === 84 ? "TSNullKeyword" : keywordTypeFromName(this.state.value); - if (nodeType !== undefined && this.lookaheadCharCode() !== 46) { - const node = this.startNode(); - this.next(); - return this.finishNode(node, nodeType); - } - return this.tsParseTypeReference(); - } - } - } - throw this.unexpected(); - } - tsParseArrayTypeOrHigher() { - const { - startLoc - } = this.state; - let type = this.tsParseNonArrayType(); - while (!this.hasPrecedingLineBreak() && this.eat(0)) { - if (this.match(3)) { - const node = this.startNodeAt(startLoc); - node.elementType = type; - this.expect(3); - type = this.finishNode(node, "TSArrayType"); - } else { - const node = this.startNodeAt(startLoc); - node.objectType = type; - node.indexType = this.tsParseType(); - this.expect(3); - type = this.finishNode(node, "TSIndexedAccessType"); - } - } - return type; - } - tsParseTypeOperator() { - const node = this.startNode(); - const operator = this.state.value; - this.next(); - node.operator = operator; - node.typeAnnotation = this.tsParseTypeOperatorOrHigher(); - if (operator === "readonly") { - this.tsCheckTypeAnnotationForReadOnly(node); - } - return this.finishNode(node, "TSTypeOperator"); - } - tsCheckTypeAnnotationForReadOnly(node) { - switch (node.typeAnnotation.type) { - case "TSTupleType": - case "TSArrayType": - return; - default: - this.raise(TSErrors.UnexpectedReadonly, node); - } - } - tsParseInferType() { - const node = this.startNode(); - this.expectContextual(115); - const typeParameter = this.startNode(); - typeParameter.name = this.tsParseTypeParameterName(); - typeParameter.constraint = this.tsTryParse(() => this.tsParseConstraintForInferType()); - node.typeParameter = this.finishNode(typeParameter, "TSTypeParameter"); - return this.finishNode(node, "TSInferType"); - } - tsParseConstraintForInferType() { - if (this.eat(81)) { - const constraint = this.tsInDisallowConditionalTypesContext(() => this.tsParseType()); - if (this.state.inDisallowConditionalTypesContext || !this.match(17)) { - return constraint; - } - } - } - tsParseTypeOperatorOrHigher() { - const isTypeOperator = tokenIsTSTypeOperator(this.state.type) && !this.state.containsEsc; - return isTypeOperator ? this.tsParseTypeOperator() : this.isContextual(115) ? this.tsParseInferType() : this.tsInAllowConditionalTypesContext(() => this.tsParseArrayTypeOrHigher()); - } - tsParseUnionOrIntersectionType(kind, parseConstituentType, operator) { - const node = this.startNode(); - const hasLeadingOperator = this.eat(operator); - const types = []; - do { - types.push(parseConstituentType()); - } while (this.eat(operator)); - if (types.length === 1 && !hasLeadingOperator) { - return types[0]; - } - node.types = types; - return this.finishNode(node, kind); - } - tsParseIntersectionTypeOrHigher() { - return this.tsParseUnionOrIntersectionType("TSIntersectionType", this.tsParseTypeOperatorOrHigher.bind(this), 45); - } - tsParseUnionTypeOrHigher() { - return this.tsParseUnionOrIntersectionType("TSUnionType", this.tsParseIntersectionTypeOrHigher.bind(this), 43); - } - tsIsStartOfFunctionType() { - if (this.match(47)) { - return true; - } - return this.match(10) && this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this)); - } - tsSkipParameterStart() { - if (tokenIsIdentifier(this.state.type) || this.match(78)) { - this.next(); - return true; - } - if (this.match(5)) { - const { - errors - } = this.state; - const previousErrorCount = errors.length; - try { - this.parseObjectLike(8, true); - return errors.length === previousErrorCount; - } catch (_unused) { - return false; - } - } - if (this.match(0)) { - this.next(); - const { - errors - } = this.state; - const previousErrorCount = errors.length; - try { - super.parseBindingList(3, 93, 1); - return errors.length === previousErrorCount; - } catch (_unused2) { - return false; - } - } - return false; - } - tsIsUnambiguouslyStartOfFunctionType() { - this.next(); - if (this.match(11) || this.match(21)) { - return true; - } - if (this.tsSkipParameterStart()) { - if (this.match(14) || this.match(12) || this.match(17) || this.match(29)) { - return true; - } - if (this.match(11)) { - this.next(); - if (this.match(19)) { - return true; - } - } - } - return false; - } - tsParseTypeOrTypePredicateAnnotation(returnToken) { - return this.tsInType(() => { - const t = this.startNode(); - this.expect(returnToken); - const node = this.startNode(); - const asserts = !!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this)); - if (asserts && this.match(78)) { - let thisTypePredicate = this.tsParseThisTypeOrThisTypePredicate(); - if (thisTypePredicate.type === "TSThisType") { - node.parameterName = thisTypePredicate; - node.asserts = true; - node.typeAnnotation = null; - thisTypePredicate = this.finishNode(node, "TSTypePredicate"); - } else { - this.resetStartLocationFromNode(thisTypePredicate, node); - thisTypePredicate.asserts = true; - } - t.typeAnnotation = thisTypePredicate; - return this.finishNode(t, "TSTypeAnnotation"); - } - const typePredicateVariable = this.tsIsIdentifier() && this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this)); - if (!typePredicateVariable) { - if (!asserts) { - return this.tsParseTypeAnnotation(false, t); - } - node.parameterName = this.parseIdentifier(); - node.asserts = asserts; - node.typeAnnotation = null; - t.typeAnnotation = this.finishNode(node, "TSTypePredicate"); - return this.finishNode(t, "TSTypeAnnotation"); - } - const type = this.tsParseTypeAnnotation(false); - node.parameterName = typePredicateVariable; - node.typeAnnotation = type; - node.asserts = asserts; - t.typeAnnotation = this.finishNode(node, "TSTypePredicate"); - return this.finishNode(t, "TSTypeAnnotation"); - }); - } - tsTryParseTypeOrTypePredicateAnnotation() { - if (this.match(14)) { - return this.tsParseTypeOrTypePredicateAnnotation(14); - } - } - tsTryParseTypeAnnotation() { - if (this.match(14)) { - return this.tsParseTypeAnnotation(); - } - } - tsTryParseType() { - return this.tsEatThenParseType(14); - } - tsParseTypePredicatePrefix() { - const id = this.parseIdentifier(); - if (this.isContextual(116) && !this.hasPrecedingLineBreak()) { - this.next(); - return id; - } - } - tsParseTypePredicateAsserts() { - if (this.state.type !== 109) { - return false; - } - const containsEsc = this.state.containsEsc; - this.next(); - if (!tokenIsIdentifier(this.state.type) && !this.match(78)) { - return false; - } - if (containsEsc) { - this.raise(Errors.InvalidEscapedReservedWord, this.state.lastTokStartLoc, { - reservedWord: "asserts" - }); - } - return true; - } - tsParseTypeAnnotation(eatColon = true, t = this.startNode()) { - this.tsInType(() => { - if (eatColon) this.expect(14); - t.typeAnnotation = this.tsParseType(); - }); - return this.finishNode(t, "TSTypeAnnotation"); - } - tsParseType() { - assert(this.state.inType); - const type = this.tsParseNonConditionalType(); - if (this.state.inDisallowConditionalTypesContext || this.hasPrecedingLineBreak() || !this.eat(81)) { - return type; - } - const node = this.startNodeAtNode(type); - node.checkType = type; - node.extendsType = this.tsInDisallowConditionalTypesContext(() => this.tsParseNonConditionalType()); - this.expect(17); - node.trueType = this.tsInAllowConditionalTypesContext(() => this.tsParseType()); - this.expect(14); - node.falseType = this.tsInAllowConditionalTypesContext(() => this.tsParseType()); - return this.finishNode(node, "TSConditionalType"); - } - isAbstractConstructorSignature() { - return this.isContextual(124) && this.isLookaheadContextual("new"); - } - tsParseNonConditionalType() { - if (this.tsIsStartOfFunctionType()) { - return this.tsParseFunctionOrConstructorType("TSFunctionType"); - } - if (this.match(77)) { - return this.tsParseFunctionOrConstructorType("TSConstructorType"); - } else if (this.isAbstractConstructorSignature()) { - return this.tsParseFunctionOrConstructorType("TSConstructorType", true); - } - return this.tsParseUnionTypeOrHigher(); - } - tsParseTypeAssertion() { - if (this.getPluginOption("typescript", "disallowAmbiguousJSXLike")) { - this.raise(TSErrors.ReservedTypeAssertion, this.state.startLoc); - } - const node = this.startNode(); - node.typeAnnotation = this.tsInType(() => { - this.next(); - return this.match(75) ? this.tsParseTypeReference() : this.tsParseType(); - }); - this.expect(48); - node.expression = this.parseMaybeUnary(); - return this.finishNode(node, "TSTypeAssertion"); - } - tsParseHeritageClause(token) { - const originalStartLoc = this.state.startLoc; - const delimitedList = this.tsParseDelimitedList("HeritageClauseElement", () => { - const node = this.startNode(); - node.expression = this.tsParseEntityName(1 | 2); - if (this.match(47)) { - node.typeParameters = this.tsParseTypeArguments(); - } - return this.finishNode(node, "TSExpressionWithTypeArguments"); - }); - if (!delimitedList.length) { - this.raise(TSErrors.EmptyHeritageClauseType, originalStartLoc, { - token - }); - } - return delimitedList; - } - tsParseInterfaceDeclaration(node, properties = {}) { - if (this.hasFollowingLineBreak()) return null; - this.expectContextual(129); - if (properties.declare) node.declare = true; - if (tokenIsIdentifier(this.state.type)) { - node.id = this.parseIdentifier(); - this.checkIdentifier(node.id, 130); - } else { - node.id = null; - this.raise(TSErrors.MissingInterfaceName, this.state.startLoc); - } - node.typeParameters = this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers); - if (this.eat(81)) { - node.extends = this.tsParseHeritageClause("extends"); - } - const body = this.startNode(); - body.body = this.tsInType(this.tsParseObjectTypeMembers.bind(this)); - node.body = this.finishNode(body, "TSInterfaceBody"); - return this.finishNode(node, "TSInterfaceDeclaration"); - } - tsParseTypeAliasDeclaration(node) { - node.id = this.parseIdentifier(); - this.checkIdentifier(node.id, 2); - node.typeAnnotation = this.tsInType(() => { - node.typeParameters = this.tsTryParseTypeParameters(this.tsParseInOutModifiers); - this.expect(29); - if (this.isContextual(114) && this.lookaheadCharCode() !== 46) { - const node = this.startNode(); - this.next(); - return this.finishNode(node, "TSIntrinsicKeyword"); - } - return this.tsParseType(); - }); - this.semicolon(); - return this.finishNode(node, "TSTypeAliasDeclaration"); - } - tsInTopLevelContext(cb) { - if (this.curContext() !== types.brace) { - const oldContext = this.state.context; - this.state.context = [oldContext[0]]; - try { - return cb(); - } finally { - this.state.context = oldContext; - } - } else { - return cb(); - } - } - tsInType(cb) { - const oldInType = this.state.inType; - this.state.inType = true; - try { - return cb(); - } finally { - this.state.inType = oldInType; - } - } - tsInDisallowConditionalTypesContext(cb) { - const oldInDisallowConditionalTypesContext = this.state.inDisallowConditionalTypesContext; - this.state.inDisallowConditionalTypesContext = true; - try { - return cb(); - } finally { - this.state.inDisallowConditionalTypesContext = oldInDisallowConditionalTypesContext; - } - } - tsInAllowConditionalTypesContext(cb) { - const oldInDisallowConditionalTypesContext = this.state.inDisallowConditionalTypesContext; - this.state.inDisallowConditionalTypesContext = false; - try { - return cb(); - } finally { - this.state.inDisallowConditionalTypesContext = oldInDisallowConditionalTypesContext; - } - } - tsEatThenParseType(token) { - if (this.match(token)) { - return this.tsNextThenParseType(); - } - } - tsExpectThenParseType(token) { - return this.tsInType(() => { - this.expect(token); - return this.tsParseType(); - }); - } - tsNextThenParseType() { - return this.tsInType(() => { - this.next(); - return this.tsParseType(); - }); - } - tsParseEnumMember() { - const node = this.startNode(); - node.id = this.match(134) ? super.parseStringLiteral(this.state.value) : this.parseIdentifier(true); - if (this.eat(29)) { - node.initializer = super.parseMaybeAssignAllowIn(); - } - return this.finishNode(node, "TSEnumMember"); - } - tsParseEnumDeclaration(node, properties = {}) { - if (properties.const) node.const = true; - if (properties.declare) node.declare = true; - this.expectContextual(126); - node.id = this.parseIdentifier(); - this.checkIdentifier(node.id, node.const ? 8971 : 8459); - this.expect(5); - node.members = this.tsParseDelimitedList("EnumMembers", this.tsParseEnumMember.bind(this)); - this.expect(8); - return this.finishNode(node, "TSEnumDeclaration"); - } - tsParseEnumBody() { - const node = this.startNode(); - this.expect(5); - node.members = this.tsParseDelimitedList("EnumMembers", this.tsParseEnumMember.bind(this)); - this.expect(8); - return this.finishNode(node, "TSEnumBody"); - } - tsParseModuleBlock() { - const node = this.startNode(); - this.scope.enter(0); - this.expect(5); - super.parseBlockOrModuleBlockBody(node.body = [], undefined, true, 8); - this.scope.exit(); - return this.finishNode(node, "TSModuleBlock"); - } - tsParseModuleOrNamespaceDeclaration(node, nested = false) { - node.id = this.parseIdentifier(); - if (!nested) { - this.checkIdentifier(node.id, 1024); - } - if (this.eat(16)) { - const inner = this.startNode(); - this.tsParseModuleOrNamespaceDeclaration(inner, true); - node.body = inner; - } else { - this.scope.enter(1024); - this.prodParam.enter(0); - node.body = this.tsParseModuleBlock(); - this.prodParam.exit(); - this.scope.exit(); - } - return this.finishNode(node, "TSModuleDeclaration"); - } - tsParseAmbientExternalModuleDeclaration(node) { - if (this.isContextual(112)) { - node.kind = "global"; - node.global = true; - node.id = this.parseIdentifier(); - } else if (this.match(134)) { - node.kind = "module"; - node.id = super.parseStringLiteral(this.state.value); - } else { - this.unexpected(); - } - if (this.match(5)) { - this.scope.enter(1024); - this.prodParam.enter(0); - node.body = this.tsParseModuleBlock(); - this.prodParam.exit(); - this.scope.exit(); - } else { - this.semicolon(); - } - return this.finishNode(node, "TSModuleDeclaration"); - } - tsParseImportEqualsDeclaration(node, maybeDefaultIdentifier, isExport) { - node.isExport = isExport || false; - node.id = maybeDefaultIdentifier || this.parseIdentifier(); - this.checkIdentifier(node.id, 4096); - this.expect(29); - const moduleReference = this.tsParseModuleReference(); - if (node.importKind === "type" && moduleReference.type !== "TSExternalModuleReference") { - this.raise(TSErrors.ImportAliasHasImportType, moduleReference); - } - node.moduleReference = moduleReference; - this.semicolon(); - return this.finishNode(node, "TSImportEqualsDeclaration"); - } - tsIsExternalModuleReference() { - return this.isContextual(119) && this.lookaheadCharCode() === 40; - } - tsParseModuleReference() { - return this.tsIsExternalModuleReference() ? this.tsParseExternalModuleReference() : this.tsParseEntityName(0); - } - tsParseExternalModuleReference() { - const node = this.startNode(); - this.expectContextual(119); - this.expect(10); - if (!this.match(134)) { - this.unexpected(); - } - node.expression = super.parseExprAtom(); - this.expect(11); - this.sawUnambiguousESM = true; - return this.finishNode(node, "TSExternalModuleReference"); - } - tsLookAhead(f) { - const state = this.state.clone(); - const res = f(); - this.state = state; - return res; - } - tsTryParseAndCatch(f) { - const result = this.tryParse(abort => f() || abort()); - if (result.aborted || !result.node) return; - if (result.error) this.state = result.failState; - return result.node; - } - tsTryParse(f) { - const state = this.state.clone(); - const result = f(); - if (result !== undefined && result !== false) { - return result; - } - this.state = state; - } - tsTryParseDeclare(node) { - if (this.isLineTerminator()) { - return; - } - const startType = this.state.type; - return this.tsInAmbientContext(() => { - switch (startType) { - case 68: - node.declare = true; - return super.parseFunctionStatement(node, false, false); - case 80: - node.declare = true; - return this.parseClass(node, true, false); - case 126: - return this.tsParseEnumDeclaration(node, { - declare: true - }); - case 112: - return this.tsParseAmbientExternalModuleDeclaration(node); - case 100: - if (this.state.containsEsc) { - return; - } - case 75: - case 74: - if (!this.match(75) || !this.isLookaheadContextual("enum")) { - node.declare = true; - return this.parseVarStatement(node, this.state.value, true); - } - this.expect(75); - return this.tsParseEnumDeclaration(node, { - const: true, - declare: true - }); - case 107: - if (this.isUsing()) { - this.raise(TSErrors.InvalidModifierOnUsingDeclaration, this.state.startLoc, "declare"); - node.declare = true; - return this.parseVarStatement(node, "using", true); - } - break; - case 96: - if (this.isAwaitUsing()) { - this.raise(TSErrors.InvalidModifierOnAwaitUsingDeclaration, this.state.startLoc, "declare"); - node.declare = true; - this.next(); - return this.parseVarStatement(node, "await using", true); - } - break; - case 129: - { - const result = this.tsParseInterfaceDeclaration(node, { - declare: true - }); - if (result) return result; - } - default: - if (tokenIsIdentifier(startType)) { - return this.tsParseDeclaration(node, this.state.type, true, null); - } - } - }); - } - tsTryParseExportDeclaration() { - return this.tsParseDeclaration(this.startNode(), this.state.type, true, null); - } - tsParseDeclaration(node, type, next, decorators) { - switch (type) { - case 124: - if (this.tsCheckLineTerminator(next) && (this.match(80) || tokenIsIdentifier(this.state.type))) { - return this.tsParseAbstractDeclaration(node, decorators); - } - break; - case 127: - if (this.tsCheckLineTerminator(next)) { - if (this.match(134)) { - return this.tsParseAmbientExternalModuleDeclaration(node); - } else if (tokenIsIdentifier(this.state.type)) { - node.kind = "module"; - return this.tsParseModuleOrNamespaceDeclaration(node); - } - } - break; - case 128: - if (this.tsCheckLineTerminator(next) && tokenIsIdentifier(this.state.type)) { - node.kind = "namespace"; - return this.tsParseModuleOrNamespaceDeclaration(node); - } - break; - case 130: - if (this.tsCheckLineTerminator(next) && tokenIsIdentifier(this.state.type)) { - return this.tsParseTypeAliasDeclaration(node); - } - break; - } - } - tsCheckLineTerminator(next) { - if (next) { - if (this.hasFollowingLineBreak()) return false; - this.next(); - return true; - } - return !this.isLineTerminator(); - } - tsTryParseGenericAsyncArrowFunction(startLoc) { - if (!this.match(47)) return; - const oldMaybeInArrowParameters = this.state.maybeInArrowParameters; - this.state.maybeInArrowParameters = true; - const res = this.tsTryParseAndCatch(() => { - const node = this.startNodeAt(startLoc); - node.typeParameters = this.tsParseTypeParameters(this.tsParseConstModifier); - super.parseFunctionParams(node); - node.returnType = this.tsTryParseTypeOrTypePredicateAnnotation(); - this.expect(19); - return node; - }); - this.state.maybeInArrowParameters = oldMaybeInArrowParameters; - if (!res) return; - return super.parseArrowExpression(res, null, true); - } - tsParseTypeArgumentsInExpression() { - if (this.reScan_lt() !== 47) return; - return this.tsParseTypeArguments(); - } - tsParseTypeArguments() { - const node = this.startNode(); - node.params = this.tsInType(() => this.tsInTopLevelContext(() => { - this.expect(47); - return this.tsParseDelimitedList("TypeParametersOrArguments", this.tsParseType.bind(this)); - })); - if (node.params.length === 0) { - this.raise(TSErrors.EmptyTypeArguments, node); - } else if (!this.state.inType && this.curContext() === types.brace) { - this.reScan_lt_gt(); - } - this.expect(48); - return this.finishNode(node, "TSTypeParameterInstantiation"); - } - tsIsDeclarationStart() { - return tokenIsTSDeclarationStart(this.state.type); - } - isExportDefaultSpecifier() { - if (this.tsIsDeclarationStart()) return false; - return super.isExportDefaultSpecifier(); - } - parseBindingElement(flags, decorators) { - const startLoc = decorators.length ? decorators[0].loc.start : this.state.startLoc; - const modified = {}; - this.tsParseModifiers({ - allowedModifiers: ["public", "private", "protected", "override", "readonly"] - }, modified); - const accessibility = modified.accessibility; - const override = modified.override; - const readonly = modified.readonly; - if (!(flags & 4) && (accessibility || readonly || override)) { - this.raise(TSErrors.UnexpectedParameterModifier, startLoc); - } - const left = this.parseMaybeDefault(); - if (flags & 2) { - this.parseFunctionParamType(left); - } - const elt = this.parseMaybeDefault(left.loc.start, left); - if (accessibility || readonly || override) { - const pp = this.startNodeAt(startLoc); - if (decorators.length) { - pp.decorators = decorators; - } - if (accessibility) pp.accessibility = accessibility; - if (readonly) pp.readonly = readonly; - if (override) pp.override = override; - if (elt.type !== "Identifier" && elt.type !== "AssignmentPattern") { - this.raise(TSErrors.UnsupportedParameterPropertyKind, pp); - } - pp.parameter = elt; - return this.finishNode(pp, "TSParameterProperty"); - } - if (decorators.length) { - left.decorators = decorators; - } - return elt; - } - isSimpleParameter(node) { - return node.type === "TSParameterProperty" && super.isSimpleParameter(node.parameter) || super.isSimpleParameter(node); - } - tsDisallowOptionalPattern(node) { - for (const param of node.params) { - if (param.type !== "Identifier" && param.optional && !this.state.isAmbientContext) { - this.raise(TSErrors.PatternIsOptional, param); - } - } - } - setArrowFunctionParameters(node, params, trailingCommaLoc) { - super.setArrowFunctionParameters(node, params, trailingCommaLoc); - this.tsDisallowOptionalPattern(node); - } - parseFunctionBodyAndFinish(node, type, isMethod = false) { - if (this.match(14)) { - node.returnType = this.tsParseTypeOrTypePredicateAnnotation(14); - } - const bodilessType = type === "FunctionDeclaration" ? "TSDeclareFunction" : type === "ClassMethod" || type === "ClassPrivateMethod" ? "TSDeclareMethod" : undefined; - if (bodilessType && !this.match(5) && this.isLineTerminator()) { - return this.finishNode(node, bodilessType); - } - if (bodilessType === "TSDeclareFunction" && this.state.isAmbientContext) { - this.raise(TSErrors.DeclareFunctionHasImplementation, node); - if (node.declare) { - return super.parseFunctionBodyAndFinish(node, bodilessType, isMethod); - } - } - this.tsDisallowOptionalPattern(node); - return super.parseFunctionBodyAndFinish(node, type, isMethod); - } - registerFunctionStatementId(node) { - if (!node.body && node.id) { - this.checkIdentifier(node.id, 1024); - } else { - super.registerFunctionStatementId(node); - } - } - tsCheckForInvalidTypeCasts(items) { - items.forEach(node => { - if ((node == null ? void 0 : node.type) === "TSTypeCastExpression") { - this.raise(TSErrors.UnexpectedTypeAnnotation, node.typeAnnotation); - } - }); - } - toReferencedList(exprList, isInParens) { - this.tsCheckForInvalidTypeCasts(exprList); - return exprList; - } - parseArrayLike(close, isTuple, refExpressionErrors) { - const node = super.parseArrayLike(close, isTuple, refExpressionErrors); - if (node.type === "ArrayExpression") { - this.tsCheckForInvalidTypeCasts(node.elements); - } - return node; - } - parseSubscript(base, startLoc, noCalls, state) { - if (!this.hasPrecedingLineBreak() && this.match(35)) { - this.state.canStartJSXElement = false; - this.next(); - const nonNullExpression = this.startNodeAt(startLoc); - nonNullExpression.expression = base; - return this.finishNode(nonNullExpression, "TSNonNullExpression"); - } - let isOptionalCall = false; - if (this.match(18) && this.lookaheadCharCode() === 60) { - if (noCalls) { - state.stop = true; - return base; - } - state.optionalChainMember = isOptionalCall = true; - this.next(); - } - if (this.match(47) || this.match(51)) { - let missingParenErrorLoc; - const result = this.tsTryParseAndCatch(() => { - if (!noCalls && this.atPossibleAsyncArrow(base)) { - const asyncArrowFn = this.tsTryParseGenericAsyncArrowFunction(startLoc); - if (asyncArrowFn) { - state.stop = true; - return asyncArrowFn; - } - } - const typeArguments = this.tsParseTypeArgumentsInExpression(); - if (!typeArguments) return; - if (isOptionalCall && !this.match(10)) { - missingParenErrorLoc = this.state.curPosition(); - return; - } - if (tokenIsTemplate(this.state.type)) { - const result = super.parseTaggedTemplateExpression(base, startLoc, state); - result.typeParameters = typeArguments; - return result; - } - if (!noCalls && this.eat(10)) { - const node = this.startNodeAt(startLoc); - node.callee = base; - node.arguments = this.parseCallExpressionArguments(); - this.tsCheckForInvalidTypeCasts(node.arguments); - node.typeParameters = typeArguments; - if (state.optionalChainMember) { - node.optional = isOptionalCall; - } - return this.finishCallExpression(node, state.optionalChainMember); - } - const tokenType = this.state.type; - if (tokenType === 48 || tokenType === 52 || tokenType !== 10 && tokenType !== 93 && tokenType !== 120 && tokenCanStartExpression(tokenType) && !this.hasPrecedingLineBreak()) { - return; - } - const node = this.startNodeAt(startLoc); - node.expression = base; - node.typeParameters = typeArguments; - return this.finishNode(node, "TSInstantiationExpression"); - }); - if (missingParenErrorLoc) { - this.unexpected(missingParenErrorLoc, 10); - } - if (result) { - if (result.type === "TSInstantiationExpression") { - if (this.match(16) || this.match(18) && this.lookaheadCharCode() !== 40) { - this.raise(TSErrors.InvalidPropertyAccessAfterInstantiationExpression, this.state.startLoc); - } - if (!this.match(16) && !this.match(18)) { - result.expression = super.stopParseSubscript(base, state); - } - } - return result; - } - } - return super.parseSubscript(base, startLoc, noCalls, state); - } - parseNewCallee(node) { - var _callee$extra; - super.parseNewCallee(node); - const { - callee - } = node; - if (callee.type === "TSInstantiationExpression" && !((_callee$extra = callee.extra) != null && _callee$extra.parenthesized)) { - node.typeParameters = callee.typeParameters; - node.callee = callee.expression; - } - } - parseExprOp(left, leftStartLoc, minPrec) { - let isSatisfies; - if (tokenOperatorPrecedence(58) > minPrec && !this.hasPrecedingLineBreak() && (this.isContextual(93) || (isSatisfies = this.isContextual(120)))) { - const node = this.startNodeAt(leftStartLoc); - node.expression = left; - node.typeAnnotation = this.tsInType(() => { - this.next(); - if (this.match(75)) { - if (isSatisfies) { - this.raise(Errors.UnexpectedKeyword, this.state.startLoc, { - keyword: "const" - }); - } - return this.tsParseTypeReference(); - } - return this.tsParseType(); - }); - this.finishNode(node, isSatisfies ? "TSSatisfiesExpression" : "TSAsExpression"); - this.reScan_lt_gt(); - return this.parseExprOp(node, leftStartLoc, minPrec); - } - return super.parseExprOp(left, leftStartLoc, minPrec); - } - checkReservedWord(word, startLoc, checkKeywords, isBinding) { - if (!this.state.isAmbientContext) { - super.checkReservedWord(word, startLoc, checkKeywords, isBinding); - } - } - checkImportReflection(node) { - super.checkImportReflection(node); - if (node.module && node.importKind !== "value") { - this.raise(TSErrors.ImportReflectionHasImportType, node.specifiers[0].loc.start); - } - } - checkDuplicateExports() {} - isPotentialImportPhase(isExport) { - if (super.isPotentialImportPhase(isExport)) return true; - if (this.isContextual(130)) { - const ch = this.lookaheadCharCode(); - return isExport ? ch === 123 || ch === 42 : ch !== 61; - } - return !isExport && this.isContextual(87); - } - applyImportPhase(node, isExport, phase, loc) { - super.applyImportPhase(node, isExport, phase, loc); - if (isExport) { - node.exportKind = phase === "type" ? "type" : "value"; - } else { - node.importKind = phase === "type" || phase === "typeof" ? phase : "value"; - } - } - parseImport(node) { - if (this.match(134)) { - node.importKind = "value"; - return super.parseImport(node); - } - let importNode; - if (tokenIsIdentifier(this.state.type) && this.lookaheadCharCode() === 61) { - node.importKind = "value"; - return this.tsParseImportEqualsDeclaration(node); - } else if (this.isContextual(130)) { - const maybeDefaultIdentifier = this.parseMaybeImportPhase(node, false); - if (this.lookaheadCharCode() === 61) { - return this.tsParseImportEqualsDeclaration(node, maybeDefaultIdentifier); - } else { - importNode = super.parseImportSpecifiersAndAfter(node, maybeDefaultIdentifier); - } - } else { - importNode = super.parseImport(node); - } - if (importNode.importKind === "type" && importNode.specifiers.length > 1 && importNode.specifiers[0].type === "ImportDefaultSpecifier") { - this.raise(TSErrors.TypeImportCannotSpecifyDefaultAndNamed, importNode); - } - return importNode; - } - parseExport(node, decorators) { - if (this.match(83)) { - const nodeImportEquals = node; - this.next(); - let maybeDefaultIdentifier = null; - if (this.isContextual(130) && this.isPotentialImportPhase(false)) { - maybeDefaultIdentifier = this.parseMaybeImportPhase(nodeImportEquals, false); - } else { - nodeImportEquals.importKind = "value"; - } - const declaration = this.tsParseImportEqualsDeclaration(nodeImportEquals, maybeDefaultIdentifier, true); - return declaration; - } else if (this.eat(29)) { - const assign = node; - assign.expression = super.parseExpression(); - this.semicolon(); - this.sawUnambiguousESM = true; - return this.finishNode(assign, "TSExportAssignment"); - } else if (this.eatContextual(93)) { - const decl = node; - this.expectContextual(128); - decl.id = this.parseIdentifier(); - this.semicolon(); - return this.finishNode(decl, "TSNamespaceExportDeclaration"); - } else { - return super.parseExport(node, decorators); - } - } - isAbstractClass() { - return this.isContextual(124) && this.isLookaheadContextual("class"); - } - parseExportDefaultExpression() { - if (this.isAbstractClass()) { - const cls = this.startNode(); - this.next(); - cls.abstract = true; - return this.parseClass(cls, true, true); - } - if (this.match(129)) { - const result = this.tsParseInterfaceDeclaration(this.startNode()); - if (result) return result; - } - return super.parseExportDefaultExpression(); - } - parseVarStatement(node, kind, allowMissingInitializer = false) { - const { - isAmbientContext - } = this.state; - const declaration = super.parseVarStatement(node, kind, allowMissingInitializer || isAmbientContext); - if (!isAmbientContext) return declaration; - if (!node.declare && (kind === "using" || kind === "await using")) { - this.raiseOverwrite(TSErrors.UsingDeclarationInAmbientContext, node, kind); - return declaration; - } - for (const { - id, - init - } of declaration.declarations) { - if (!init) continue; - if (kind === "var" || kind === "let" || !!id.typeAnnotation) { - this.raise(TSErrors.InitializerNotAllowedInAmbientContext, init); - } else if (!isValidAmbientConstInitializer(init, this.hasPlugin("estree"))) { - this.raise(TSErrors.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference, init); - } - } - return declaration; - } - parseStatementContent(flags, decorators) { - if (!this.state.containsEsc) { - switch (this.state.type) { - case 75: - { - if (this.isLookaheadContextual("enum")) { - const node = this.startNode(); - this.expect(75); - return this.tsParseEnumDeclaration(node, { - const: true - }); - } - break; - } - case 124: - case 125: - { - if (this.nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine()) { - const token = this.state.type; - const node = this.startNode(); - this.next(); - const declaration = token === 125 ? this.tsTryParseDeclare(node) : this.tsParseAbstractDeclaration(node, decorators); - if (declaration) { - if (token === 125) { - declaration.declare = true; - } - return declaration; - } else { - node.expression = this.createIdentifier(this.startNodeAt(node.loc.start), token === 125 ? "declare" : "abstract"); - this.semicolon(false); - return this.finishNode(node, "ExpressionStatement"); - } - } - break; - } - case 126: - return this.tsParseEnumDeclaration(this.startNode()); - case 112: - { - const nextCh = this.lookaheadCharCode(); - if (nextCh === 123) { - const node = this.startNode(); - return this.tsParseAmbientExternalModuleDeclaration(node); - } - break; - } - case 129: - { - const result = this.tsParseInterfaceDeclaration(this.startNode()); - if (result) return result; - break; - } - case 127: - { - if (this.nextTokenIsIdentifierOrStringLiteralOnSameLine()) { - const node = this.startNode(); - this.next(); - return this.tsParseDeclaration(node, 127, false, decorators); - } - break; - } - case 128: - { - if (this.nextTokenIsIdentifierOnSameLine()) { - const node = this.startNode(); - this.next(); - return this.tsParseDeclaration(node, 128, false, decorators); - } - break; - } - case 130: - { - if (this.nextTokenIsIdentifierOnSameLine()) { - const node = this.startNode(); - this.next(); - return this.tsParseTypeAliasDeclaration(node); - } - break; - } - } - } - return super.parseStatementContent(flags, decorators); - } - parseAccessModifier() { - return this.tsParseModifier(["public", "protected", "private"]); - } - tsHasSomeModifiers(member, modifiers) { - return modifiers.some(modifier => { - if (tsIsAccessModifier(modifier)) { - return member.accessibility === modifier; - } - return !!member[modifier]; - }); - } - tsIsStartOfStaticBlocks() { - return this.isContextual(106) && this.lookaheadCharCode() === 123; - } - parseClassMember(classBody, member, state) { - const modifiers = ["declare", "private", "public", "protected", "override", "abstract", "readonly", "static"]; - this.tsParseModifiers({ - allowedModifiers: modifiers, - disallowedModifiers: ["in", "out"], - stopOnStartOfClassStaticBlock: true, - errorTemplate: TSErrors.InvalidModifierOnTypeParameterPositions - }, member); - const callParseClassMemberWithIsStatic = () => { - if (this.tsIsStartOfStaticBlocks()) { - this.next(); - this.next(); - if (this.tsHasSomeModifiers(member, modifiers)) { - this.raise(TSErrors.StaticBlockCannotHaveModifier, this.state.curPosition()); - } - super.parseClassStaticBlock(classBody, member); - } else { - this.parseClassMemberWithIsStatic(classBody, member, state, !!member.static); - } - }; - if (member.declare) { - this.tsInAmbientContext(callParseClassMemberWithIsStatic); - } else { - callParseClassMemberWithIsStatic(); - } - } - parseClassMemberWithIsStatic(classBody, member, state, isStatic) { - const idx = this.tsTryParseIndexSignature(member); - if (idx) { - classBody.body.push(idx); - if (member.abstract) { - this.raise(TSErrors.IndexSignatureHasAbstract, member); - } - if (member.accessibility) { - this.raise(TSErrors.IndexSignatureHasAccessibility, member, { - modifier: member.accessibility - }); - } - if (member.declare) { - this.raise(TSErrors.IndexSignatureHasDeclare, member); - } - if (member.override) { - this.raise(TSErrors.IndexSignatureHasOverride, member); - } - return; - } - if (!this.state.inAbstractClass && member.abstract) { - this.raise(TSErrors.NonAbstractClassHasAbstractMethod, member); - } - if (member.override) { - if (!state.hadSuperClass) { - this.raise(TSErrors.OverrideNotInSubClass, member); - } - } - super.parseClassMemberWithIsStatic(classBody, member, state, isStatic); - } - parsePostMemberNameModifiers(methodOrProp) { - const optional = this.eat(17); - if (optional) methodOrProp.optional = true; - if (methodOrProp.readonly && this.match(10)) { - this.raise(TSErrors.ClassMethodHasReadonly, methodOrProp); - } - if (methodOrProp.declare && this.match(10)) { - this.raise(TSErrors.ClassMethodHasDeclare, methodOrProp); - } - } - shouldParseExportDeclaration() { - if (this.tsIsDeclarationStart()) return true; - return super.shouldParseExportDeclaration(); - } - parseConditional(expr, startLoc, refExpressionErrors) { - if (!this.match(17)) return expr; - if (this.state.maybeInArrowParameters) { - const nextCh = this.lookaheadCharCode(); - if (nextCh === 44 || nextCh === 61 || nextCh === 58 || nextCh === 41) { - this.setOptionalParametersError(refExpressionErrors); - return expr; - } - } - return super.parseConditional(expr, startLoc, refExpressionErrors); - } - parseParenItem(node, startLoc) { - const newNode = super.parseParenItem(node, startLoc); - if (this.eat(17)) { - newNode.optional = true; - this.resetEndLocation(node); - } - if (this.match(14)) { - const typeCastNode = this.startNodeAt(startLoc); - typeCastNode.expression = node; - typeCastNode.typeAnnotation = this.tsParseTypeAnnotation(); - return this.finishNode(typeCastNode, "TSTypeCastExpression"); - } - return node; - } - parseExportDeclaration(node) { - if (!this.state.isAmbientContext && this.isContextual(125)) { - return this.tsInAmbientContext(() => this.parseExportDeclaration(node)); - } - const startLoc = this.state.startLoc; - const isDeclare = this.eatContextual(125); - if (isDeclare && (this.isContextual(125) || !this.shouldParseExportDeclaration())) { - throw this.raise(TSErrors.ExpectedAmbientAfterExportDeclare, this.state.startLoc); - } - const isIdentifier = tokenIsIdentifier(this.state.type); - const declaration = isIdentifier && this.tsTryParseExportDeclaration() || super.parseExportDeclaration(node); - if (!declaration) return null; - if (declaration.type === "TSInterfaceDeclaration" || declaration.type === "TSTypeAliasDeclaration" || isDeclare) { - node.exportKind = "type"; - } - if (isDeclare && declaration.type !== "TSImportEqualsDeclaration") { - this.resetStartLocation(declaration, startLoc); - declaration.declare = true; - } - return declaration; - } - parseClassId(node, isStatement, optionalId, bindingType) { - if ((!isStatement || optionalId) && this.isContextual(113)) { - return; - } - super.parseClassId(node, isStatement, optionalId, node.declare ? 1024 : 8331); - const typeParameters = this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers); - if (typeParameters) node.typeParameters = typeParameters; - } - parseClassPropertyAnnotation(node) { - if (!node.optional) { - if (this.eat(35)) { - node.definite = true; - } else if (this.eat(17)) { - node.optional = true; - } - } - const type = this.tsTryParseTypeAnnotation(); - if (type) node.typeAnnotation = type; - } - parseClassProperty(node) { - this.parseClassPropertyAnnotation(node); - if (this.state.isAmbientContext && !(node.readonly && !node.typeAnnotation) && this.match(29)) { - this.raise(TSErrors.DeclareClassFieldHasInitializer, this.state.startLoc); - } - if (node.abstract && this.match(29)) { - const { - key - } = node; - this.raise(TSErrors.AbstractPropertyHasInitializer, this.state.startLoc, { - propertyName: key.type === "Identifier" && !node.computed ? key.name : `[${this.input.slice(this.offsetToSourcePos(key.start), this.offsetToSourcePos(key.end))}]` - }); - } - return super.parseClassProperty(node); - } - parseClassPrivateProperty(node) { - if (node.abstract) { - this.raise(TSErrors.PrivateElementHasAbstract, node); - } - if (node.accessibility) { - this.raise(TSErrors.PrivateElementHasAccessibility, node, { - modifier: node.accessibility - }); - } - this.parseClassPropertyAnnotation(node); - return super.parseClassPrivateProperty(node); - } - parseClassAccessorProperty(node) { - this.parseClassPropertyAnnotation(node); - if (node.optional) { - this.raise(TSErrors.AccessorCannotBeOptional, node); - } - return super.parseClassAccessorProperty(node); - } - pushClassMethod(classBody, method, isGenerator, isAsync, isConstructor, allowsDirectSuper) { - const typeParameters = this.tsTryParseTypeParameters(this.tsParseConstModifier); - if (typeParameters && isConstructor) { - this.raise(TSErrors.ConstructorHasTypeParameters, typeParameters); - } - const { - declare = false, - kind - } = method; - if (declare && (kind === "get" || kind === "set")) { - this.raise(TSErrors.DeclareAccessor, method, { - kind - }); - } - if (typeParameters) method.typeParameters = typeParameters; - super.pushClassMethod(classBody, method, isGenerator, isAsync, isConstructor, allowsDirectSuper); - } - pushClassPrivateMethod(classBody, method, isGenerator, isAsync) { - const typeParameters = this.tsTryParseTypeParameters(this.tsParseConstModifier); - if (typeParameters) method.typeParameters = typeParameters; - super.pushClassPrivateMethod(classBody, method, isGenerator, isAsync); - } - declareClassPrivateMethodInScope(node, kind) { - if (node.type === "TSDeclareMethod") return; - if (node.type === "MethodDefinition" && node.value.body == null) { - return; - } - super.declareClassPrivateMethodInScope(node, kind); - } - parseClassSuper(node) { - super.parseClassSuper(node); - if (node.superClass) { - if (node.superClass.type === "TSInstantiationExpression") { - const tsInstantiationExpression = node.superClass; - const superClass = tsInstantiationExpression.expression; - this.takeSurroundingComments(superClass, superClass.start, superClass.end); - const superTypeArguments = tsInstantiationExpression.typeParameters; - this.takeSurroundingComments(superTypeArguments, superTypeArguments.start, superTypeArguments.end); - node.superClass = superClass; - node.superTypeParameters = superTypeArguments; - } else if (this.match(47) || this.match(51)) { - node.superTypeParameters = this.tsParseTypeArgumentsInExpression(); - } - } - if (this.eatContextual(113)) { - node.implements = this.tsParseHeritageClause("implements"); - } - } - parseObjPropValue(prop, startLoc, isGenerator, isAsync, isPattern, isAccessor, refExpressionErrors) { - const typeParameters = this.tsTryParseTypeParameters(this.tsParseConstModifier); - if (typeParameters) prop.typeParameters = typeParameters; - return super.parseObjPropValue(prop, startLoc, isGenerator, isAsync, isPattern, isAccessor, refExpressionErrors); - } - parseFunctionParams(node, isConstructor) { - const typeParameters = this.tsTryParseTypeParameters(this.tsParseConstModifier); - if (typeParameters) node.typeParameters = typeParameters; - super.parseFunctionParams(node, isConstructor); - } - parseVarId(decl, kind) { - super.parseVarId(decl, kind); - if (decl.id.type === "Identifier" && !this.hasPrecedingLineBreak() && this.eat(35)) { - decl.definite = true; - } - const type = this.tsTryParseTypeAnnotation(); - if (type) { - decl.id.typeAnnotation = type; - this.resetEndLocation(decl.id); - } - } - parseAsyncArrowFromCallExpression(node, call) { - if (this.match(14)) { - node.returnType = this.tsParseTypeAnnotation(); - } - return super.parseAsyncArrowFromCallExpression(node, call); - } - parseMaybeAssign(refExpressionErrors, afterLeftParse) { - var _jsx, _jsx2, _typeCast, _jsx3, _typeCast2; - let state; - let jsx; - let typeCast; - if (this.hasPlugin("jsx") && (this.match(143) || this.match(47))) { - state = this.state.clone(); - jsx = this.tryParse(() => super.parseMaybeAssign(refExpressionErrors, afterLeftParse), state); - if (!jsx.error) return jsx.node; - const { - context - } = this.state; - const currentContext = context[context.length - 1]; - if (currentContext === types.j_oTag || currentContext === types.j_expr) { - context.pop(); - } - } - if (!((_jsx = jsx) != null && _jsx.error) && !this.match(47)) { - return super.parseMaybeAssign(refExpressionErrors, afterLeftParse); - } - if (!state || state === this.state) state = this.state.clone(); - let typeParameters; - const arrow = this.tryParse(abort => { - var _expr$extra, _typeParameters; - typeParameters = this.tsParseTypeParameters(this.tsParseConstModifier); - const expr = super.parseMaybeAssign(refExpressionErrors, afterLeftParse); - if (expr.type !== "ArrowFunctionExpression" || (_expr$extra = expr.extra) != null && _expr$extra.parenthesized) { - abort(); - } - if (((_typeParameters = typeParameters) == null ? void 0 : _typeParameters.params.length) !== 0) { - this.resetStartLocationFromNode(expr, typeParameters); - } - expr.typeParameters = typeParameters; - return expr; - }, state); - if (!arrow.error && !arrow.aborted) { - if (typeParameters) this.reportReservedArrowTypeParam(typeParameters); - return arrow.node; - } - if (!jsx) { - assert(!this.hasPlugin("jsx")); - typeCast = this.tryParse(() => super.parseMaybeAssign(refExpressionErrors, afterLeftParse), state); - if (!typeCast.error) return typeCast.node; - } - if ((_jsx2 = jsx) != null && _jsx2.node) { - this.state = jsx.failState; - return jsx.node; - } - if (arrow.node) { - this.state = arrow.failState; - if (typeParameters) this.reportReservedArrowTypeParam(typeParameters); - return arrow.node; - } - if ((_typeCast = typeCast) != null && _typeCast.node) { - this.state = typeCast.failState; - return typeCast.node; - } - throw ((_jsx3 = jsx) == null ? void 0 : _jsx3.error) || arrow.error || ((_typeCast2 = typeCast) == null ? void 0 : _typeCast2.error); - } - reportReservedArrowTypeParam(node) { - var _node$extra2; - if (node.params.length === 1 && !node.params[0].constraint && !((_node$extra2 = node.extra) != null && _node$extra2.trailingComma) && this.getPluginOption("typescript", "disallowAmbiguousJSXLike")) { - this.raise(TSErrors.ReservedArrowTypeParam, node); - } - } - parseMaybeUnary(refExpressionErrors, sawUnary) { - if (!this.hasPlugin("jsx") && this.match(47)) { - return this.tsParseTypeAssertion(); - } - return super.parseMaybeUnary(refExpressionErrors, sawUnary); - } - parseArrow(node) { - if (this.match(14)) { - const result = this.tryParse(abort => { - const returnType = this.tsParseTypeOrTypePredicateAnnotation(14); - if (this.canInsertSemicolon() || !this.match(19)) abort(); - return returnType; - }); - if (result.aborted) return; - if (!result.thrown) { - if (result.error) this.state = result.failState; - node.returnType = result.node; - } - } - return super.parseArrow(node); - } - parseFunctionParamType(param) { - if (this.eat(17)) { - param.optional = true; - } - const type = this.tsTryParseTypeAnnotation(); - if (type) param.typeAnnotation = type; - this.resetEndLocation(param); - return param; - } - isAssignable(node, isBinding) { - switch (node.type) { - case "TSTypeCastExpression": - return this.isAssignable(node.expression, isBinding); - case "TSParameterProperty": - return true; - default: - return super.isAssignable(node, isBinding); - } - } - toAssignable(node, isLHS = false) { - switch (node.type) { - case "ParenthesizedExpression": - this.toAssignableParenthesizedExpression(node, isLHS); - break; - case "TSAsExpression": - case "TSSatisfiesExpression": - case "TSNonNullExpression": - case "TSTypeAssertion": - if (isLHS) { - this.expressionScope.recordArrowParameterBindingError(TSErrors.UnexpectedTypeCastInParameter, node); - } else { - this.raise(TSErrors.UnexpectedTypeCastInParameter, node); - } - this.toAssignable(node.expression, isLHS); - break; - case "AssignmentExpression": - if (!isLHS && node.left.type === "TSTypeCastExpression") { - node.left = this.typeCastToParameter(node.left); - } - default: - super.toAssignable(node, isLHS); - } - } - toAssignableParenthesizedExpression(node, isLHS) { - switch (node.expression.type) { - case "TSAsExpression": - case "TSSatisfiesExpression": - case "TSNonNullExpression": - case "TSTypeAssertion": - case "ParenthesizedExpression": - this.toAssignable(node.expression, isLHS); - break; - default: - super.toAssignable(node, isLHS); - } - } - checkToRestConversion(node, allowPattern) { - switch (node.type) { - case "TSAsExpression": - case "TSSatisfiesExpression": - case "TSTypeAssertion": - case "TSNonNullExpression": - this.checkToRestConversion(node.expression, false); - break; - default: - super.checkToRestConversion(node, allowPattern); - } - } - isValidLVal(type, disallowCallExpression, isUnparenthesizedInAssign, binding) { - switch (type) { - case "TSTypeCastExpression": - return true; - case "TSParameterProperty": - return "parameter"; - case "TSNonNullExpression": - return "expression"; - case "TSAsExpression": - case "TSSatisfiesExpression": - case "TSTypeAssertion": - return (binding !== 64 || !isUnparenthesizedInAssign) && ["expression", true]; - default: - return super.isValidLVal(type, disallowCallExpression, isUnparenthesizedInAssign, binding); - } - } - parseBindingAtom() { - if (this.state.type === 78) { - return this.parseIdentifier(true); - } - return super.parseBindingAtom(); - } - parseMaybeDecoratorArguments(expr, startLoc) { - if (this.match(47) || this.match(51)) { - const typeArguments = this.tsParseTypeArgumentsInExpression(); - if (this.match(10)) { - const call = super.parseMaybeDecoratorArguments(expr, startLoc); - call.typeParameters = typeArguments; - return call; - } - this.unexpected(null, 10); - } - return super.parseMaybeDecoratorArguments(expr, startLoc); - } - checkCommaAfterRest(close) { - if (this.state.isAmbientContext && this.match(12) && this.lookaheadCharCode() === close) { - this.next(); - return false; - } - return super.checkCommaAfterRest(close); - } - isClassMethod() { - return this.match(47) || super.isClassMethod(); - } - isClassProperty() { - return this.match(35) || this.match(14) || super.isClassProperty(); - } - parseMaybeDefault(startLoc, left) { - const node = super.parseMaybeDefault(startLoc, left); - if (node.type === "AssignmentPattern" && node.typeAnnotation && node.right.start < node.typeAnnotation.start) { - this.raise(TSErrors.TypeAnnotationAfterAssign, node.typeAnnotation); - } - return node; - } - getTokenFromCode(code) { - if (this.state.inType) { - if (code === 62) { - this.finishOp(48, 1); - return; - } - if (code === 60) { - this.finishOp(47, 1); - return; - } - } - super.getTokenFromCode(code); - } - reScan_lt_gt() { - const { - type - } = this.state; - if (type === 47) { - this.state.pos -= 1; - this.readToken_lt(); - } else if (type === 48) { - this.state.pos -= 1; - this.readToken_gt(); - } - } - reScan_lt() { - const { - type - } = this.state; - if (type === 51) { - this.state.pos -= 2; - this.finishOp(47, 1); - return 47; - } - return type; - } - toAssignableListItem(exprList, index, isLHS) { - const node = exprList[index]; - if (node.type === "TSTypeCastExpression") { - exprList[index] = this.typeCastToParameter(node); - } - super.toAssignableListItem(exprList, index, isLHS); - } - typeCastToParameter(node) { - node.expression.typeAnnotation = node.typeAnnotation; - this.resetEndLocation(node.expression, node.typeAnnotation.loc.end); - return node.expression; - } - shouldParseArrow(params) { - if (this.match(14)) { - return params.every(expr => this.isAssignable(expr, true)); - } - return super.shouldParseArrow(params); - } - shouldParseAsyncArrow() { - return this.match(14) || super.shouldParseAsyncArrow(); - } - canHaveLeadingDecorator() { - return super.canHaveLeadingDecorator() || this.isAbstractClass(); - } - jsxParseOpeningElementAfterName(node) { - if (this.match(47) || this.match(51)) { - const typeArguments = this.tsTryParseAndCatch(() => this.tsParseTypeArgumentsInExpression()); - if (typeArguments) { - node.typeParameters = typeArguments; - } - } - return super.jsxParseOpeningElementAfterName(node); - } - getGetterSetterExpectedParamCount(method) { - const baseCount = super.getGetterSetterExpectedParamCount(method); - const params = this.getObjectOrClassMethodParams(method); - const firstParam = params[0]; - const hasContextParam = firstParam && this.isThisParam(firstParam); - return hasContextParam ? baseCount + 1 : baseCount; - } - parseCatchClauseParam() { - const param = super.parseCatchClauseParam(); - const type = this.tsTryParseTypeAnnotation(); - if (type) { - param.typeAnnotation = type; - this.resetEndLocation(param); - } - return param; - } - tsInAmbientContext(cb) { - const { - isAmbientContext: oldIsAmbientContext, - strict: oldStrict - } = this.state; - this.state.isAmbientContext = true; - this.state.strict = false; - try { - return cb(); - } finally { - this.state.isAmbientContext = oldIsAmbientContext; - this.state.strict = oldStrict; - } - } - parseClass(node, isStatement, optionalId) { - const oldInAbstractClass = this.state.inAbstractClass; - this.state.inAbstractClass = !!node.abstract; - try { - return super.parseClass(node, isStatement, optionalId); - } finally { - this.state.inAbstractClass = oldInAbstractClass; - } - } - tsParseAbstractDeclaration(node, decorators) { - if (this.match(80)) { - node.abstract = true; - return this.maybeTakeDecorators(decorators, this.parseClass(node, true, false)); - } else if (this.isContextual(129)) { - if (!this.hasFollowingLineBreak()) { - node.abstract = true; - this.raise(TSErrors.NonClassMethodPropertyHasAbstractModifier, node); - return this.tsParseInterfaceDeclaration(node); - } else { - return null; - } - } - throw this.unexpected(null, 80); - } - parseMethod(node, isGenerator, isAsync, isConstructor, allowDirectSuper, type, inClassScope) { - const method = super.parseMethod(node, isGenerator, isAsync, isConstructor, allowDirectSuper, type, inClassScope); - if (method.abstract || method.type === "TSAbstractMethodDefinition") { - const hasEstreePlugin = this.hasPlugin("estree"); - const methodFn = hasEstreePlugin ? method.value : method; - if (methodFn.body) { - const { - key - } = method; - this.raise(TSErrors.AbstractMethodHasImplementation, method, { - methodName: key.type === "Identifier" && !method.computed ? key.name : `[${this.input.slice(this.offsetToSourcePos(key.start), this.offsetToSourcePos(key.end))}]` - }); - } - } - return method; - } - tsParseTypeParameterName() { - const typeName = this.parseIdentifier(); - return typeName.name; - } - shouldParseAsAmbientContext() { - return !!this.getPluginOption("typescript", "dts"); - } - parse() { - if (this.shouldParseAsAmbientContext()) { - this.state.isAmbientContext = true; - } - return super.parse(); - } - getExpression() { - if (this.shouldParseAsAmbientContext()) { - this.state.isAmbientContext = true; - } - return super.getExpression(); - } - parseExportSpecifier(node, isString, isInTypeExport, isMaybeTypeOnly) { - if (!isString && isMaybeTypeOnly) { - this.parseTypeOnlyImportExportSpecifier(node, false, isInTypeExport); - return this.finishNode(node, "ExportSpecifier"); - } - node.exportKind = "value"; - return super.parseExportSpecifier(node, isString, isInTypeExport, isMaybeTypeOnly); - } - parseImportSpecifier(specifier, importedIsString, isInTypeOnlyImport, isMaybeTypeOnly, bindingType) { - if (!importedIsString && isMaybeTypeOnly) { - this.parseTypeOnlyImportExportSpecifier(specifier, true, isInTypeOnlyImport); - return this.finishNode(specifier, "ImportSpecifier"); - } - specifier.importKind = "value"; - return super.parseImportSpecifier(specifier, importedIsString, isInTypeOnlyImport, isMaybeTypeOnly, isInTypeOnlyImport ? 4098 : 4096); - } - parseTypeOnlyImportExportSpecifier(node, isImport, isInTypeOnlyImportExport) { - const leftOfAsKey = isImport ? "imported" : "local"; - const rightOfAsKey = isImport ? "local" : "exported"; - let leftOfAs = node[leftOfAsKey]; - let rightOfAs; - let hasTypeSpecifier = false; - let canParseAsKeyword = true; - const loc = leftOfAs.loc.start; - if (this.isContextual(93)) { - const firstAs = this.parseIdentifier(); - if (this.isContextual(93)) { - const secondAs = this.parseIdentifier(); - if (tokenIsKeywordOrIdentifier(this.state.type)) { - hasTypeSpecifier = true; - leftOfAs = firstAs; - rightOfAs = isImport ? this.parseIdentifier() : this.parseModuleExportName(); - canParseAsKeyword = false; - } else { - rightOfAs = secondAs; - canParseAsKeyword = false; - } - } else if (tokenIsKeywordOrIdentifier(this.state.type)) { - canParseAsKeyword = false; - rightOfAs = isImport ? this.parseIdentifier() : this.parseModuleExportName(); - } else { - hasTypeSpecifier = true; - leftOfAs = firstAs; - } - } else if (tokenIsKeywordOrIdentifier(this.state.type)) { - hasTypeSpecifier = true; - if (isImport) { - leftOfAs = this.parseIdentifier(true); - if (!this.isContextual(93)) { - this.checkReservedWord(leftOfAs.name, leftOfAs.loc.start, true, true); - } - } else { - leftOfAs = this.parseModuleExportName(); - } - } - if (hasTypeSpecifier && isInTypeOnlyImportExport) { - this.raise(isImport ? TSErrors.TypeModifierIsUsedInTypeImports : TSErrors.TypeModifierIsUsedInTypeExports, loc); - } - node[leftOfAsKey] = leftOfAs; - node[rightOfAsKey] = rightOfAs; - const kindKey = isImport ? "importKind" : "exportKind"; - node[kindKey] = hasTypeSpecifier ? "type" : "value"; - if (canParseAsKeyword && this.eatContextual(93)) { - node[rightOfAsKey] = isImport ? this.parseIdentifier() : this.parseModuleExportName(); - } - if (!node[rightOfAsKey]) { - node[rightOfAsKey] = this.cloneIdentifier(node[leftOfAsKey]); - } - if (isImport) { - this.checkIdentifier(node[rightOfAsKey], hasTypeSpecifier ? 4098 : 4096); - } - } - fillOptionalPropertiesForTSESLint(node) { - var _node$directive, _node$decorators, _node$optional, _node$typeAnnotation, _node$accessibility, _node$decorators2, _node$override, _node$readonly, _node$static, _node$declare, _node$returnType, _node$typeParameters, _node$optional2, _node$optional3, _node$accessibility2, _node$readonly2, _node$static2, _node$declare2, _node$definite, _node$readonly3, _node$typeAnnotation2, _node$accessibility3, _node$decorators3, _node$override2, _node$optional4, _node$id, _node$abstract, _node$declare3, _node$decorators4, _node$implements, _node$superTypeArgume, _node$typeParameters2, _node$declare4, _node$definite2, _node$const, _node$declare5, _node$computed, _node$qualifier, _node$options, _node$declare6, _node$extends, _node$optional5, _node$readonly4, _node$declare7, _node$global, _node$const2, _node$in, _node$out; - switch (node.type) { - case "ExpressionStatement": - (_node$directive = node.directive) != null ? _node$directive : node.directive = undefined; - return; - case "RestElement": - node.value = undefined; - case "Identifier": - case "ArrayPattern": - case "AssignmentPattern": - case "ObjectPattern": - (_node$decorators = node.decorators) != null ? _node$decorators : node.decorators = []; - (_node$optional = node.optional) != null ? _node$optional : node.optional = false; - (_node$typeAnnotation = node.typeAnnotation) != null ? _node$typeAnnotation : node.typeAnnotation = undefined; - return; - case "TSParameterProperty": - (_node$accessibility = node.accessibility) != null ? _node$accessibility : node.accessibility = undefined; - (_node$decorators2 = node.decorators) != null ? _node$decorators2 : node.decorators = []; - (_node$override = node.override) != null ? _node$override : node.override = false; - (_node$readonly = node.readonly) != null ? _node$readonly : node.readonly = false; - (_node$static = node.static) != null ? _node$static : node.static = false; - return; - case "TSEmptyBodyFunctionExpression": - node.body = null; - case "TSDeclareFunction": - case "FunctionDeclaration": - case "FunctionExpression": - case "ClassMethod": - case "ClassPrivateMethod": - (_node$declare = node.declare) != null ? _node$declare : node.declare = false; - (_node$returnType = node.returnType) != null ? _node$returnType : node.returnType = undefined; - (_node$typeParameters = node.typeParameters) != null ? _node$typeParameters : node.typeParameters = undefined; - return; - case "Property": - (_node$optional2 = node.optional) != null ? _node$optional2 : node.optional = false; - return; - case "TSMethodSignature": - case "TSPropertySignature": - (_node$optional3 = node.optional) != null ? _node$optional3 : node.optional = false; - case "TSIndexSignature": - (_node$accessibility2 = node.accessibility) != null ? _node$accessibility2 : node.accessibility = undefined; - (_node$readonly2 = node.readonly) != null ? _node$readonly2 : node.readonly = false; - (_node$static2 = node.static) != null ? _node$static2 : node.static = false; - return; - case "TSAbstractPropertyDefinition": - case "PropertyDefinition": - case "TSAbstractAccessorProperty": - case "AccessorProperty": - (_node$declare2 = node.declare) != null ? _node$declare2 : node.declare = false; - (_node$definite = node.definite) != null ? _node$definite : node.definite = false; - (_node$readonly3 = node.readonly) != null ? _node$readonly3 : node.readonly = false; - (_node$typeAnnotation2 = node.typeAnnotation) != null ? _node$typeAnnotation2 : node.typeAnnotation = undefined; - case "TSAbstractMethodDefinition": - case "MethodDefinition": - (_node$accessibility3 = node.accessibility) != null ? _node$accessibility3 : node.accessibility = undefined; - (_node$decorators3 = node.decorators) != null ? _node$decorators3 : node.decorators = []; - (_node$override2 = node.override) != null ? _node$override2 : node.override = false; - (_node$optional4 = node.optional) != null ? _node$optional4 : node.optional = false; - return; - case "ClassExpression": - (_node$id = node.id) != null ? _node$id : node.id = null; - case "ClassDeclaration": - (_node$abstract = node.abstract) != null ? _node$abstract : node.abstract = false; - (_node$declare3 = node.declare) != null ? _node$declare3 : node.declare = false; - (_node$decorators4 = node.decorators) != null ? _node$decorators4 : node.decorators = []; - (_node$implements = node.implements) != null ? _node$implements : node.implements = []; - (_node$superTypeArgume = node.superTypeArguments) != null ? _node$superTypeArgume : node.superTypeArguments = undefined; - (_node$typeParameters2 = node.typeParameters) != null ? _node$typeParameters2 : node.typeParameters = undefined; - return; - case "TSTypeAliasDeclaration": - case "VariableDeclaration": - (_node$declare4 = node.declare) != null ? _node$declare4 : node.declare = false; - return; - case "VariableDeclarator": - (_node$definite2 = node.definite) != null ? _node$definite2 : node.definite = false; - return; - case "TSEnumDeclaration": - (_node$const = node.const) != null ? _node$const : node.const = false; - (_node$declare5 = node.declare) != null ? _node$declare5 : node.declare = false; - return; - case "TSEnumMember": - (_node$computed = node.computed) != null ? _node$computed : node.computed = false; - return; - case "TSImportType": - (_node$qualifier = node.qualifier) != null ? _node$qualifier : node.qualifier = null; - (_node$options = node.options) != null ? _node$options : node.options = null; - return; - case "TSInterfaceDeclaration": - (_node$declare6 = node.declare) != null ? _node$declare6 : node.declare = false; - (_node$extends = node.extends) != null ? _node$extends : node.extends = []; - return; - case "TSMappedType": - (_node$optional5 = node.optional) != null ? _node$optional5 : node.optional = false; - (_node$readonly4 = node.readonly) != null ? _node$readonly4 : node.readonly = undefined; - return; - case "TSModuleDeclaration": - (_node$declare7 = node.declare) != null ? _node$declare7 : node.declare = false; - (_node$global = node.global) != null ? _node$global : node.global = node.kind === "global"; - return; - case "TSTypeParameter": - (_node$const2 = node.const) != null ? _node$const2 : node.const = false; - (_node$in = node.in) != null ? _node$in : node.in = false; - (_node$out = node.out) != null ? _node$out : node.out = false; - return; - } - } - chStartsBindingIdentifierAndNotRelationalOperator(ch, pos) { - if (isIdentifierStart(ch)) { - keywordAndTSRelationalOperator.lastIndex = pos; - if (keywordAndTSRelationalOperator.test(this.input)) { - const endCh = this.codePointAtPos(keywordAndTSRelationalOperator.lastIndex); - if (!isIdentifierChar(endCh) && endCh !== 92) { - return false; - } - } - return true; - } else if (ch === 92) { - return true; - } else { - return false; - } - } - nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine() { - const next = this.nextTokenInLineStart(); - const nextCh = this.codePointAtPos(next); - return this.chStartsBindingIdentifierAndNotRelationalOperator(nextCh, next); - } - nextTokenIsIdentifierOrStringLiteralOnSameLine() { - const next = this.nextTokenInLineStart(); - const nextCh = this.codePointAtPos(next); - return this.chStartsBindingIdentifier(nextCh, next) || nextCh === 34 || nextCh === 39; - } -}; -function isPossiblyLiteralEnum(expression) { - if (expression.type !== "MemberExpression") return false; - const { - computed, - property - } = expression; - if (computed && property.type !== "StringLiteral" && (property.type !== "TemplateLiteral" || property.expressions.length > 0)) { - return false; - } - return isUncomputedMemberExpressionChain(expression.object); -} -function isValidAmbientConstInitializer(expression, estree) { - var _expression$extra; - const { - type - } = expression; - if ((_expression$extra = expression.extra) != null && _expression$extra.parenthesized) { - return false; - } - if (estree) { - if (type === "Literal") { - const { - value - } = expression; - if (typeof value === "string" || typeof value === "boolean") { - return true; - } - } - } else { - if (type === "StringLiteral" || type === "BooleanLiteral") { - return true; - } - } - if (isNumber(expression, estree) || isNegativeNumber(expression, estree)) { - return true; - } - if (type === "TemplateLiteral" && expression.expressions.length === 0) { - return true; - } - if (isPossiblyLiteralEnum(expression)) { - return true; - } - return false; -} -function isNumber(expression, estree) { - if (estree) { - return expression.type === "Literal" && (typeof expression.value === "number" || "bigint" in expression); - } - return expression.type === "NumericLiteral" || expression.type === "BigIntLiteral"; -} -function isNegativeNumber(expression, estree) { - if (expression.type === "UnaryExpression") { - const { - operator, - argument - } = expression; - if (operator === "-" && isNumber(argument, estree)) { - return true; - } - } - return false; -} -function isUncomputedMemberExpressionChain(expression) { - if (expression.type === "Identifier") return true; - if (expression.type !== "MemberExpression" || expression.computed) { - return false; - } - return isUncomputedMemberExpressionChain(expression.object); -} -const PlaceholderErrors = ParseErrorEnum`placeholders`({ - ClassNameIsRequired: "A class name is required.", - UnexpectedSpace: "Unexpected space in placeholder." -}); -var placeholders = superClass => class PlaceholdersParserMixin extends superClass { - parsePlaceholder(expectedNode) { - if (this.match(133)) { - const node = this.startNode(); - this.next(); - this.assertNoSpace(); - node.name = super.parseIdentifier(true); - this.assertNoSpace(); - this.expect(133); - return this.finishPlaceholder(node, expectedNode); - } - } - finishPlaceholder(node, expectedNode) { - let placeholder = node; - if (!placeholder.expectedNode || !placeholder.type) { - placeholder = this.finishNode(placeholder, "Placeholder"); - } - placeholder.expectedNode = expectedNode; - return placeholder; - } - getTokenFromCode(code) { - if (code === 37 && this.input.charCodeAt(this.state.pos + 1) === 37) { - this.finishOp(133, 2); - } else { - super.getTokenFromCode(code); - } - } - parseExprAtom(refExpressionErrors) { - return this.parsePlaceholder("Expression") || super.parseExprAtom(refExpressionErrors); - } - parseIdentifier(liberal) { - return this.parsePlaceholder("Identifier") || super.parseIdentifier(liberal); - } - checkReservedWord(word, startLoc, checkKeywords, isBinding) { - if (word !== undefined) { - super.checkReservedWord(word, startLoc, checkKeywords, isBinding); - } - } - cloneIdentifier(node) { - const cloned = super.cloneIdentifier(node); - if (cloned.type === "Placeholder") { - cloned.expectedNode = node.expectedNode; - } - return cloned; - } - cloneStringLiteral(node) { - if (node.type === "Placeholder") { - return this.cloneIdentifier(node); - } - return super.cloneStringLiteral(node); - } - parseBindingAtom() { - return this.parsePlaceholder("Pattern") || super.parseBindingAtom(); - } - isValidLVal(type, disallowCallExpression, isParenthesized, binding) { - return type === "Placeholder" || super.isValidLVal(type, disallowCallExpression, isParenthesized, binding); - } - toAssignable(node, isLHS) { - if (node && node.type === "Placeholder" && node.expectedNode === "Expression") { - node.expectedNode = "Pattern"; - } else { - super.toAssignable(node, isLHS); - } - } - chStartsBindingIdentifier(ch, pos) { - if (super.chStartsBindingIdentifier(ch, pos)) { - return true; - } - const next = this.nextTokenStart(); - if (this.input.charCodeAt(next) === 37 && this.input.charCodeAt(next + 1) === 37) { - return true; - } - return false; - } - verifyBreakContinue(node, isBreak) { - var _node$label; - if (((_node$label = node.label) == null ? void 0 : _node$label.type) === "Placeholder") return; - super.verifyBreakContinue(node, isBreak); - } - parseExpressionStatement(node, expr) { - var _expr$extra; - if (expr.type !== "Placeholder" || (_expr$extra = expr.extra) != null && _expr$extra.parenthesized) { - return super.parseExpressionStatement(node, expr); - } - if (this.match(14)) { - const stmt = node; - stmt.label = this.finishPlaceholder(expr, "Identifier"); - this.next(); - stmt.body = super.parseStatementOrSloppyAnnexBFunctionDeclaration(); - return this.finishNode(stmt, "LabeledStatement"); - } - this.semicolon(); - const stmtPlaceholder = node; - stmtPlaceholder.name = expr.name; - return this.finishPlaceholder(stmtPlaceholder, "Statement"); - } - parseBlock(allowDirectives, createNewLexicalScope, afterBlockParse) { - return this.parsePlaceholder("BlockStatement") || super.parseBlock(allowDirectives, createNewLexicalScope, afterBlockParse); - } - parseFunctionId(requireId) { - return this.parsePlaceholder("Identifier") || super.parseFunctionId(requireId); - } - parseClass(node, isStatement, optionalId) { - const type = isStatement ? "ClassDeclaration" : "ClassExpression"; - this.next(); - const oldStrict = this.state.strict; - const placeholder = this.parsePlaceholder("Identifier"); - if (placeholder) { - if (this.match(81) || this.match(133) || this.match(5)) { - node.id = placeholder; - } else if (optionalId || !isStatement) { - node.id = null; - node.body = this.finishPlaceholder(placeholder, "ClassBody"); - return this.finishNode(node, type); - } else { - throw this.raise(PlaceholderErrors.ClassNameIsRequired, this.state.startLoc); - } - } else { - this.parseClassId(node, isStatement, optionalId); - } - super.parseClassSuper(node); - node.body = this.parsePlaceholder("ClassBody") || super.parseClassBody(!!node.superClass, oldStrict); - return this.finishNode(node, type); - } - parseExport(node, decorators) { - const placeholder = this.parsePlaceholder("Identifier"); - if (!placeholder) return super.parseExport(node, decorators); - const node2 = node; - if (!this.isContextual(98) && !this.match(12)) { - node2.specifiers = []; - node2.source = null; - node2.declaration = this.finishPlaceholder(placeholder, "Declaration"); - return this.finishNode(node2, "ExportNamedDeclaration"); - } - this.expectPlugin("exportDefaultFrom"); - const specifier = this.startNode(); - specifier.exported = placeholder; - node2.specifiers = [this.finishNode(specifier, "ExportDefaultSpecifier")]; - return super.parseExport(node2, decorators); - } - isExportDefaultSpecifier() { - if (this.match(65)) { - const next = this.nextTokenStart(); - if (this.isUnparsedContextual(next, "from")) { - if (this.input.startsWith(tokenLabelName(133), this.nextTokenStartSince(next + 4))) { - return true; - } - } - } - return super.isExportDefaultSpecifier(); - } - maybeParseExportDefaultSpecifier(node, maybeDefaultIdentifier) { - var _specifiers; - if ((_specifiers = node.specifiers) != null && _specifiers.length) { - return true; - } - return super.maybeParseExportDefaultSpecifier(node, maybeDefaultIdentifier); - } - checkExport(node) { - const { - specifiers - } = node; - if (specifiers != null && specifiers.length) { - node.specifiers = specifiers.filter(node => node.exported.type === "Placeholder"); - } - super.checkExport(node); - node.specifiers = specifiers; - } - parseImport(node) { - const placeholder = this.parsePlaceholder("Identifier"); - if (!placeholder) return super.parseImport(node); - node.specifiers = []; - if (!this.isContextual(98) && !this.match(12)) { - node.source = this.finishPlaceholder(placeholder, "StringLiteral"); - this.semicolon(); - return this.finishNode(node, "ImportDeclaration"); - } - const specifier = this.startNodeAtNode(placeholder); - specifier.local = placeholder; - node.specifiers.push(this.finishNode(specifier, "ImportDefaultSpecifier")); - if (this.eat(12)) { - const hasStarImport = this.maybeParseStarImportSpecifier(node); - if (!hasStarImport) this.parseNamedImportSpecifiers(node); - } - this.expectContextual(98); - node.source = this.parseImportSource(); - this.semicolon(); - return this.finishNode(node, "ImportDeclaration"); - } - parseImportSource() { - return this.parsePlaceholder("StringLiteral") || super.parseImportSource(); - } - assertNoSpace() { - if (this.state.start > this.offsetToSourcePos(this.state.lastTokEndLoc.index)) { - this.raise(PlaceholderErrors.UnexpectedSpace, this.state.lastTokEndLoc); - } - } -}; -var v8intrinsic = superClass => class V8IntrinsicMixin extends superClass { - parseV8Intrinsic() { - if (this.match(54)) { - const v8IntrinsicStartLoc = this.state.startLoc; - const node = this.startNode(); - this.next(); - if (tokenIsIdentifier(this.state.type)) { - const name = this.parseIdentifierName(); - const identifier = this.createIdentifier(node, name); - this.castNodeTo(identifier, "V8IntrinsicIdentifier"); - if (this.match(10)) { - return identifier; - } - } - this.unexpected(v8IntrinsicStartLoc); - } - } - parseExprAtom(refExpressionErrors) { - return this.parseV8Intrinsic() || super.parseExprAtom(refExpressionErrors); - } -}; -const PIPELINE_PROPOSALS = ["minimal", "fsharp", "hack", "smart"]; -const TOPIC_TOKENS = ["^^", "@@", "^", "%", "#"]; -function validatePlugins(pluginsMap) { - if (pluginsMap.has("decorators")) { - if (pluginsMap.has("decorators-legacy")) { - throw new Error("Cannot use the decorators and decorators-legacy plugin together"); - } - const decoratorsBeforeExport = pluginsMap.get("decorators").decoratorsBeforeExport; - if (decoratorsBeforeExport != null && typeof decoratorsBeforeExport !== "boolean") { - throw new Error("'decoratorsBeforeExport' must be a boolean, if specified."); - } - const allowCallParenthesized = pluginsMap.get("decorators").allowCallParenthesized; - if (allowCallParenthesized != null && typeof allowCallParenthesized !== "boolean") { - throw new Error("'allowCallParenthesized' must be a boolean."); - } - } - if (pluginsMap.has("flow") && pluginsMap.has("typescript")) { - throw new Error("Cannot combine flow and typescript plugins."); - } - if (pluginsMap.has("placeholders") && pluginsMap.has("v8intrinsic")) { - throw new Error("Cannot combine placeholders and v8intrinsic plugins."); - } - if (pluginsMap.has("pipelineOperator")) { - var _pluginsMap$get2; - const proposal = pluginsMap.get("pipelineOperator").proposal; - if (!PIPELINE_PROPOSALS.includes(proposal)) { - const proposalList = PIPELINE_PROPOSALS.map(p => `"${p}"`).join(", "); - throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${proposalList}.`); - } - if (proposal === "hack") { - var _pluginsMap$get; - if (pluginsMap.has("placeholders")) { - throw new Error("Cannot combine placeholders plugin and Hack-style pipes."); - } - if (pluginsMap.has("v8intrinsic")) { - throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes."); - } - const topicToken = pluginsMap.get("pipelineOperator").topicToken; - if (!TOPIC_TOKENS.includes(topicToken)) { - const tokenList = TOPIC_TOKENS.map(t => `"${t}"`).join(", "); - throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${tokenList}.`); - } - if (topicToken === "#" && ((_pluginsMap$get = pluginsMap.get("recordAndTuple")) == null ? void 0 : _pluginsMap$get.syntaxType) === "hash") { - throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple", pluginsMap.get("recordAndTuple")])}\`.`); - } - } else if (proposal === "smart" && ((_pluginsMap$get2 = pluginsMap.get("recordAndTuple")) == null ? void 0 : _pluginsMap$get2.syntaxType) === "hash") { - throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple", pluginsMap.get("recordAndTuple")])}\`.`); - } - } - if (pluginsMap.has("moduleAttributes")) { - if (pluginsMap.has("deprecatedImportAssert") || pluginsMap.has("importAssertions")) { - throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins."); - } - const moduleAttributesVersionPluginOption = pluginsMap.get("moduleAttributes").version; - if (moduleAttributesVersionPluginOption !== "may-2020") { - throw new Error("The 'moduleAttributes' plugin requires a 'version' option," + " representing the last proposal update. Currently, the" + " only supported value is 'may-2020'."); - } - } - if (pluginsMap.has("importAssertions")) { - if (pluginsMap.has("deprecatedImportAssert")) { - throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins."); - } - } - if (pluginsMap.has("deprecatedImportAssert")) ;else if (pluginsMap.has("importAttributes") && pluginsMap.get("importAttributes").deprecatedAssertSyntax) { - pluginsMap.set("deprecatedImportAssert", {}); - } - if (pluginsMap.has("recordAndTuple")) { - const syntaxType = pluginsMap.get("recordAndTuple").syntaxType; - if (syntaxType != null) { - const RECORD_AND_TUPLE_SYNTAX_TYPES = ["hash", "bar"]; - if (!RECORD_AND_TUPLE_SYNTAX_TYPES.includes(syntaxType)) { - throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: " + RECORD_AND_TUPLE_SYNTAX_TYPES.map(p => `'${p}'`).join(", ")); - } - } - } - if (pluginsMap.has("asyncDoExpressions") && !pluginsMap.has("doExpressions")) { - const error = new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins."); - error.missingPlugins = "doExpressions"; - throw error; - } - if (pluginsMap.has("optionalChainingAssign") && pluginsMap.get("optionalChainingAssign").version !== "2023-07") { - throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option," + " representing the last proposal update. Currently, the" + " only supported value is '2023-07'."); - } - if (pluginsMap.has("discardBinding") && pluginsMap.get("discardBinding").syntaxType !== "void") { - throw new Error("The 'discardBinding' plugin requires a 'syntaxType' option. Currently the only supported value is 'void'."); - } -} -const mixinPlugins = { - estree, - jsx, - flow, - typescript, - v8intrinsic, - placeholders -}; -const mixinPluginNames = Object.keys(mixinPlugins); -class ExpressionParser extends LValParser { - checkProto(prop, isRecord, sawProto, refExpressionErrors) { - if (prop.type === "SpreadElement" || this.isObjectMethod(prop) || prop.computed || prop.shorthand) { - return sawProto; - } - const key = prop.key; - const name = key.type === "Identifier" ? key.name : key.value; - if (name === "__proto__") { - if (isRecord) { - this.raise(Errors.RecordNoProto, key); - return true; - } - if (sawProto) { - if (refExpressionErrors) { - if (refExpressionErrors.doubleProtoLoc === null) { - refExpressionErrors.doubleProtoLoc = key.loc.start; - } - } else { - this.raise(Errors.DuplicateProto, key); - } - } - return true; - } - return sawProto; - } - shouldExitDescending(expr, potentialArrowAt) { - return expr.type === "ArrowFunctionExpression" && this.offsetToSourcePos(expr.start) === potentialArrowAt; - } - getExpression() { - this.enterInitialScopes(); - this.nextToken(); - if (this.match(140)) { - throw this.raise(Errors.ParseExpressionEmptyInput, this.state.startLoc); - } - const expr = this.parseExpression(); - if (!this.match(140)) { - throw this.raise(Errors.ParseExpressionExpectsEOF, this.state.startLoc, { - unexpected: this.input.codePointAt(this.state.start) - }); - } - this.finalizeRemainingComments(); - expr.comments = this.comments; - expr.errors = this.state.errors; - if (this.optionFlags & 256) { - expr.tokens = this.tokens; - } - return expr; - } - parseExpression(disallowIn, refExpressionErrors) { - if (disallowIn) { - return this.disallowInAnd(() => this.parseExpressionBase(refExpressionErrors)); - } - return this.allowInAnd(() => this.parseExpressionBase(refExpressionErrors)); - } - parseExpressionBase(refExpressionErrors) { - const startLoc = this.state.startLoc; - const expr = this.parseMaybeAssign(refExpressionErrors); - if (this.match(12)) { - const node = this.startNodeAt(startLoc); - node.expressions = [expr]; - while (this.eat(12)) { - node.expressions.push(this.parseMaybeAssign(refExpressionErrors)); - } - this.toReferencedList(node.expressions); - return this.finishNode(node, "SequenceExpression"); - } - return expr; - } - parseMaybeAssignDisallowIn(refExpressionErrors, afterLeftParse) { - return this.disallowInAnd(() => this.parseMaybeAssign(refExpressionErrors, afterLeftParse)); - } - parseMaybeAssignAllowIn(refExpressionErrors, afterLeftParse) { - return this.allowInAnd(() => this.parseMaybeAssign(refExpressionErrors, afterLeftParse)); - } - setOptionalParametersError(refExpressionErrors) { - refExpressionErrors.optionalParametersLoc = this.state.startLoc; - } - parseMaybeAssign(refExpressionErrors, afterLeftParse) { - const startLoc = this.state.startLoc; - const isYield = this.isContextual(108); - if (isYield) { - if (this.prodParam.hasYield) { - this.next(); - let left = this.parseYield(startLoc); - if (afterLeftParse) { - left = afterLeftParse.call(this, left, startLoc); - } - return left; - } - } - let ownExpressionErrors; - if (refExpressionErrors) { - ownExpressionErrors = false; - } else { - refExpressionErrors = new ExpressionErrors(); - ownExpressionErrors = true; - } - const { - type - } = this.state; - if (type === 10 || tokenIsIdentifier(type)) { - this.state.potentialArrowAt = this.state.start; - } - let left = this.parseMaybeConditional(refExpressionErrors); - if (afterLeftParse) { - left = afterLeftParse.call(this, left, startLoc); - } - if (tokenIsAssignment(this.state.type)) { - const node = this.startNodeAt(startLoc); - const operator = this.state.value; - node.operator = operator; - if (this.match(29)) { - this.toAssignable(left, true); - node.left = left; - const startIndex = startLoc.index; - if (refExpressionErrors.doubleProtoLoc != null && refExpressionErrors.doubleProtoLoc.index >= startIndex) { - refExpressionErrors.doubleProtoLoc = null; - } - if (refExpressionErrors.shorthandAssignLoc != null && refExpressionErrors.shorthandAssignLoc.index >= startIndex) { - refExpressionErrors.shorthandAssignLoc = null; - } - if (refExpressionErrors.privateKeyLoc != null && refExpressionErrors.privateKeyLoc.index >= startIndex) { - this.checkDestructuringPrivate(refExpressionErrors); - refExpressionErrors.privateKeyLoc = null; - } - if (refExpressionErrors.voidPatternLoc != null && refExpressionErrors.voidPatternLoc.index >= startIndex) { - refExpressionErrors.voidPatternLoc = null; - } - } else { - node.left = left; - } - this.next(); - node.right = this.parseMaybeAssign(); - this.checkLVal(left, this.finishNode(node, "AssignmentExpression"), undefined, undefined, undefined, undefined, operator === "||=" || operator === "&&=" || operator === "??="); - return node; - } else if (ownExpressionErrors) { - this.checkExpressionErrors(refExpressionErrors, true); - } - if (isYield) { - const { - type - } = this.state; - const startsExpr = this.hasPlugin("v8intrinsic") ? tokenCanStartExpression(type) : tokenCanStartExpression(type) && !this.match(54); - if (startsExpr && !this.isAmbiguousPrefixOrIdentifier()) { - this.raiseOverwrite(Errors.YieldNotInGeneratorFunction, startLoc); - return this.parseYield(startLoc); - } - } - return left; - } - parseMaybeConditional(refExpressionErrors) { - const startLoc = this.state.startLoc; - const potentialArrowAt = this.state.potentialArrowAt; - const expr = this.parseExprOps(refExpressionErrors); - if (this.shouldExitDescending(expr, potentialArrowAt)) { - return expr; - } - return this.parseConditional(expr, startLoc, refExpressionErrors); - } - parseConditional(expr, startLoc, refExpressionErrors) { - if (this.eat(17)) { - const node = this.startNodeAt(startLoc); - node.test = expr; - node.consequent = this.parseMaybeAssignAllowIn(); - this.expect(14); - node.alternate = this.parseMaybeAssign(); - return this.finishNode(node, "ConditionalExpression"); - } - return expr; - } - parseMaybeUnaryOrPrivate(refExpressionErrors) { - return this.match(139) ? this.parsePrivateName() : this.parseMaybeUnary(refExpressionErrors); - } - parseExprOps(refExpressionErrors) { - const startLoc = this.state.startLoc; - const potentialArrowAt = this.state.potentialArrowAt; - const expr = this.parseMaybeUnaryOrPrivate(refExpressionErrors); - if (this.shouldExitDescending(expr, potentialArrowAt)) { - return expr; - } - return this.parseExprOp(expr, startLoc, -1); - } - parseExprOp(left, leftStartLoc, minPrec) { - if (this.isPrivateName(left)) { - const value = this.getPrivateNameSV(left); - if (minPrec >= tokenOperatorPrecedence(58) || !this.prodParam.hasIn || !this.match(58)) { - this.raise(Errors.PrivateInExpectedIn, left, { - identifierName: value - }); - } - this.classScope.usePrivateName(value, left.loc.start); - } - const op = this.state.type; - if (tokenIsOperator(op) && (this.prodParam.hasIn || !this.match(58))) { - let prec = tokenOperatorPrecedence(op); - if (prec > minPrec) { - if (op === 39) { - this.expectPlugin("pipelineOperator"); - if (this.state.inFSharpPipelineDirectBody) { - return left; - } - this.checkPipelineAtInfixOperator(left, leftStartLoc); - } - const node = this.startNodeAt(leftStartLoc); - node.left = left; - node.operator = this.state.value; - const logical = op === 41 || op === 42; - const coalesce = op === 40; - if (coalesce) { - prec = tokenOperatorPrecedence(42); - } - this.next(); - if (op === 39 && this.hasPlugin(["pipelineOperator", { - proposal: "minimal" - }])) { - if (this.state.type === 96 && this.prodParam.hasAwait) { - throw this.raise(Errors.UnexpectedAwaitAfterPipelineBody, this.state.startLoc); - } - } - node.right = this.parseExprOpRightExpr(op, prec); - const finishedNode = this.finishNode(node, logical || coalesce ? "LogicalExpression" : "BinaryExpression"); - const nextOp = this.state.type; - if (coalesce && (nextOp === 41 || nextOp === 42) || logical && nextOp === 40) { - throw this.raise(Errors.MixingCoalesceWithLogical, this.state.startLoc); - } - return this.parseExprOp(finishedNode, leftStartLoc, minPrec); - } - } - return left; - } - parseExprOpRightExpr(op, prec) { - const startLoc = this.state.startLoc; - switch (op) { - case 39: - switch (this.getPluginOption("pipelineOperator", "proposal")) { - case "hack": - return this.withTopicBindingContext(() => { - return this.parseHackPipeBody(); - }); - case "fsharp": - return this.withSoloAwaitPermittingContext(() => { - return this.parseFSharpPipelineBody(prec); - }); - } - if (this.getPluginOption("pipelineOperator", "proposal") === "smart") { - return this.withTopicBindingContext(() => { - if (this.prodParam.hasYield && this.isContextual(108)) { - throw this.raise(Errors.PipeBodyIsTighter, this.state.startLoc); - } - return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(op, prec), startLoc); - }); - } - default: - return this.parseExprOpBaseRightExpr(op, prec); - } - } - parseExprOpBaseRightExpr(op, prec) { - const startLoc = this.state.startLoc; - return this.parseExprOp(this.parseMaybeUnaryOrPrivate(), startLoc, tokenIsRightAssociative(op) ? prec - 1 : prec); - } - parseHackPipeBody() { - var _body$extra; - const { - startLoc - } = this.state; - const body = this.parseMaybeAssign(); - const requiredParentheses = UnparenthesizedPipeBodyDescriptions.has(body.type); - if (requiredParentheses && !((_body$extra = body.extra) != null && _body$extra.parenthesized)) { - this.raise(Errors.PipeUnparenthesizedBody, startLoc, { - type: body.type - }); - } - if (!this.topicReferenceWasUsedInCurrentContext()) { - this.raise(Errors.PipeTopicUnused, startLoc); - } - return body; - } - checkExponentialAfterUnary(node) { - if (this.match(57)) { - this.raise(Errors.UnexpectedTokenUnaryExponentiation, node.argument); - } - } - parseMaybeUnary(refExpressionErrors, sawUnary) { - const startLoc = this.state.startLoc; - const isAwait = this.isContextual(96); - if (isAwait && this.recordAwaitIfAllowed()) { - this.next(); - const expr = this.parseAwait(startLoc); - if (!sawUnary) this.checkExponentialAfterUnary(expr); - return expr; - } - const update = this.match(34); - const node = this.startNode(); - if (tokenIsPrefix(this.state.type)) { - node.operator = this.state.value; - node.prefix = true; - if (this.match(72)) { - this.expectPlugin("throwExpressions"); - } - const isDelete = this.match(89); - this.next(); - node.argument = this.parseMaybeUnary(null, true); - this.checkExpressionErrors(refExpressionErrors, true); - if (this.state.strict && isDelete) { - const arg = node.argument; - if (arg.type === "Identifier") { - this.raise(Errors.StrictDelete, node); - } else if (this.hasPropertyAsPrivateName(arg)) { - this.raise(Errors.DeletePrivateField, node); - } - } - if (!update) { - if (!sawUnary) { - this.checkExponentialAfterUnary(node); - } - return this.finishNode(node, "UnaryExpression"); - } - } - const expr = this.parseUpdate(node, update, refExpressionErrors); - if (isAwait) { - const { - type - } = this.state; - const startsExpr = this.hasPlugin("v8intrinsic") ? tokenCanStartExpression(type) : tokenCanStartExpression(type) && !this.match(54); - if (startsExpr && !this.isAmbiguousPrefixOrIdentifier()) { - this.raiseOverwrite(Errors.AwaitNotInAsyncContext, startLoc); - return this.parseAwait(startLoc); - } - } - return expr; - } - parseUpdate(node, update, refExpressionErrors) { - if (update) { - const updateExpressionNode = node; - this.checkLVal(updateExpressionNode.argument, this.finishNode(updateExpressionNode, "UpdateExpression")); - return node; - } - const startLoc = this.state.startLoc; - let expr = this.parseExprSubscripts(refExpressionErrors); - if (this.checkExpressionErrors(refExpressionErrors, false)) return expr; - while (tokenIsPostfix(this.state.type) && !this.canInsertSemicolon()) { - const node = this.startNodeAt(startLoc); - node.operator = this.state.value; - node.prefix = false; - node.argument = expr; - this.next(); - this.checkLVal(expr, expr = this.finishNode(node, "UpdateExpression")); - } - return expr; - } - parseExprSubscripts(refExpressionErrors) { - const startLoc = this.state.startLoc; - const potentialArrowAt = this.state.potentialArrowAt; - const expr = this.parseExprAtom(refExpressionErrors); - if (this.shouldExitDescending(expr, potentialArrowAt)) { - return expr; - } - return this.parseSubscripts(expr, startLoc); - } - parseSubscripts(base, startLoc, noCalls) { - const state = { - optionalChainMember: false, - maybeAsyncArrow: this.atPossibleAsyncArrow(base), - stop: false - }; - do { - base = this.parseSubscript(base, startLoc, noCalls, state); - state.maybeAsyncArrow = false; - } while (!state.stop); - return base; - } - parseSubscript(base, startLoc, noCalls, state) { - const { - type - } = this.state; - if (!noCalls && type === 15) { - return this.parseBind(base, startLoc, noCalls, state); - } else if (tokenIsTemplate(type)) { - return this.parseTaggedTemplateExpression(base, startLoc, state); - } - let optional = false; - if (type === 18) { - if (noCalls) { - this.raise(Errors.OptionalChainingNoNew, this.state.startLoc); - if (this.lookaheadCharCode() === 40) { - return this.stopParseSubscript(base, state); - } - } - state.optionalChainMember = optional = true; - this.next(); - } - if (!noCalls && this.match(10)) { - return this.parseCoverCallAndAsyncArrowHead(base, startLoc, state, optional); - } else { - const computed = this.eat(0); - if (computed || optional || this.eat(16)) { - return this.parseMember(base, startLoc, state, computed, optional); - } else { - return this.stopParseSubscript(base, state); - } - } - } - stopParseSubscript(base, state) { - state.stop = true; - return base; - } - parseMember(base, startLoc, state, computed, optional) { - const node = this.startNodeAt(startLoc); - node.object = base; - node.computed = computed; - if (computed) { - node.property = this.parseExpression(); - this.expect(3); - } else if (this.match(139)) { - if (base.type === "Super") { - this.raise(Errors.SuperPrivateField, startLoc); - } - this.classScope.usePrivateName(this.state.value, this.state.startLoc); - node.property = this.parsePrivateName(); - } else { - node.property = this.parseIdentifier(true); - } - if (state.optionalChainMember) { - node.optional = optional; - return this.finishNode(node, "OptionalMemberExpression"); - } else { - return this.finishNode(node, "MemberExpression"); - } - } - parseBind(base, startLoc, noCalls, state) { - const node = this.startNodeAt(startLoc); - node.object = base; - this.next(); - node.callee = this.parseNoCallExpr(); - state.stop = true; - return this.parseSubscripts(this.finishNode(node, "BindExpression"), startLoc, noCalls); - } - parseCoverCallAndAsyncArrowHead(base, startLoc, state, optional) { - const oldMaybeInArrowParameters = this.state.maybeInArrowParameters; - let refExpressionErrors = null; - this.state.maybeInArrowParameters = true; - this.next(); - const node = this.startNodeAt(startLoc); - node.callee = base; - const { - maybeAsyncArrow, - optionalChainMember - } = state; - if (maybeAsyncArrow) { - this.expressionScope.enter(newAsyncArrowScope()); - refExpressionErrors = new ExpressionErrors(); - } - if (optionalChainMember) { - node.optional = optional; - } - if (optional) { - node.arguments = this.parseCallExpressionArguments(); - } else { - node.arguments = this.parseCallExpressionArguments(base.type !== "Super", node, refExpressionErrors); - } - let finishedNode = this.finishCallExpression(node, optionalChainMember); - if (maybeAsyncArrow && this.shouldParseAsyncArrow() && !optional) { - state.stop = true; - this.checkDestructuringPrivate(refExpressionErrors); - this.expressionScope.validateAsPattern(); - this.expressionScope.exit(); - finishedNode = this.parseAsyncArrowFromCallExpression(this.startNodeAt(startLoc), finishedNode); - } else { - if (maybeAsyncArrow) { - this.checkExpressionErrors(refExpressionErrors, true); - this.expressionScope.exit(); - } - this.toReferencedArguments(finishedNode); - } - this.state.maybeInArrowParameters = oldMaybeInArrowParameters; - return finishedNode; - } - toReferencedArguments(node, isParenthesizedExpr) { - this.toReferencedListDeep(node.arguments, isParenthesizedExpr); - } - parseTaggedTemplateExpression(base, startLoc, state) { - const node = this.startNodeAt(startLoc); - node.tag = base; - node.quasi = this.parseTemplate(true); - if (state.optionalChainMember) { - this.raise(Errors.OptionalChainingNoTemplate, startLoc); - } - return this.finishNode(node, "TaggedTemplateExpression"); - } - atPossibleAsyncArrow(base) { - return base.type === "Identifier" && base.name === "async" && this.state.lastTokEndLoc.index === base.end && !this.canInsertSemicolon() && base.end - base.start === 5 && this.offsetToSourcePos(base.start) === this.state.potentialArrowAt; - } - finishCallExpression(node, optional) { - if (node.callee.type === "Import") { - if (node.arguments.length === 0 || node.arguments.length > 2) { - this.raise(Errors.ImportCallArity, node); - } else { - for (const arg of node.arguments) { - if (arg.type === "SpreadElement") { - this.raise(Errors.ImportCallSpreadArgument, arg); - } - } - } - } - return this.finishNode(node, optional ? "OptionalCallExpression" : "CallExpression"); - } - parseCallExpressionArguments(allowPlaceholder, nodeForExtra, refExpressionErrors) { - const elts = []; - let first = true; - const oldInFSharpPipelineDirectBody = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = false; - while (!this.eat(11)) { - if (first) { - first = false; - } else { - this.expect(12); - if (this.match(11)) { - if (nodeForExtra) { - this.addTrailingCommaExtraToNode(nodeForExtra); - } - this.next(); - break; - } - } - elts.push(this.parseExprListItem(11, false, refExpressionErrors, allowPlaceholder)); - } - this.state.inFSharpPipelineDirectBody = oldInFSharpPipelineDirectBody; - return elts; - } - shouldParseAsyncArrow() { - return this.match(19) && !this.canInsertSemicolon(); - } - parseAsyncArrowFromCallExpression(node, call) { - var _call$extra; - this.resetPreviousNodeTrailingComments(call); - this.expect(19); - this.parseArrowExpression(node, call.arguments, true, (_call$extra = call.extra) == null ? void 0 : _call$extra.trailingCommaLoc); - if (call.innerComments) { - setInnerComments(node, call.innerComments); - } - if (call.callee.trailingComments) { - setInnerComments(node, call.callee.trailingComments); - } - return node; - } - parseNoCallExpr() { - const startLoc = this.state.startLoc; - return this.parseSubscripts(this.parseExprAtom(), startLoc, true); - } - parseExprAtom(refExpressionErrors) { - let node; - let decorators = null; - const { - type - } = this.state; - switch (type) { - case 79: - return this.parseSuper(); - case 83: - node = this.startNode(); - this.next(); - if (this.match(16)) { - return this.parseImportMetaPropertyOrPhaseCall(node); - } - if (this.match(10)) { - if (this.optionFlags & 512) { - return this.parseImportCall(node); - } else { - return this.finishNode(node, "Import"); - } - } else { - this.raise(Errors.UnsupportedImport, this.state.lastTokStartLoc); - return this.finishNode(node, "Import"); - } - case 78: - node = this.startNode(); - this.next(); - return this.finishNode(node, "ThisExpression"); - case 90: - { - return this.parseDo(this.startNode(), false); - } - case 56: - case 31: - { - this.readRegexp(); - return this.parseRegExpLiteral(this.state.value); - } - case 135: - return this.parseNumericLiteral(this.state.value); - case 136: - return this.parseBigIntLiteral(this.state.value); - case 134: - return this.parseStringLiteral(this.state.value); - case 84: - return this.parseNullLiteral(); - case 85: - return this.parseBooleanLiteral(true); - case 86: - return this.parseBooleanLiteral(false); - case 10: - { - const canBeArrow = this.state.potentialArrowAt === this.state.start; - return this.parseParenAndDistinguishExpression(canBeArrow); - } - case 0: - { - return this.parseArrayLike(3, false, refExpressionErrors); - } - case 5: - { - return this.parseObjectLike(8, false, false, refExpressionErrors); - } - case 68: - return this.parseFunctionOrFunctionSent(); - case 26: - decorators = this.parseDecorators(); - case 80: - return this.parseClass(this.maybeTakeDecorators(decorators, this.startNode()), false); - case 77: - return this.parseNewOrNewTarget(); - case 25: - case 24: - return this.parseTemplate(false); - case 15: - { - node = this.startNode(); - this.next(); - node.object = null; - const callee = node.callee = this.parseNoCallExpr(); - if (callee.type === "MemberExpression") { - return this.finishNode(node, "BindExpression"); - } else { - throw this.raise(Errors.UnsupportedBind, callee); - } - } - case 139: - { - this.raise(Errors.PrivateInExpectedIn, this.state.startLoc, { - identifierName: this.state.value - }); - return this.parsePrivateName(); - } - case 33: - { - return this.parseTopicReferenceThenEqualsSign(54, "%"); - } - case 32: - { - return this.parseTopicReferenceThenEqualsSign(44, "^"); - } - case 37: - case 38: - { - return this.parseTopicReference("hack"); - } - case 44: - case 54: - case 27: - { - const pipeProposal = this.getPluginOption("pipelineOperator", "proposal"); - if (pipeProposal) { - return this.parseTopicReference(pipeProposal); - } - throw this.unexpected(); - } - case 47: - { - const lookaheadCh = this.input.codePointAt(this.nextTokenStart()); - if (isIdentifierStart(lookaheadCh) || lookaheadCh === 62) { - throw this.expectOnePlugin(["jsx", "flow", "typescript"]); - } - throw this.unexpected(); - } - default: - if (type === 137) { - return this.parseDecimalLiteral(this.state.value); - } else if (type === 2 || type === 1) { - return this.parseArrayLike(this.state.type === 2 ? 4 : 3, true); - } else if (type === 6 || type === 7) { - return this.parseObjectLike(this.state.type === 6 ? 9 : 8, false, true); - } - if (tokenIsIdentifier(type)) { - if (this.isContextual(127) && this.lookaheadInLineCharCode() === 123) { - return this.parseModuleExpression(); - } - const canBeArrow = this.state.potentialArrowAt === this.state.start; - const containsEsc = this.state.containsEsc; - const id = this.parseIdentifier(); - if (!containsEsc && id.name === "async" && !this.canInsertSemicolon()) { - const { - type - } = this.state; - if (type === 68) { - this.resetPreviousNodeTrailingComments(id); - this.next(); - return this.parseAsyncFunctionExpression(this.startNodeAtNode(id)); - } else if (tokenIsIdentifier(type)) { - if (this.lookaheadCharCode() === 61) { - return this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(id)); - } else { - return id; - } - } else if (type === 90) { - this.resetPreviousNodeTrailingComments(id); - return this.parseDo(this.startNodeAtNode(id), true); - } - } - if (canBeArrow && this.match(19) && !this.canInsertSemicolon()) { - this.next(); - return this.parseArrowExpression(this.startNodeAtNode(id), [id], false); - } - return id; - } else { - throw this.unexpected(); - } - } - } - parseTopicReferenceThenEqualsSign(topicTokenType, topicTokenValue) { - const pipeProposal = this.getPluginOption("pipelineOperator", "proposal"); - if (pipeProposal) { - this.state.type = topicTokenType; - this.state.value = topicTokenValue; - this.state.pos--; - this.state.end--; - this.state.endLoc = createPositionWithColumnOffset(this.state.endLoc, -1); - return this.parseTopicReference(pipeProposal); - } - throw this.unexpected(); - } - parseTopicReference(pipeProposal) { - const node = this.startNode(); - const startLoc = this.state.startLoc; - const tokenType = this.state.type; - this.next(); - return this.finishTopicReference(node, startLoc, pipeProposal, tokenType); - } - finishTopicReference(node, startLoc, pipeProposal, tokenType) { - if (this.testTopicReferenceConfiguration(pipeProposal, startLoc, tokenType)) { - if (pipeProposal === "hack") { - if (!this.topicReferenceIsAllowedInCurrentContext()) { - this.raise(Errors.PipeTopicUnbound, startLoc); - } - this.registerTopicReference(); - return this.finishNode(node, "TopicReference"); - } else { - if (!this.topicReferenceIsAllowedInCurrentContext()) { - this.raise(Errors.PrimaryTopicNotAllowed, startLoc); - } - this.registerTopicReference(); - return this.finishNode(node, "PipelinePrimaryTopicReference"); - } - } else { - throw this.raise(Errors.PipeTopicUnconfiguredToken, startLoc, { - token: tokenLabelName(tokenType) - }); - } - } - testTopicReferenceConfiguration(pipeProposal, startLoc, tokenType) { - switch (pipeProposal) { - case "hack": - { - return this.hasPlugin(["pipelineOperator", { - topicToken: tokenLabelName(tokenType) - }]); - } - case "smart": - return tokenType === 27; - default: - throw this.raise(Errors.PipeTopicRequiresHackPipes, startLoc); - } - } - parseAsyncArrowUnaryFunction(node) { - this.prodParam.enter(functionFlags(true, this.prodParam.hasYield)); - const params = [this.parseIdentifier()]; - this.prodParam.exit(); - if (this.hasPrecedingLineBreak()) { - this.raise(Errors.LineTerminatorBeforeArrow, this.state.curPosition()); - } - this.expect(19); - return this.parseArrowExpression(node, params, true); - } - parseDo(node, isAsync) { - this.expectPlugin("doExpressions"); - if (isAsync) { - this.expectPlugin("asyncDoExpressions"); - } - node.async = isAsync; - this.next(); - const oldLabels = this.state.labels; - this.state.labels = []; - if (isAsync) { - this.prodParam.enter(2); - node.body = this.parseBlock(); - this.prodParam.exit(); - } else { - node.body = this.parseBlock(); - } - this.state.labels = oldLabels; - return this.finishNode(node, "DoExpression"); - } - parseSuper() { - const node = this.startNode(); - this.next(); - if (this.match(10) && !this.scope.allowDirectSuper) { - if (!(this.optionFlags & 16)) { - this.raise(Errors.SuperNotAllowed, node); - } - } else if (!this.scope.allowSuper) { - if (!(this.optionFlags & 16)) { - this.raise(Errors.UnexpectedSuper, node); - } - } - if (!this.match(10) && !this.match(0) && !this.match(16)) { - this.raise(Errors.UnsupportedSuper, node); - } - return this.finishNode(node, "Super"); - } - parsePrivateName() { - const node = this.startNode(); - const id = this.startNodeAt(createPositionWithColumnOffset(this.state.startLoc, 1)); - const name = this.state.value; - this.next(); - node.id = this.createIdentifier(id, name); - return this.finishNode(node, "PrivateName"); - } - parseFunctionOrFunctionSent() { - const node = this.startNode(); - this.next(); - if (this.prodParam.hasYield && this.match(16)) { - const meta = this.createIdentifier(this.startNodeAtNode(node), "function"); - this.next(); - if (this.match(103)) { - this.expectPlugin("functionSent"); - } else if (!this.hasPlugin("functionSent")) { - this.unexpected(); - } - return this.parseMetaProperty(node, meta, "sent"); - } - return this.parseFunction(node); - } - parseMetaProperty(node, meta, propertyName) { - node.meta = meta; - const containsEsc = this.state.containsEsc; - node.property = this.parseIdentifier(true); - if (node.property.name !== propertyName || containsEsc) { - this.raise(Errors.UnsupportedMetaProperty, node.property, { - target: meta.name, - onlyValidPropertyName: propertyName - }); - } - return this.finishNode(node, "MetaProperty"); - } - parseImportMetaPropertyOrPhaseCall(node) { - this.next(); - if (this.isContextual(105) || this.isContextual(97)) { - const isSource = this.isContextual(105); - this.expectPlugin(isSource ? "sourcePhaseImports" : "deferredImportEvaluation"); - this.next(); - node.phase = isSource ? "source" : "defer"; - return this.parseImportCall(node); - } else { - const id = this.createIdentifierAt(this.startNodeAtNode(node), "import", this.state.lastTokStartLoc); - if (this.isContextual(101)) { - if (!this.inModule) { - this.raise(Errors.ImportMetaOutsideModule, id); - } - this.sawUnambiguousESM = true; - } - return this.parseMetaProperty(node, id, "meta"); - } - } - parseLiteralAtNode(value, type, node) { - this.addExtra(node, "rawValue", value); - this.addExtra(node, "raw", this.input.slice(this.offsetToSourcePos(node.start), this.state.end)); - node.value = value; - this.next(); - return this.finishNode(node, type); - } - parseLiteral(value, type) { - const node = this.startNode(); - return this.parseLiteralAtNode(value, type, node); - } - parseStringLiteral(value) { - return this.parseLiteral(value, "StringLiteral"); - } - parseNumericLiteral(value) { - return this.parseLiteral(value, "NumericLiteral"); - } - parseBigIntLiteral(value) { - return this.parseLiteral(value, "BigIntLiteral"); - } - parseDecimalLiteral(value) { - return this.parseLiteral(value, "DecimalLiteral"); - } - parseRegExpLiteral(value) { - const node = this.startNode(); - this.addExtra(node, "raw", this.input.slice(this.offsetToSourcePos(node.start), this.state.end)); - node.pattern = value.pattern; - node.flags = value.flags; - this.next(); - return this.finishNode(node, "RegExpLiteral"); - } - parseBooleanLiteral(value) { - const node = this.startNode(); - node.value = value; - this.next(); - return this.finishNode(node, "BooleanLiteral"); - } - parseNullLiteral() { - const node = this.startNode(); - this.next(); - return this.finishNode(node, "NullLiteral"); - } - parseParenAndDistinguishExpression(canBeArrow) { - const startLoc = this.state.startLoc; - let val; - this.next(); - this.expressionScope.enter(newArrowHeadScope()); - const oldMaybeInArrowParameters = this.state.maybeInArrowParameters; - const oldInFSharpPipelineDirectBody = this.state.inFSharpPipelineDirectBody; - this.state.maybeInArrowParameters = true; - this.state.inFSharpPipelineDirectBody = false; - const innerStartLoc = this.state.startLoc; - const exprList = []; - const refExpressionErrors = new ExpressionErrors(); - let first = true; - let spreadStartLoc; - let optionalCommaStartLoc; - while (!this.match(11)) { - if (first) { - first = false; - } else { - this.expect(12, refExpressionErrors.optionalParametersLoc === null ? null : refExpressionErrors.optionalParametersLoc); - if (this.match(11)) { - optionalCommaStartLoc = this.state.startLoc; - break; - } - } - if (this.match(21)) { - const spreadNodeStartLoc = this.state.startLoc; - spreadStartLoc = this.state.startLoc; - exprList.push(this.parseParenItem(this.parseRestBinding(), spreadNodeStartLoc)); - if (!this.checkCommaAfterRest(41)) { - break; - } - } else { - exprList.push(this.parseMaybeAssignAllowInOrVoidPattern(11, refExpressionErrors, this.parseParenItem)); - } - } - const innerEndLoc = this.state.lastTokEndLoc; - this.expect(11); - this.state.maybeInArrowParameters = oldMaybeInArrowParameters; - this.state.inFSharpPipelineDirectBody = oldInFSharpPipelineDirectBody; - let arrowNode = this.startNodeAt(startLoc); - if (canBeArrow && this.shouldParseArrow(exprList) && (arrowNode = this.parseArrow(arrowNode))) { - this.checkDestructuringPrivate(refExpressionErrors); - this.expressionScope.validateAsPattern(); - this.expressionScope.exit(); - this.parseArrowExpression(arrowNode, exprList, false); - return arrowNode; - } - this.expressionScope.exit(); - if (!exprList.length) { - this.unexpected(this.state.lastTokStartLoc); - } - if (optionalCommaStartLoc) this.unexpected(optionalCommaStartLoc); - if (spreadStartLoc) this.unexpected(spreadStartLoc); - this.checkExpressionErrors(refExpressionErrors, true); - this.toReferencedListDeep(exprList, true); - if (exprList.length > 1) { - val = this.startNodeAt(innerStartLoc); - val.expressions = exprList; - this.finishNode(val, "SequenceExpression"); - this.resetEndLocation(val, innerEndLoc); - } else { - val = exprList[0]; - } - return this.wrapParenthesis(startLoc, val); - } - wrapParenthesis(startLoc, expression) { - if (!(this.optionFlags & 1024)) { - this.addExtra(expression, "parenthesized", true); - this.addExtra(expression, "parenStart", startLoc.index); - this.takeSurroundingComments(expression, startLoc.index, this.state.lastTokEndLoc.index); - return expression; - } - const parenExpression = this.startNodeAt(startLoc); - parenExpression.expression = expression; - return this.finishNode(parenExpression, "ParenthesizedExpression"); - } - shouldParseArrow(params) { - return !this.canInsertSemicolon(); - } - parseArrow(node) { - if (this.eat(19)) { - return node; - } - } - parseParenItem(node, startLoc) { - return node; - } - parseNewOrNewTarget() { - const node = this.startNode(); - this.next(); - if (this.match(16)) { - const meta = this.createIdentifier(this.startNodeAtNode(node), "new"); - this.next(); - const metaProp = this.parseMetaProperty(node, meta, "target"); - if (!this.scope.allowNewTarget) { - this.raise(Errors.UnexpectedNewTarget, metaProp); - } - return metaProp; - } - return this.parseNew(node); - } - parseNew(node) { - this.parseNewCallee(node); - if (this.eat(10)) { - const args = this.parseExprList(11); - this.toReferencedList(args); - node.arguments = args; - } else { - node.arguments = []; - } - return this.finishNode(node, "NewExpression"); - } - parseNewCallee(node) { - const isImport = this.match(83); - const callee = this.parseNoCallExpr(); - node.callee = callee; - if (isImport && (callee.type === "Import" || callee.type === "ImportExpression")) { - this.raise(Errors.ImportCallNotNewExpression, callee); - } - } - parseTemplateElement(isTagged) { - const { - start, - startLoc, - end, - value - } = this.state; - const elemStart = start + 1; - const elem = this.startNodeAt(createPositionWithColumnOffset(startLoc, 1)); - if (value === null) { - if (!isTagged) { - this.raise(Errors.InvalidEscapeSequenceTemplate, createPositionWithColumnOffset(this.state.firstInvalidTemplateEscapePos, 1)); - } - } - const isTail = this.match(24); - const endOffset = isTail ? -1 : -2; - const elemEnd = end + endOffset; - elem.value = { - raw: this.input.slice(elemStart, elemEnd).replace(/\r\n?/g, "\n"), - cooked: value === null ? null : value.slice(1, endOffset) - }; - elem.tail = isTail; - this.next(); - const finishedNode = this.finishNode(elem, "TemplateElement"); - this.resetEndLocation(finishedNode, createPositionWithColumnOffset(this.state.lastTokEndLoc, endOffset)); - return finishedNode; - } - parseTemplate(isTagged) { - const node = this.startNode(); - let curElt = this.parseTemplateElement(isTagged); - const quasis = [curElt]; - const substitutions = []; - while (!curElt.tail) { - substitutions.push(this.parseTemplateSubstitution()); - this.readTemplateContinuation(); - quasis.push(curElt = this.parseTemplateElement(isTagged)); - } - node.expressions = substitutions; - node.quasis = quasis; - return this.finishNode(node, "TemplateLiteral"); - } - parseTemplateSubstitution() { - return this.parseExpression(); - } - parseObjectLike(close, isPattern, isRecord, refExpressionErrors) { - if (isRecord) { - this.expectPlugin("recordAndTuple"); - } - const oldInFSharpPipelineDirectBody = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = false; - let sawProto = false; - let first = true; - const node = this.startNode(); - node.properties = []; - this.next(); - while (!this.match(close)) { - if (first) { - first = false; - } else { - this.expect(12); - if (this.match(close)) { - this.addTrailingCommaExtraToNode(node); - break; - } - } - let prop; - if (isPattern) { - prop = this.parseBindingProperty(); - } else { - prop = this.parsePropertyDefinition(refExpressionErrors); - sawProto = this.checkProto(prop, isRecord, sawProto, refExpressionErrors); - } - if (isRecord && !this.isObjectProperty(prop) && prop.type !== "SpreadElement") { - this.raise(Errors.InvalidRecordProperty, prop); - } - if (prop.shorthand) { - this.addExtra(prop, "shorthand", true); - } - node.properties.push(prop); - } - this.next(); - this.state.inFSharpPipelineDirectBody = oldInFSharpPipelineDirectBody; - let type = "ObjectExpression"; - if (isPattern) { - type = "ObjectPattern"; - } else if (isRecord) { - type = "RecordExpression"; - } - return this.finishNode(node, type); - } - addTrailingCommaExtraToNode(node) { - this.addExtra(node, "trailingComma", this.state.lastTokStartLoc.index); - this.addExtra(node, "trailingCommaLoc", this.state.lastTokStartLoc, false); - } - maybeAsyncOrAccessorProp(prop) { - return !prop.computed && prop.key.type === "Identifier" && (this.isLiteralPropertyName() || this.match(0) || this.match(55)); - } - parsePropertyDefinition(refExpressionErrors) { - let decorators = []; - if (this.match(26)) { - if (this.hasPlugin("decorators")) { - this.raise(Errors.UnsupportedPropertyDecorator, this.state.startLoc); - } - while (this.match(26)) { - decorators.push(this.parseDecorator()); - } - } - const prop = this.startNode(); - let isAsync = false; - let isAccessor = false; - let startLoc; - if (this.match(21)) { - if (decorators.length) this.unexpected(); - return this.parseSpread(); - } - if (decorators.length) { - prop.decorators = decorators; - decorators = []; - } - prop.method = false; - if (refExpressionErrors) { - startLoc = this.state.startLoc; - } - let isGenerator = this.eat(55); - this.parsePropertyNamePrefixOperator(prop); - const containsEsc = this.state.containsEsc; - this.parsePropertyName(prop, refExpressionErrors); - if (!isGenerator && !containsEsc && this.maybeAsyncOrAccessorProp(prop)) { - const { - key - } = prop; - const keyName = key.name; - if (keyName === "async" && !this.hasPrecedingLineBreak()) { - isAsync = true; - this.resetPreviousNodeTrailingComments(key); - isGenerator = this.eat(55); - this.parsePropertyName(prop); - } - if (keyName === "get" || keyName === "set") { - isAccessor = true; - this.resetPreviousNodeTrailingComments(key); - prop.kind = keyName; - if (this.match(55)) { - isGenerator = true; - this.raise(Errors.AccessorIsGenerator, this.state.curPosition(), { - kind: keyName - }); - this.next(); - } - this.parsePropertyName(prop); - } - } - return this.parseObjPropValue(prop, startLoc, isGenerator, isAsync, false, isAccessor, refExpressionErrors); - } - getGetterSetterExpectedParamCount(method) { - return method.kind === "get" ? 0 : 1; - } - getObjectOrClassMethodParams(method) { - return method.params; - } - checkGetterSetterParams(method) { - var _params; - const paramCount = this.getGetterSetterExpectedParamCount(method); - const params = this.getObjectOrClassMethodParams(method); - if (params.length !== paramCount) { - this.raise(method.kind === "get" ? Errors.BadGetterArity : Errors.BadSetterArity, method); - } - if (method.kind === "set" && ((_params = params[params.length - 1]) == null ? void 0 : _params.type) === "RestElement") { - this.raise(Errors.BadSetterRestParameter, method); - } - } - parseObjectMethod(prop, isGenerator, isAsync, isPattern, isAccessor) { - if (isAccessor) { - const finishedProp = this.parseMethod(prop, isGenerator, false, false, false, "ObjectMethod"); - this.checkGetterSetterParams(finishedProp); - return finishedProp; - } - if (isAsync || isGenerator || this.match(10)) { - if (isPattern) this.unexpected(); - prop.kind = "method"; - prop.method = true; - return this.parseMethod(prop, isGenerator, isAsync, false, false, "ObjectMethod"); - } - } - parseObjectProperty(prop, startLoc, isPattern, refExpressionErrors) { - prop.shorthand = false; - if (this.eat(14)) { - prop.value = isPattern ? this.parseMaybeDefault(this.state.startLoc) : this.parseMaybeAssignAllowInOrVoidPattern(8, refExpressionErrors); - return this.finishObjectProperty(prop); - } - if (!prop.computed && prop.key.type === "Identifier") { - this.checkReservedWord(prop.key.name, prop.key.loc.start, true, false); - if (isPattern) { - prop.value = this.parseMaybeDefault(startLoc, this.cloneIdentifier(prop.key)); - } else if (this.match(29)) { - const shorthandAssignLoc = this.state.startLoc; - if (refExpressionErrors != null) { - if (refExpressionErrors.shorthandAssignLoc === null) { - refExpressionErrors.shorthandAssignLoc = shorthandAssignLoc; - } - } else { - this.raise(Errors.InvalidCoverInitializedName, shorthandAssignLoc); - } - prop.value = this.parseMaybeDefault(startLoc, this.cloneIdentifier(prop.key)); - } else { - prop.value = this.cloneIdentifier(prop.key); - } - prop.shorthand = true; - return this.finishObjectProperty(prop); - } - } - finishObjectProperty(node) { - return this.finishNode(node, "ObjectProperty"); - } - parseObjPropValue(prop, startLoc, isGenerator, isAsync, isPattern, isAccessor, refExpressionErrors) { - const node = this.parseObjectMethod(prop, isGenerator, isAsync, isPattern, isAccessor) || this.parseObjectProperty(prop, startLoc, isPattern, refExpressionErrors); - if (!node) this.unexpected(); - return node; - } - parsePropertyName(prop, refExpressionErrors) { - if (this.eat(0)) { - prop.computed = true; - prop.key = this.parseMaybeAssignAllowIn(); - this.expect(3); - } else { - const { - type, - value - } = this.state; - let key; - if (tokenIsKeywordOrIdentifier(type)) { - key = this.parseIdentifier(true); - } else { - switch (type) { - case 135: - key = this.parseNumericLiteral(value); - break; - case 134: - key = this.parseStringLiteral(value); - break; - case 136: - key = this.parseBigIntLiteral(value); - break; - case 139: - { - const privateKeyLoc = this.state.startLoc; - if (refExpressionErrors != null) { - if (refExpressionErrors.privateKeyLoc === null) { - refExpressionErrors.privateKeyLoc = privateKeyLoc; - } - } else { - this.raise(Errors.UnexpectedPrivateField, privateKeyLoc); - } - key = this.parsePrivateName(); - break; - } - default: - if (type === 137) { - key = this.parseDecimalLiteral(value); - break; - } - this.unexpected(); - } - } - prop.key = key; - if (type !== 139) { - prop.computed = false; - } - } - } - initFunction(node, isAsync) { - node.id = null; - node.generator = false; - node.async = isAsync; - } - parseMethod(node, isGenerator, isAsync, isConstructor, allowDirectSuper, type, inClassScope = false) { - this.initFunction(node, isAsync); - node.generator = isGenerator; - this.scope.enter(514 | 16 | (inClassScope ? 576 : 0) | (allowDirectSuper ? 32 : 0)); - this.prodParam.enter(functionFlags(isAsync, node.generator)); - this.parseFunctionParams(node, isConstructor); - const finishedNode = this.parseFunctionBodyAndFinish(node, type, true); - this.prodParam.exit(); - this.scope.exit(); - return finishedNode; - } - parseArrayLike(close, isTuple, refExpressionErrors) { - if (isTuple) { - this.expectPlugin("recordAndTuple"); - } - const oldInFSharpPipelineDirectBody = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = false; - const node = this.startNode(); - this.next(); - node.elements = this.parseExprList(close, !isTuple, refExpressionErrors, node); - this.state.inFSharpPipelineDirectBody = oldInFSharpPipelineDirectBody; - return this.finishNode(node, isTuple ? "TupleExpression" : "ArrayExpression"); - } - parseArrowExpression(node, params, isAsync, trailingCommaLoc) { - this.scope.enter(514 | 4); - let flags = functionFlags(isAsync, false); - if (!this.match(5) && this.prodParam.hasIn) { - flags |= 8; - } - this.prodParam.enter(flags); - this.initFunction(node, isAsync); - const oldMaybeInArrowParameters = this.state.maybeInArrowParameters; - if (params) { - this.state.maybeInArrowParameters = true; - this.setArrowFunctionParameters(node, params, trailingCommaLoc); - } - this.state.maybeInArrowParameters = false; - this.parseFunctionBody(node, true); - this.prodParam.exit(); - this.scope.exit(); - this.state.maybeInArrowParameters = oldMaybeInArrowParameters; - return this.finishNode(node, "ArrowFunctionExpression"); - } - setArrowFunctionParameters(node, params, trailingCommaLoc) { - this.toAssignableList(params, trailingCommaLoc, false); - node.params = params; - } - parseFunctionBodyAndFinish(node, type, isMethod = false) { - this.parseFunctionBody(node, false, isMethod); - return this.finishNode(node, type); - } - parseFunctionBody(node, allowExpression, isMethod = false) { - const isExpression = allowExpression && !this.match(5); - this.expressionScope.enter(newExpressionScope()); - if (isExpression) { - node.body = this.parseMaybeAssign(); - this.checkParams(node, false, allowExpression, false); - } else { - const oldStrict = this.state.strict; - const oldLabels = this.state.labels; - this.state.labels = []; - this.prodParam.enter(this.prodParam.currentFlags() | 4); - node.body = this.parseBlock(true, false, hasStrictModeDirective => { - const nonSimple = !this.isSimpleParamList(node.params); - if (hasStrictModeDirective && nonSimple) { - this.raise(Errors.IllegalLanguageModeDirective, (node.kind === "method" || node.kind === "constructor") && !!node.key ? node.key.loc.end : node); - } - const strictModeChanged = !oldStrict && this.state.strict; - this.checkParams(node, !this.state.strict && !allowExpression && !isMethod && !nonSimple, allowExpression, strictModeChanged); - if (this.state.strict && node.id) { - this.checkIdentifier(node.id, 65, strictModeChanged); - } - }); - this.prodParam.exit(); - this.state.labels = oldLabels; - } - this.expressionScope.exit(); - } - isSimpleParameter(node) { - return node.type === "Identifier"; - } - isSimpleParamList(params) { - for (let i = 0, len = params.length; i < len; i++) { - if (!this.isSimpleParameter(params[i])) return false; - } - return true; - } - checkParams(node, allowDuplicates, isArrowFunction, strictModeChanged = true) { - const checkClashes = !allowDuplicates && new Set(); - const formalParameters = { - type: "FormalParameters" - }; - for (const param of node.params) { - this.checkLVal(param, formalParameters, 5, checkClashes, strictModeChanged); - } - } - parseExprList(close, allowEmpty, refExpressionErrors, nodeForExtra) { - const elts = []; - let first = true; - while (!this.eat(close)) { - if (first) { - first = false; - } else { - this.expect(12); - if (this.match(close)) { - if (nodeForExtra) { - this.addTrailingCommaExtraToNode(nodeForExtra); - } - this.next(); - break; - } - } - elts.push(this.parseExprListItem(close, allowEmpty, refExpressionErrors)); - } - return elts; - } - parseExprListItem(close, allowEmpty, refExpressionErrors, allowPlaceholder) { - let elt; - if (this.match(12)) { - if (!allowEmpty) { - this.raise(Errors.UnexpectedToken, this.state.curPosition(), { - unexpected: "," - }); - } - elt = null; - } else if (this.match(21)) { - const spreadNodeStartLoc = this.state.startLoc; - elt = this.parseParenItem(this.parseSpread(refExpressionErrors), spreadNodeStartLoc); - } else if (this.match(17)) { - this.expectPlugin("partialApplication"); - if (!allowPlaceholder) { - this.raise(Errors.UnexpectedArgumentPlaceholder, this.state.startLoc); - } - const node = this.startNode(); - this.next(); - elt = this.finishNode(node, "ArgumentPlaceholder"); - } else { - elt = this.parseMaybeAssignAllowInOrVoidPattern(close, refExpressionErrors, this.parseParenItem); - } - return elt; - } - parseIdentifier(liberal) { - const node = this.startNode(); - const name = this.parseIdentifierName(liberal); - return this.createIdentifier(node, name); - } - createIdentifier(node, name) { - node.name = name; - node.loc.identifierName = name; - return this.finishNode(node, "Identifier"); - } - createIdentifierAt(node, name, endLoc) { - node.name = name; - node.loc.identifierName = name; - return this.finishNodeAt(node, "Identifier", endLoc); - } - parseIdentifierName(liberal) { - let name; - const { - startLoc, - type - } = this.state; - if (tokenIsKeywordOrIdentifier(type)) { - name = this.state.value; - } else { - this.unexpected(); - } - const tokenIsKeyword = tokenKeywordOrIdentifierIsKeyword(type); - if (liberal) { - if (tokenIsKeyword) { - this.replaceToken(132); - } - } else { - this.checkReservedWord(name, startLoc, tokenIsKeyword, false); - } - this.next(); - return name; - } - checkReservedWord(word, startLoc, checkKeywords, isBinding) { - if (word.length > 10) { - return; - } - if (!canBeReservedWord(word)) { - return; - } - if (checkKeywords && isKeyword(word)) { - this.raise(Errors.UnexpectedKeyword, startLoc, { - keyword: word - }); - return; - } - const reservedTest = !this.state.strict ? isReservedWord : isBinding ? isStrictBindReservedWord : isStrictReservedWord; - if (reservedTest(word, this.inModule)) { - this.raise(Errors.UnexpectedReservedWord, startLoc, { - reservedWord: word - }); - return; - } else if (word === "yield") { - if (this.prodParam.hasYield) { - this.raise(Errors.YieldBindingIdentifier, startLoc); - return; - } - } else if (word === "await") { - if (this.prodParam.hasAwait) { - this.raise(Errors.AwaitBindingIdentifier, startLoc); - return; - } - if (this.scope.inStaticBlock) { - this.raise(Errors.AwaitBindingIdentifierInStaticBlock, startLoc); - return; - } - this.expressionScope.recordAsyncArrowParametersError(startLoc); - } else if (word === "arguments") { - if (this.scope.inClassAndNotInNonArrowFunction) { - this.raise(Errors.ArgumentsInClass, startLoc); - return; - } - } - } - recordAwaitIfAllowed() { - const isAwaitAllowed = this.prodParam.hasAwait; - if (isAwaitAllowed && !this.scope.inFunction) { - this.state.hasTopLevelAwait = true; - } - return isAwaitAllowed; - } - parseAwait(startLoc) { - const node = this.startNodeAt(startLoc); - this.expressionScope.recordParameterInitializerError(Errors.AwaitExpressionFormalParameter, node); - if (this.eat(55)) { - this.raise(Errors.ObsoleteAwaitStar, node); - } - if (!this.scope.inFunction && !(this.optionFlags & 1)) { - if (this.isAmbiguousPrefixOrIdentifier()) { - this.ambiguousScriptDifferentAst = true; - } else { - this.sawUnambiguousESM = true; - } - } - if (!this.state.soloAwait) { - node.argument = this.parseMaybeUnary(null, true); - } - return this.finishNode(node, "AwaitExpression"); - } - isAmbiguousPrefixOrIdentifier() { - if (this.hasPrecedingLineBreak()) return true; - const { - type - } = this.state; - return type === 53 || type === 10 || type === 0 || tokenIsTemplate(type) || type === 102 && !this.state.containsEsc || type === 138 || type === 56 || this.hasPlugin("v8intrinsic") && type === 54; - } - parseYield(startLoc) { - const node = this.startNodeAt(startLoc); - this.expressionScope.recordParameterInitializerError(Errors.YieldInParameter, node); - let delegating = false; - let argument = null; - if (!this.hasPrecedingLineBreak()) { - delegating = this.eat(55); - switch (this.state.type) { - case 13: - case 140: - case 8: - case 11: - case 3: - case 9: - case 14: - case 12: - if (!delegating) break; - default: - argument = this.parseMaybeAssign(); - } - } - node.delegate = delegating; - node.argument = argument; - return this.finishNode(node, "YieldExpression"); - } - parseImportCall(node) { - this.next(); - node.source = this.parseMaybeAssignAllowIn(); - node.options = null; - if (this.eat(12)) { - if (!this.match(11)) { - node.options = this.parseMaybeAssignAllowIn(); - if (this.eat(12)) { - this.addTrailingCommaExtraToNode(node.options); - if (!this.match(11)) { - do { - this.parseMaybeAssignAllowIn(); - } while (this.eat(12) && !this.match(11)); - this.raise(Errors.ImportCallArity, node); - } - } - } else { - this.addTrailingCommaExtraToNode(node.source); - } - } - this.expect(11); - return this.finishNode(node, "ImportExpression"); - } - checkPipelineAtInfixOperator(left, leftStartLoc) { - if (this.hasPlugin(["pipelineOperator", { - proposal: "smart" - }])) { - if (left.type === "SequenceExpression") { - this.raise(Errors.PipelineHeadSequenceExpression, leftStartLoc); - } - } - } - parseSmartPipelineBodyInStyle(childExpr, startLoc) { - if (this.isSimpleReference(childExpr)) { - const bodyNode = this.startNodeAt(startLoc); - bodyNode.callee = childExpr; - return this.finishNode(bodyNode, "PipelineBareFunction"); - } else { - const bodyNode = this.startNodeAt(startLoc); - this.checkSmartPipeTopicBodyEarlyErrors(startLoc); - bodyNode.expression = childExpr; - return this.finishNode(bodyNode, "PipelineTopicExpression"); - } - } - isSimpleReference(expression) { - switch (expression.type) { - case "MemberExpression": - return !expression.computed && this.isSimpleReference(expression.object); - case "Identifier": - return true; - default: - return false; - } - } - checkSmartPipeTopicBodyEarlyErrors(startLoc) { - if (this.match(19)) { - throw this.raise(Errors.PipelineBodyNoArrow, this.state.startLoc); - } - if (!this.topicReferenceWasUsedInCurrentContext()) { - this.raise(Errors.PipelineTopicUnused, startLoc); - } - } - withTopicBindingContext(callback) { - const outerContextTopicState = this.state.topicContext; - this.state.topicContext = { - maxNumOfResolvableTopics: 1, - maxTopicIndex: null - }; - try { - return callback(); - } finally { - this.state.topicContext = outerContextTopicState; - } - } - withSmartMixTopicForbiddingContext(callback) { - if (this.hasPlugin(["pipelineOperator", { - proposal: "smart" - }])) { - const outerContextTopicState = this.state.topicContext; - this.state.topicContext = { - maxNumOfResolvableTopics: 0, - maxTopicIndex: null - }; - try { - return callback(); - } finally { - this.state.topicContext = outerContextTopicState; - } - } else { - return callback(); - } - } - withSoloAwaitPermittingContext(callback) { - const outerContextSoloAwaitState = this.state.soloAwait; - this.state.soloAwait = true; - try { - return callback(); - } finally { - this.state.soloAwait = outerContextSoloAwaitState; - } - } - allowInAnd(callback) { - const flags = this.prodParam.currentFlags(); - const prodParamToSet = 8 & ~flags; - if (prodParamToSet) { - this.prodParam.enter(flags | 8); - try { - return callback(); - } finally { - this.prodParam.exit(); - } - } - return callback(); - } - disallowInAnd(callback) { - const flags = this.prodParam.currentFlags(); - const prodParamToClear = 8 & flags; - if (prodParamToClear) { - this.prodParam.enter(flags & ~8); - try { - return callback(); - } finally { - this.prodParam.exit(); - } - } - return callback(); - } - registerTopicReference() { - this.state.topicContext.maxTopicIndex = 0; - } - topicReferenceIsAllowedInCurrentContext() { - return this.state.topicContext.maxNumOfResolvableTopics >= 1; - } - topicReferenceWasUsedInCurrentContext() { - return this.state.topicContext.maxTopicIndex != null && this.state.topicContext.maxTopicIndex >= 0; - } - parseFSharpPipelineBody(prec) { - const startLoc = this.state.startLoc; - this.state.potentialArrowAt = this.state.start; - const oldInFSharpPipelineDirectBody = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = true; - const ret = this.parseExprOp(this.parseMaybeUnaryOrPrivate(), startLoc, prec); - this.state.inFSharpPipelineDirectBody = oldInFSharpPipelineDirectBody; - return ret; - } - parseModuleExpression() { - this.expectPlugin("moduleBlocks"); - const node = this.startNode(); - this.next(); - if (!this.match(5)) { - this.unexpected(null, 5); - } - const program = this.startNodeAt(this.state.endLoc); - this.next(); - const revertScopes = this.initializeScopes(true); - this.enterInitialScopes(); - try { - node.body = this.parseProgram(program, 8, "module"); - } finally { - revertScopes(); - } - return this.finishNode(node, "ModuleExpression"); - } - parseVoidPattern(refExpressionErrors) { - this.expectPlugin("discardBinding"); - const node = this.startNode(); - if (refExpressionErrors != null) { - refExpressionErrors.voidPatternLoc = this.state.startLoc; - } - this.next(); - return this.finishNode(node, "VoidPattern"); - } - parseMaybeAssignAllowInOrVoidPattern(close, refExpressionErrors, afterLeftParse) { - if (refExpressionErrors != null && this.match(88)) { - const nextCode = this.lookaheadCharCode(); - if (nextCode === 44 || nextCode === (close === 3 ? 93 : close === 8 ? 125 : 41) || nextCode === 61) { - return this.parseMaybeDefault(this.state.startLoc, this.parseVoidPattern(refExpressionErrors)); - } - } - return this.parseMaybeAssignAllowIn(refExpressionErrors, afterLeftParse); - } - parsePropertyNamePrefixOperator(prop) {} -} -const loopLabel = { - kind: 1 - }, - switchLabel = { - kind: 2 - }; -const loneSurrogate = /[\uD800-\uDFFF]/u; -const keywordRelationalOperator = /in(?:stanceof)?/y; -function babel7CompatTokens(tokens, input, startIndex) { - for (let i = 0; i < tokens.length; i++) { - const token = tokens[i]; - const { - type - } = token; - if (typeof type === "number") { - if (type === 139) { - const { - loc, - start, - value, - end - } = token; - const hashEndPos = start + 1; - const hashEndLoc = createPositionWithColumnOffset(loc.start, 1); - tokens.splice(i, 1, new Token({ - type: getExportedToken(27), - value: "#", - start: start, - end: hashEndPos, - startLoc: loc.start, - endLoc: hashEndLoc - }), new Token({ - type: getExportedToken(132), - value: value, - start: hashEndPos, - end: end, - startLoc: hashEndLoc, - endLoc: loc.end - })); - i++; - continue; - } - if (tokenIsTemplate(type)) { - const { - loc, - start, - value, - end - } = token; - const backquoteEnd = start + 1; - const backquoteEndLoc = createPositionWithColumnOffset(loc.start, 1); - let startToken; - if (input.charCodeAt(start - startIndex) === 96) { - startToken = new Token({ - type: getExportedToken(22), - value: "`", - start: start, - end: backquoteEnd, - startLoc: loc.start, - endLoc: backquoteEndLoc - }); - } else { - startToken = new Token({ - type: getExportedToken(8), - value: "}", - start: start, - end: backquoteEnd, - startLoc: loc.start, - endLoc: backquoteEndLoc - }); - } - let templateValue, templateElementEnd, templateElementEndLoc, endToken; - if (type === 24) { - templateElementEnd = end - 1; - templateElementEndLoc = createPositionWithColumnOffset(loc.end, -1); - templateValue = value === null ? null : value.slice(1, -1); - endToken = new Token({ - type: getExportedToken(22), - value: "`", - start: templateElementEnd, - end: end, - startLoc: templateElementEndLoc, - endLoc: loc.end - }); - } else { - templateElementEnd = end - 2; - templateElementEndLoc = createPositionWithColumnOffset(loc.end, -2); - templateValue = value === null ? null : value.slice(1, -2); - endToken = new Token({ - type: getExportedToken(23), - value: "${", - start: templateElementEnd, - end: end, - startLoc: templateElementEndLoc, - endLoc: loc.end - }); - } - tokens.splice(i, 1, startToken, new Token({ - type: getExportedToken(20), - value: templateValue, - start: backquoteEnd, - end: templateElementEnd, - startLoc: backquoteEndLoc, - endLoc: templateElementEndLoc - }), endToken); - i += 2; - continue; - } - token.type = getExportedToken(type); - } - } - return tokens; -} -class StatementParser extends ExpressionParser { - parseTopLevel(file, program) { - file.program = this.parseProgram(program, 140, this.options.sourceType === "module" ? "module" : "script"); - file.comments = this.comments; - if (this.optionFlags & 256) { - file.tokens = babel7CompatTokens(this.tokens, this.input, this.startIndex); - } - return this.finishNode(file, "File"); - } - parseProgram(program, end, sourceType) { - program.sourceType = sourceType; - program.interpreter = this.parseInterpreterDirective(); - this.parseBlockBody(program, true, true, end); - if (this.inModule) { - if (!(this.optionFlags & 64) && this.scope.undefinedExports.size > 0) { - for (const [localName, at] of Array.from(this.scope.undefinedExports)) { - this.raise(Errors.ModuleExportUndefined, at, { - localName - }); - } - } - this.addExtra(program, "topLevelAwait", this.state.hasTopLevelAwait); - } - let finishedProgram; - if (end === 140) { - finishedProgram = this.finishNode(program, "Program"); - } else { - finishedProgram = this.finishNodeAt(program, "Program", createPositionWithColumnOffset(this.state.startLoc, -1)); - } - return finishedProgram; - } - stmtToDirective(stmt) { - const directive = this.castNodeTo(stmt, "Directive"); - const directiveLiteral = this.castNodeTo(stmt.expression, "DirectiveLiteral"); - const expressionValue = directiveLiteral.value; - const raw = this.input.slice(this.offsetToSourcePos(directiveLiteral.start), this.offsetToSourcePos(directiveLiteral.end)); - const val = directiveLiteral.value = raw.slice(1, -1); - this.addExtra(directiveLiteral, "raw", raw); - this.addExtra(directiveLiteral, "rawValue", val); - this.addExtra(directiveLiteral, "expressionValue", expressionValue); - directive.value = directiveLiteral; - delete stmt.expression; - return directive; - } - parseInterpreterDirective() { - if (!this.match(28)) { - return null; - } - const node = this.startNode(); - node.value = this.state.value; - this.next(); - return this.finishNode(node, "InterpreterDirective"); - } - isLet() { - if (!this.isContextual(100)) { - return false; - } - return this.hasFollowingBindingAtom(); - } - isUsing() { - if (!this.isContextual(107)) { - return false; - } - return this.nextTokenIsIdentifierOnSameLine(); - } - isForUsing() { - if (!this.isContextual(107)) { - return false; - } - const next = this.nextTokenInLineStart(); - const nextCh = this.codePointAtPos(next); - if (this.isUnparsedContextual(next, "of")) { - const nextCharAfterOf = this.lookaheadCharCodeSince(next + 2); - if (nextCharAfterOf !== 61 && nextCharAfterOf !== 58 && nextCharAfterOf !== 59) { - return false; - } - } - if (this.chStartsBindingIdentifier(nextCh, next) || this.isUnparsedContextual(next, "void")) { - return true; - } - return false; - } - nextTokenIsIdentifierOnSameLine() { - const next = this.nextTokenInLineStart(); - const nextCh = this.codePointAtPos(next); - return this.chStartsBindingIdentifier(nextCh, next); - } - isAwaitUsing() { - if (!this.isContextual(96)) { - return false; - } - let next = this.nextTokenInLineStart(); - if (this.isUnparsedContextual(next, "using")) { - next = this.nextTokenInLineStartSince(next + 5); - const nextCh = this.codePointAtPos(next); - if (this.chStartsBindingIdentifier(nextCh, next)) { - return true; - } - } - return false; - } - chStartsBindingIdentifier(ch, pos) { - if (isIdentifierStart(ch)) { - keywordRelationalOperator.lastIndex = pos; - if (keywordRelationalOperator.test(this.input)) { - const endCh = this.codePointAtPos(keywordRelationalOperator.lastIndex); - if (!isIdentifierChar(endCh) && endCh !== 92) { - return false; - } - } - return true; - } else if (ch === 92) { - return true; - } else { - return false; - } - } - chStartsBindingPattern(ch) { - return ch === 91 || ch === 123; - } - hasFollowingBindingAtom() { - const next = this.nextTokenStart(); - const nextCh = this.codePointAtPos(next); - return this.chStartsBindingPattern(nextCh) || this.chStartsBindingIdentifier(nextCh, next); - } - hasInLineFollowingBindingIdentifierOrBrace() { - const next = this.nextTokenInLineStart(); - const nextCh = this.codePointAtPos(next); - return nextCh === 123 || this.chStartsBindingIdentifier(nextCh, next); - } - allowsUsing() { - return (this.scope.inModule || !this.scope.inTopLevel) && !this.scope.inBareCaseStatement; - } - parseModuleItem() { - return this.parseStatementLike(1 | 2 | 4 | 8); - } - parseStatementListItem() { - return this.parseStatementLike(2 | 4 | (!this.options.annexB || this.state.strict ? 0 : 8)); - } - parseStatementOrSloppyAnnexBFunctionDeclaration(allowLabeledFunction = false) { - let flags = 0; - if (this.options.annexB && !this.state.strict) { - flags |= 4; - if (allowLabeledFunction) { - flags |= 8; - } - } - return this.parseStatementLike(flags); - } - parseStatement() { - return this.parseStatementLike(0); - } - parseStatementLike(flags) { - let decorators = null; - if (this.match(26)) { - decorators = this.parseDecorators(true); - } - return this.parseStatementContent(flags, decorators); - } - parseStatementContent(flags, decorators) { - const startType = this.state.type; - const node = this.startNode(); - const allowDeclaration = !!(flags & 2); - const allowFunctionDeclaration = !!(flags & 4); - const topLevel = flags & 1; - switch (startType) { - case 60: - return this.parseBreakContinueStatement(node, true); - case 63: - return this.parseBreakContinueStatement(node, false); - case 64: - return this.parseDebuggerStatement(node); - case 90: - return this.parseDoWhileStatement(node); - case 91: - return this.parseForStatement(node); - case 68: - if (this.lookaheadCharCode() === 46) break; - if (!allowFunctionDeclaration) { - this.raise(this.state.strict ? Errors.StrictFunction : this.options.annexB ? Errors.SloppyFunctionAnnexB : Errors.SloppyFunction, this.state.startLoc); - } - return this.parseFunctionStatement(node, false, !allowDeclaration && allowFunctionDeclaration); - case 80: - if (!allowDeclaration) this.unexpected(); - return this.parseClass(this.maybeTakeDecorators(decorators, node), true); - case 69: - return this.parseIfStatement(node); - case 70: - return this.parseReturnStatement(node); - case 71: - return this.parseSwitchStatement(node); - case 72: - return this.parseThrowStatement(node); - case 73: - return this.parseTryStatement(node); - case 96: - if (this.isAwaitUsing()) { - if (!this.allowsUsing()) { - this.raise(Errors.UnexpectedUsingDeclaration, node); - } else if (!allowDeclaration) { - this.raise(Errors.UnexpectedLexicalDeclaration, node); - } else if (!this.recordAwaitIfAllowed()) { - this.raise(Errors.AwaitUsingNotInAsyncContext, node); - } - this.next(); - return this.parseVarStatement(node, "await using"); - } - break; - case 107: - if (this.state.containsEsc || !this.hasInLineFollowingBindingIdentifierOrBrace()) { - break; - } - if (!this.allowsUsing()) { - this.raise(Errors.UnexpectedUsingDeclaration, this.state.startLoc); - } else if (!allowDeclaration) { - this.raise(Errors.UnexpectedLexicalDeclaration, this.state.startLoc); - } - return this.parseVarStatement(node, "using"); - case 100: - { - if (this.state.containsEsc) { - break; - } - const next = this.nextTokenStart(); - const nextCh = this.codePointAtPos(next); - if (nextCh !== 91) { - if (!allowDeclaration && this.hasFollowingLineBreak()) break; - if (!this.chStartsBindingIdentifier(nextCh, next) && nextCh !== 123) { - break; - } - } - } - case 75: - { - if (!allowDeclaration) { - this.raise(Errors.UnexpectedLexicalDeclaration, this.state.startLoc); - } - } - case 74: - { - const kind = this.state.value; - return this.parseVarStatement(node, kind); - } - case 92: - return this.parseWhileStatement(node); - case 76: - return this.parseWithStatement(node); - case 5: - return this.parseBlock(); - case 13: - return this.parseEmptyStatement(node); - case 83: - { - const nextTokenCharCode = this.lookaheadCharCode(); - if (nextTokenCharCode === 40 || nextTokenCharCode === 46) { - break; - } - } - case 82: - { - if (!(this.optionFlags & 8) && !topLevel) { - this.raise(Errors.UnexpectedImportExport, this.state.startLoc); - } - this.next(); - let result; - if (startType === 83) { - result = this.parseImport(node); - } else { - result = this.parseExport(node, decorators); - } - this.assertModuleNodeAllowed(result); - return result; - } - default: - { - if (this.isAsyncFunction()) { - if (!allowDeclaration) { - this.raise(Errors.AsyncFunctionInSingleStatementContext, this.state.startLoc); - } - this.next(); - return this.parseFunctionStatement(node, true, !allowDeclaration && allowFunctionDeclaration); - } - } - } - const maybeName = this.state.value; - const expr = this.parseExpression(); - if (tokenIsIdentifier(startType) && expr.type === "Identifier" && this.eat(14)) { - return this.parseLabeledStatement(node, maybeName, expr, flags); - } else { - return this.parseExpressionStatement(node, expr, decorators); - } - } - assertModuleNodeAllowed(node) { - if (!(this.optionFlags & 8) && !this.inModule) { - this.raise(Errors.ImportOutsideModule, node); - } - } - decoratorsEnabledBeforeExport() { - if (this.hasPlugin("decorators-legacy")) return true; - return this.hasPlugin("decorators") && this.getPluginOption("decorators", "decoratorsBeforeExport") !== false; - } - maybeTakeDecorators(maybeDecorators, classNode, exportNode) { - if (maybeDecorators) { - var _classNode$decorators; - if ((_classNode$decorators = classNode.decorators) != null && _classNode$decorators.length) { - if (typeof this.getPluginOption("decorators", "decoratorsBeforeExport") !== "boolean") { - this.raise(Errors.DecoratorsBeforeAfterExport, classNode.decorators[0]); - } - classNode.decorators.unshift(...maybeDecorators); - } else { - classNode.decorators = maybeDecorators; - } - this.resetStartLocationFromNode(classNode, maybeDecorators[0]); - if (exportNode) this.resetStartLocationFromNode(exportNode, classNode); - } - return classNode; - } - canHaveLeadingDecorator() { - return this.match(80); - } - parseDecorators(allowExport) { - const decorators = []; - do { - decorators.push(this.parseDecorator()); - } while (this.match(26)); - if (this.match(82)) { - if (!allowExport) { - this.unexpected(); - } - if (!this.decoratorsEnabledBeforeExport()) { - this.raise(Errors.DecoratorExportClass, this.state.startLoc); - } - } else if (!this.canHaveLeadingDecorator()) { - throw this.raise(Errors.UnexpectedLeadingDecorator, this.state.startLoc); - } - return decorators; - } - parseDecorator() { - this.expectOnePlugin(["decorators", "decorators-legacy"]); - const node = this.startNode(); - this.next(); - if (this.hasPlugin("decorators")) { - const startLoc = this.state.startLoc; - let expr; - if (this.match(10)) { - const startLoc = this.state.startLoc; - this.next(); - expr = this.parseExpression(); - this.expect(11); - expr = this.wrapParenthesis(startLoc, expr); - const paramsStartLoc = this.state.startLoc; - node.expression = this.parseMaybeDecoratorArguments(expr, startLoc); - if (this.getPluginOption("decorators", "allowCallParenthesized") === false && node.expression !== expr) { - this.raise(Errors.DecoratorArgumentsOutsideParentheses, paramsStartLoc); - } - } else { - expr = this.parseIdentifier(false); - while (this.eat(16)) { - const node = this.startNodeAt(startLoc); - node.object = expr; - if (this.match(139)) { - this.classScope.usePrivateName(this.state.value, this.state.startLoc); - node.property = this.parsePrivateName(); - } else { - node.property = this.parseIdentifier(true); - } - node.computed = false; - expr = this.finishNode(node, "MemberExpression"); - } - node.expression = this.parseMaybeDecoratorArguments(expr, startLoc); - } - } else { - node.expression = this.parseExprSubscripts(); - } - return this.finishNode(node, "Decorator"); - } - parseMaybeDecoratorArguments(expr, startLoc) { - if (this.eat(10)) { - const node = this.startNodeAt(startLoc); - node.callee = expr; - node.arguments = this.parseCallExpressionArguments(); - this.toReferencedList(node.arguments); - return this.finishNode(node, "CallExpression"); - } - return expr; - } - parseBreakContinueStatement(node, isBreak) { - this.next(); - if (this.isLineTerminator()) { - node.label = null; - } else { - node.label = this.parseIdentifier(); - this.semicolon(); - } - this.verifyBreakContinue(node, isBreak); - return this.finishNode(node, isBreak ? "BreakStatement" : "ContinueStatement"); - } - verifyBreakContinue(node, isBreak) { - let i; - for (i = 0; i < this.state.labels.length; ++i) { - const lab = this.state.labels[i]; - if (node.label == null || lab.name === node.label.name) { - if (lab.kind != null && (isBreak || lab.kind === 1)) { - break; - } - if (node.label && isBreak) break; - } - } - if (i === this.state.labels.length) { - const type = isBreak ? "BreakStatement" : "ContinueStatement"; - this.raise(Errors.IllegalBreakContinue, node, { - type - }); - } - } - parseDebuggerStatement(node) { - this.next(); - this.semicolon(); - return this.finishNode(node, "DebuggerStatement"); - } - parseHeaderExpression() { - this.expect(10); - const val = this.parseExpression(); - this.expect(11); - return val; - } - parseDoWhileStatement(node) { - this.next(); - this.state.labels.push(loopLabel); - node.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement()); - this.state.labels.pop(); - this.expect(92); - node.test = this.parseHeaderExpression(); - this.eat(13); - return this.finishNode(node, "DoWhileStatement"); - } - parseForStatement(node) { - this.next(); - this.state.labels.push(loopLabel); - let awaitAt = null; - if (this.isContextual(96) && this.recordAwaitIfAllowed()) { - awaitAt = this.state.startLoc; - this.next(); - } - this.scope.enter(0); - this.expect(10); - if (this.match(13)) { - if (awaitAt !== null) { - this.unexpected(awaitAt); - } - return this.parseFor(node, null); - } - const startsWithLet = this.isContextual(100); - { - const startsWithAwaitUsing = this.isAwaitUsing(); - const starsWithUsingDeclaration = startsWithAwaitUsing || this.isForUsing(); - const isLetOrUsing = startsWithLet && this.hasFollowingBindingAtom() || starsWithUsingDeclaration; - if (this.match(74) || this.match(75) || isLetOrUsing) { - const initNode = this.startNode(); - let kind; - if (startsWithAwaitUsing) { - kind = "await using"; - if (!this.recordAwaitIfAllowed()) { - this.raise(Errors.AwaitUsingNotInAsyncContext, this.state.startLoc); - } - this.next(); - } else { - kind = this.state.value; - } - this.next(); - this.parseVar(initNode, true, kind); - const init = this.finishNode(initNode, "VariableDeclaration"); - const isForIn = this.match(58); - if (isForIn && starsWithUsingDeclaration) { - this.raise(Errors.ForInUsing, init); - } - if ((isForIn || this.isContextual(102)) && init.declarations.length === 1) { - return this.parseForIn(node, init, awaitAt); - } - if (awaitAt !== null) { - this.unexpected(awaitAt); - } - return this.parseFor(node, init); - } - } - const startsWithAsync = this.isContextual(95); - const refExpressionErrors = new ExpressionErrors(); - const init = this.parseExpression(true, refExpressionErrors); - const isForOf = this.isContextual(102); - if (isForOf) { - if (startsWithLet) { - this.raise(Errors.ForOfLet, init); - } - if (awaitAt === null && startsWithAsync && init.type === "Identifier") { - this.raise(Errors.ForOfAsync, init); - } - } - if (isForOf || this.match(58)) { - this.checkDestructuringPrivate(refExpressionErrors); - this.toAssignable(init, true); - const type = isForOf ? "ForOfStatement" : "ForInStatement"; - this.checkLVal(init, { - type - }); - return this.parseForIn(node, init, awaitAt); - } else { - this.checkExpressionErrors(refExpressionErrors, true); - } - if (awaitAt !== null) { - this.unexpected(awaitAt); - } - return this.parseFor(node, init); - } - parseFunctionStatement(node, isAsync, isHangingDeclaration) { - this.next(); - return this.parseFunction(node, 1 | (isHangingDeclaration ? 2 : 0) | (isAsync ? 8 : 0)); - } - parseIfStatement(node) { - this.next(); - node.test = this.parseHeaderExpression(); - node.consequent = this.parseStatementOrSloppyAnnexBFunctionDeclaration(); - node.alternate = this.eat(66) ? this.parseStatementOrSloppyAnnexBFunctionDeclaration() : null; - return this.finishNode(node, "IfStatement"); - } - parseReturnStatement(node) { - if (!this.prodParam.hasReturn) { - this.raise(Errors.IllegalReturn, this.state.startLoc); - } - this.next(); - if (this.isLineTerminator()) { - node.argument = null; - } else { - node.argument = this.parseExpression(); - this.semicolon(); - } - return this.finishNode(node, "ReturnStatement"); - } - parseSwitchStatement(node) { - this.next(); - node.discriminant = this.parseHeaderExpression(); - const cases = node.cases = []; - this.expect(5); - this.state.labels.push(switchLabel); - this.scope.enter(256); - let cur; - for (let sawDefault; !this.match(8);) { - if (this.match(61) || this.match(65)) { - const isCase = this.match(61); - if (cur) this.finishNode(cur, "SwitchCase"); - cases.push(cur = this.startNode()); - cur.consequent = []; - this.next(); - if (isCase) { - cur.test = this.parseExpression(); - } else { - if (sawDefault) { - this.raise(Errors.MultipleDefaultsInSwitch, this.state.lastTokStartLoc); - } - sawDefault = true; - cur.test = null; - } - this.expect(14); - } else { - if (cur) { - cur.consequent.push(this.parseStatementListItem()); - } else { - this.unexpected(); - } - } - } - this.scope.exit(); - if (cur) this.finishNode(cur, "SwitchCase"); - this.next(); - this.state.labels.pop(); - return this.finishNode(node, "SwitchStatement"); - } - parseThrowStatement(node) { - this.next(); - if (this.hasPrecedingLineBreak()) { - this.raise(Errors.NewlineAfterThrow, this.state.lastTokEndLoc); - } - node.argument = this.parseExpression(); - this.semicolon(); - return this.finishNode(node, "ThrowStatement"); - } - parseCatchClauseParam() { - const param = this.parseBindingAtom(); - this.scope.enter(this.options.annexB && param.type === "Identifier" ? 8 : 0); - this.checkLVal(param, { - type: "CatchClause" - }, 9); - return param; - } - parseTryStatement(node) { - this.next(); - node.block = this.parseBlock(); - node.handler = null; - if (this.match(62)) { - const clause = this.startNode(); - this.next(); - if (this.match(10)) { - this.expect(10); - clause.param = this.parseCatchClauseParam(); - this.expect(11); - } else { - clause.param = null; - this.scope.enter(0); - } - clause.body = this.withSmartMixTopicForbiddingContext(() => this.parseBlock(false, false)); - this.scope.exit(); - node.handler = this.finishNode(clause, "CatchClause"); - } - node.finalizer = this.eat(67) ? this.parseBlock() : null; - if (!node.handler && !node.finalizer) { - this.raise(Errors.NoCatchOrFinally, node); - } - return this.finishNode(node, "TryStatement"); - } - parseVarStatement(node, kind, allowMissingInitializer = false) { - this.next(); - this.parseVar(node, false, kind, allowMissingInitializer); - this.semicolon(); - return this.finishNode(node, "VariableDeclaration"); - } - parseWhileStatement(node) { - this.next(); - node.test = this.parseHeaderExpression(); - this.state.labels.push(loopLabel); - node.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement()); - this.state.labels.pop(); - return this.finishNode(node, "WhileStatement"); - } - parseWithStatement(node) { - if (this.state.strict) { - this.raise(Errors.StrictWith, this.state.startLoc); - } - this.next(); - node.object = this.parseHeaderExpression(); - node.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement()); - return this.finishNode(node, "WithStatement"); - } - parseEmptyStatement(node) { - this.next(); - return this.finishNode(node, "EmptyStatement"); - } - parseLabeledStatement(node, maybeName, expr, flags) { - for (const label of this.state.labels) { - if (label.name === maybeName) { - this.raise(Errors.LabelRedeclaration, expr, { - labelName: maybeName - }); - } - } - const kind = tokenIsLoop(this.state.type) ? 1 : this.match(71) ? 2 : null; - for (let i = this.state.labels.length - 1; i >= 0; i--) { - const label = this.state.labels[i]; - if (label.statementStart === node.start) { - label.statementStart = this.sourceToOffsetPos(this.state.start); - label.kind = kind; - } else { - break; - } - } - this.state.labels.push({ - name: maybeName, - kind: kind, - statementStart: this.sourceToOffsetPos(this.state.start) - }); - node.body = flags & 8 ? this.parseStatementOrSloppyAnnexBFunctionDeclaration(true) : this.parseStatement(); - this.state.labels.pop(); - node.label = expr; - return this.finishNode(node, "LabeledStatement"); - } - parseExpressionStatement(node, expr, decorators) { - node.expression = expr; - this.semicolon(); - return this.finishNode(node, "ExpressionStatement"); - } - parseBlock(allowDirectives = false, createNewLexicalScope = true, afterBlockParse) { - const node = this.startNode(); - if (allowDirectives) { - this.state.strictErrors.clear(); - } - this.expect(5); - if (createNewLexicalScope) { - this.scope.enter(0); - } - this.parseBlockBody(node, allowDirectives, false, 8, afterBlockParse); - if (createNewLexicalScope) { - this.scope.exit(); - } - return this.finishNode(node, "BlockStatement"); - } - isValidDirective(stmt) { - return stmt.type === "ExpressionStatement" && stmt.expression.type === "StringLiteral" && !stmt.expression.extra.parenthesized; - } - parseBlockBody(node, allowDirectives, topLevel, end, afterBlockParse) { - const body = node.body = []; - const directives = node.directives = []; - this.parseBlockOrModuleBlockBody(body, allowDirectives ? directives : undefined, topLevel, end, afterBlockParse); - } - parseBlockOrModuleBlockBody(body, directives, topLevel, end, afterBlockParse) { - const oldStrict = this.state.strict; - let hasStrictModeDirective = false; - let parsedNonDirective = false; - while (!this.match(end)) { - const stmt = topLevel ? this.parseModuleItem() : this.parseStatementListItem(); - if (directives && !parsedNonDirective) { - if (this.isValidDirective(stmt)) { - const directive = this.stmtToDirective(stmt); - directives.push(directive); - if (!hasStrictModeDirective && directive.value.value === "use strict") { - hasStrictModeDirective = true; - this.setStrict(true); - } - continue; - } - parsedNonDirective = true; - this.state.strictErrors.clear(); - } - body.push(stmt); - } - afterBlockParse == null || afterBlockParse.call(this, hasStrictModeDirective); - if (!oldStrict) { - this.setStrict(false); - } - this.next(); - } - parseFor(node, init) { - node.init = init; - this.semicolon(false); - node.test = this.match(13) ? null : this.parseExpression(); - this.semicolon(false); - node.update = this.match(11) ? null : this.parseExpression(); - this.expect(11); - node.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement()); - this.scope.exit(); - this.state.labels.pop(); - return this.finishNode(node, "ForStatement"); - } - parseForIn(node, init, awaitAt) { - const isForIn = this.match(58); - this.next(); - if (isForIn) { - if (awaitAt !== null) this.unexpected(awaitAt); - } else { - node.await = awaitAt !== null; - } - if (init.type === "VariableDeclaration" && init.declarations[0].init != null && (!isForIn || !this.options.annexB || this.state.strict || init.kind !== "var" || init.declarations[0].id.type !== "Identifier")) { - this.raise(Errors.ForInOfLoopInitializer, init, { - type: isForIn ? "ForInStatement" : "ForOfStatement" - }); - } - if (init.type === "AssignmentPattern") { - this.raise(Errors.InvalidLhs, init, { - ancestor: { - type: "ForStatement" - } - }); - } - node.left = init; - node.right = isForIn ? this.parseExpression() : this.parseMaybeAssignAllowIn(); - this.expect(11); - node.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement()); - this.scope.exit(); - this.state.labels.pop(); - return this.finishNode(node, isForIn ? "ForInStatement" : "ForOfStatement"); - } - parseVar(node, isFor, kind, allowMissingInitializer = false) { - const declarations = node.declarations = []; - node.kind = kind; - for (;;) { - const decl = this.startNode(); - this.parseVarId(decl, kind); - decl.init = !this.eat(29) ? null : isFor ? this.parseMaybeAssignDisallowIn() : this.parseMaybeAssignAllowIn(); - if (decl.init === null && !allowMissingInitializer) { - if (decl.id.type !== "Identifier" && !(isFor && (this.match(58) || this.isContextual(102)))) { - this.raise(Errors.DeclarationMissingInitializer, this.state.lastTokEndLoc, { - kind: "destructuring" - }); - } else if ((kind === "const" || kind === "using" || kind === "await using") && !(this.match(58) || this.isContextual(102))) { - this.raise(Errors.DeclarationMissingInitializer, this.state.lastTokEndLoc, { - kind - }); - } - } - declarations.push(this.finishNode(decl, "VariableDeclarator")); - if (!this.eat(12)) break; - } - return node; - } - parseVarId(decl, kind) { - const id = this.parseBindingAtom(); - if (kind === "using" || kind === "await using") { - if (id.type === "ArrayPattern" || id.type === "ObjectPattern") { - this.raise(Errors.UsingDeclarationHasBindingPattern, id.loc.start); - } - } else { - if (id.type === "VoidPattern") { - this.raise(Errors.UnexpectedVoidPattern, id.loc.start); - } - } - this.checkLVal(id, { - type: "VariableDeclarator" - }, kind === "var" ? 5 : 8201); - decl.id = id; - } - parseAsyncFunctionExpression(node) { - return this.parseFunction(node, 8); - } - parseFunction(node, flags = 0) { - const hangingDeclaration = flags & 2; - const isDeclaration = !!(flags & 1); - const requireId = isDeclaration && !(flags & 4); - const isAsync = !!(flags & 8); - this.initFunction(node, isAsync); - if (this.match(55)) { - if (hangingDeclaration) { - this.raise(Errors.GeneratorInSingleStatementContext, this.state.startLoc); - } - this.next(); - node.generator = true; - } - if (isDeclaration) { - node.id = this.parseFunctionId(requireId); - } - const oldMaybeInArrowParameters = this.state.maybeInArrowParameters; - this.state.maybeInArrowParameters = false; - this.scope.enter(514); - this.prodParam.enter(functionFlags(isAsync, node.generator)); - if (!isDeclaration) { - node.id = this.parseFunctionId(); - } - this.parseFunctionParams(node, false); - this.withSmartMixTopicForbiddingContext(() => { - this.parseFunctionBodyAndFinish(node, isDeclaration ? "FunctionDeclaration" : "FunctionExpression"); - }); - this.prodParam.exit(); - this.scope.exit(); - if (isDeclaration && !hangingDeclaration) { - this.registerFunctionStatementId(node); - } - this.state.maybeInArrowParameters = oldMaybeInArrowParameters; - return node; - } - parseFunctionId(requireId) { - return requireId || tokenIsIdentifier(this.state.type) ? this.parseIdentifier() : null; - } - parseFunctionParams(node, isConstructor) { - this.expect(10); - this.expressionScope.enter(newParameterDeclarationScope()); - node.params = this.parseBindingList(11, 41, 2 | (isConstructor ? 4 : 0)); - this.expressionScope.exit(); - } - registerFunctionStatementId(node) { - if (!node.id) return; - this.scope.declareName(node.id.name, !this.options.annexB || this.state.strict || node.generator || node.async ? this.scope.treatFunctionsAsVar ? 5 : 8201 : 17, node.id.loc.start); - } - parseClass(node, isStatement, optionalId) { - this.next(); - const oldStrict = this.state.strict; - this.state.strict = true; - this.parseClassId(node, isStatement, optionalId); - this.parseClassSuper(node); - node.body = this.parseClassBody(!!node.superClass, oldStrict); - return this.finishNode(node, isStatement ? "ClassDeclaration" : "ClassExpression"); - } - isClassProperty() { - return this.match(29) || this.match(13) || this.match(8); - } - isClassMethod() { - return this.match(10); - } - nameIsConstructor(key) { - return key.type === "Identifier" && key.name === "constructor" || key.type === "StringLiteral" && key.value === "constructor"; - } - isNonstaticConstructor(method) { - return !method.computed && !method.static && this.nameIsConstructor(method.key); - } - parseClassBody(hadSuperClass, oldStrict) { - this.classScope.enter(); - const state = { - hadConstructor: false, - hadSuperClass - }; - let decorators = []; - const classBody = this.startNode(); - classBody.body = []; - this.expect(5); - this.withSmartMixTopicForbiddingContext(() => { - while (!this.match(8)) { - if (this.eat(13)) { - if (decorators.length > 0) { - throw this.raise(Errors.DecoratorSemicolon, this.state.lastTokEndLoc); - } - continue; - } - if (this.match(26)) { - decorators.push(this.parseDecorator()); - continue; - } - const member = this.startNode(); - if (decorators.length) { - member.decorators = decorators; - this.resetStartLocationFromNode(member, decorators[0]); - decorators = []; - } - this.parseClassMember(classBody, member, state); - if (member.kind === "constructor" && member.decorators && member.decorators.length > 0) { - this.raise(Errors.DecoratorConstructor, member); - } - } - }); - this.state.strict = oldStrict; - this.next(); - if (decorators.length) { - throw this.raise(Errors.TrailingDecorator, this.state.startLoc); - } - this.classScope.exit(); - return this.finishNode(classBody, "ClassBody"); - } - parseClassMemberFromModifier(classBody, member) { - const key = this.parseIdentifier(true); - if (this.isClassMethod()) { - const method = member; - method.kind = "method"; - method.computed = false; - method.key = key; - method.static = false; - this.pushClassMethod(classBody, method, false, false, false, false); - return true; - } else if (this.isClassProperty()) { - const prop = member; - prop.computed = false; - prop.key = key; - prop.static = false; - classBody.body.push(this.parseClassProperty(prop)); - return true; - } - this.resetPreviousNodeTrailingComments(key); - return false; - } - parseClassMember(classBody, member, state) { - const isStatic = this.isContextual(106); - if (isStatic) { - if (this.parseClassMemberFromModifier(classBody, member)) { - return; - } - if (this.eat(5)) { - this.parseClassStaticBlock(classBody, member); - return; - } - } - this.parseClassMemberWithIsStatic(classBody, member, state, isStatic); - } - parseClassMemberWithIsStatic(classBody, member, state, isStatic) { - const publicMethod = member; - const privateMethod = member; - const publicProp = member; - const privateProp = member; - const accessorProp = member; - const method = publicMethod; - const publicMember = publicMethod; - member.static = isStatic; - this.parsePropertyNamePrefixOperator(member); - if (this.eat(55)) { - method.kind = "method"; - const isPrivateName = this.match(139); - this.parseClassElementName(method); - this.parsePostMemberNameModifiers(method); - if (isPrivateName) { - this.pushClassPrivateMethod(classBody, privateMethod, true, false); - return; - } - if (this.isNonstaticConstructor(publicMethod)) { - this.raise(Errors.ConstructorIsGenerator, publicMethod.key); - } - this.pushClassMethod(classBody, publicMethod, true, false, false, false); - return; - } - const isContextual = !this.state.containsEsc && tokenIsIdentifier(this.state.type); - const key = this.parseClassElementName(member); - const maybeContextualKw = isContextual ? key.name : null; - const isPrivate = this.isPrivateName(key); - const maybeQuestionTokenStartLoc = this.state.startLoc; - this.parsePostMemberNameModifiers(publicMember); - if (this.isClassMethod()) { - method.kind = "method"; - if (isPrivate) { - this.pushClassPrivateMethod(classBody, privateMethod, false, false); - return; - } - const isConstructor = this.isNonstaticConstructor(publicMethod); - let allowsDirectSuper = false; - if (isConstructor) { - publicMethod.kind = "constructor"; - if (state.hadConstructor && !this.hasPlugin("typescript")) { - this.raise(Errors.DuplicateConstructor, key); - } - if (isConstructor && this.hasPlugin("typescript") && member.override) { - this.raise(Errors.OverrideOnConstructor, key); - } - state.hadConstructor = true; - allowsDirectSuper = state.hadSuperClass; - } - this.pushClassMethod(classBody, publicMethod, false, false, isConstructor, allowsDirectSuper); - } else if (this.isClassProperty()) { - if (isPrivate) { - this.pushClassPrivateProperty(classBody, privateProp); - } else { - this.pushClassProperty(classBody, publicProp); - } - } else if (maybeContextualKw === "async" && !this.isLineTerminator()) { - this.resetPreviousNodeTrailingComments(key); - const isGenerator = this.eat(55); - if (publicMember.optional) { - this.unexpected(maybeQuestionTokenStartLoc); - } - method.kind = "method"; - const isPrivate = this.match(139); - this.parseClassElementName(method); - this.parsePostMemberNameModifiers(publicMember); - if (isPrivate) { - this.pushClassPrivateMethod(classBody, privateMethod, isGenerator, true); - } else { - if (this.isNonstaticConstructor(publicMethod)) { - this.raise(Errors.ConstructorIsAsync, publicMethod.key); - } - this.pushClassMethod(classBody, publicMethod, isGenerator, true, false, false); - } - } else if ((maybeContextualKw === "get" || maybeContextualKw === "set") && !(this.match(55) && this.isLineTerminator())) { - this.resetPreviousNodeTrailingComments(key); - method.kind = maybeContextualKw; - const isPrivate = this.match(139); - this.parseClassElementName(publicMethod); - if (isPrivate) { - this.pushClassPrivateMethod(classBody, privateMethod, false, false); - } else { - if (this.isNonstaticConstructor(publicMethod)) { - this.raise(Errors.ConstructorIsAccessor, publicMethod.key); - } - this.pushClassMethod(classBody, publicMethod, false, false, false, false); - } - this.checkGetterSetterParams(publicMethod); - } else if (maybeContextualKw === "accessor" && !this.isLineTerminator()) { - this.expectPlugin("decoratorAutoAccessors"); - this.resetPreviousNodeTrailingComments(key); - const isPrivate = this.match(139); - this.parseClassElementName(publicProp); - this.pushClassAccessorProperty(classBody, accessorProp, isPrivate); - } else if (this.isLineTerminator()) { - if (isPrivate) { - this.pushClassPrivateProperty(classBody, privateProp); - } else { - this.pushClassProperty(classBody, publicProp); - } - } else { - this.unexpected(); - } - } - parseClassElementName(member) { - const { - type, - value - } = this.state; - if ((type === 132 || type === 134) && member.static && value === "prototype") { - this.raise(Errors.StaticPrototype, this.state.startLoc); - } - if (type === 139) { - if (value === "constructor") { - this.raise(Errors.ConstructorClassPrivateField, this.state.startLoc); - } - const key = this.parsePrivateName(); - member.key = key; - return key; - } - this.parsePropertyName(member); - return member.key; - } - parseClassStaticBlock(classBody, member) { - var _member$decorators; - this.scope.enter(576 | 128 | 16); - const oldLabels = this.state.labels; - this.state.labels = []; - this.prodParam.enter(0); - const body = member.body = []; - this.parseBlockOrModuleBlockBody(body, undefined, false, 8); - this.prodParam.exit(); - this.scope.exit(); - this.state.labels = oldLabels; - classBody.body.push(this.finishNode(member, "StaticBlock")); - if ((_member$decorators = member.decorators) != null && _member$decorators.length) { - this.raise(Errors.DecoratorStaticBlock, member); - } - } - pushClassProperty(classBody, prop) { - if (!prop.computed && this.nameIsConstructor(prop.key)) { - this.raise(Errors.ConstructorClassField, prop.key); - } - classBody.body.push(this.parseClassProperty(prop)); - } - pushClassPrivateProperty(classBody, prop) { - const node = this.parseClassPrivateProperty(prop); - classBody.body.push(node); - this.classScope.declarePrivateName(this.getPrivateNameSV(node.key), 0, node.key.loc.start); - } - pushClassAccessorProperty(classBody, prop, isPrivate) { - if (!isPrivate && !prop.computed && this.nameIsConstructor(prop.key)) { - this.raise(Errors.ConstructorClassField, prop.key); - } - const node = this.parseClassAccessorProperty(prop); - classBody.body.push(node); - if (isPrivate) { - this.classScope.declarePrivateName(this.getPrivateNameSV(node.key), 0, node.key.loc.start); - } - } - pushClassMethod(classBody, method, isGenerator, isAsync, isConstructor, allowsDirectSuper) { - classBody.body.push(this.parseMethod(method, isGenerator, isAsync, isConstructor, allowsDirectSuper, "ClassMethod", true)); - } - pushClassPrivateMethod(classBody, method, isGenerator, isAsync) { - const node = this.parseMethod(method, isGenerator, isAsync, false, false, "ClassPrivateMethod", true); - classBody.body.push(node); - const kind = node.kind === "get" ? node.static ? 6 : 2 : node.kind === "set" ? node.static ? 5 : 1 : 0; - this.declareClassPrivateMethodInScope(node, kind); - } - declareClassPrivateMethodInScope(node, kind) { - this.classScope.declarePrivateName(this.getPrivateNameSV(node.key), kind, node.key.loc.start); - } - parsePostMemberNameModifiers(methodOrProp) {} - parseClassPrivateProperty(node) { - this.parseInitializer(node); - this.semicolon(); - return this.finishNode(node, "ClassPrivateProperty"); - } - parseClassProperty(node) { - this.parseInitializer(node); - this.semicolon(); - return this.finishNode(node, "ClassProperty"); - } - parseClassAccessorProperty(node) { - this.parseInitializer(node); - this.semicolon(); - return this.finishNode(node, "ClassAccessorProperty"); - } - parseInitializer(node) { - this.scope.enter(576 | 16); - this.expressionScope.enter(newExpressionScope()); - this.prodParam.enter(0); - node.value = this.eat(29) ? this.parseMaybeAssignAllowIn() : null; - this.expressionScope.exit(); - this.prodParam.exit(); - this.scope.exit(); - } - parseClassId(node, isStatement, optionalId, bindingType = 8331) { - if (tokenIsIdentifier(this.state.type)) { - node.id = this.parseIdentifier(); - if (isStatement) { - this.declareNameFromIdentifier(node.id, bindingType); - } - } else { - if (optionalId || !isStatement) { - node.id = null; - } else { - throw this.raise(Errors.MissingClassName, this.state.startLoc); - } - } - } - parseClassSuper(node) { - node.superClass = this.eat(81) ? this.parseExprSubscripts() : null; - } - parseExport(node, decorators) { - const maybeDefaultIdentifier = this.parseMaybeImportPhase(node, true); - const hasDefault = this.maybeParseExportDefaultSpecifier(node, maybeDefaultIdentifier); - const parseAfterDefault = !hasDefault || this.eat(12); - const hasStar = parseAfterDefault && this.eatExportStar(node); - const hasNamespace = hasStar && this.maybeParseExportNamespaceSpecifier(node); - const parseAfterNamespace = parseAfterDefault && (!hasNamespace || this.eat(12)); - const isFromRequired = hasDefault || hasStar; - if (hasStar && !hasNamespace) { - if (hasDefault) this.unexpected(); - if (decorators) { - throw this.raise(Errors.UnsupportedDecoratorExport, node); - } - this.parseExportFrom(node, true); - this.sawUnambiguousESM = true; - return this.finishNode(node, "ExportAllDeclaration"); - } - const hasSpecifiers = this.maybeParseExportNamedSpecifiers(node); - if (hasDefault && parseAfterDefault && !hasStar && !hasSpecifiers) { - this.unexpected(null, 5); - } - if (hasNamespace && parseAfterNamespace) { - this.unexpected(null, 98); - } - let hasDeclaration; - if (isFromRequired || hasSpecifiers) { - hasDeclaration = false; - if (decorators) { - throw this.raise(Errors.UnsupportedDecoratorExport, node); - } - this.parseExportFrom(node, isFromRequired); - } else { - hasDeclaration = this.maybeParseExportDeclaration(node); - } - if (isFromRequired || hasSpecifiers || hasDeclaration) { - var _node2$declaration; - const node2 = node; - this.checkExport(node2, true, false, !!node2.source); - if (((_node2$declaration = node2.declaration) == null ? void 0 : _node2$declaration.type) === "ClassDeclaration") { - this.maybeTakeDecorators(decorators, node2.declaration, node2); - } else if (decorators) { - throw this.raise(Errors.UnsupportedDecoratorExport, node); - } - this.sawUnambiguousESM = true; - return this.finishNode(node2, "ExportNamedDeclaration"); - } - if (this.eat(65)) { - const node2 = node; - const decl = this.parseExportDefaultExpression(); - node2.declaration = decl; - if (decl.type === "ClassDeclaration") { - this.maybeTakeDecorators(decorators, decl, node2); - } else if (decorators) { - throw this.raise(Errors.UnsupportedDecoratorExport, node); - } - this.checkExport(node2, true, true); - this.sawUnambiguousESM = true; - return this.finishNode(node2, "ExportDefaultDeclaration"); - } - throw this.unexpected(null, 5); - } - eatExportStar(node) { - return this.eat(55); - } - maybeParseExportDefaultSpecifier(node, maybeDefaultIdentifier) { - if (maybeDefaultIdentifier || this.isExportDefaultSpecifier()) { - this.expectPlugin("exportDefaultFrom", maybeDefaultIdentifier == null ? void 0 : maybeDefaultIdentifier.loc.start); - const id = maybeDefaultIdentifier || this.parseIdentifier(true); - const specifier = this.startNodeAtNode(id); - specifier.exported = id; - node.specifiers = [this.finishNode(specifier, "ExportDefaultSpecifier")]; - return true; - } - return false; - } - maybeParseExportNamespaceSpecifier(node) { - if (this.isContextual(93)) { - var _ref, _ref$specifiers; - (_ref$specifiers = (_ref = node).specifiers) != null ? _ref$specifiers : _ref.specifiers = []; - const specifier = this.startNodeAt(this.state.lastTokStartLoc); - this.next(); - specifier.exported = this.parseModuleExportName(); - node.specifiers.push(this.finishNode(specifier, "ExportNamespaceSpecifier")); - return true; - } - return false; - } - maybeParseExportNamedSpecifiers(node) { - if (this.match(5)) { - const node2 = node; - if (!node2.specifiers) node2.specifiers = []; - const isTypeExport = node2.exportKind === "type"; - node2.specifiers.push(...this.parseExportSpecifiers(isTypeExport)); - node2.source = null; - if (this.hasPlugin("importAssertions")) { - node2.assertions = []; - } else { - node2.attributes = []; - } - node2.declaration = null; - return true; - } - return false; - } - maybeParseExportDeclaration(node) { - if (this.shouldParseExportDeclaration()) { - node.specifiers = []; - node.source = null; - if (this.hasPlugin("importAssertions")) { - node.assertions = []; - } else { - node.attributes = []; - } - node.declaration = this.parseExportDeclaration(node); - return true; - } - return false; - } - isAsyncFunction() { - if (!this.isContextual(95)) return false; - const next = this.nextTokenInLineStart(); - return this.isUnparsedContextual(next, "function"); - } - parseExportDefaultExpression() { - const expr = this.startNode(); - if (this.match(68)) { - this.next(); - return this.parseFunction(expr, 1 | 4); - } else if (this.isAsyncFunction()) { - this.next(); - this.next(); - return this.parseFunction(expr, 1 | 4 | 8); - } - if (this.match(80)) { - return this.parseClass(expr, true, true); - } - if (this.match(26)) { - if (this.hasPlugin("decorators") && this.getPluginOption("decorators", "decoratorsBeforeExport") === true) { - this.raise(Errors.DecoratorBeforeExport, this.state.startLoc); - } - return this.parseClass(this.maybeTakeDecorators(this.parseDecorators(false), this.startNode()), true, true); - } - if (this.match(75) || this.match(74) || this.isLet() || this.isUsing() || this.isAwaitUsing()) { - throw this.raise(Errors.UnsupportedDefaultExport, this.state.startLoc); - } - const res = this.parseMaybeAssignAllowIn(); - this.semicolon(); - return res; - } - parseExportDeclaration(node) { - if (this.match(80)) { - const node = this.parseClass(this.startNode(), true, false); - return node; - } - return this.parseStatementListItem(); - } - isExportDefaultSpecifier() { - const { - type - } = this.state; - if (tokenIsIdentifier(type)) { - if (type === 95 && !this.state.containsEsc || type === 100) { - return false; - } - if ((type === 130 || type === 129) && !this.state.containsEsc) { - const next = this.nextTokenStart(); - const nextChar = this.input.charCodeAt(next); - if (nextChar === 123 || this.chStartsBindingIdentifier(nextChar, next) && !this.input.startsWith("from", next)) { - this.expectOnePlugin(["flow", "typescript"]); - return false; - } - } - } else if (!this.match(65)) { - return false; - } - const next = this.nextTokenStart(); - const hasFrom = this.isUnparsedContextual(next, "from"); - if (this.input.charCodeAt(next) === 44 || tokenIsIdentifier(this.state.type) && hasFrom) { - return true; - } - if (this.match(65) && hasFrom) { - const nextAfterFrom = this.input.charCodeAt(this.nextTokenStartSince(next + 4)); - return nextAfterFrom === 34 || nextAfterFrom === 39; - } - return false; - } - parseExportFrom(node, expect) { - if (this.eatContextual(98)) { - node.source = this.parseImportSource(); - this.checkExport(node); - this.maybeParseImportAttributes(node); - this.checkJSONModuleImport(node); - } else if (expect) { - this.unexpected(); - } - this.semicolon(); - } - shouldParseExportDeclaration() { - const { - type - } = this.state; - if (type === 26) { - this.expectOnePlugin(["decorators", "decorators-legacy"]); - if (this.hasPlugin("decorators")) { - if (this.getPluginOption("decorators", "decoratorsBeforeExport") === true) { - this.raise(Errors.DecoratorBeforeExport, this.state.startLoc); - } - return true; - } - } - if (this.isUsing()) { - this.raise(Errors.UsingDeclarationExport, this.state.startLoc); - return true; - } - if (this.isAwaitUsing()) { - this.raise(Errors.UsingDeclarationExport, this.state.startLoc); - return true; - } - return type === 74 || type === 75 || type === 68 || type === 80 || this.isLet() || this.isAsyncFunction(); - } - checkExport(node, checkNames, isDefault, isFrom) { - if (checkNames) { - var _node$specifiers; - if (isDefault) { - this.checkDuplicateExports(node, "default"); - if (this.hasPlugin("exportDefaultFrom")) { - var _declaration$extra; - const declaration = node.declaration; - if (declaration.type === "Identifier" && declaration.name === "from" && declaration.end - declaration.start === 4 && !((_declaration$extra = declaration.extra) != null && _declaration$extra.parenthesized)) { - this.raise(Errors.ExportDefaultFromAsIdentifier, declaration); - } - } - } else if ((_node$specifiers = node.specifiers) != null && _node$specifiers.length) { - for (const specifier of node.specifiers) { - const { - exported - } = specifier; - const exportName = exported.type === "Identifier" ? exported.name : exported.value; - this.checkDuplicateExports(specifier, exportName); - if (!isFrom && specifier.local) { - const { - local - } = specifier; - if (local.type !== "Identifier") { - this.raise(Errors.ExportBindingIsString, specifier, { - localName: local.value, - exportName - }); - } else { - this.checkReservedWord(local.name, local.loc.start, true, false); - this.scope.checkLocalExport(local); - } - } - } - } else if (node.declaration) { - const decl = node.declaration; - if (decl.type === "FunctionDeclaration" || decl.type === "ClassDeclaration") { - const { - id - } = decl; - if (!id) throw new Error("Assertion failure"); - this.checkDuplicateExports(node, id.name); - } else if (decl.type === "VariableDeclaration") { - for (const declaration of decl.declarations) { - this.checkDeclaration(declaration.id); - } - } - } - } - } - checkDeclaration(node) { - if (node.type === "Identifier") { - this.checkDuplicateExports(node, node.name); - } else if (node.type === "ObjectPattern") { - for (const prop of node.properties) { - this.checkDeclaration(prop); - } - } else if (node.type === "ArrayPattern") { - for (const elem of node.elements) { - if (elem) { - this.checkDeclaration(elem); - } - } - } else if (node.type === "ObjectProperty") { - this.checkDeclaration(node.value); - } else if (node.type === "RestElement") { - this.checkDeclaration(node.argument); - } else if (node.type === "AssignmentPattern") { - this.checkDeclaration(node.left); - } - } - checkDuplicateExports(node, exportName) { - if (this.exportedIdentifiers.has(exportName)) { - if (exportName === "default") { - this.raise(Errors.DuplicateDefaultExport, node); - } else { - this.raise(Errors.DuplicateExport, node, { - exportName - }); - } - } - this.exportedIdentifiers.add(exportName); - } - parseExportSpecifiers(isInTypeExport) { - const nodes = []; - let first = true; - this.expect(5); - while (!this.eat(8)) { - if (first) { - first = false; - } else { - this.expect(12); - if (this.eat(8)) break; - } - const isMaybeTypeOnly = this.isContextual(130); - const isString = this.match(134); - const node = this.startNode(); - node.local = this.parseModuleExportName(); - nodes.push(this.parseExportSpecifier(node, isString, isInTypeExport, isMaybeTypeOnly)); - } - return nodes; - } - parseExportSpecifier(node, isString, isInTypeExport, isMaybeTypeOnly) { - if (this.eatContextual(93)) { - node.exported = this.parseModuleExportName(); - } else if (isString) { - node.exported = this.cloneStringLiteral(node.local); - } else if (!node.exported) { - node.exported = this.cloneIdentifier(node.local); - } - return this.finishNode(node, "ExportSpecifier"); - } - parseModuleExportName() { - if (this.match(134)) { - const result = this.parseStringLiteral(this.state.value); - const surrogate = loneSurrogate.exec(result.value); - if (surrogate) { - this.raise(Errors.ModuleExportNameHasLoneSurrogate, result, { - surrogateCharCode: surrogate[0].charCodeAt(0) - }); - } - return result; - } - return this.parseIdentifier(true); - } - isJSONModuleImport(node) { - if (node.assertions != null) { - return node.assertions.some(({ - key, - value - }) => { - return value.value === "json" && (key.type === "Identifier" ? key.name === "type" : key.value === "type"); - }); - } - return false; - } - checkImportReflection(node) { - const { - specifiers - } = node; - const singleBindingType = specifiers.length === 1 ? specifiers[0].type : null; - if (node.phase === "source") { - if (singleBindingType !== "ImportDefaultSpecifier") { - this.raise(Errors.SourcePhaseImportRequiresDefault, specifiers[0].loc.start); - } - } else if (node.phase === "defer") { - if (singleBindingType !== "ImportNamespaceSpecifier") { - this.raise(Errors.DeferImportRequiresNamespace, specifiers[0].loc.start); - } - } else if (node.module) { - var _node$assertions; - if (singleBindingType !== "ImportDefaultSpecifier") { - this.raise(Errors.ImportReflectionNotBinding, specifiers[0].loc.start); - } - if (((_node$assertions = node.assertions) == null ? void 0 : _node$assertions.length) > 0) { - this.raise(Errors.ImportReflectionHasAssertion, specifiers[0].loc.start); - } - } - } - checkJSONModuleImport(node) { - if (this.isJSONModuleImport(node) && node.type !== "ExportAllDeclaration") { - const { - specifiers - } = node; - if (specifiers != null) { - const nonDefaultNamedSpecifier = specifiers.find(specifier => { - let imported; - if (specifier.type === "ExportSpecifier") { - imported = specifier.local; - } else if (specifier.type === "ImportSpecifier") { - imported = specifier.imported; - } - if (imported !== undefined) { - return imported.type === "Identifier" ? imported.name !== "default" : imported.value !== "default"; - } - }); - if (nonDefaultNamedSpecifier !== undefined) { - this.raise(Errors.ImportJSONBindingNotDefault, nonDefaultNamedSpecifier.loc.start); - } - } - } - } - isPotentialImportPhase(isExport) { - if (isExport) return false; - return this.isContextual(105) || this.isContextual(97) || this.isContextual(127); - } - applyImportPhase(node, isExport, phase, loc) { - if (isExport) { - return; - } - if (phase === "module") { - this.expectPlugin("importReflection", loc); - node.module = true; - } else if (this.hasPlugin("importReflection")) { - node.module = false; - } - if (phase === "source") { - this.expectPlugin("sourcePhaseImports", loc); - node.phase = "source"; - } else if (phase === "defer") { - this.expectPlugin("deferredImportEvaluation", loc); - node.phase = "defer"; - } else if (this.hasPlugin("sourcePhaseImports")) { - node.phase = null; - } - } - parseMaybeImportPhase(node, isExport) { - if (!this.isPotentialImportPhase(isExport)) { - this.applyImportPhase(node, isExport, null); - return null; - } - const phaseIdentifier = this.startNode(); - const phaseIdentifierName = this.parseIdentifierName(true); - const { - type - } = this.state; - const isImportPhase = tokenIsKeywordOrIdentifier(type) ? type !== 98 || this.lookaheadCharCode() === 102 : type !== 12; - if (isImportPhase) { - this.applyImportPhase(node, isExport, phaseIdentifierName, phaseIdentifier.loc.start); - return null; - } else { - this.applyImportPhase(node, isExport, null); - return this.createIdentifier(phaseIdentifier, phaseIdentifierName); - } - } - isPrecedingIdImportPhase(phase) { - const { - type - } = this.state; - return tokenIsIdentifier(type) ? type !== 98 || this.lookaheadCharCode() === 102 : type !== 12; - } - parseImport(node) { - if (this.match(134)) { - return this.parseImportSourceAndAttributes(node); - } - return this.parseImportSpecifiersAndAfter(node, this.parseMaybeImportPhase(node, false)); - } - parseImportSpecifiersAndAfter(node, maybeDefaultIdentifier) { - node.specifiers = []; - const hasDefault = this.maybeParseDefaultImportSpecifier(node, maybeDefaultIdentifier); - const parseNext = !hasDefault || this.eat(12); - const hasStar = parseNext && this.maybeParseStarImportSpecifier(node); - if (parseNext && !hasStar) this.parseNamedImportSpecifiers(node); - this.expectContextual(98); - return this.parseImportSourceAndAttributes(node); - } - parseImportSourceAndAttributes(node) { - var _node$specifiers2; - (_node$specifiers2 = node.specifiers) != null ? _node$specifiers2 : node.specifiers = []; - node.source = this.parseImportSource(); - this.maybeParseImportAttributes(node); - this.checkImportReflection(node); - this.checkJSONModuleImport(node); - this.semicolon(); - this.sawUnambiguousESM = true; - return this.finishNode(node, "ImportDeclaration"); - } - parseImportSource() { - if (!this.match(134)) this.unexpected(); - return this.parseExprAtom(); - } - parseImportSpecifierLocal(node, specifier, type) { - specifier.local = this.parseIdentifier(); - node.specifiers.push(this.finishImportSpecifier(specifier, type)); - } - finishImportSpecifier(specifier, type, bindingType = 8201) { - this.checkLVal(specifier.local, { - type - }, bindingType); - return this.finishNode(specifier, type); - } - parseImportAttributes() { - this.expect(5); - const attrs = []; - const attrNames = new Set(); - do { - if (this.match(8)) { - break; - } - const node = this.startNode(); - const keyName = this.state.value; - if (attrNames.has(keyName)) { - this.raise(Errors.ModuleAttributesWithDuplicateKeys, this.state.startLoc, { - key: keyName - }); - } - attrNames.add(keyName); - if (this.match(134)) { - node.key = this.parseStringLiteral(keyName); - } else { - node.key = this.parseIdentifier(true); - } - this.expect(14); - if (!this.match(134)) { - throw this.raise(Errors.ModuleAttributeInvalidValue, this.state.startLoc); - } - node.value = this.parseStringLiteral(this.state.value); - attrs.push(this.finishNode(node, "ImportAttribute")); - } while (this.eat(12)); - this.expect(8); - return attrs; - } - parseModuleAttributes() { - const attrs = []; - const attributes = new Set(); - do { - const node = this.startNode(); - node.key = this.parseIdentifier(true); - if (node.key.name !== "type") { - this.raise(Errors.ModuleAttributeDifferentFromType, node.key); - } - if (attributes.has(node.key.name)) { - this.raise(Errors.ModuleAttributesWithDuplicateKeys, node.key, { - key: node.key.name - }); - } - attributes.add(node.key.name); - this.expect(14); - if (!this.match(134)) { - throw this.raise(Errors.ModuleAttributeInvalidValue, this.state.startLoc); - } - node.value = this.parseStringLiteral(this.state.value); - attrs.push(this.finishNode(node, "ImportAttribute")); - } while (this.eat(12)); - return attrs; - } - maybeParseImportAttributes(node) { - let attributes; - var useWith = false; - if (this.match(76)) { - if (this.hasPrecedingLineBreak() && this.lookaheadCharCode() === 40) { - return; - } - this.next(); - if (this.hasPlugin("moduleAttributes")) { - attributes = this.parseModuleAttributes(); - this.addExtra(node, "deprecatedWithLegacySyntax", true); - } else { - attributes = this.parseImportAttributes(); - } - useWith = true; - } else if (this.isContextual(94) && !this.hasPrecedingLineBreak()) { - if (!this.hasPlugin("deprecatedImportAssert") && !this.hasPlugin("importAssertions")) { - this.raise(Errors.ImportAttributesUseAssert, this.state.startLoc); - } - if (!this.hasPlugin("importAssertions")) { - this.addExtra(node, "deprecatedAssertSyntax", true); - } - this.next(); - attributes = this.parseImportAttributes(); - } else { - attributes = []; - } - if (!useWith && this.hasPlugin("importAssertions")) { - node.assertions = attributes; - } else { - node.attributes = attributes; - } - } - maybeParseDefaultImportSpecifier(node, maybeDefaultIdentifier) { - if (maybeDefaultIdentifier) { - const specifier = this.startNodeAtNode(maybeDefaultIdentifier); - specifier.local = maybeDefaultIdentifier; - node.specifiers.push(this.finishImportSpecifier(specifier, "ImportDefaultSpecifier")); - return true; - } else if (tokenIsKeywordOrIdentifier(this.state.type)) { - this.parseImportSpecifierLocal(node, this.startNode(), "ImportDefaultSpecifier"); - return true; - } - return false; - } - maybeParseStarImportSpecifier(node) { - if (this.match(55)) { - const specifier = this.startNode(); - this.next(); - this.expectContextual(93); - this.parseImportSpecifierLocal(node, specifier, "ImportNamespaceSpecifier"); - return true; - } - return false; - } - parseNamedImportSpecifiers(node) { - let first = true; - this.expect(5); - while (!this.eat(8)) { - if (first) { - first = false; - } else { - if (this.eat(14)) { - throw this.raise(Errors.DestructureNamedImport, this.state.startLoc); - } - this.expect(12); - if (this.eat(8)) break; - } - const specifier = this.startNode(); - const importedIsString = this.match(134); - const isMaybeTypeOnly = this.isContextual(130); - specifier.imported = this.parseModuleExportName(); - const importSpecifier = this.parseImportSpecifier(specifier, importedIsString, node.importKind === "type" || node.importKind === "typeof", isMaybeTypeOnly, undefined); - node.specifiers.push(importSpecifier); - } - } - parseImportSpecifier(specifier, importedIsString, isInTypeOnlyImport, isMaybeTypeOnly, bindingType) { - if (this.eatContextual(93)) { - specifier.local = this.parseIdentifier(); - } else { - const { - imported - } = specifier; - if (importedIsString) { - throw this.raise(Errors.ImportBindingIsString, specifier, { - importName: imported.value - }); - } - this.checkReservedWord(imported.name, specifier.loc.start, true, true); - if (!specifier.local) { - specifier.local = this.cloneIdentifier(imported); - } - } - return this.finishImportSpecifier(specifier, "ImportSpecifier", bindingType); - } - isThisParam(param) { - return param.type === "Identifier" && param.name === "this"; - } -} -class Parser extends StatementParser { - constructor(options, input, pluginsMap) { - const normalizedOptions = getOptions(options); - super(normalizedOptions, input); - this.options = normalizedOptions; - this.initializeScopes(); - this.plugins = pluginsMap; - this.filename = normalizedOptions.sourceFilename; - this.startIndex = normalizedOptions.startIndex; - let optionFlags = 0; - if (normalizedOptions.allowAwaitOutsideFunction) { - optionFlags |= 1; - } - if (normalizedOptions.allowReturnOutsideFunction) { - optionFlags |= 2; - } - if (normalizedOptions.allowImportExportEverywhere) { - optionFlags |= 8; - } - if (normalizedOptions.allowSuperOutsideMethod) { - optionFlags |= 16; - } - if (normalizedOptions.allowUndeclaredExports) { - optionFlags |= 64; - } - if (normalizedOptions.allowNewTargetOutsideFunction) { - optionFlags |= 4; - } - if (normalizedOptions.allowYieldOutsideFunction) { - optionFlags |= 32; - } - if (normalizedOptions.ranges) { - optionFlags |= 128; - } - if (normalizedOptions.tokens) { - optionFlags |= 256; - } - if (normalizedOptions.createImportExpressions) { - optionFlags |= 512; - } - if (normalizedOptions.createParenthesizedExpressions) { - optionFlags |= 1024; - } - if (normalizedOptions.errorRecovery) { - optionFlags |= 2048; - } - if (normalizedOptions.attachComment) { - optionFlags |= 4096; - } - if (normalizedOptions.annexB) { - optionFlags |= 8192; - } - this.optionFlags = optionFlags; - } - getScopeHandler() { - return ScopeHandler; - } - parse() { - this.enterInitialScopes(); - const file = this.startNode(); - const program = this.startNode(); - this.nextToken(); - file.errors = null; - const result = this.parseTopLevel(file, program); - result.errors = this.state.errors; - result.comments.length = this.state.commentsLen; - return result; - } -} -function parse(input, options) { - var _options; - if (((_options = options) == null ? void 0 : _options.sourceType) === "unambiguous") { - options = Object.assign({}, options); - try { - options.sourceType = "module"; - const parser = getParser(options, input); - const ast = parser.parse(); - if (parser.sawUnambiguousESM) { - return ast; - } - if (parser.ambiguousScriptDifferentAst) { - try { - options.sourceType = "script"; - return getParser(options, input).parse(); - } catch (_unused) {} - } else { - ast.program.sourceType = "script"; - } - return ast; - } catch (moduleError) { - try { - options.sourceType = "script"; - return getParser(options, input).parse(); - } catch (_unused2) {} - throw moduleError; - } - } else { - return getParser(options, input).parse(); - } -} -function parseExpression(input, options) { - const parser = getParser(options, input); - if (parser.options.strictMode) { - parser.state.strict = true; - } - return parser.getExpression(); -} -function generateExportedTokenTypes(internalTokenTypes) { - const tokenTypes = {}; - for (const typeName of Object.keys(internalTokenTypes)) { - tokenTypes[typeName] = getExportedToken(internalTokenTypes[typeName]); - } - return tokenTypes; -} -const tokTypes = generateExportedTokenTypes(tt); -function getParser(options, input) { - let cls = Parser; - const pluginsMap = new Map(); - if (options != null && options.plugins) { - for (const plugin of options.plugins) { - let name, opts; - if (typeof plugin === "string") { - name = plugin; - } else { - [name, opts] = plugin; - } - if (!pluginsMap.has(name)) { - pluginsMap.set(name, opts || {}); - } - } - validatePlugins(pluginsMap); - cls = getParserClass(pluginsMap); - } - return new cls(options, input, pluginsMap); -} -const parserClassCache = new Map(); -function getParserClass(pluginsMap) { - const pluginList = []; - for (const name of mixinPluginNames) { - if (pluginsMap.has(name)) { - pluginList.push(name); - } - } - const key = pluginList.join("|"); - let cls = parserClassCache.get(key); - if (!cls) { - cls = Parser; - for (const plugin of pluginList) { - cls = mixinPlugins[plugin](cls); - } - parserClassCache.set(key, cls); - } - return cls; -} -exports.parse = parse; -exports.parseExpression = parseExpression; -exports.tokTypes = tokTypes; -//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/parser/lib/index.js.map b/node_modules/@babel/parser/lib/index.js.map deleted file mode 100644 index 0f73da4..0000000 --- a/node_modules/@babel/parser/lib/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../src/util/location.ts","../src/parse-error/module-errors.ts","../src/parse-error/to-node-description.ts","../src/parse-error/standard-errors.ts","../src/parse-error/strict-mode-errors.ts","../src/parse-error/parse-expression-errors.ts","../src/parse-error/pipeline-operator-errors.ts","../src/parse-error.ts","../src/options.ts","../src/plugins/estree.ts","../src/tokenizer/context.ts","../src/tokenizer/types.ts","../../babel-helper-validator-identifier/src/identifier.ts","../../babel-helper-validator-identifier/src/keyword.ts","../src/util/identifier.ts","../src/util/scope.ts","../src/plugins/flow/scope.ts","../src/plugins/flow/index.ts","../src/plugins/jsx/xhtml.ts","../src/util/whitespace.ts","../src/plugins/jsx/index.ts","../src/plugins/typescript/scope.ts","../src/util/production-parameter.ts","../src/parser/base.ts","../src/parser/comments.ts","../src/tokenizer/state.ts","../../babel-helper-string-parser/src/index.ts","../src/tokenizer/index.ts","../src/util/class-scope.ts","../src/util/expression-scope.ts","../src/parser/util.ts","../src/parser/node.ts","../src/parser/lval.ts","../src/plugins/typescript/index.ts","../src/plugins/placeholders.ts","../src/plugins/v8intrinsic.ts","../src/plugin-utils.ts","../src/parser/expression.ts","../src/parser/statement.ts","../src/parser/index.ts","../src/index.ts"],"sourcesContent":["export type Pos = {\n start: number;\n};\n\n// These are used when `options.locations` is on, for the\n// `startLoc` and `endLoc` properties.\n\nexport class Position {\n line: number;\n column: number;\n index: number;\n\n constructor(line: number, col: number, index: number) {\n this.line = line;\n this.column = col;\n this.index = index;\n }\n}\n\nexport class SourceLocation {\n start: Position;\n end: Position;\n filename: string | undefined;\n identifierName: string | undefined | null;\n\n constructor(start: Position, end?: Position) {\n this.start = start;\n // (may start as null, but initialized later)\n this.end = end!;\n }\n}\n\n/**\n * creates a new position with a non-zero column offset from the given position.\n * This function should be only be used when we create AST node out of the token\n * boundaries, such as TemplateElement ends before tt.templateNonTail. This\n * function does not skip whitespaces.\n */\nexport function createPositionWithColumnOffset(\n position: Position,\n columnOffset: number,\n) {\n const { line, column, index } = position;\n return new Position(line, column + columnOffset, index + columnOffset);\n}\n","import type { ParseErrorTemplates } from \"../parse-error.ts\";\n\nconst code = \"BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED\";\n\nexport default {\n ImportMetaOutsideModule: {\n message: `import.meta may appear only with 'sourceType: \"module\"'`,\n code,\n },\n ImportOutsideModule: {\n message: `'import' and 'export' may appear only with 'sourceType: \"module\"'`,\n code,\n },\n} satisfies ParseErrorTemplates;\n","const NodeDescriptions = {\n ArrayPattern: \"array destructuring pattern\",\n AssignmentExpression: \"assignment expression\",\n AssignmentPattern: \"assignment expression\",\n ArrowFunctionExpression: \"arrow function expression\",\n ConditionalExpression: \"conditional expression\",\n CatchClause: \"catch clause\",\n ForOfStatement: \"for-of statement\",\n ForInStatement: \"for-in statement\",\n ForStatement: \"for-loop\",\n FormalParameters: \"function parameter list\",\n Identifier: \"identifier\",\n ImportSpecifier: \"import specifier\",\n ImportDefaultSpecifier: \"import default specifier\",\n ImportNamespaceSpecifier: \"import namespace specifier\",\n ObjectPattern: \"object destructuring pattern\",\n ParenthesizedExpression: \"parenthesized expression\",\n RestElement: \"rest element\",\n UpdateExpression: {\n true: \"prefix operation\",\n false: \"postfix operation\",\n },\n VariableDeclarator: \"variable declaration\",\n YieldExpression: \"yield expression\",\n};\n\ntype NodeTypesWithDescriptions = keyof Omit<\n typeof NodeDescriptions,\n \"UpdateExpression\"\n>;\n\ntype NodeWithDescription =\n | {\n type: \"UpdateExpression\";\n prefix: boolean;\n }\n | {\n type: NodeTypesWithDescriptions;\n };\n\nconst toNodeDescription = (node: NodeWithDescription) =>\n node.type === \"UpdateExpression\"\n ? NodeDescriptions.UpdateExpression[`${node.prefix}`]\n : NodeDescriptions[node.type];\n\nexport default toNodeDescription;\n","import type { ParseErrorTemplates } from \"../parse-error.ts\";\nimport toNodeDescription from \"./to-node-description.ts\";\n\nexport type LValAncestor =\n | { type: \"UpdateExpression\"; prefix: boolean }\n | {\n type:\n | \"ArrayPattern\"\n | \"AssignmentExpression\"\n | \"CatchClause\"\n | \"ForOfStatement\"\n | \"FormalParameters\"\n | \"ForInStatement\"\n | \"ForStatement\"\n | \"ImportSpecifier\"\n | \"ImportNamespaceSpecifier\"\n | \"ImportDefaultSpecifier\"\n | \"ParenthesizedExpression\"\n | \"ObjectPattern\"\n | \"RestElement\"\n | \"VariableDeclarator\";\n };\n\nexport default {\n AccessorIsGenerator: ({ kind }: { kind: \"get\" | \"set\" }) =>\n `A ${kind}ter cannot be a generator.`,\n ArgumentsInClass:\n \"'arguments' is only allowed in functions and class methods.\",\n AsyncFunctionInSingleStatementContext:\n \"Async functions can only be declared at the top level or inside a block.\",\n AwaitBindingIdentifier:\n \"Can not use 'await' as identifier inside an async function.\",\n AwaitBindingIdentifierInStaticBlock:\n \"Can not use 'await' as identifier inside a static block.\",\n AwaitExpressionFormalParameter:\n \"'await' is not allowed in async function parameters.\",\n AwaitUsingNotInAsyncContext:\n \"'await using' is only allowed within async functions and at the top levels of modules.\",\n AwaitNotInAsyncContext:\n \"'await' is only allowed within async functions and at the top levels of modules.\",\n BadGetterArity: \"A 'get' accessor must not have any formal parameters.\",\n BadSetterArity: \"A 'set' accessor must have exactly one formal parameter.\",\n BadSetterRestParameter:\n \"A 'set' accessor function argument must not be a rest parameter.\",\n ConstructorClassField: \"Classes may not have a field named 'constructor'.\",\n ConstructorClassPrivateField:\n \"Classes may not have a private field named '#constructor'.\",\n ConstructorIsAccessor: \"Class constructor may not be an accessor.\",\n ConstructorIsAsync: \"Constructor can't be an async function.\",\n ConstructorIsGenerator: \"Constructor can't be a generator.\",\n DeclarationMissingInitializer: ({\n kind,\n }: {\n kind: \"await using\" | \"const\" | \"destructuring\" | \"using\";\n }) => `Missing initializer in ${kind} declaration.`,\n DecoratorArgumentsOutsideParentheses:\n \"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.\",\n DecoratorBeforeExport:\n \"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.\",\n DecoratorsBeforeAfterExport:\n \"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.\",\n DecoratorConstructor:\n \"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?\",\n DecoratorExportClass:\n \"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.\",\n DecoratorSemicolon: \"Decorators must not be followed by a semicolon.\",\n DecoratorStaticBlock: \"Decorators can't be used with a static block.\",\n DeferImportRequiresNamespace:\n 'Only `import defer * as x from \"./module\"` is valid.',\n DeletePrivateField: \"Deleting a private field is not allowed.\",\n DestructureNamedImport:\n \"ES2015 named imports do not destructure. Use another statement for destructuring after the import.\",\n DuplicateConstructor: \"Duplicate constructor in the same class.\",\n DuplicateDefaultExport: \"Only one default export allowed per module.\",\n DuplicateExport: ({ exportName }: { exportName: string }) =>\n `\\`${exportName}\\` has already been exported. Exported identifiers must be unique.`,\n DuplicateProto: \"Redefinition of __proto__ property.\",\n DuplicateRegExpFlags: \"Duplicate regular expression flag.\",\n ElementAfterRest: \"Rest element must be last element.\",\n EscapedCharNotAnIdentifier: \"Invalid Unicode escape.\",\n ExportBindingIsString: ({\n localName,\n exportName,\n }: {\n localName: string;\n exportName: string;\n }) =>\n `A string literal cannot be used as an exported binding without \\`from\\`.\\n- Did you mean \\`export { '${localName}' as '${exportName}' } from 'some-module'\\`?`,\n ExportDefaultFromAsIdentifier:\n \"'from' is not allowed as an identifier after 'export default'.\",\n\n ForInOfLoopInitializer: ({\n type,\n }: {\n type: \"ForInStatement\" | \"ForOfStatement\";\n }) =>\n `'${\n type === \"ForInStatement\" ? \"for-in\" : \"for-of\"\n }' loop variable declaration may not have an initializer.`,\n ForInUsing: \"For-in loop may not start with 'using' declaration.\",\n\n ForOfAsync: \"The left-hand side of a for-of loop may not be 'async'.\",\n ForOfLet: \"The left-hand side of a for-of loop may not start with 'let'.\",\n GeneratorInSingleStatementContext:\n \"Generators can only be declared at the top level or inside a block.\",\n\n IllegalBreakContinue: ({\n type,\n }: {\n type: \"BreakStatement\" | \"ContinueStatement\";\n }) => `Unsyntactic ${type === \"BreakStatement\" ? \"break\" : \"continue\"}.`,\n\n IllegalLanguageModeDirective:\n \"Illegal 'use strict' directive in function with non-simple parameter list.\",\n IllegalReturn: \"'return' outside of function.\",\n ImportAttributesUseAssert:\n \"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.\",\n ImportBindingIsString: ({ importName }: { importName: string }) =>\n `A string literal cannot be used as an imported binding.\\n- Did you mean \\`import { \"${importName}\" as foo }\\`?`,\n ImportCallArity: `\\`import()\\` requires exactly one or two arguments.`,\n ImportCallNotNewExpression: \"Cannot use new with import(...).\",\n ImportCallSpreadArgument: \"`...` is not allowed in `import()`.\",\n ImportJSONBindingNotDefault:\n \"A JSON module can only be imported with `default`.\",\n ImportReflectionHasAssertion: \"`import module x` cannot have assertions.\",\n ImportReflectionNotBinding:\n 'Only `import module x from \"./module\"` is valid.',\n IncompatibleRegExpUVFlags:\n \"The 'u' and 'v' regular expression flags cannot be enabled at the same time.\",\n InvalidBigIntLiteral: \"Invalid BigIntLiteral.\",\n InvalidCodePoint: \"Code point out of bounds.\",\n InvalidCoverDiscardElement:\n \"'void' must be followed by an expression when not used in a binding position.\",\n InvalidCoverInitializedName: \"Invalid shorthand property initializer.\",\n InvalidDecimal: \"Invalid decimal.\",\n InvalidDigit: ({ radix }: { radix: number }) =>\n `Expected number in radix ${radix}.`,\n InvalidEscapeSequence: \"Bad character escape sequence.\",\n InvalidEscapeSequenceTemplate: \"Invalid escape sequence in template.\",\n InvalidEscapedReservedWord: ({ reservedWord }: { reservedWord: string }) =>\n `Escape sequence in keyword ${reservedWord}.`,\n InvalidIdentifier: ({ identifierName }: { identifierName: string }) =>\n `Invalid identifier ${identifierName}.`,\n InvalidLhs: ({ ancestor }: { ancestor: LValAncestor }) =>\n `Invalid left-hand side in ${toNodeDescription(ancestor)}.`,\n InvalidLhsBinding: ({ ancestor }: { ancestor: LValAncestor }) =>\n `Binding invalid left-hand side in ${toNodeDescription(ancestor)}.`,\n InvalidLhsOptionalChaining: ({ ancestor }: { ancestor: LValAncestor }) =>\n `Invalid optional chaining in the left-hand side of ${toNodeDescription(\n ancestor,\n )}.`,\n InvalidNumber: \"Invalid number.\",\n InvalidOrMissingExponent:\n \"Floating-point numbers require a valid exponent after the 'e'.\",\n InvalidOrUnexpectedToken: ({ unexpected }: { unexpected: string }) =>\n `Unexpected character '${unexpected}'.`,\n InvalidParenthesizedAssignment: \"Invalid parenthesized assignment pattern.\",\n InvalidPrivateFieldResolution: ({\n identifierName,\n }: {\n identifierName: string;\n }) => `Private name #${identifierName} is not defined.`,\n InvalidPropertyBindingPattern: \"Binding member expression.\",\n InvalidRecordProperty:\n \"Only properties and spread elements are allowed in record definitions.\",\n InvalidRestAssignmentPattern: \"Invalid rest operator's argument.\",\n LabelRedeclaration: ({ labelName }: { labelName: string }) =>\n `Label '${labelName}' is already declared.`,\n LetInLexicalBinding: \"'let' is disallowed as a lexically bound name.\",\n LineTerminatorBeforeArrow: \"No line break is allowed before '=>'.\",\n MalformedRegExpFlags: \"Invalid regular expression flag.\",\n MissingClassName: \"A class name is required.\",\n MissingEqInAssignment:\n \"Only '=' operator can be used for specifying default value.\",\n MissingSemicolon: \"Missing semicolon.\",\n MissingPlugin: ({ missingPlugin }: { missingPlugin: [string] }) =>\n `This experimental syntax requires enabling the parser plugin: ${missingPlugin\n .map(name => JSON.stringify(name))\n .join(\", \")}.`,\n // FIXME: Would be nice to make this \"missingPlugins\" instead.\n // Also, seems like we can drop the \"(s)\" from the message and just make it \"s\".\n MissingOneOfPlugins: ({ missingPlugin }: { missingPlugin: string[] }) =>\n `This experimental syntax requires enabling one of the following parser plugin(s): ${missingPlugin\n .map(name => JSON.stringify(name))\n .join(\", \")}.`,\n MissingUnicodeEscape: \"Expecting Unicode escape sequence \\\\uXXXX.\",\n MixingCoalesceWithLogical:\n \"Nullish coalescing operator(??) requires parens when mixing with logical operators.\",\n ModuleAttributeDifferentFromType:\n \"The only accepted module attribute is `type`.\",\n ModuleAttributeInvalidValue:\n \"Only string literals are allowed as module attribute values.\",\n ModuleAttributesWithDuplicateKeys: ({ key }: { key: string }) =>\n `Duplicate key \"${key}\" is not allowed in module attributes.`,\n ModuleExportNameHasLoneSurrogate: ({\n surrogateCharCode,\n }: {\n surrogateCharCode: number;\n }) =>\n `An export name cannot include a lone surrogate, found '\\\\u${surrogateCharCode.toString(\n 16,\n )}'.`,\n ModuleExportUndefined: ({ localName }: { localName: string }) =>\n `Export '${localName}' is not defined.`,\n MultipleDefaultsInSwitch: \"Multiple default clauses.\",\n NewlineAfterThrow: \"Illegal newline after throw.\",\n NoCatchOrFinally: \"Missing catch or finally clause.\",\n NumberIdentifier: \"Identifier directly after number.\",\n NumericSeparatorInEscapeSequence:\n \"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.\",\n ObsoleteAwaitStar:\n \"'await*' has been removed from the async functions proposal. Use Promise.all() instead.\",\n OptionalChainingNoNew:\n \"Constructors in/after an Optional Chain are not allowed.\",\n OptionalChainingNoTemplate:\n \"Tagged Template Literals are not allowed in optionalChain.\",\n OverrideOnConstructor:\n \"'override' modifier cannot appear on a constructor declaration.\",\n ParamDupe: \"Argument name clash.\",\n PatternHasAccessor: \"Object pattern can't contain getter or setter.\",\n PatternHasMethod: \"Object pattern can't contain methods.\",\n PrivateInExpectedIn: ({ identifierName }: { identifierName: string }) =>\n `Private names are only allowed in property accesses (\\`obj.#${identifierName}\\`) or in \\`in\\` expressions (\\`#${identifierName} in obj\\`).`,\n PrivateNameRedeclaration: ({ identifierName }: { identifierName: string }) =>\n `Duplicate private name #${identifierName}.`,\n RecordExpressionBarIncorrectEndSyntaxType:\n \"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.\",\n RecordExpressionBarIncorrectStartSyntaxType:\n \"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.\",\n RecordExpressionHashIncorrectStartSyntaxType:\n \"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.\",\n RecordNoProto: \"'__proto__' is not allowed in Record expressions.\",\n RestTrailingComma: \"Unexpected trailing comma after rest element.\",\n SloppyFunction:\n \"In non-strict mode code, functions can only be declared at top level or inside a block.\",\n SloppyFunctionAnnexB:\n \"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.\",\n SourcePhaseImportRequiresDefault:\n 'Only `import source x from \"./module\"` is valid.',\n StaticPrototype: \"Classes may not have static property named prototype.\",\n SuperNotAllowed:\n \"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?\",\n SuperPrivateField: \"Private fields can't be accessed on super.\",\n TrailingDecorator: \"Decorators must be attached to a class element.\",\n TupleExpressionBarIncorrectEndSyntaxType:\n \"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.\",\n TupleExpressionBarIncorrectStartSyntaxType:\n \"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.\",\n TupleExpressionHashIncorrectStartSyntaxType:\n \"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.\",\n UnexpectedArgumentPlaceholder: \"Unexpected argument placeholder.\",\n UnexpectedAwaitAfterPipelineBody:\n 'Unexpected \"await\" after pipeline body; await must have parentheses in minimal proposal.',\n UnexpectedDigitAfterHash: \"Unexpected digit after hash token.\",\n UnexpectedImportExport:\n \"'import' and 'export' may only appear at the top level.\",\n UnexpectedKeyword: ({ keyword }: { keyword: string }) =>\n `Unexpected keyword '${keyword}'.`,\n UnexpectedLeadingDecorator:\n \"Leading decorators must be attached to a class declaration.\",\n UnexpectedLexicalDeclaration:\n \"Lexical declaration cannot appear in a single-statement context.\",\n UnexpectedNewTarget:\n \"`new.target` can only be used in functions or class properties.\",\n UnexpectedNumericSeparator:\n \"A numeric separator is only allowed between two digits.\",\n UnexpectedPrivateField: \"Unexpected private name.\",\n UnexpectedReservedWord: ({ reservedWord }: { reservedWord: string }) =>\n `Unexpected reserved word '${reservedWord}'.`,\n UnexpectedSuper: \"'super' is only allowed in object methods and classes.\",\n UnexpectedToken: ({\n expected,\n unexpected,\n }: {\n expected?: string | null;\n unexpected?: string | null;\n }) =>\n `Unexpected token${unexpected ? ` '${unexpected}'.` : \"\"}${\n expected ? `, expected \"${expected}\"` : \"\"\n }`,\n UnexpectedTokenUnaryExponentiation:\n \"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.\",\n UnexpectedUsingDeclaration:\n \"Using declaration cannot appear in the top level when source type is `script` or in the bare case statement.\",\n UnexpectedVoidPattern: \"Unexpected void binding.\",\n UnsupportedBind: \"Binding should be performed on object property.\",\n UnsupportedDecoratorExport:\n \"A decorated export must export a class declaration.\",\n UnsupportedDefaultExport:\n \"Only expressions, functions or classes are allowed as the `default` export.\",\n UnsupportedImport:\n \"`import` can only be used in `import()` or `import.meta`.\",\n UnsupportedMetaProperty: ({\n target,\n onlyValidPropertyName,\n }: {\n target: string;\n onlyValidPropertyName: string;\n }) =>\n `The only valid meta property for ${target} is ${target}.${onlyValidPropertyName}.`,\n UnsupportedParameterDecorator:\n \"Decorators cannot be used to decorate parameters.\",\n UnsupportedPropertyDecorator:\n \"Decorators cannot be used to decorate object literal properties.\",\n UnsupportedSuper:\n \"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).\",\n UnterminatedComment: \"Unterminated comment.\",\n UnterminatedRegExp: \"Unterminated regular expression.\",\n UnterminatedString: \"Unterminated string constant.\",\n UnterminatedTemplate: \"Unterminated template.\",\n UsingDeclarationExport: \"Using declaration cannot be exported.\",\n UsingDeclarationHasBindingPattern:\n \"Using declaration cannot have destructuring patterns.\",\n VarRedeclaration: ({ identifierName }: { identifierName: string }) =>\n `Identifier '${identifierName}' has already been declared.`,\n VoidPatternCatchClauseParam:\n \"A void binding can not be the catch clause parameter. Use `try { ... } catch { ... }` if you want to discard the caught error.\",\n VoidPatternInitializer: \"A void binding may not have an initializer.\",\n YieldBindingIdentifier:\n \"Can not use 'yield' as identifier inside a generator.\",\n YieldInParameter: \"Yield expression is not allowed in formal parameters.\",\n YieldNotInGeneratorFunction:\n \"'yield' is only allowed within generator functions.\",\n ZeroDigitNumericSeparator:\n \"Numeric separator can not be used after leading 0.\",\n} satisfies ParseErrorTemplates;\n","import type { ParseErrorTemplates } from \"../parse-error\";\n\nexport default {\n StrictDelete: \"Deleting local variable in strict mode.\",\n\n // `referenceName` is the StringValue[1] of an IdentifierReference[2], which\n // is represented as just an `Identifier`[3] in the Babel AST.\n // 1. https://tc39.es/ecma262/#sec-static-semantics-stringvalue\n // 2. https://tc39.es/ecma262/#prod-IdentifierReference\n // 3. https://github.com/babel/babel/blob/main/packages/babel-parser/ast/spec.md#identifier\n StrictEvalArguments: ({ referenceName }: { referenceName: string }) =>\n `Assigning to '${referenceName}' in strict mode.`,\n\n // `bindingName` is the StringValue[1] of a BindingIdentifier[2], which is\n // represented as just an `Identifier`[3] in the Babel AST.\n // 1. https://tc39.es/ecma262/#sec-static-semantics-stringvalue\n // 2. https://tc39.es/ecma262/#prod-BindingIdentifier\n // 3. https://github.com/babel/babel/blob/main/packages/babel-parser/ast/spec.md#identifier\n StrictEvalArgumentsBinding: ({ bindingName }: { bindingName: string }) =>\n `Binding '${bindingName}' in strict mode.`,\n\n StrictFunction:\n \"In strict mode code, functions can only be declared at top level or inside a block.\",\n\n StrictNumericEscape: \"The only valid numeric escape in strict mode is '\\\\0'.\",\n\n StrictOctalLiteral: \"Legacy octal literals are not allowed in strict mode.\",\n\n StrictWith: \"'with' in strict mode.\",\n} satisfies ParseErrorTemplates;\n","import type { ParseErrorTemplates } from \"../parse-error.ts\";\n\nexport default {\n ParseExpressionEmptyInput:\n \"Unexpected parseExpression() input: The input is empty or contains only comments.\",\n ParseExpressionExpectsEOF: ({ unexpected }: { unexpected: number }) =>\n `Unexpected parseExpression() input: The input should contain exactly one expression, but the first expression is followed by the unexpected character \\`${String.fromCodePoint(unexpected)}\\`.`,\n} satisfies ParseErrorTemplates;\n","import type { ParseErrorTemplates } from \"../parse-error.ts\";\nimport toNodeDescription from \"./to-node-description.ts\";\n\nexport const UnparenthesizedPipeBodyDescriptions = new Set([\n \"ArrowFunctionExpression\",\n \"AssignmentExpression\",\n \"ConditionalExpression\",\n \"YieldExpression\",\n] as const);\n\ntype GetSetMemberType> =\n T extends Set ? M : unknown;\n\nexport type UnparenthesizedPipeBodyTypes = GetSetMemberType<\n typeof UnparenthesizedPipeBodyDescriptions\n>;\n\nexport default {\n // This error is only used by the smart-mix proposal\n PipeBodyIsTighter:\n \"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.\",\n PipeTopicRequiresHackPipes: process.env.BABEL_8_BREAKING\n ? 'Topic references are only supported when using the `\"proposal\": \"hack\"` version of the pipeline proposal.'\n : 'Topic reference is used, but the pipelineOperator plugin was not passed a \"proposal\": \"hack\" or \"smart\" option.',\n PipeTopicUnbound:\n \"Topic reference is unbound; it must be inside a pipe body.\",\n PipeTopicUnconfiguredToken: ({ token }: { token: string }) =>\n `Invalid topic token ${token}. In order to use ${token} as a topic reference, the pipelineOperator plugin must be configured with { \"proposal\": \"hack\", \"topicToken\": \"${token}\" }.`,\n PipeTopicUnused:\n \"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.\",\n PipeUnparenthesizedBody: ({ type }: { type: UnparenthesizedPipeBodyTypes }) =>\n `Hack-style pipe body cannot be an unparenthesized ${toNodeDescription({\n type,\n })}; please wrap it in parentheses.`,\n\n ...(process.env.BABEL_8_BREAKING\n ? {}\n : {\n // Messages whose codes start with “Pipeline” or “PrimaryTopic”\n // are retained for backwards compatibility\n // with the deprecated smart-mix pipe operator proposal plugin.\n // They are subject to removal in a future major version.\n PipelineBodyNoArrow:\n 'Unexpected arrow \"=>\" after pipeline body; arrow function in pipeline body must be parenthesized.',\n PipelineBodySequenceExpression:\n \"Pipeline body may not be a comma-separated sequence expression.\",\n PipelineHeadSequenceExpression:\n \"Pipeline head should not be a comma-separated sequence expression.\",\n PipelineTopicUnused:\n \"Pipeline is in topic style but does not use topic reference.\",\n PrimaryTopicNotAllowed:\n \"Topic reference was used in a lexical context without topic binding.\",\n PrimaryTopicRequiresSmartPipeline:\n 'Topic reference is used, but the pipelineOperator plugin was not passed a \"proposal\": \"hack\" or \"smart\" option.',\n }),\n} satisfies ParseErrorTemplates;\n","import { Position } from \"./util/location.ts\";\n\ntype SyntaxPlugin =\n | \"flow\"\n | \"typescript\"\n | \"jsx\"\n | \"pipelineOperator\"\n | \"placeholders\";\n\ntype ParseErrorCode =\n | \"BABEL_PARSER_SYNTAX_ERROR\"\n | \"BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED\";\n\n// Babel uses \"normal\" SyntaxErrors for it's errors, but adds some extra\n// functionality. This functionality is defined in the\n// `ParseErrorSpecification` interface below. We may choose to change to someday\n// give our errors their own full-blown class, but until then this allow us to\n// keep all the desirable properties of SyntaxErrors (like their name in stack\n// traces, etc.), and also allows us to punt on any publicly facing\n// class-hierarchy decisions until Babel 8.\ninterface ParseErrorSpecification {\n // Look, these *could* be readonly, but then Flow complains when we initially\n // set them. We could do a whole dance and make a special interface that's not\n // readonly for when we create the error, then cast it to the readonly\n // interface for public use, but the previous implementation didn't have them\n // as readonly, so let's just not worry about it for now.\n code: ParseErrorCode;\n reasonCode: string;\n syntaxPlugin?: SyntaxPlugin;\n missingPlugin?: string | string[];\n loc: Position;\n details: ErrorDetails;\n\n // We should consider removing this as it now just contains the same\n // information as `loc.index`.\n pos: number;\n}\n\nexport type ParseError = SyntaxError &\n ParseErrorSpecification;\n\n// By `ParseErrorConstructor`, we mean something like the new-less style\n// `ErrorConstructor`[1], since `ParseError`'s are not themselves actually\n// separate classes from `SyntaxError`'s.\n//\n// 1. https://github.com/microsoft/TypeScript/blob/v4.5.5/lib/lib.es5.d.ts#L1027\nexport type ParseErrorConstructor = (\n loc: Position,\n details: ErrorDetails,\n) => ParseError;\n\ntype ToMessage = (self: ErrorDetails) => string;\n\ntype ParseErrorCredentials = {\n code: string;\n reasonCode: string;\n syntaxPlugin?: SyntaxPlugin;\n toMessage: ToMessage;\n};\n\nfunction defineHidden(obj: object, key: string, value: unknown) {\n Object.defineProperty(obj, key, {\n enumerable: false,\n configurable: true,\n value,\n });\n}\n\nfunction toParseErrorConstructor({\n toMessage,\n code,\n reasonCode,\n syntaxPlugin,\n}: ParseErrorCredentials): ParseErrorConstructor {\n const hasMissingPlugin =\n reasonCode === \"MissingPlugin\" || reasonCode === \"MissingOneOfPlugins\";\n\n if (!process.env.BABEL_8_BREAKING) {\n const oldReasonCodes: Record = {\n AccessorCannotDeclareThisParameter: \"AccesorCannotDeclareThisParameter\",\n AccessorCannotHaveTypeParameters: \"AccesorCannotHaveTypeParameters\",\n ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:\n \"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference\",\n SetAccessorCannotHaveOptionalParameter:\n \"SetAccesorCannotHaveOptionalParameter\",\n SetAccessorCannotHaveRestParameter: \"SetAccesorCannotHaveRestParameter\",\n SetAccessorCannotHaveReturnType: \"SetAccesorCannotHaveReturnType\",\n };\n if (oldReasonCodes[reasonCode]) {\n reasonCode = oldReasonCodes[reasonCode];\n }\n }\n\n return function constructor(loc: Position, details: ErrorDetails) {\n const error: ParseError = new SyntaxError() as any;\n\n error.code = code as ParseErrorCode;\n error.reasonCode = reasonCode;\n error.loc = loc;\n error.pos = loc.index;\n\n error.syntaxPlugin = syntaxPlugin;\n if (hasMissingPlugin) {\n error.missingPlugin = (details as any).missingPlugin;\n }\n\n type Overrides = {\n loc?: Position;\n details?: ErrorDetails;\n };\n defineHidden(error, \"clone\", function clone(overrides: Overrides = {}) {\n const { line, column, index } = overrides.loc ?? loc;\n return constructor(new Position(line, column, index), {\n ...details,\n ...overrides.details,\n });\n });\n\n defineHidden(error, \"details\", details);\n\n Object.defineProperty(error, \"message\", {\n configurable: true,\n get(this: ParseError): string {\n const message = `${toMessage(details)} (${loc.line}:${loc.column})`;\n this.message = message;\n return message;\n },\n set(value: string) {\n Object.defineProperty(this, \"message\", { value, writable: true });\n },\n });\n\n return error;\n };\n}\n\ntype ParseErrorTemplate =\n | string\n | ToMessage\n | { message: string | ToMessage; code?: ParseErrorCode };\n\nexport type ParseErrorTemplates = Record;\n\n// This is the templated form of `ParseErrorEnum`.\n//\n// Note: We could factor out the return type calculation into something like\n// `ParseErrorConstructor`, and then we could\n// reuse it in the non-templated form of `ParseErrorEnum`, but TypeScript\n// doesn't seem to drill down that far when showing you the computed type of\n// an object in an editor, so we'll leave it inlined for now.\nexport function ParseErrorEnum(a: TemplateStringsArray): <\n T extends ParseErrorTemplates,\n>(\n parseErrorTemplates: T,\n) => {\n [K in keyof T]: ParseErrorConstructor<\n T[K] extends { message: string | ToMessage }\n ? T[K][\"message\"] extends ToMessage\n ? Parameters[0]\n : object\n : T[K] extends ToMessage\n ? Parameters[0]\n : object\n >;\n};\n\nexport function ParseErrorEnum(\n parseErrorTemplates: T,\n syntaxPlugin?: SyntaxPlugin,\n): {\n [K in keyof T]: ParseErrorConstructor<\n T[K] extends { message: string | ToMessage }\n ? T[K][\"message\"] extends ToMessage\n ? Parameters[0]\n : object\n : T[K] extends ToMessage\n ? Parameters[0]\n : object\n >;\n};\n\n// You call `ParseErrorEnum` with a mapping from `ReasonCode`'s to either:\n//\n// 1. a static error message,\n// 2. `toMessage` functions that define additional necessary `details` needed by\n// the `ParseError`, or\n// 3. Objects that contain a `message` of one of the above and overridden `code`\n// and/or `reasonCode`:\n//\n// ParseErrorEnum `optionalSyntaxPlugin` ({\n// ErrorWithStaticMessage: \"message\",\n// ErrorWithDynamicMessage: ({ type } : { type: string }) => `${type}`),\n// ErrorWithOverriddenCodeAndOrReasonCode: {\n// message: ({ type }: { type: string }) => `${type}`),\n// code: \"AN_ERROR_CODE\",\n// ...(BABEL_8_BREAKING ? { } : { reasonCode: \"CustomErrorReasonCode\" })\n// }\n// });\n//\nexport function ParseErrorEnum(\n argument: TemplateStringsArray | ParseErrorTemplates,\n syntaxPlugin?: SyntaxPlugin,\n) {\n // If the first parameter is an array, that means we were called with a tagged\n // template literal. Extract the syntaxPlugin from this, and call again in\n // the \"normalized\" form.\n if (Array.isArray(argument)) {\n return (parseErrorTemplates: ParseErrorTemplates) =>\n ParseErrorEnum(parseErrorTemplates, argument[0]);\n }\n\n const ParseErrorConstructors = {} as Record<\n string,\n ParseErrorConstructor\n >;\n\n for (const reasonCode of Object.keys(argument)) {\n const template = (argument as ParseErrorTemplates)[reasonCode];\n const { message, ...rest } =\n typeof template === \"string\"\n ? { message: () => template }\n : typeof template === \"function\"\n ? { message: template }\n : template;\n const toMessage = typeof message === \"string\" ? () => message : message;\n\n ParseErrorConstructors[reasonCode] = toParseErrorConstructor({\n code: \"BABEL_PARSER_SYNTAX_ERROR\",\n reasonCode,\n toMessage,\n ...(syntaxPlugin ? { syntaxPlugin } : {}),\n ...rest,\n });\n }\n\n return ParseErrorConstructors;\n}\n\nimport ModuleErrors from \"./parse-error/module-errors.ts\";\nimport StandardErrors from \"./parse-error/standard-errors.ts\";\nimport StrictModeErrors from \"./parse-error/strict-mode-errors.ts\";\nimport ParseExpressionErrors from \"./parse-error/parse-expression-errors.ts\";\nimport PipelineOperatorErrors from \"./parse-error/pipeline-operator-errors.ts\";\n\nexport const Errors = {\n ...ParseErrorEnum(ModuleErrors),\n ...ParseErrorEnum(StandardErrors),\n ...ParseErrorEnum(StrictModeErrors),\n ...ParseErrorEnum(ParseExpressionErrors),\n ...ParseErrorEnum`pipelineOperator`(PipelineOperatorErrors),\n};\n\nexport type { LValAncestor } from \"./parse-error/standard-errors.ts\";\n","import type { Plugin } from \"./plugin-utils.ts\";\n\n// A second optional argument can be given to further configure\n// the parser process. These options are recognized:\n\nexport type SourceType = \"script\" | \"commonjs\" | \"module\" | \"unambiguous\";\n\nexport interface Options {\n /**\n * By default, import and export declarations can only appear at a program's top level.\n * Setting this option to true allows them anywhere where a statement is allowed.\n */\n allowImportExportEverywhere?: boolean;\n\n /**\n * By default, await use is not allowed outside of an async function.\n * Set this to true to accept such code.\n */\n allowAwaitOutsideFunction?: boolean;\n\n /**\n * By default, a return statement at the top level raises an error.\n * Set this to true to accept such code.\n */\n allowReturnOutsideFunction?: boolean;\n\n /**\n * By default, new.target use is not allowed outside of a function or class.\n * Set this to true to accept such code.\n */\n allowNewTargetOutsideFunction?: boolean;\n\n /**\n * By default, super calls are not allowed outside of a method.\n * Set this to true to accept such code.\n */\n allowSuperOutsideMethod?: boolean;\n\n /**\n * By default, exported identifiers must refer to a declared variable.\n * Set this to true to allow export statements to reference undeclared variables.\n */\n allowUndeclaredExports?: boolean;\n\n /**\n * By default, yield use is not allowed outside of a generator function.\n * Set this to true to accept such code.\n */\n\n allowYieldOutsideFunction?: boolean;\n\n /**\n * By default, Babel parser JavaScript code according to Annex B syntax.\n * Set this to `false` to disable such behavior.\n */\n annexB?: boolean;\n\n /**\n * By default, Babel attaches comments to adjacent AST nodes.\n * When this option is set to false, comments are not attached.\n * It can provide up to 30% performance improvement when the input code has many comments.\n * @babel/eslint-parser will set it for you.\n * It is not recommended to use attachComment: false with Babel transform,\n * as doing so removes all the comments in output code, and renders annotations such as\n * /* istanbul ignore next *\\/ nonfunctional.\n */\n attachComment?: boolean;\n\n /**\n * By default, Babel always throws an error when it finds some invalid code.\n * When this option is set to true, it will store the parsing error and\n * try to continue parsing the invalid input file.\n */\n errorRecovery?: boolean;\n\n /**\n * Indicate the mode the code should be parsed in.\n * Can be one of \"script\", \"commonjs\", \"module\", or \"unambiguous\". Defaults to \"script\".\n * \"unambiguous\" will make @babel/parser attempt to guess, based on the presence\n * of ES6 import or export statements.\n * Files with ES6 imports and exports are considered \"module\" and are otherwise \"script\".\n *\n * Use \"commonjs\" to parse code that is intended to be run in a CommonJS environment such as Node.js.\n */\n sourceType?: SourceType;\n\n /**\n * Correlate output AST nodes with their source filename.\n * Useful when generating code and source maps from the ASTs of multiple input files.\n */\n sourceFilename?: string;\n\n /**\n * By default, all source indexes start from 0.\n * You can provide a start index to alternatively start with.\n * Useful for integration with other source tools.\n */\n startIndex?: number;\n\n /**\n * By default, the first line of code parsed is treated as line 1.\n * You can provide a line number to alternatively start with.\n * Useful for integration with other source tools.\n */\n startLine?: number;\n\n /**\n * By default, the parsed code is treated as if it starts from line 1, column 0.\n * You can provide a column number to alternatively start with.\n * Useful for integration with other source tools.\n */\n startColumn?: number;\n\n /**\n * Array containing the plugins that you want to enable.\n */\n plugins?: Plugin[];\n\n /**\n * Should the parser work in strict mode.\n * Defaults to true if sourceType === 'module'. Otherwise, false.\n */\n strictMode?: boolean;\n\n /**\n * Adds a ranges property to each node: [node.start, node.end]\n */\n ranges?: boolean;\n\n /**\n * Adds all parsed tokens to a tokens property on the File node.\n */\n tokens?: boolean;\n\n /**\n * By default, the parser adds information about parentheses by setting\n * `extra.parenthesized` to `true` as needed.\n * When this option is `true` the parser creates `ParenthesizedExpression`\n * AST nodes instead of using the `extra` property.\n */\n createParenthesizedExpressions?: boolean;\n\n /**\n * The default is false in Babel 7 and true in Babel 8\n * Set this to true to parse it as an `ImportExpression` node.\n * Otherwise `import(foo)` is parsed as `CallExpression(Import, [Identifier(foo)])`.\n */\n createImportExpressions?: boolean;\n}\n\nexport const enum OptionFlags {\n AllowAwaitOutsideFunction = 1 << 0,\n AllowReturnOutsideFunction = 1 << 1,\n AllowNewTargetOutsideFunction = 1 << 2,\n AllowImportExportEverywhere = 1 << 3,\n AllowSuperOutsideMethod = 1 << 4,\n AllowYieldOutsideFunction = 1 << 5,\n AllowUndeclaredExports = 1 << 6,\n Ranges = 1 << 7,\n Tokens = 1 << 8,\n CreateImportExpressions = 1 << 9,\n CreateParenthesizedExpressions = 1 << 10,\n ErrorRecovery = 1 << 11,\n AttachComment = 1 << 12,\n AnnexB = 1 << 13,\n}\n\ntype KeepOptionalKeys = \"sourceFilename\" | \"strictMode\";\nexport type OptionsWithDefaults = Omit, KeepOptionalKeys> &\n Pick;\n\nfunction createDefaultOptions(): OptionsWithDefaults {\n return {\n // Source type (\"script\" or \"module\") for different semantics\n sourceType: \"script\",\n // Source filename.\n sourceFilename: undefined,\n // Index (0-based) from which to start counting source. Useful for\n // integration with other tools.\n startIndex: 0,\n // Column (0-based) from which to start counting source. Useful for\n // integration with other tools.\n startColumn: 0,\n // Line (1-based) from which to start counting source. Useful for\n // integration with other tools.\n startLine: 1,\n // When enabled, await at the top level is not considered an\n // error.\n allowAwaitOutsideFunction: false,\n // When enabled, a return at the top level is not considered an\n // error.\n allowReturnOutsideFunction: false,\n // When enabled, new.target outside a function or class is not\n // considered an error.\n allowNewTargetOutsideFunction: false,\n // When enabled, import/export statements are not constrained to\n // appearing at the top of the program.\n allowImportExportEverywhere: false,\n // When enabled, super outside a method is not considered an error.\n allowSuperOutsideMethod: false,\n // When enabled, export statements can reference undeclared variables.\n allowUndeclaredExports: false,\n allowYieldOutsideFunction: false,\n // An array of plugins to enable\n plugins: [],\n // TODO\n strictMode: undefined,\n // Nodes have their start and end characters offsets recorded in\n // `start` and `end` properties (directly on the node, rather than\n // the `loc` object, which holds line/column data. To also add a\n // [semi-standardized][range] `range` property holding a `[start,\n // end]` array with the same numbers, set the `ranges` option to\n // `true`.\n //\n // [range]: https://bugzilla.mozilla.org/show_bug.cgi?id=745678\n ranges: false,\n // Adds all parsed tokens to a `tokens` property on the `File` node\n tokens: false,\n // Whether to create ImportExpression AST nodes (if false\n // `import(foo)` will be parsed as CallExpression(Import, [Identifier(foo)])\n createImportExpressions: process.env.BABEL_8_BREAKING ? true : false,\n // Whether to create ParenthesizedExpression AST nodes (if false\n // the parser sets extra.parenthesized on the expression nodes instead).\n createParenthesizedExpressions: false,\n // When enabled, errors are attached to the AST instead of being directly thrown.\n // Some errors will still throw, because @babel/parser can't always recover.\n errorRecovery: false,\n // When enabled, comments will be attached to adjacent AST nodes as one of\n // `leadingComments`, `trailingComments` and `innerComments`. The comment attachment\n // is vital to preserve comments after transform. If you don't print AST back,\n // consider set this option to `false` for performance\n attachComment: true,\n // When enabled, the parser will support Annex B syntax.\n // https://tc39.es/ecma262/#sec-additional-ecmascript-features-for-web-browsers\n annexB: true,\n };\n}\n\n// Interpret and default an options object\n\nexport function getOptions(opts?: Options | null): OptionsWithDefaults {\n // https://github.com/babel/babel/pull/16918\n // `options` is accessed frequently, please make sure it is a fast object.\n // `%ToFastProperties` can make it a fast object, but the performance is the same as the slow object.\n const options: any = createDefaultOptions();\n\n if (opts == null) {\n return options;\n }\n if (opts.annexB != null && opts.annexB !== false) {\n throw new Error(\"The `annexB` option can only be set to `false`.\");\n }\n\n for (const key of Object.keys(options) as (keyof Options)[]) {\n if (opts[key] != null) options[key] = opts[key];\n }\n\n if (options.startLine === 1) {\n if (opts.startIndex == null && options.startColumn > 0) {\n options.startIndex = options.startColumn;\n } else if (opts.startColumn == null && options.startIndex > 0) {\n options.startColumn = options.startIndex;\n }\n } else if (opts.startColumn == null || opts.startIndex == null) {\n if (opts.startIndex != null || process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"With a `startLine > 1` you must also specify `startIndex` and `startColumn`.\",\n );\n }\n }\n\n if (options.sourceType === \"commonjs\") {\n if (opts.allowAwaitOutsideFunction != null) {\n throw new Error(\n \"The `allowAwaitOutsideFunction` option cannot be used with `sourceType: 'commonjs'`.\",\n );\n }\n if (opts.allowReturnOutsideFunction != null) {\n throw new Error(\n \"`sourceType: 'commonjs'` implies `allowReturnOutsideFunction: true`, please remove the `allowReturnOutsideFunction` option or use `sourceType: 'script'`.\",\n );\n }\n if (opts.allowNewTargetOutsideFunction != null) {\n throw new Error(\n \"`sourceType: 'commonjs'` implies `allowNewTargetOutsideFunction: true`, please remove the `allowNewTargetOutsideFunction` option or use `sourceType: 'script'`.\",\n );\n }\n }\n\n return options;\n}\n","import type { TokenType } from \"../tokenizer/types.ts\";\nimport type Parser from \"../parser/index.ts\";\nimport type * as N from \"../types.ts\";\nimport type { Node as NodeType, NodeBase } from \"../types.ts\";\nimport type { Position } from \"../util/location.ts\";\nimport { Errors } from \"../parse-error.ts\";\nimport type { Undone } from \"../parser/node.ts\";\nimport type { BindingFlag } from \"../util/scopeflags.ts\";\nimport { OptionFlags } from \"../options.ts\";\nimport type { ExpressionErrors } from \"../parser/util.ts\";\nimport type { ParseResult, File } from \"../index.ts\";\n\nconst { defineProperty } = Object;\nconst toUnenumerable = (object: any, key: string) => {\n if (object) {\n defineProperty(object, key, { enumerable: false, value: object[key] });\n }\n};\n\nfunction toESTreeLocation(node: any) {\n toUnenumerable(node.loc.start, \"index\");\n toUnenumerable(node.loc.end, \"index\");\n\n return node;\n}\n\nexport default (superClass: typeof Parser) =>\n class ESTreeParserMixin extends superClass implements Parser {\n parse(): ParseResult {\n const file = toESTreeLocation(super.parse());\n\n if (this.optionFlags & OptionFlags.Tokens) {\n file.tokens = file.tokens.map(toESTreeLocation);\n }\n\n return file;\n }\n\n // @ts-expect-error ESTree plugin changes node types\n parseRegExpLiteral({ pattern, flags }): N.EstreeRegExpLiteral {\n let regex: RegExp | null = null;\n try {\n regex = new RegExp(pattern, flags);\n } catch (_) {\n // In environments that don't support these flags value will\n // be null as the regex can't be represented natively.\n }\n const node = this.estreeParseLiteral(regex);\n node.regex = { pattern, flags };\n\n return node;\n }\n\n // @ts-expect-error ESTree plugin changes node types\n parseBigIntLiteral(value: any): N.Node {\n // https://github.com/estree/estree/blob/master/es2020.md#bigintliteral\n let bigInt: bigint | null;\n try {\n bigInt = BigInt(value);\n } catch {\n bigInt = null;\n }\n const node = this.estreeParseLiteral(bigInt);\n node.bigint = String(node.value || value);\n\n return node;\n }\n\n // @ts-expect-error ESTree plugin changes node types\n parseDecimalLiteral(value: any): N.Node {\n // https://github.com/estree/estree/blob/master/experimental/decimal.md\n // todo: use BigDecimal when node supports it.\n const decimal: null = null;\n const node = this.estreeParseLiteral(decimal);\n node.decimal = String(node.value || value);\n\n return node;\n }\n\n estreeParseLiteral(value: any) {\n // @ts-expect-error ESTree plugin changes node types\n return this.parseLiteral(value, \"Literal\");\n }\n\n // @ts-expect-error ESTree plugin changes node types\n parseStringLiteral(value: any): N.Node {\n return this.estreeParseLiteral(value);\n }\n\n parseNumericLiteral(value: any): any {\n return this.estreeParseLiteral(value);\n }\n\n // @ts-expect-error ESTree plugin changes node types\n parseNullLiteral(): N.Node {\n return this.estreeParseLiteral(null);\n }\n\n parseBooleanLiteral(value: boolean): N.BooleanLiteral {\n // @ts-expect-error ESTree plugin changes node types\n return this.estreeParseLiteral(value);\n }\n\n // https://github.com/estree/estree/blob/master/es2020.md#chainexpression\n estreeParseChainExpression(\n node: N.Expression,\n endLoc: Position,\n ): N.EstreeChainExpression {\n const chain = this.startNodeAtNode(node);\n chain.expression = node;\n return this.finishNodeAt(chain, \"ChainExpression\", endLoc);\n }\n\n // Cast a Directive to an ExpressionStatement. Mutates the input Directive.\n directiveToStmt(directive: N.Directive): N.ExpressionStatement {\n const expression = directive.value as any as N.EstreeLiteral;\n // @ts-expect-error delete non-optional properties\n delete directive.value;\n\n this.castNodeTo(expression, \"Literal\");\n expression.raw = expression.extra!.raw;\n expression.value = expression.extra!.expressionValue;\n\n const stmt = this.castNodeTo(directive, \"ExpressionStatement\");\n stmt.expression = expression;\n stmt.directive = expression.extra!.rawValue;\n\n delete expression.extra;\n\n return stmt;\n }\n\n /**\n * The TS-ESLint always define optional AST properties, here we provide the\n * default value for such properties immediately after `finishNode` was invoked.\n * This hook will be implemented by the typescript plugin.\n *\n * Note: This hook should be manually invoked when we change the `type` of a given AST\n * node, to ensure that the optional properties are correctly filled.\n * @param node The AST node finished by finishNode\n */\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n fillOptionalPropertiesForTSESLint(node: NodeType) {}\n\n cloneEstreeStringLiteral(node: N.EstreeLiteral): N.EstreeLiteral {\n const { start, end, loc, range, raw, value } = node;\n const cloned = Object.create(node.constructor.prototype);\n cloned.type = \"Literal\";\n cloned.start = start;\n cloned.end = end;\n cloned.loc = loc;\n cloned.range = range;\n cloned.raw = raw;\n cloned.value = value;\n return cloned;\n }\n\n // ==================================\n // Overrides\n // ==================================\n\n initFunction(node: N.BodilessFunctionOrMethodBase, isAsync: boolean): void {\n super.initFunction(node, isAsync);\n node.expression = false;\n }\n\n checkDeclaration(node: N.Pattern | N.ObjectProperty): void {\n if (node != null && this.isObjectProperty(node)) {\n // @ts-expect-error plugin typings\n this.checkDeclaration((node as unknown as N.EstreeProperty).value);\n } else {\n super.checkDeclaration(node);\n }\n }\n\n getObjectOrClassMethodParams(method: N.ObjectMethod | N.ClassMethod) {\n return (method as unknown as N.EstreeMethodDefinition).value.params;\n }\n\n isValidDirective(stmt: N.Statement): stmt is N.ExpressionStatement {\n return (\n stmt.type === \"ExpressionStatement\" &&\n stmt.expression.type === \"Literal\" &&\n typeof stmt.expression.value === \"string\" &&\n !stmt.expression.extra?.parenthesized\n );\n }\n\n parseBlockBody(\n node: N.BlockStatementLike,\n allowDirectives: boolean | undefined | null,\n topLevel: boolean,\n end: TokenType,\n afterBlockParse?: (hasStrictModeDirective: boolean) => void,\n ): void {\n super.parseBlockBody(\n node,\n allowDirectives,\n topLevel,\n end,\n afterBlockParse,\n );\n\n const directiveStatements = node.directives.map(d =>\n this.directiveToStmt(d),\n );\n // @ts-expect-error estree plugin typings\n node.body = directiveStatements.concat(node.body);\n // @ts-expect-error delete non-optional properties\n delete node.directives;\n }\n\n parsePrivateName(): any {\n const node = super.parsePrivateName();\n if (!process.env.BABEL_8_BREAKING) {\n if (!this.getPluginOption(\"estree\", \"classFeatures\")) {\n return node;\n }\n }\n return this.convertPrivateNameToPrivateIdentifier(node);\n }\n\n convertPrivateNameToPrivateIdentifier(\n node: N.PrivateName,\n ): N.EstreePrivateIdentifier {\n const name = super.getPrivateNameSV(node);\n // @ts-expect-error delete non-optional properties\n delete node.id;\n // @ts-expect-error mutate AST types\n node.name = name;\n return this.castNodeTo(node, \"PrivateIdentifier\");\n }\n\n // @ts-expect-error ESTree plugin changes node types\n isPrivateName(node: N.Node): node is N.EstreePrivateIdentifier {\n if (!process.env.BABEL_8_BREAKING) {\n if (!this.getPluginOption(\"estree\", \"classFeatures\")) {\n return super.isPrivateName(node);\n }\n }\n return node.type === \"PrivateIdentifier\";\n }\n\n // @ts-expect-error ESTree plugin changes node types\n getPrivateNameSV(node: N.EstreePrivateIdentifier): string {\n if (!process.env.BABEL_8_BREAKING) {\n if (!this.getPluginOption(\"estree\", \"classFeatures\")) {\n return super.getPrivateNameSV(node as unknown as N.PrivateName);\n }\n }\n return node.name;\n }\n\n // @ts-expect-error plugin may override interfaces\n parseLiteral(value: any, type: T[\"type\"]): T {\n const node = super.parseLiteral(value, type);\n // @ts-expect-error mutating AST types\n node.raw = node.extra.raw;\n delete node.extra;\n\n return node;\n }\n\n parseFunctionBody(\n node: N.Function,\n allowExpression?: boolean | null,\n isMethod: boolean = false,\n ): void {\n super.parseFunctionBody(node, allowExpression, isMethod);\n node.expression = node.body.type !== \"BlockStatement\";\n }\n\n // @ts-expect-error plugin may override interfaces\n parseMethod<\n T extends N.ClassPrivateMethod | N.ObjectMethod | N.ClassMethod,\n >(\n node: Undone,\n isGenerator: boolean,\n isAsync: boolean,\n isConstructor: boolean,\n allowDirectSuper: boolean,\n type: T[\"type\"],\n inClassScope: boolean = false,\n ):\n | N.EstreeProperty\n | N.EstreeMethodDefinition\n | N.EstreeTSAbstractMethodDefinition {\n let funcNode = this.startNode();\n funcNode.kind = node.kind; // provide kind, so super method correctly sets state\n funcNode = super.parseMethod(\n funcNode,\n isGenerator,\n isAsync,\n isConstructor,\n allowDirectSuper,\n type,\n inClassScope,\n );\n // @ts-expect-error delete non-optional properties\n delete funcNode.kind;\n const { typeParameters } = node;\n if (typeParameters) {\n delete node.typeParameters;\n funcNode.typeParameters = typeParameters;\n this.resetStartLocationFromNode(funcNode, typeParameters);\n }\n const valueNode = this.castNodeTo(\n funcNode as N.MethodLike,\n process.env.BABEL_8_BREAKING &&\n this.hasPlugin(\"typescript\") &&\n !funcNode.body\n ? \"TSEmptyBodyFunctionExpression\"\n : \"FunctionExpression\",\n );\n (\n node as unknown as Undone<\n | N.EstreeProperty\n | N.EstreeMethodDefinition\n | N.EstreeTSAbstractMethodDefinition\n >\n ).value = valueNode;\n if (type === \"ClassPrivateMethod\") {\n node.computed = false;\n }\n if (process.env.BABEL_8_BREAKING && this.hasPlugin(\"typescript\")) {\n // @ts-expect-error todo(flow->ts) property not defined for all types in union\n if (node.abstract) {\n // @ts-expect-error remove abstract from TSAbstractMethodDefinition\n delete node.abstract;\n return this.finishNode(\n // @ts-expect-error cast methods to estree types\n node as Undone,\n \"TSAbstractMethodDefinition\",\n );\n }\n }\n if (type === \"ObjectMethod\") {\n if ((node as any as N.ObjectMethod).kind === \"method\") {\n (node as any as N.EstreeProperty).kind = \"init\";\n }\n (node as any as N.EstreeProperty).shorthand = false;\n return this.finishNode(\n // @ts-expect-error cast methods to estree types\n node as Undone,\n \"Property\",\n );\n } else {\n return this.finishNode(\n // @ts-expect-error cast methods to estree types\n node as Undone,\n \"MethodDefinition\",\n );\n }\n }\n\n nameIsConstructor(key: N.Expression | N.PrivateName): boolean {\n if (key.type === \"Literal\") return key.value === \"constructor\";\n return super.nameIsConstructor(key);\n }\n\n parseClassProperty(...args: [N.ClassProperty]): any {\n const propertyNode = super.parseClassProperty(...args);\n if (!process.env.BABEL_8_BREAKING) {\n if (!this.getPluginOption(\"estree\", \"classFeatures\")) {\n return propertyNode as unknown as N.EstreePropertyDefinition;\n }\n }\n if (\n process.env.BABEL_8_BREAKING &&\n propertyNode.abstract &&\n this.hasPlugin(\"typescript\")\n ) {\n delete propertyNode.abstract;\n this.castNodeTo(propertyNode, \"TSAbstractPropertyDefinition\");\n } else {\n this.castNodeTo(propertyNode, \"PropertyDefinition\");\n }\n return propertyNode;\n }\n\n parseClassPrivateProperty(...args: [N.ClassPrivateProperty]): any {\n const propertyNode = super.parseClassPrivateProperty(...args);\n if (!process.env.BABEL_8_BREAKING) {\n if (!this.getPluginOption(\"estree\", \"classFeatures\")) {\n return propertyNode as unknown as N.EstreePropertyDefinition;\n }\n }\n if (\n process.env.BABEL_8_BREAKING &&\n propertyNode.abstract &&\n this.hasPlugin(\"typescript\")\n ) {\n this.castNodeTo(propertyNode, \"TSAbstractPropertyDefinition\");\n } else {\n this.castNodeTo(propertyNode, \"PropertyDefinition\");\n }\n propertyNode.computed = false;\n return propertyNode;\n }\n\n parseClassAccessorProperty(\n this: Parser,\n node: N.ClassAccessorProperty,\n ): any {\n const accessorPropertyNode = super.parseClassAccessorProperty(node);\n if (!process.env.BABEL_8_BREAKING) {\n if (!this.getPluginOption(\"estree\", \"classFeatures\")) {\n return accessorPropertyNode;\n }\n }\n if (accessorPropertyNode.abstract && this.hasPlugin(\"typescript\")) {\n delete accessorPropertyNode.abstract;\n this.castNodeTo(accessorPropertyNode, \"TSAbstractAccessorProperty\");\n } else {\n this.castNodeTo(accessorPropertyNode, \"AccessorProperty\");\n }\n return accessorPropertyNode;\n }\n\n parseObjectProperty(\n prop: N.ObjectProperty,\n startLoc: Position | undefined | null,\n isPattern: boolean,\n refExpressionErrors?: ExpressionErrors | null,\n ): N.ObjectProperty | undefined | null {\n const node: N.EstreeProperty = super.parseObjectProperty(\n prop,\n startLoc,\n isPattern,\n refExpressionErrors,\n ) as any;\n\n if (node) {\n node.kind = \"init\";\n this.castNodeTo(node, \"Property\");\n }\n\n return node as any;\n }\n\n finishObjectProperty(node: Undone): N.ObjectProperty {\n (node as unknown as Undone).kind = \"init\";\n return this.finishNode(\n node as unknown as Undone,\n \"Property\",\n ) as any;\n }\n\n isValidLVal(\n type: string,\n disallowCallExpression: boolean,\n isUnparenthesizedInAssign: boolean,\n binding: BindingFlag,\n ) {\n return type === \"Property\"\n ? \"value\"\n : super.isValidLVal(\n type,\n disallowCallExpression,\n isUnparenthesizedInAssign,\n binding,\n );\n }\n\n isAssignable(node: N.Node, isBinding?: boolean): boolean {\n if (node != null && this.isObjectProperty(node)) {\n return this.isAssignable(node.value, isBinding);\n }\n return super.isAssignable(node, isBinding);\n }\n\n toAssignable(node: N.Node, isLHS: boolean = false): void {\n if (node != null && this.isObjectProperty(node)) {\n const { key, value } = node;\n if (this.isPrivateName(key)) {\n this.classScope.usePrivateName(\n this.getPrivateNameSV(key),\n key.loc.start,\n );\n }\n this.toAssignable(value, isLHS);\n } else {\n super.toAssignable(node, isLHS);\n }\n }\n\n toAssignableObjectExpressionProp(\n prop: N.Node,\n isLast: boolean,\n isLHS: boolean,\n ) {\n if (\n prop.type === \"Property\" &&\n (prop.kind === \"get\" || prop.kind === \"set\")\n ) {\n this.raise(Errors.PatternHasAccessor, prop.key);\n } else if (prop.type === \"Property\" && prop.method) {\n this.raise(Errors.PatternHasMethod, prop.key);\n } else {\n super.toAssignableObjectExpressionProp(prop, isLast, isLHS);\n }\n }\n\n finishCallExpression(\n unfinished: Undone,\n optional: boolean,\n ): T {\n const node = super.finishCallExpression(unfinished, optional);\n\n if (node.callee.type === \"Import\") {\n this.castNodeTo(node, \"ImportExpression\");\n (node as N.Node as N.EstreeImportExpression).source = node\n .arguments[0] as N.Expression;\n (node as N.Node as N.EstreeImportExpression).options =\n (node.arguments[1] as N.Expression) ?? null;\n if (!process.env.BABEL_8_BREAKING) {\n // compatibility with previous ESTree AST\n (node as N.Node as N.EstreeImportExpression).attributes =\n (node.arguments[1] as N.Expression) ?? null;\n }\n // arguments isn't optional in the type definition\n // @ts-expect-error delete non-optional properties\n delete node.arguments;\n // callee isn't optional in the type definition\n // @ts-expect-error delete non-optional properties\n delete node.callee;\n } else if (node.type === \"OptionalCallExpression\") {\n this.castNodeTo(node, \"CallExpression\");\n } else {\n node.optional = false;\n }\n\n return node;\n }\n\n toReferencedArguments(\n node:\n | N.CallExpression\n | N.OptionalCallExpression\n | N.EstreeImportExpression,\n /* isParenthesizedExpr?: boolean, */\n ) {\n // ImportExpressions do not have an arguments array.\n if (node.type === \"ImportExpression\") {\n return;\n }\n\n super.toReferencedArguments(node);\n }\n\n parseExport(\n unfinished: Undone,\n decorators: N.Decorator[] | null,\n ) {\n const exportStartLoc = this.state.lastTokStartLoc!;\n const node = super.parseExport(unfinished, decorators);\n\n switch (node.type) {\n case \"ExportAllDeclaration\":\n // @ts-expect-error mutating AST types\n node.exported = null;\n break;\n\n case \"ExportNamedDeclaration\":\n if (\n node.specifiers.length === 1 &&\n node.specifiers[0].type === \"ExportNamespaceSpecifier\"\n ) {\n this.castNodeTo(node, \"ExportAllDeclaration\");\n // @ts-expect-error mutating AST types\n node.exported = node.specifiers[0].exported;\n // @ts-expect-error The ESTree AST shape differs from the Babel AST\n delete node.specifiers;\n }\n\n // fallthrough\n case \"ExportDefaultDeclaration\":\n {\n const { declaration } = node;\n if (\n declaration?.type === \"ClassDeclaration\" &&\n // @ts-expect-error comparing undefined and number\n declaration.decorators?.length > 0 &&\n // decorator comes before export\n declaration.start === node.start\n ) {\n this.resetStartLocation(\n node,\n // For compatibility with ESLint's keyword-spacing rule, which assumes that an\n // export declaration must start with export.\n // https://github.com/babel/babel/issues/15085\n // Here we reset export declaration's start to be the start of the export token\n exportStartLoc,\n );\n }\n }\n\n break;\n }\n\n return node;\n }\n\n stopParseSubscript(base: N.Expression, state: N.ParseSubscriptState) {\n const node = super.stopParseSubscript(base, state);\n if (state.optionalChainMember) {\n return this.estreeParseChainExpression(node, base.loc.end);\n }\n return node;\n }\n\n parseMember(\n base: N.Expression,\n startLoc: Position,\n state: N.ParseSubscriptState,\n computed: boolean,\n optional: boolean,\n ) {\n const node = super.parseMember(base, startLoc, state, computed, optional);\n if (node.type === \"OptionalMemberExpression\") {\n this.castNodeTo(node, \"MemberExpression\");\n } else {\n node.optional = false;\n }\n return node;\n }\n\n isOptionalMemberExpression(node: N.Node) {\n if (node.type === \"ChainExpression\") {\n return node.expression.type === \"MemberExpression\";\n }\n return super.isOptionalMemberExpression(node);\n }\n\n hasPropertyAsPrivateName(node: N.Node): boolean {\n if (node.type === \"ChainExpression\") {\n node = node.expression;\n }\n return super.hasPropertyAsPrivateName(node);\n }\n\n // @ts-expect-error ESTree plugin changes node types\n isObjectProperty(node: N.Node): node is N.EstreeProperty {\n return node.type === \"Property\" && node.kind === \"init\" && !node.method;\n }\n\n // @ts-expect-error ESTree plugin changes node types\n isObjectMethod(node: N.Node): node is N.EstreeProperty {\n return (\n node.type === \"Property\" &&\n (node.method || node.kind === \"get\" || node.kind === \"set\")\n );\n }\n\n /* ============================================================ *\n * parser/node.ts *\n * ============================================================ */\n\n castNodeTo(\n node: N.Node,\n type: T,\n ): Extract {\n const result = super.castNodeTo(node, type);\n this.fillOptionalPropertiesForTSESLint(result);\n return result;\n }\n\n cloneIdentifier(node: T): T {\n const cloned = super.cloneIdentifier(node);\n this.fillOptionalPropertiesForTSESLint(cloned);\n return cloned;\n }\n\n cloneStringLiteral<\n T extends N.EstreeLiteral | N.StringLiteral | N.Placeholder,\n >(node: T): T {\n if (node.type === \"Literal\") {\n return this.cloneEstreeStringLiteral(node) as T;\n }\n return super.cloneStringLiteral(node);\n }\n\n finishNodeAt(\n node: Undone,\n type: T[\"type\"],\n endLoc: Position,\n ): T {\n return toESTreeLocation(super.finishNodeAt(node, type, endLoc));\n }\n\n // Override for TS-ESLint that does not allow optional AST properties\n finishNode(node: Undone, type: T[\"type\"]): T {\n const result = super.finishNode(node, type);\n this.fillOptionalPropertiesForTSESLint(result);\n return result;\n }\n\n resetStartLocation(node: N.Node, startLoc: Position) {\n super.resetStartLocation(node, startLoc);\n toESTreeLocation(node);\n }\n\n resetEndLocation(\n node: NodeBase,\n endLoc: Position = this.state.lastTokEndLoc!,\n ): void {\n super.resetEndLocation(node, endLoc);\n toESTreeLocation(node);\n }\n };\n","// The token context is used in JSX plugin to track\n// jsx tag / jsx text / normal JavaScript expression\n\nexport class TokContext {\n constructor(token: string, preserveSpace?: boolean) {\n this.token = token;\n this.preserveSpace = !!preserveSpace;\n }\n\n token: string;\n preserveSpace: boolean;\n}\n\nconst types: Record = {\n brace: new TokContext(\"{\"), // normal JavaScript expression\n j_oTag: new TokContext(\"...\", true), // JSX expressions\n};\n\nif (!process.env.BABEL_8_BREAKING) {\n types.template = new TokContext(\"`\", true);\n}\n\nexport { types };\n","import { types as tc, type TokContext } from \"./context.ts\";\n// ## Token types\n\n// The assignment of fine-grained, information-carrying type objects\n// allows the tokenizer to store the information it has about a\n// token in a way that is very cheap for the parser to look up.\n\n// All token type variables start with an underscore, to make them\n// easy to recognize.\n\n// The `beforeExpr` property is used to disambiguate between 1) binary\n// expression (<) and JSX Tag start (); 2) object literal and JSX\n// texts. It is set on the `updateContext` function in the JSX plugin.\n\n// The `startsExpr` property is used to determine whether an expression\n// may be the “argument” subexpression of a `yield` expression or\n// `yield` statement. It is set on all token types that may be at the\n// start of a subexpression.\n\n// `isLoop` marks a keyword as starting a loop, which is important\n// to know when parsing a label, in order to allow or disallow\n// continue jumps to that label.\n\nconst beforeExpr = true;\nconst startsExpr = true;\nconst isLoop = true;\nconst isAssign = true;\nconst prefix = true;\nconst postfix = true;\n\ntype TokenOptions = {\n keyword?: string;\n beforeExpr?: boolean;\n startsExpr?: boolean;\n rightAssociative?: boolean;\n isLoop?: boolean;\n isAssign?: boolean;\n prefix?: boolean;\n postfix?: boolean;\n binop?: number | null;\n};\n\n// Internally the tokenizer stores token as a number\nexport type TokenType = number;\n\n// The `ExportedTokenType` is exported via `tokTypes` and accessible\n// when `tokens: true` is enabled. Unlike internal token type, it provides\n// metadata of the tokens.\nexport class ExportedTokenType {\n label: string;\n keyword: string | undefined | null;\n beforeExpr: boolean;\n startsExpr: boolean;\n rightAssociative: boolean;\n isLoop: boolean;\n isAssign: boolean;\n prefix: boolean;\n postfix: boolean;\n binop: number | undefined | null;\n // todo(Babel 8): remove updateContext from exposed token layout\n declare updateContext: ((context: TokContext[]) => void) | undefined | null;\n\n constructor(label: string, conf: TokenOptions = {}) {\n this.label = label;\n this.keyword = conf.keyword;\n this.beforeExpr = !!conf.beforeExpr;\n this.startsExpr = !!conf.startsExpr;\n this.rightAssociative = !!conf.rightAssociative;\n this.isLoop = !!conf.isLoop;\n this.isAssign = !!conf.isAssign;\n this.prefix = !!conf.prefix;\n this.postfix = !!conf.postfix;\n this.binop = conf.binop != null ? conf.binop : null;\n if (!process.env.BABEL_8_BREAKING) {\n this.updateContext = null;\n }\n }\n}\n\n// A map from keyword/keyword-like string value to the token type\nexport const keywords = new Map();\n\nfunction createKeyword(name: string, options: TokenOptions = {}): TokenType {\n options.keyword = name;\n const token = createToken(name, options);\n keywords.set(name, token);\n return token;\n}\n\nfunction createBinop(name: string, binop: number) {\n return createToken(name, { beforeExpr, binop });\n}\n\nlet tokenTypeCounter = -1;\nexport const tokenTypes: ExportedTokenType[] = [];\nconst tokenLabels: string[] = [];\nconst tokenBinops: number[] = [];\nconst tokenBeforeExprs: boolean[] = [];\nconst tokenStartsExprs: boolean[] = [];\nconst tokenPrefixes: boolean[] = [];\n\nfunction createToken(name: string, options: TokenOptions = {}): TokenType {\n ++tokenTypeCounter;\n tokenLabels.push(name);\n tokenBinops.push(options.binop ?? -1);\n tokenBeforeExprs.push(options.beforeExpr ?? false);\n tokenStartsExprs.push(options.startsExpr ?? false);\n tokenPrefixes.push(options.prefix ?? false);\n tokenTypes.push(new ExportedTokenType(name, options));\n\n return tokenTypeCounter;\n}\n\nfunction createKeywordLike(\n name: string,\n options: TokenOptions = {},\n): TokenType {\n ++tokenTypeCounter;\n keywords.set(name, tokenTypeCounter);\n tokenLabels.push(name);\n tokenBinops.push(options.binop ?? -1);\n tokenBeforeExprs.push(options.beforeExpr ?? false);\n tokenStartsExprs.push(options.startsExpr ?? false);\n tokenPrefixes.push(options.prefix ?? false);\n // In the exported token type, we set the label as \"name\" for backward compatibility with Babel 7\n tokenTypes.push(new ExportedTokenType(\"name\", options));\n\n return tokenTypeCounter;\n}\n\n// For performance the token type helpers depend on the following declarations order.\n// When adding new token types, please also check if the token helpers need update.\n\nexport type InternalTokenTypes = typeof tt;\n\nexport const tt = {\n // Punctuation token types.\n bracketL: createToken(\"[\", { beforeExpr, startsExpr }),\n // TODO: Remove this in Babel 8\n bracketHashL: createToken(\"#[\", { beforeExpr, startsExpr }),\n // TODO: Remove this in Babel 8\n bracketBarL: createToken(\"[|\", { beforeExpr, startsExpr }),\n bracketR: createToken(\"]\"),\n // TODO: Remove this in Babel 8\n bracketBarR: createToken(\"|]\"),\n braceL: createToken(\"{\", { beforeExpr, startsExpr }),\n // TODO: Remove this in Babel 8\n braceBarL: createToken(\"{|\", { beforeExpr, startsExpr }),\n // TODO: Remove this in Babel 8\n braceHashL: createToken(\"#{\", { beforeExpr, startsExpr }),\n braceR: createToken(\"}\"),\n braceBarR: createToken(\"|}\"),\n parenL: createToken(\"(\", { beforeExpr, startsExpr }),\n parenR: createToken(\")\"),\n comma: createToken(\",\", { beforeExpr }),\n semi: createToken(\";\", { beforeExpr }),\n colon: createToken(\":\", { beforeExpr }),\n doubleColon: createToken(\"::\", { beforeExpr }),\n dot: createToken(\".\"),\n question: createToken(\"?\", { beforeExpr }),\n questionDot: createToken(\"?.\"),\n arrow: createToken(\"=>\", { beforeExpr }),\n template: createToken(\"template\"),\n ellipsis: createToken(\"...\", { beforeExpr }),\n backQuote: createToken(\"`\", { startsExpr }),\n dollarBraceL: createToken(\"${\", { beforeExpr, startsExpr }),\n // start: isTemplate\n templateTail: createToken(\"...`\", { startsExpr }),\n templateNonTail: createToken(\"...${\", { beforeExpr, startsExpr }),\n // end: isTemplate\n at: createToken(\"@\"),\n hash: createToken(\"#\", { startsExpr }),\n\n // Special hashbang token.\n interpreterDirective: createToken(\"#!...\"),\n\n // Operators. These carry several kinds of properties to help the\n // parser use them properly (the presence of these properties is\n // what categorizes them as operators).\n //\n // `binop`, when present, specifies that this operator is a binary\n // operator, and will refer to its precedence.\n //\n // `prefix` and `postfix` mark the operator as a prefix or postfix\n // unary operator.\n //\n // `isAssign` marks all of `=`, `+=`, `-=` etcetera, which act as\n // binary operators with a very low precedence, that should result\n // in AssignmentExpression nodes.\n\n // start: isAssign\n eq: createToken(\"=\", { beforeExpr, isAssign }),\n assign: createToken(\"_=\", { beforeExpr, isAssign }),\n slashAssign: createToken(\"_=\", { beforeExpr, isAssign }),\n // These are only needed to support % and ^ as a Hack-pipe topic token.\n // When the proposal settles on a token, the others can be merged with\n // tt.assign.\n xorAssign: createToken(\"_=\", { beforeExpr, isAssign }),\n moduloAssign: createToken(\"_=\", { beforeExpr, isAssign }),\n // end: isAssign\n\n incDec: createToken(\"++/--\", { prefix, postfix, startsExpr }),\n bang: createToken(\"!\", { beforeExpr, prefix, startsExpr }),\n tilde: createToken(\"~\", { beforeExpr, prefix, startsExpr }),\n\n // More possible topic tokens.\n // When the proposal settles on a token, at least one of these may be removed.\n doubleCaret: createToken(\"^^\", { startsExpr }),\n doubleAt: createToken(\"@@\", { startsExpr }),\n\n // start: isBinop\n pipeline: createBinop(\"|>\", 0),\n nullishCoalescing: createBinop(\"??\", 1),\n logicalOR: createBinop(\"||\", 1),\n logicalAND: createBinop(\"&&\", 2),\n bitwiseOR: createBinop(\"|\", 3),\n bitwiseXOR: createBinop(\"^\", 4),\n bitwiseAND: createBinop(\"&\", 5),\n equality: createBinop(\"==/!=/===/!==\", 6),\n lt: createBinop(\"/<=/>=\", 7),\n gt: createBinop(\"/<=/>=\", 7),\n relational: createBinop(\"/<=/>=\", 7),\n bitShift: createBinop(\"<>/>>>\", 8),\n bitShiftL: createBinop(\"<>/>>>\", 8),\n bitShiftR: createBinop(\"<>/>>>\", 8),\n plusMin: createToken(\"+/-\", { beforeExpr, binop: 9, prefix, startsExpr }),\n // startsExpr: required by v8intrinsic plugin\n modulo: createToken(\"%\", { binop: 10, startsExpr }),\n // unset `beforeExpr` as it can be `function *`\n star: createToken(\"*\", { binop: 10 }),\n slash: createBinop(\"/\", 10),\n exponent: createToken(\"**\", {\n beforeExpr,\n binop: 11,\n rightAssociative: true,\n }),\n\n // Keywords\n // Don't forget to update packages/babel-helper-validator-identifier/src/keyword.js\n // when new keywords are added\n // start: isLiteralPropertyName\n // start: isKeyword\n _in: createKeyword(\"in\", { beforeExpr, binop: 7 }),\n _instanceof: createKeyword(\"instanceof\", { beforeExpr, binop: 7 }),\n // end: isBinop\n _break: createKeyword(\"break\"),\n _case: createKeyword(\"case\", { beforeExpr }),\n _catch: createKeyword(\"catch\"),\n _continue: createKeyword(\"continue\"),\n _debugger: createKeyword(\"debugger\"),\n _default: createKeyword(\"default\", { beforeExpr }),\n _else: createKeyword(\"else\", { beforeExpr }),\n _finally: createKeyword(\"finally\"),\n _function: createKeyword(\"function\", { startsExpr }),\n _if: createKeyword(\"if\"),\n _return: createKeyword(\"return\", { beforeExpr }),\n _switch: createKeyword(\"switch\"),\n _throw: createKeyword(\"throw\", { beforeExpr, prefix, startsExpr }),\n _try: createKeyword(\"try\"),\n _var: createKeyword(\"var\"),\n _const: createKeyword(\"const\"),\n _with: createKeyword(\"with\"),\n _new: createKeyword(\"new\", { beforeExpr, startsExpr }),\n _this: createKeyword(\"this\", { startsExpr }),\n _super: createKeyword(\"super\", { startsExpr }),\n _class: createKeyword(\"class\", { startsExpr }),\n _extends: createKeyword(\"extends\", { beforeExpr }),\n _export: createKeyword(\"export\"),\n _import: createKeyword(\"import\", { startsExpr }),\n _null: createKeyword(\"null\", { startsExpr }),\n _true: createKeyword(\"true\", { startsExpr }),\n _false: createKeyword(\"false\", { startsExpr }),\n _typeof: createKeyword(\"typeof\", { beforeExpr, prefix, startsExpr }),\n _void: createKeyword(\"void\", { beforeExpr, prefix, startsExpr }),\n _delete: createKeyword(\"delete\", { beforeExpr, prefix, startsExpr }),\n // start: isLoop\n _do: createKeyword(\"do\", { isLoop, beforeExpr }),\n _for: createKeyword(\"for\", { isLoop }),\n _while: createKeyword(\"while\", { isLoop }),\n // end: isLoop\n // end: isKeyword\n\n // Primary literals\n // start: isIdentifier\n _as: createKeywordLike(\"as\", { startsExpr }),\n _assert: createKeywordLike(\"assert\", { startsExpr }),\n _async: createKeywordLike(\"async\", { startsExpr }),\n _await: createKeywordLike(\"await\", { startsExpr }),\n _defer: createKeywordLike(\"defer\", { startsExpr }),\n _from: createKeywordLike(\"from\", { startsExpr }),\n _get: createKeywordLike(\"get\", { startsExpr }),\n _let: createKeywordLike(\"let\", { startsExpr }),\n _meta: createKeywordLike(\"meta\", { startsExpr }),\n _of: createKeywordLike(\"of\", { startsExpr }),\n _sent: createKeywordLike(\"sent\", { startsExpr }),\n _set: createKeywordLike(\"set\", { startsExpr }),\n _source: createKeywordLike(\"source\", { startsExpr }),\n _static: createKeywordLike(\"static\", { startsExpr }),\n _using: createKeywordLike(\"using\", { startsExpr }),\n _yield: createKeywordLike(\"yield\", { startsExpr }),\n\n // Flow and TypeScript Keywordlike\n _asserts: createKeywordLike(\"asserts\", { startsExpr }),\n _checks: createKeywordLike(\"checks\", { startsExpr }),\n _exports: createKeywordLike(\"exports\", { startsExpr }),\n _global: createKeywordLike(\"global\", { startsExpr }),\n _implements: createKeywordLike(\"implements\", { startsExpr }),\n _intrinsic: createKeywordLike(\"intrinsic\", { startsExpr }),\n _infer: createKeywordLike(\"infer\", { startsExpr }),\n _is: createKeywordLike(\"is\", { startsExpr }),\n _mixins: createKeywordLike(\"mixins\", { startsExpr }),\n _proto: createKeywordLike(\"proto\", { startsExpr }),\n _require: createKeywordLike(\"require\", { startsExpr }),\n _satisfies: createKeywordLike(\"satisfies\", { startsExpr }),\n // start: isTSTypeOperator\n _keyof: createKeywordLike(\"keyof\", { startsExpr }),\n _readonly: createKeywordLike(\"readonly\", { startsExpr }),\n _unique: createKeywordLike(\"unique\", { startsExpr }),\n // end: isTSTypeOperator\n // start: isTSDeclarationStart\n _abstract: createKeywordLike(\"abstract\", { startsExpr }),\n _declare: createKeywordLike(\"declare\", { startsExpr }),\n _enum: createKeywordLike(\"enum\", { startsExpr }),\n _module: createKeywordLike(\"module\", { startsExpr }),\n _namespace: createKeywordLike(\"namespace\", { startsExpr }),\n // start: isFlowInterfaceOrTypeOrOpaque\n _interface: createKeywordLike(\"interface\", { startsExpr }),\n _type: createKeywordLike(\"type\", { startsExpr }),\n // end: isTSDeclarationStart\n _opaque: createKeywordLike(\"opaque\", { startsExpr }),\n // end: isFlowInterfaceOrTypeOrOpaque\n name: createToken(\"name\", { startsExpr }),\n\n // placeholder plugin\n placeholder: createToken(\"%%\", { startsExpr }),\n // end: isIdentifier\n\n string: createToken(\"string\", { startsExpr }),\n num: createToken(\"num\", { startsExpr }),\n bigint: createToken(\"bigint\", { startsExpr }),\n // TODO: Remove this in Babel 8\n decimal: createToken(\"decimal\", { startsExpr }),\n // end: isLiteralPropertyName\n regexp: createToken(\"regexp\", { startsExpr }),\n privateName: createToken(\"#name\", { startsExpr }),\n eof: createToken(\"eof\"),\n\n // jsx plugin\n jsxName: createToken(\"jsxName\"),\n jsxText: createToken(\"jsxText\", { beforeExpr }),\n jsxTagStart: createToken(\"jsxTagStart\", { startsExpr }),\n jsxTagEnd: createToken(\"jsxTagEnd\"),\n} as const;\n\nexport function tokenIsIdentifier(token: TokenType): boolean {\n return token >= tt._as && token <= tt.placeholder;\n}\n\nexport function tokenKeywordOrIdentifierIsKeyword(token: TokenType): boolean {\n // we can remove the token >= tt._in check when we\n // know a token is either keyword or identifier\n return token <= tt._while;\n}\n\nexport function tokenIsKeywordOrIdentifier(token: TokenType): boolean {\n return token >= tt._in && token <= tt.placeholder;\n}\n\nexport function tokenIsLiteralPropertyName(token: TokenType): boolean {\n return token >= tt._in && token <= tt.decimal;\n}\n\nexport function tokenComesBeforeExpression(token: TokenType): boolean {\n return tokenBeforeExprs[token];\n}\n\nexport function tokenCanStartExpression(token: TokenType): boolean {\n return tokenStartsExprs[token];\n}\n\nexport function tokenIsAssignment(token: TokenType): boolean {\n return token >= tt.eq && token <= tt.moduloAssign;\n}\n\nexport function tokenIsFlowInterfaceOrTypeOrOpaque(token: TokenType): boolean {\n return token >= tt._interface && token <= tt._opaque;\n}\n\nexport function tokenIsLoop(token: TokenType): boolean {\n return token >= tt._do && token <= tt._while;\n}\n\nexport function tokenIsKeyword(token: TokenType): boolean {\n return token >= tt._in && token <= tt._while;\n}\n\nexport function tokenIsOperator(token: TokenType): boolean {\n return token >= tt.pipeline && token <= tt._instanceof;\n}\n\nexport function tokenIsPostfix(token: TokenType): boolean {\n return token === tt.incDec;\n}\n\nexport function tokenIsPrefix(token: TokenType): boolean {\n return tokenPrefixes[token];\n}\n\nexport function tokenIsTSTypeOperator(token: TokenType): boolean {\n return token >= tt._keyof && token <= tt._unique;\n}\n\nexport function tokenIsTSDeclarationStart(token: TokenType): boolean {\n return token >= tt._abstract && token <= tt._type;\n}\n\nexport function tokenLabelName(token: TokenType): string {\n return tokenLabels[token];\n}\n\nexport function tokenOperatorPrecedence(token: TokenType): number {\n return tokenBinops[token];\n}\n\nexport function tokenIsBinaryOperator(token: TokenType): boolean {\n return tokenBinops[token] !== -1;\n}\n\nexport function tokenIsRightAssociative(token: TokenType): boolean {\n return token === tt.exponent;\n}\n\nexport function tokenIsTemplate(token: TokenType): boolean {\n return token >= tt.templateTail && token <= tt.templateNonTail;\n}\n\nexport function getExportedToken(token: TokenType): ExportedTokenType {\n return tokenTypes[token];\n}\n\nexport function isTokenType(obj: any): boolean {\n return typeof obj === \"number\";\n}\n\nif (!process.env.BABEL_8_BREAKING) {\n tokenTypes[tt.braceR].updateContext = context => {\n context.pop();\n };\n\n tokenTypes[tt.braceL].updateContext =\n tokenTypes[tt.braceHashL].updateContext =\n tokenTypes[tt.dollarBraceL].updateContext =\n context => {\n context.push(tc.brace);\n };\n\n tokenTypes[tt.backQuote].updateContext = context => {\n if (context[context.length - 1] === tc.template) {\n context.pop();\n } else {\n context.push(tc.template);\n }\n };\n\n tokenTypes[tt.jsxTagStart].updateContext = context => {\n context.push(tc.j_expr, tc.j_oTag);\n };\n}\n","// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\n\n// ## Character categories\n\n// Big ugly regular expressions that match characters in the\n// whitespace, identifier, and identifier-start categories. These\n// are only applied when a character is found to actually have a\n// code point between 0x80 and 0xffff.\n// Generated by `scripts/generate-identifier-regex.cjs`.\n\n/* prettier-ignore */\nlet nonASCIIidentifierStartChars = \"\\xaa\\xb5\\xba\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u037f\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u052f\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05d0-\\u05ea\\u05ef-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086a\\u0870-\\u0887\\u0889-\\u088f\\u08a0-\\u08c9\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u09fc\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0af9\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c39\\u0c3d\\u0c58-\\u0c5a\\u0c5c\\u0c5d\\u0c60\\u0c61\\u0c80\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cdc-\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d04-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d54-\\u0d56\\u0d5f-\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e86-\\u0e8a\\u0e8c-\\u0ea3\\u0ea5\\u0ea7-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f5\\u13f8-\\u13fd\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f8\\u1700-\\u1711\\u171f-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1878\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191e\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19b0-\\u19c9\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4c\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1c80-\\u1c8a\\u1c90-\\u1cba\\u1cbd-\\u1cbf\\u1ce9-\\u1cec\\u1cee-\\u1cf3\\u1cf5\\u1cf6\\u1cfa\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2118-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309b-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312f\\u3131-\\u318e\\u31a0-\\u31bf\\u31f0-\\u31ff\\u3400-\\u4dbf\\u4e00-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua69d\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua7dc\\ua7f1-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua8fd\\ua8fe\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\ua9e0-\\ua9e4\\ua9e6-\\ua9ef\\ua9fa-\\ua9fe\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa7e-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uab30-\\uab5a\\uab5c-\\uab69\\uab70-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc\";\n/* prettier-ignore */\nlet nonASCIIidentifierChars = \"\\xb7\\u0300-\\u036f\\u0387\\u0483-\\u0487\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u064b-\\u0669\\u0670\\u06d6-\\u06dc\\u06df-\\u06e4\\u06e7\\u06e8\\u06ea-\\u06ed\\u06f0-\\u06f9\\u0711\\u0730-\\u074a\\u07a6-\\u07b0\\u07c0-\\u07c9\\u07eb-\\u07f3\\u07fd\\u0816-\\u0819\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0859-\\u085b\\u0897-\\u089f\\u08ca-\\u08e1\\u08e3-\\u0903\\u093a-\\u093c\\u093e-\\u094f\\u0951-\\u0957\\u0962\\u0963\\u0966-\\u096f\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7\\u09c8\\u09cb-\\u09cd\\u09d7\\u09e2\\u09e3\\u09e6-\\u09ef\\u09fe\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a66-\\u0a71\\u0a75\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\\u0ae2\\u0ae3\\u0ae6-\\u0aef\\u0afa-\\u0aff\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b44\\u0b47\\u0b48\\u0b4b-\\u0b4d\\u0b55-\\u0b57\\u0b62\\u0b63\\u0b66-\\u0b6f\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\\u0be6-\\u0bef\\u0c00-\\u0c04\\u0c3c\\u0c3e-\\u0c44\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62\\u0c63\\u0c66-\\u0c6f\\u0c81-\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5\\u0cd6\\u0ce2\\u0ce3\\u0ce6-\\u0cef\\u0cf3\\u0d00-\\u0d03\\u0d3b\\u0d3c\\u0d3e-\\u0d44\\u0d46-\\u0d48\\u0d4a-\\u0d4d\\u0d57\\u0d62\\u0d63\\u0d66-\\u0d6f\\u0d81-\\u0d83\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0de6-\\u0def\\u0df2\\u0df3\\u0e31\\u0e34-\\u0e3a\\u0e47-\\u0e4e\\u0e50-\\u0e59\\u0eb1\\u0eb4-\\u0ebc\\u0ec8-\\u0ece\\u0ed0-\\u0ed9\\u0f18\\u0f19\\u0f20-\\u0f29\\u0f35\\u0f37\\u0f39\\u0f3e\\u0f3f\\u0f71-\\u0f84\\u0f86\\u0f87\\u0f8d-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u102b-\\u103e\\u1040-\\u1049\\u1056-\\u1059\\u105e-\\u1060\\u1062-\\u1064\\u1067-\\u106d\\u1071-\\u1074\\u1082-\\u108d\\u108f-\\u109d\\u135d-\\u135f\\u1369-\\u1371\\u1712-\\u1715\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17b4-\\u17d3\\u17dd\\u17e0-\\u17e9\\u180b-\\u180d\\u180f-\\u1819\\u18a9\\u1920-\\u192b\\u1930-\\u193b\\u1946-\\u194f\\u19d0-\\u19da\\u1a17-\\u1a1b\\u1a55-\\u1a5e\\u1a60-\\u1a7c\\u1a7f-\\u1a89\\u1a90-\\u1a99\\u1ab0-\\u1abd\\u1abf-\\u1add\\u1ae0-\\u1aeb\\u1b00-\\u1b04\\u1b34-\\u1b44\\u1b50-\\u1b59\\u1b6b-\\u1b73\\u1b80-\\u1b82\\u1ba1-\\u1bad\\u1bb0-\\u1bb9\\u1be6-\\u1bf3\\u1c24-\\u1c37\\u1c40-\\u1c49\\u1c50-\\u1c59\\u1cd0-\\u1cd2\\u1cd4-\\u1ce8\\u1ced\\u1cf4\\u1cf7-\\u1cf9\\u1dc0-\\u1dff\\u200c\\u200d\\u203f\\u2040\\u2054\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20f0\\u2cef-\\u2cf1\\u2d7f\\u2de0-\\u2dff\\u302a-\\u302f\\u3099\\u309a\\u30fb\\ua620-\\ua629\\ua66f\\ua674-\\ua67d\\ua69e\\ua69f\\ua6f0\\ua6f1\\ua802\\ua806\\ua80b\\ua823-\\ua827\\ua82c\\ua880\\ua881\\ua8b4-\\ua8c5\\ua8d0-\\ua8d9\\ua8e0-\\ua8f1\\ua8ff-\\ua909\\ua926-\\ua92d\\ua947-\\ua953\\ua980-\\ua983\\ua9b3-\\ua9c0\\ua9d0-\\ua9d9\\ua9e5\\ua9f0-\\ua9f9\\uaa29-\\uaa36\\uaa43\\uaa4c\\uaa4d\\uaa50-\\uaa59\\uaa7b-\\uaa7d\\uaab0\\uaab2-\\uaab4\\uaab7\\uaab8\\uaabe\\uaabf\\uaac1\\uaaeb-\\uaaef\\uaaf5\\uaaf6\\uabe3-\\uabea\\uabec\\uabed\\uabf0-\\uabf9\\ufb1e\\ufe00-\\ufe0f\\ufe20-\\ufe2f\\ufe33\\ufe34\\ufe4d-\\ufe4f\\uff10-\\uff19\\uff3f\\uff65\";\n\nconst nonASCIIidentifierStart = new RegExp(\n \"[\" + nonASCIIidentifierStartChars + \"]\",\n);\nconst nonASCIIidentifier = new RegExp(\n \"[\" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + \"]\",\n);\n\nnonASCIIidentifierStartChars = nonASCIIidentifierChars = null;\n\n// These are a run-length and offset-encoded representation of the\n// >0xffff code points that are a valid part of identifiers. The\n// offset starts at 0x10000, and each pair of numbers represents an\n// offset to the next range, and then a size of the range. They were\n// generated by `scripts/generate-identifier-regex.cjs`.\n/* prettier-ignore */\nconst astralIdentifierStartCodes = [0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,7,25,39,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,5,57,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489];\n/* prettier-ignore */\nconst astralIdentifierCodes = [509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,78,5,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,199,7,137,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];\n\n// This has a complexity linear to the value of the code. The\n// assumption is that looking up astral identifier characters is\n// rare.\nfunction isInAstralSet(code: number, set: readonly number[]): boolean {\n let pos = 0x10000;\n for (let i = 0, length = set.length; i < length; i += 2) {\n pos += set[i];\n if (pos > code) return false;\n\n pos += set[i + 1];\n if (pos >= code) return true;\n }\n return false;\n}\n\n// Test whether a given character code starts an identifier.\n\nexport function isIdentifierStart(code: number): boolean {\n if (code < charCodes.uppercaseA) return code === charCodes.dollarSign;\n if (code <= charCodes.uppercaseZ) return true;\n if (code < charCodes.lowercaseA) return code === charCodes.underscore;\n if (code <= charCodes.lowercaseZ) return true;\n if (code <= 0xffff) {\n return (\n code >= 0xaa && nonASCIIidentifierStart.test(String.fromCharCode(code))\n );\n }\n return isInAstralSet(code, astralIdentifierStartCodes);\n}\n\n// Test whether a given character is part of an identifier.\n\nexport function isIdentifierChar(code: number): boolean {\n if (code < charCodes.digit0) return code === charCodes.dollarSign;\n if (code < charCodes.colon) return true;\n if (code < charCodes.uppercaseA) return false;\n if (code <= charCodes.uppercaseZ) return true;\n if (code < charCodes.lowercaseA) return code === charCodes.underscore;\n if (code <= charCodes.lowercaseZ) return true;\n if (code <= 0xffff) {\n return code >= 0xaa && nonASCIIidentifier.test(String.fromCharCode(code));\n }\n return (\n isInAstralSet(code, astralIdentifierStartCodes) ||\n isInAstralSet(code, astralIdentifierCodes)\n );\n}\n\n// Test whether a given string is a valid identifier name\n\nexport function isIdentifierName(name: string): boolean {\n let isFirst = true;\n for (let i = 0; i < name.length; i++) {\n // The implementation is based on\n // https://source.chromium.org/chromium/chromium/src/+/master:v8/src/builtins/builtins-string-gen.cc;l=1455;drc=221e331b49dfefadbc6fa40b0c68e6f97606d0b3;bpv=0;bpt=1\n // We reimplement `codePointAt` because `codePointAt` is a V8 builtin which is not inlined by TurboFan (as of M91)\n // since `name` is mostly ASCII, an inlined `charCodeAt` wins here\n let cp = name.charCodeAt(i);\n if ((cp & 0xfc00) === 0xd800 && i + 1 < name.length) {\n const trail = name.charCodeAt(++i);\n if ((trail & 0xfc00) === 0xdc00) {\n cp = 0x10000 + ((cp & 0x3ff) << 10) + (trail & 0x3ff);\n }\n }\n if (isFirst) {\n isFirst = false;\n if (!isIdentifierStart(cp)) {\n return false;\n }\n } else if (!isIdentifierChar(cp)) {\n return false;\n }\n }\n return !isFirst;\n}\n","const reservedWords = {\n keyword: [\n \"break\",\n \"case\",\n \"catch\",\n \"continue\",\n \"debugger\",\n \"default\",\n \"do\",\n \"else\",\n \"finally\",\n \"for\",\n \"function\",\n \"if\",\n \"return\",\n \"switch\",\n \"throw\",\n \"try\",\n \"var\",\n \"const\",\n \"while\",\n \"with\",\n \"new\",\n \"this\",\n \"super\",\n \"class\",\n \"extends\",\n \"export\",\n \"import\",\n \"null\",\n \"true\",\n \"false\",\n \"in\",\n \"instanceof\",\n \"typeof\",\n \"void\",\n \"delete\",\n ],\n strict: [\n \"implements\",\n \"interface\",\n \"let\",\n \"package\",\n \"private\",\n \"protected\",\n \"public\",\n \"static\",\n \"yield\",\n ],\n strictBind: [\"eval\", \"arguments\"],\n};\nconst keywords = new Set(reservedWords.keyword);\nconst reservedWordsStrictSet = new Set(reservedWords.strict);\nconst reservedWordsStrictBindSet = new Set(reservedWords.strictBind);\n\n/**\n * Checks if word is a reserved word in non-strict mode\n */\nexport function isReservedWord(word: string, inModule: boolean): boolean {\n return (inModule && word === \"await\") || word === \"enum\";\n}\n\n/**\n * Checks if word is a reserved word in non-binding strict mode\n *\n * Includes non-strict reserved words\n */\nexport function isStrictReservedWord(word: string, inModule: boolean): boolean {\n return isReservedWord(word, inModule) || reservedWordsStrictSet.has(word);\n}\n\n/**\n * Checks if word is a reserved word in binding strict mode, but it is allowed as\n * a normal identifier.\n */\nexport function isStrictBindOnlyReservedWord(word: string): boolean {\n return reservedWordsStrictBindSet.has(word);\n}\n\n/**\n * Checks if word is a reserved word in binding strict mode\n *\n * Includes non-strict reserved words and non-binding strict reserved words\n */\nexport function isStrictBindReservedWord(\n word: string,\n inModule: boolean,\n): boolean {\n return (\n isStrictReservedWord(word, inModule) || isStrictBindOnlyReservedWord(word)\n );\n}\n\nexport function isKeyword(word: string): boolean {\n return keywords.has(word);\n}\n","import * as charCodes from \"charcodes\";\nimport { isIdentifierStart } from \"@babel/helper-validator-identifier\";\n\nexport {\n isIdentifierStart,\n isIdentifierChar,\n isReservedWord,\n isStrictBindOnlyReservedWord,\n isStrictBindReservedWord,\n isStrictReservedWord,\n isKeyword,\n} from \"@babel/helper-validator-identifier\";\n\nexport const keywordRelationalOperator = /^in(stanceof)?$/;\n\n// Test whether a current state character code and next character code is @\n\nexport function isIteratorStart(\n current: number,\n next: number,\n next2: number,\n): boolean {\n return (\n current === charCodes.atSign &&\n next === charCodes.atSign &&\n isIdentifierStart(next2)\n );\n}\n\n// This is the comprehensive set of JavaScript reserved words\n// If a word is in this set, it could be a reserved word,\n// depending on sourceType/strictMode/binding info. In other words\n// if a word is not in this set, it is not a reserved word under\n// any circumstance.\nconst reservedWordLikeSet = new Set([\n \"break\",\n \"case\",\n \"catch\",\n \"continue\",\n \"debugger\",\n \"default\",\n \"do\",\n \"else\",\n \"finally\",\n \"for\",\n \"function\",\n \"if\",\n \"return\",\n \"switch\",\n \"throw\",\n \"try\",\n \"var\",\n \"const\",\n \"while\",\n \"with\",\n \"new\",\n \"this\",\n \"super\",\n \"class\",\n \"extends\",\n \"export\",\n \"import\",\n \"null\",\n \"true\",\n \"false\",\n \"in\",\n \"instanceof\",\n \"typeof\",\n \"void\",\n \"delete\",\n // strict\n \"implements\",\n \"interface\",\n \"let\",\n \"package\",\n \"private\",\n \"protected\",\n \"public\",\n \"static\",\n \"yield\",\n // strictBind\n \"eval\",\n \"arguments\",\n // reservedWorkLike\n \"enum\",\n \"await\",\n]);\n\nexport function canBeReservedWord(word: string): boolean {\n return reservedWordLikeSet.has(word);\n}\n","import { ScopeFlag, BindingFlag } from \"./scopeflags.ts\";\nimport type { Position } from \"./location.ts\";\nimport type * as N from \"../types.ts\";\nimport { Errors } from \"../parse-error.ts\";\nimport type Tokenizer from \"../tokenizer/index.ts\";\n\nexport const enum NameType {\n // var-declared names in the current lexical scope\n Var = 1 << 0,\n // lexically-declared names in the current lexical scope\n Lexical = 1 << 1,\n // lexically-declared FunctionDeclaration names in the current lexical scope\n Function = 1 << 2,\n}\n\n// Start an AST node, attaching a start offset.\nexport class Scope {\n flags: ScopeFlag = 0;\n names = new Map();\n firstLexicalName = \"\";\n\n constructor(flags: ScopeFlag) {\n this.flags = flags;\n }\n}\n\n// The functions in this module keep track of declared variables in the\n// current scope in order to detect duplicate variable names.\nexport default class ScopeHandler {\n parser: Tokenizer;\n scopeStack: IScope[] = [];\n inModule: boolean;\n undefinedExports = new Map();\n\n constructor(parser: Tokenizer, inModule: boolean) {\n this.parser = parser;\n this.inModule = inModule;\n }\n\n get inTopLevel() {\n return (this.currentScope().flags & ScopeFlag.PROGRAM) > 0;\n }\n get inFunction() {\n return (this.currentVarScopeFlags() & ScopeFlag.FUNCTION_BASE) > 0;\n }\n get allowSuper() {\n return (this.currentThisScopeFlags() & ScopeFlag.SUPER) > 0;\n }\n get allowDirectSuper() {\n return (this.currentThisScopeFlags() & ScopeFlag.DIRECT_SUPER) > 0;\n }\n get allowNewTarget() {\n return (this.currentThisScopeFlags() & ScopeFlag.NEW_TARGET) > 0;\n }\n get inClass() {\n return (this.currentThisScopeFlags() & ScopeFlag.CLASS_BASE) > 0;\n }\n get inClassAndNotInNonArrowFunction() {\n const flags = this.currentThisScopeFlags();\n return (\n (flags & ScopeFlag.CLASS_BASE) > 0 &&\n (flags & ScopeFlag.FUNCTION_BASE) === 0\n );\n }\n get inStaticBlock() {\n for (let i = this.scopeStack.length - 1; ; i--) {\n const { flags } = this.scopeStack[i];\n if (flags & ScopeFlag.STATIC_BLOCK) {\n return true;\n }\n if (flags & (ScopeFlag.VAR | ScopeFlag.CLASS_BASE)) {\n // function body, module body, class property initializers\n return false;\n }\n }\n }\n get inNonArrowFunction() {\n return (this.currentThisScopeFlags() & ScopeFlag.FUNCTION_BASE) > 0;\n }\n get inBareCaseStatement() {\n return (this.currentScope().flags & ScopeFlag.SWITCH) > 0;\n }\n get treatFunctionsAsVar() {\n return this.treatFunctionsAsVarInScope(this.currentScope());\n }\n\n createScope(flags: ScopeFlag): Scope {\n return new Scope(flags);\n }\n\n enter(flags: ScopeFlag) {\n /*:: +createScope: (flags:ScopeFlag) => IScope; */\n // @ts-expect-error This method will be overwritten by subclasses\n this.scopeStack.push(this.createScope(flags));\n }\n\n exit(): ScopeFlag {\n const scope = this.scopeStack.pop()!;\n return scope.flags;\n }\n\n // The spec says:\n // > At the top level of a function, or script, function declarations are\n // > treated like var declarations rather than like lexical declarations.\n treatFunctionsAsVarInScope(scope: IScope): boolean {\n return !!(\n scope.flags & (ScopeFlag.FUNCTION_BASE | ScopeFlag.STATIC_BLOCK) ||\n (!this.parser.inModule && scope.flags & ScopeFlag.PROGRAM)\n );\n }\n\n declareName(name: string, bindingType: BindingFlag, loc: Position) {\n let scope = this.currentScope();\n if (\n bindingType & BindingFlag.SCOPE_LEXICAL ||\n bindingType & BindingFlag.SCOPE_FUNCTION\n ) {\n this.checkRedeclarationInScope(scope, name, bindingType, loc);\n\n let type = scope.names.get(name) || 0;\n\n if (bindingType & BindingFlag.SCOPE_FUNCTION) {\n type = type | NameType.Function;\n } else {\n if (!scope.firstLexicalName) {\n scope.firstLexicalName = name;\n }\n type = type | NameType.Lexical;\n }\n\n scope.names.set(name, type);\n\n if (bindingType & BindingFlag.SCOPE_LEXICAL) {\n this.maybeExportDefined(scope, name);\n }\n } else if (bindingType & BindingFlag.SCOPE_VAR) {\n for (let i = this.scopeStack.length - 1; i >= 0; --i) {\n scope = this.scopeStack[i];\n this.checkRedeclarationInScope(scope, name, bindingType, loc);\n scope.names.set(name, (scope.names.get(name) || 0) | NameType.Var);\n this.maybeExportDefined(scope, name);\n\n if (scope.flags & ScopeFlag.VAR) break;\n }\n }\n if (this.parser.inModule && scope.flags & ScopeFlag.PROGRAM) {\n this.undefinedExports.delete(name);\n }\n }\n\n maybeExportDefined(scope: IScope, name: string) {\n if (this.parser.inModule && scope.flags & ScopeFlag.PROGRAM) {\n this.undefinedExports.delete(name);\n }\n }\n\n checkRedeclarationInScope(\n scope: IScope,\n name: string,\n bindingType: BindingFlag,\n loc: Position,\n ) {\n if (this.isRedeclaredInScope(scope, name, bindingType)) {\n this.parser.raise(Errors.VarRedeclaration, loc, {\n identifierName: name,\n });\n }\n }\n\n isRedeclaredInScope(\n scope: IScope,\n name: string,\n bindingType: BindingFlag,\n ): boolean {\n if (!(bindingType & BindingFlag.KIND_VALUE)) return false;\n\n if (bindingType & BindingFlag.SCOPE_LEXICAL) {\n return scope.names.has(name);\n }\n\n const type = scope.names.get(name) || 0;\n\n if (bindingType & BindingFlag.SCOPE_FUNCTION) {\n return (\n (type & NameType.Lexical) > 0 ||\n (!this.treatFunctionsAsVarInScope(scope) && (type & NameType.Var) > 0)\n );\n }\n\n return (\n ((type & NameType.Lexical) > 0 &&\n // Annex B.3.4\n // https://tc39.es/ecma262/#sec-variablestatements-in-catch-blocks\n !(\n scope.flags & ScopeFlag.SIMPLE_CATCH &&\n scope.firstLexicalName === name\n )) ||\n (!this.treatFunctionsAsVarInScope(scope) &&\n (type & NameType.Function) > 0)\n );\n }\n\n checkLocalExport(id: N.Identifier) {\n const { name } = id;\n const topLevelScope = this.scopeStack[0];\n if (!topLevelScope.names.has(name)) {\n this.undefinedExports.set(name, id.loc.start);\n }\n }\n\n currentScope(): IScope {\n return this.scopeStack[this.scopeStack.length - 1];\n }\n\n currentVarScopeFlags(): ScopeFlag {\n for (let i = this.scopeStack.length - 1; ; i--) {\n const { flags } = this.scopeStack[i];\n if (flags & ScopeFlag.VAR) {\n return flags;\n }\n }\n }\n\n // Could be useful for `arguments`, `this`, `new.target`, `super()`, `super.property`, and `super[property]`.\n currentThisScopeFlags(): ScopeFlag {\n for (let i = this.scopeStack.length - 1; ; i--) {\n const { flags } = this.scopeStack[i];\n if (\n flags & (ScopeFlag.VAR | ScopeFlag.CLASS_BASE) &&\n !(flags & ScopeFlag.ARROW)\n ) {\n return flags;\n }\n }\n }\n}\n","import type { Position } from \"../../util/location.ts\";\nimport ScopeHandler, { NameType, Scope } from \"../../util/scope.ts\";\nimport { BindingFlag, type ScopeFlag } from \"../../util/scopeflags.ts\";\nimport type * as N from \"../../types.ts\";\n\n// Reference implementation: https://github.com/facebook/flow/blob/23aeb2a2ef6eb4241ce178fde5d8f17c5f747fb5/src/typing/env.ml#L536-L584\nclass FlowScope extends Scope {\n // declare function foo(): type;\n declareFunctions = new Set();\n}\n\nexport default class FlowScopeHandler extends ScopeHandler {\n createScope(flags: ScopeFlag): FlowScope {\n return new FlowScope(flags);\n }\n\n declareName(name: string, bindingType: BindingFlag, loc: Position) {\n const scope = this.currentScope();\n if (bindingType & BindingFlag.FLAG_FLOW_DECLARE_FN) {\n this.checkRedeclarationInScope(scope, name, bindingType, loc);\n this.maybeExportDefined(scope, name);\n scope.declareFunctions.add(name);\n return;\n }\n\n super.declareName(name, bindingType, loc);\n }\n\n isRedeclaredInScope(\n scope: FlowScope,\n name: string,\n bindingType: BindingFlag,\n ): boolean {\n if (super.isRedeclaredInScope(scope, name, bindingType)) return true;\n\n if (\n bindingType & BindingFlag.FLAG_FLOW_DECLARE_FN &&\n !scope.declareFunctions.has(name)\n ) {\n const type = scope.names.get(name)!;\n return (type & NameType.Function) > 0 || (type & NameType.Lexical) > 0;\n }\n\n return false;\n }\n\n checkLocalExport(id: N.Identifier) {\n if (!this.scopeStack[0].declareFunctions.has(id.name)) {\n super.checkLocalExport(id);\n }\n }\n}\n","/*:: declare var invariant; */\n\nimport type Parser from \"../../parser/index.ts\";\nimport {\n tokenIsIdentifier,\n tokenIsKeyword,\n tokenIsKeywordOrIdentifier,\n tokenIsLiteralPropertyName,\n tokenLabelName,\n tt,\n type TokenType,\n tokenIsFlowInterfaceOrTypeOrOpaque,\n} from \"../../tokenizer/types.ts\";\nimport type * as N from \"../../types.ts\";\nimport type { Position } from \"../../util/location.ts\";\nimport { types as tc } from \"../../tokenizer/context.ts\";\nimport * as charCodes from \"charcodes\";\nimport { isIteratorStart } from \"../../util/identifier.ts\";\nimport FlowScopeHandler from \"./scope.ts\";\nimport { BindingFlag, ScopeFlag } from \"../../util/scopeflags.ts\";\nimport type { ExpressionErrors } from \"../../parser/util.ts\";\nimport type { ParseStatementFlag } from \"../../parser/statement.ts\";\nimport { Errors, ParseErrorEnum } from \"../../parse-error.ts\";\nimport type { Undone } from \"../../parser/node.ts\";\nimport type { ClassWithMixin, IJSXParserMixin } from \"../jsx/index.ts\";\n\nconst reservedTypes = new Set([\n \"_\",\n \"any\",\n \"bool\",\n \"boolean\",\n \"empty\",\n \"extends\",\n \"false\",\n \"interface\",\n \"mixed\",\n \"null\",\n \"number\",\n \"static\",\n \"string\",\n \"true\",\n \"typeof\",\n \"void\",\n]);\n\n/* eslint sort-keys: \"error\" */\n// The Errors key follows https://github.com/facebook/flow/blob/master/src/parser/parse_error.ml unless it does not exist\nconst FlowErrors = ParseErrorEnum`flow`({\n AmbiguousConditionalArrow:\n \"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.\",\n AmbiguousDeclareModuleKind:\n \"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.\",\n // TODO: When we get proper string enums in typescript make this ReservedType.\n // Not really worth it to do the whole $Values dance with reservedTypes set.\n AssignReservedType: ({ reservedType }: { reservedType: string }) =>\n `Cannot overwrite reserved type ${reservedType}.`,\n DeclareClassElement:\n \"The `declare` modifier can only appear on class fields.\",\n DeclareClassFieldInitializer:\n \"Initializers are not allowed in fields with the `declare` modifier.\",\n DuplicateDeclareModuleExports:\n \"Duplicate `declare module.exports` statement.\",\n EnumBooleanMemberNotInitialized: ({\n memberName,\n enumName,\n }: {\n memberName: string;\n enumName: string;\n }) =>\n `Boolean enum members need to be initialized. Use either \\`${memberName} = true,\\` or \\`${memberName} = false,\\` in enum \\`${enumName}\\`.`,\n EnumDuplicateMemberName: ({\n memberName,\n enumName,\n }: {\n memberName: string;\n enumName: string;\n }) =>\n `Enum member names need to be unique, but the name \\`${memberName}\\` has already been used before in enum \\`${enumName}\\`.`,\n EnumInconsistentMemberValues: ({ enumName }: { enumName: string }) =>\n `Enum \\`${enumName}\\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,\n EnumInvalidExplicitType: ({\n invalidEnumType,\n enumName,\n }: {\n invalidEnumType: string;\n enumName: string;\n }) =>\n `Enum type \\`${invalidEnumType}\\` is not valid. Use one of \\`boolean\\`, \\`number\\`, \\`string\\`, or \\`symbol\\` in enum \\`${enumName}\\`.`,\n EnumInvalidExplicitTypeUnknownSupplied: ({\n enumName,\n }: {\n enumName: string;\n }) =>\n `Supplied enum type is not valid. Use one of \\`boolean\\`, \\`number\\`, \\`string\\`, or \\`symbol\\` in enum \\`${enumName}\\`.`,\n\n // TODO: When moving to typescript, we should either have each of the\n // following errors only accept the specific strings they want:\n //\n // ...PrimaryType: explicitType: \"string\" | \"number\" | \"boolean\"\n // ...SymbolType: explicitType: \"symbol\"\n // ...UnknownType: explicitType: null\n //\n // Or, alternatively, merge these three errors together into one\n // `EnumInvalidMemberInitializer` error that can accept `EnumExplicitType`\n // without alteration, and then just have its message change based on the\n // explicitType.\n EnumInvalidMemberInitializerPrimaryType: ({\n enumName,\n memberName,\n explicitType,\n }: {\n enumName: string;\n memberName: string;\n explicitType: EnumExplicitType;\n }) =>\n `Enum \\`${enumName}\\` has type \\`${explicitType}\\`, so the initializer of \\`${memberName}\\` needs to be a ${explicitType} literal.`,\n EnumInvalidMemberInitializerSymbolType: ({\n enumName,\n memberName,\n }: {\n enumName: string;\n memberName: string;\n explicitType: EnumExplicitType;\n }) =>\n `Symbol enum members cannot be initialized. Use \\`${memberName},\\` in enum \\`${enumName}\\`.`,\n EnumInvalidMemberInitializerUnknownType: ({\n enumName,\n memberName,\n }: {\n enumName: string;\n memberName: string;\n explicitType: EnumExplicitType;\n }) =>\n `The enum member initializer for \\`${memberName}\\` needs to be a literal (either a boolean, number, or string) in enum \\`${enumName}\\`.`,\n EnumInvalidMemberName: ({\n enumName,\n memberName,\n suggestion,\n }: {\n enumName: string;\n memberName: string;\n suggestion: string;\n }) =>\n `Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \\`${memberName}\\`, consider using \\`${suggestion}\\`, in enum \\`${enumName}\\`.`,\n EnumNumberMemberNotInitialized: ({\n enumName,\n memberName,\n }: {\n enumName: string;\n memberName: string;\n }) =>\n `Number enum members need to be initialized, e.g. \\`${memberName} = 1\\` in enum \\`${enumName}\\`.`,\n EnumStringMemberInconsistentlyInitialized: ({\n enumName,\n }: {\n enumName: string;\n }) =>\n `String enum members need to consistently either all use initializers, or use no initializers, in enum \\`${enumName}\\`.`,\n GetterMayNotHaveThisParam: \"A getter cannot have a `this` parameter.\",\n ImportReflectionHasImportType:\n \"An `import module` declaration can not use `type` or `typeof` keyword.\",\n ImportTypeShorthandOnlyInPureImport:\n \"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.\",\n InexactInsideExact:\n \"Explicit inexact syntax cannot appear inside an explicit exact object type.\",\n InexactInsideNonObject:\n \"Explicit inexact syntax cannot appear in class or interface definitions.\",\n InexactVariance: \"Explicit inexact syntax cannot have variance.\",\n InvalidNonTypeImportInDeclareModule:\n \"Imports within a `declare module` body must always be `import type` or `import typeof`.\",\n MissingTypeParamDefault:\n \"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.\",\n NestedDeclareModule:\n \"`declare module` cannot be used inside another `declare module`.\",\n NestedFlowComment: \"Cannot have a flow comment inside another flow comment.\",\n PatternIsOptional: {\n message:\n \"A binding pattern parameter cannot be optional in an implementation signature.\",\n // For consistency in TypeScript and Flow error codes\n ...(!process.env.BABEL_8_BREAKING\n ? { reasonCode: \"OptionalBindingPattern\" }\n : {}),\n },\n SetterMayNotHaveThisParam: \"A setter cannot have a `this` parameter.\",\n SpreadVariance: \"Spread properties cannot have variance.\",\n ThisParamAnnotationRequired:\n \"A type annotation is required for the `this` parameter.\",\n ThisParamBannedInConstructor:\n \"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.\",\n ThisParamMayNotBeOptional: \"The `this` parameter cannot be optional.\",\n ThisParamMustBeFirst:\n \"The `this` parameter must be the first function parameter.\",\n ThisParamNoDefault: \"The `this` parameter may not have a default value.\",\n TypeBeforeInitializer:\n \"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.\",\n TypeCastInPattern:\n \"The type cast expression is expected to be wrapped with parenthesis.\",\n UnexpectedExplicitInexactInObject:\n \"Explicit inexact syntax must appear at the end of an inexact object.\",\n UnexpectedReservedType: ({ reservedType }: { reservedType: string }) =>\n `Unexpected reserved type ${reservedType}.`,\n UnexpectedReservedUnderscore:\n \"`_` is only allowed as a type argument to call or new.\",\n UnexpectedSpaceBetweenModuloChecks:\n \"Spaces between `%` and `checks` are not allowed here.\",\n UnexpectedSpreadType:\n \"Spread operator cannot appear in class or interface definitions.\",\n UnexpectedSubtractionOperand:\n 'Unexpected token, expected \"number\" or \"bigint\".',\n UnexpectedTokenAfterTypeParameter:\n \"Expected an arrow function after this type parameter declaration.\",\n UnexpectedTypeParameterBeforeAsyncArrowFunction:\n \"Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.\",\n UnsupportedDeclareExportKind: ({\n unsupportedExportKind,\n suggestion,\n }: {\n unsupportedExportKind: string;\n suggestion: string;\n }) =>\n `\\`declare export ${unsupportedExportKind}\\` is not supported. Use \\`${suggestion}\\` instead.`,\n UnsupportedStatementInDeclareModule:\n \"Only declares and type imports are allowed inside declare module.\",\n UnterminatedFlowComment: \"Unterminated flow-comment.\",\n});\n/* eslint-disable sort-keys */\n\nfunction isEsModuleType(bodyElement: N.Node): boolean {\n return (\n bodyElement.type === \"DeclareExportAllDeclaration\" ||\n (bodyElement.type === \"DeclareExportDeclaration\" &&\n (!bodyElement.declaration ||\n (bodyElement.declaration.type !== \"TypeAlias\" &&\n bodyElement.declaration.type !== \"InterfaceDeclaration\")))\n );\n}\n\nfunction hasTypeImportKind(\n node: Undone,\n): boolean {\n return node.importKind === \"type\" || node.importKind === \"typeof\";\n}\n\nconst exportSuggestions = {\n const: \"declare export var\",\n let: \"declare export var\",\n type: \"export type\",\n interface: \"export interface\",\n};\n\n// Like Array#filter, but returns a tuple [ acceptedElements, discardedElements ]\nfunction partition(\n list: T[],\n test: (c: T, b: number, a: T[]) => boolean | undefined | null,\n): [T[], T[]] {\n const list1: T[] = [];\n const list2: T[] = [];\n for (let i = 0; i < list.length; i++) {\n (test(list[i], i, list) ? list1 : list2).push(list[i]);\n }\n return [list1, list2];\n}\n\nconst FLOW_PRAGMA_REGEX = /\\*?\\s*@((?:no)?flow)\\b/;\n\n// Flow enums types\ntype EnumExplicitType = null | \"boolean\" | \"number\" | \"string\" | \"symbol\";\n\ntype EnumContext = {\n enumName: string;\n explicitType: EnumExplicitType;\n memberName: string;\n};\n\ntype EnumMemberInit =\n | {\n type: \"number\";\n loc: Position;\n value: N.Node;\n }\n | {\n type: \"string\";\n loc: Position;\n value: N.Node;\n }\n | {\n type: \"boolean\";\n loc: Position;\n value: N.Node;\n }\n | {\n type: \"invalid\";\n loc: Position;\n }\n | {\n type: \"none\";\n loc: Position;\n };\n\nexport default (superClass: ClassWithMixin) =>\n class FlowParserMixin extends superClass implements Parser {\n // The value of the @flow/@noflow pragma. Initially undefined, transitions\n // to \"@flow\" or \"@noflow\" if we see a pragma. Transitions to null if we are\n // past the initial comment.\n flowPragma: void | null | \"flow\" | \"noflow\" = undefined;\n\n getScopeHandler(): new (...args: any) => FlowScopeHandler {\n return FlowScopeHandler;\n }\n\n shouldParseTypes(): boolean {\n return this.getPluginOption(\"flow\", \"all\") || this.flowPragma === \"flow\";\n }\n\n finishToken(type: TokenType, val: any): void {\n if (\n type !== tt.string &&\n type !== tt.semi &&\n type !== tt.interpreterDirective\n ) {\n if (this.flowPragma === undefined) {\n this.flowPragma = null;\n }\n }\n super.finishToken(type, val);\n }\n\n addComment(comment: N.Comment): void {\n if (this.flowPragma === undefined) {\n // Try to parse a flow pragma.\n const matches = FLOW_PRAGMA_REGEX.exec(comment.value);\n if (!matches) {\n // do nothing\n } else if (matches[1] === \"flow\") {\n this.flowPragma = \"flow\";\n } else if (matches[1] === \"noflow\") {\n this.flowPragma = \"noflow\";\n } else {\n throw new Error(\"Unexpected flow pragma\");\n }\n }\n super.addComment(comment);\n }\n\n flowParseTypeInitialiser(tok?: TokenType): N.FlowType {\n const oldInType = this.state.inType;\n this.state.inType = true;\n this.expect(tok || tt.colon);\n\n const type = this.flowParseType();\n this.state.inType = oldInType;\n return type;\n }\n\n flowParsePredicate(): N.FlowPredicate {\n const node = this.startNode();\n const moduloLoc = this.state.startLoc;\n this.next(); // eat `%`\n this.expectContextual(tt._checks);\n // Force '%' and 'checks' to be adjacent\n if (this.state.lastTokStartLoc!.index > moduloLoc.index + 1) {\n this.raise(FlowErrors.UnexpectedSpaceBetweenModuloChecks, moduloLoc);\n }\n if (this.eat(tt.parenL)) {\n node.value = super.parseExpression();\n this.expect(tt.parenR);\n return this.finishNode(node, \"DeclaredPredicate\");\n } else {\n return this.finishNode(node, \"InferredPredicate\");\n }\n }\n\n flowParseTypeAndPredicateInitialiser(): [\n N.FlowType | null,\n N.FlowPredicate | null,\n ] {\n const oldInType = this.state.inType;\n this.state.inType = true;\n this.expect(tt.colon);\n let type = null;\n let predicate = null;\n if (this.match(tt.modulo)) {\n this.state.inType = oldInType;\n predicate = this.flowParsePredicate();\n } else {\n type = this.flowParseType();\n this.state.inType = oldInType;\n if (this.match(tt.modulo)) {\n predicate = this.flowParsePredicate();\n }\n }\n return [type, predicate];\n }\n\n flowParseDeclareClass(\n node: Undone,\n ): N.FlowDeclareClass {\n this.next();\n this.flowParseInterfaceish(node, /*isClass*/ true);\n return this.finishNode(node, \"DeclareClass\");\n }\n\n flowParseDeclareFunction(\n node: Undone,\n ): N.FlowDeclareFunction {\n this.next();\n\n const id = (node.id = this.parseIdentifier());\n\n const typeNode = this.startNode();\n const typeContainer = this.startNode();\n\n if (this.match(tt.lt)) {\n typeNode.typeParameters = this.flowParseTypeParameterDeclaration();\n } else {\n typeNode.typeParameters = null;\n }\n\n this.expect(tt.parenL);\n const tmp = this.flowParseFunctionTypeParams();\n typeNode.params = tmp.params;\n typeNode.rest = tmp.rest;\n typeNode.this = tmp._this;\n this.expect(tt.parenR);\n\n [typeNode.returnType, node.predicate] =\n this.flowParseTypeAndPredicateInitialiser();\n\n typeContainer.typeAnnotation = this.finishNode(\n typeNode,\n \"FunctionTypeAnnotation\",\n );\n\n id.typeAnnotation = this.finishNode(typeContainer, \"TypeAnnotation\");\n\n this.resetEndLocation(id);\n this.semicolon();\n\n this.scope.declareName(\n node.id.name,\n BindingFlag.TYPE_FLOW_DECLARE_FN,\n node.id.loc.start,\n );\n\n return this.finishNode(node, \"DeclareFunction\");\n }\n\n flowParseDeclare(\n node: Undone,\n insideModule?: boolean,\n ): N.FlowDeclare {\n if (this.match(tt._class)) {\n return this.flowParseDeclareClass(node);\n } else if (this.match(tt._function)) {\n return this.flowParseDeclareFunction(node);\n } else if (this.match(tt._var)) {\n return this.flowParseDeclareVariable(node);\n } else if (this.eatContextual(tt._module)) {\n if (this.match(tt.dot)) {\n return this.flowParseDeclareModuleExports(node);\n } else {\n if (insideModule) {\n this.raise(\n FlowErrors.NestedDeclareModule,\n this.state.lastTokStartLoc!,\n );\n }\n return this.flowParseDeclareModule(node);\n }\n } else if (this.isContextual(tt._type)) {\n return this.flowParseDeclareTypeAlias(node);\n } else if (this.isContextual(tt._opaque)) {\n return this.flowParseDeclareOpaqueType(node);\n } else if (this.isContextual(tt._interface)) {\n return this.flowParseDeclareInterface(node);\n } else if (this.match(tt._export)) {\n return this.flowParseDeclareExportDeclaration(node, insideModule);\n }\n throw this.unexpected();\n }\n\n flowParseDeclareVariable(\n node: Undone,\n ): N.FlowDeclareVariable {\n this.next();\n node.id = this.flowParseTypeAnnotatableIdentifier(\n /*allowPrimitiveOverride*/ true,\n );\n this.scope.declareName(\n node.id.name,\n BindingFlag.TYPE_VAR,\n node.id.loc.start,\n );\n this.semicolon();\n return this.finishNode(node, \"DeclareVariable\");\n }\n\n flowParseDeclareModule(\n node: Undone,\n ): N.FlowDeclareModule {\n this.scope.enter(ScopeFlag.OTHER);\n\n if (this.match(tt.string)) {\n node.id = super.parseExprAtom();\n } else {\n node.id = this.parseIdentifier();\n }\n\n const bodyNode = (node.body = this.startNode());\n const body: N.Statement[] = (bodyNode.body = []);\n this.expect(tt.braceL);\n while (!this.match(tt.braceR)) {\n const bodyNode = this.startNode();\n\n if (this.match(tt._import)) {\n this.next();\n if (!this.isContextual(tt._type) && !this.match(tt._typeof)) {\n this.raise(\n FlowErrors.InvalidNonTypeImportInDeclareModule,\n this.state.lastTokStartLoc!,\n );\n }\n body.push(super.parseImport(bodyNode));\n } else {\n this.expectContextual(\n tt._declare,\n FlowErrors.UnsupportedStatementInDeclareModule,\n );\n body.push(this.flowParseDeclare(bodyNode, true));\n }\n }\n\n this.scope.exit();\n\n this.expect(tt.braceR);\n\n this.finishNode(bodyNode, \"BlockStatement\");\n\n let kind: \"CommonJS\" | \"ES\" | null = null;\n let hasModuleExport = false;\n body.forEach(bodyElement => {\n if (isEsModuleType(bodyElement)) {\n if (kind === \"CommonJS\") {\n this.raise(FlowErrors.AmbiguousDeclareModuleKind, bodyElement);\n }\n kind = \"ES\";\n } else if (bodyElement.type === \"DeclareModuleExports\") {\n if (hasModuleExport) {\n this.raise(FlowErrors.DuplicateDeclareModuleExports, bodyElement);\n }\n if (kind === \"ES\") {\n this.raise(FlowErrors.AmbiguousDeclareModuleKind, bodyElement);\n }\n kind = \"CommonJS\";\n hasModuleExport = true;\n }\n });\n\n node.kind = kind || \"CommonJS\";\n return this.finishNode(node, \"DeclareModule\");\n }\n\n flowParseDeclareExportDeclaration(\n node: Undone,\n insideModule?: boolean | null,\n ): N.FlowDeclareExportDeclaration {\n this.expect(tt._export);\n\n if (this.eat(tt._default)) {\n if (this.match(tt._function) || this.match(tt._class)) {\n // declare export default class ...\n // declare export default function ...\n node.declaration = this.flowParseDeclare(this.startNode());\n } else {\n // declare export default [type];\n node.declaration = this.flowParseType();\n this.semicolon();\n }\n node.default = true;\n\n return this.finishNode(node, \"DeclareExportDeclaration\");\n } else {\n if (\n this.match(tt._const) ||\n this.isLet() ||\n ((this.isContextual(tt._type) || this.isContextual(tt._interface)) &&\n !insideModule)\n ) {\n const label = this.state.value as\n | \"const\"\n | \"let\"\n | \"type\"\n | \"interface\";\n throw this.raise(\n FlowErrors.UnsupportedDeclareExportKind,\n this.state.startLoc,\n {\n unsupportedExportKind: label,\n suggestion: exportSuggestions[label],\n },\n );\n }\n\n if (\n this.match(tt._var) || // declare export var ...\n this.match(tt._function) || // declare export function ...\n this.match(tt._class) || // declare export class ...\n this.isContextual(tt._opaque) // declare export opaque ..\n ) {\n node.declaration = this.flowParseDeclare(this.startNode());\n node.default = false;\n\n return this.finishNode(node, \"DeclareExportDeclaration\");\n } else if (\n this.match(tt.star) || // declare export * from ''\n this.match(tt.braceL) || // declare export {} ...\n this.isContextual(tt._interface) || // declare export interface ...\n this.isContextual(tt._type) || // declare export type ...\n this.isContextual(tt._opaque) // declare export opaque type ...\n ) {\n node = this.parseExport(\n node as Undone,\n /* decorators */ null,\n );\n if (node.type === \"ExportNamedDeclaration\") {\n node.default = false;\n delete node.exportKind;\n return this.castNodeTo(\n node as N.ExportNamedDeclaration,\n \"DeclareExportDeclaration\",\n );\n } else {\n return this.castNodeTo(\n node as N.ExportAllDeclaration,\n \"DeclareExportAllDeclaration\",\n );\n }\n }\n }\n\n throw this.unexpected();\n }\n\n flowParseDeclareModuleExports(\n node: Undone,\n ): N.FlowDeclareModuleExports {\n this.next();\n this.expectContextual(tt._exports);\n node.typeAnnotation = this.flowParseTypeAnnotation();\n this.semicolon();\n\n return this.finishNode(node, \"DeclareModuleExports\");\n }\n\n flowParseDeclareTypeAlias(\n node: Undone,\n ): N.FlowDeclareTypeAlias {\n this.next();\n const finished = this.flowParseTypeAlias(\n node,\n ) as unknown as N.FlowDeclareTypeAlias;\n // Don't do finishNode as we don't want to process comments twice\n this.castNodeTo(finished, \"DeclareTypeAlias\");\n return finished;\n }\n\n flowParseDeclareOpaqueType(\n node: Undone,\n ): N.FlowDeclareOpaqueType {\n this.next();\n const finished = this.flowParseOpaqueType(\n node,\n true,\n ) as unknown as N.FlowDeclareOpaqueType;\n // Don't do finishNode as we don't want to process comments twice\n this.castNodeTo(finished, \"DeclareOpaqueType\");\n return finished;\n }\n\n flowParseDeclareInterface(\n node: Undone,\n ): N.FlowDeclareInterface {\n this.next();\n this.flowParseInterfaceish(node, /* isClass */ false);\n return this.finishNode(node, \"DeclareInterface\");\n }\n\n // Interfaces\n\n flowParseInterfaceish(node: Undone, isClass: boolean): void {\n node.id = this.flowParseRestrictedIdentifier(\n /* liberal */ !isClass,\n /* declaration */ true,\n );\n\n this.scope.declareName(\n node.id.name,\n isClass ? BindingFlag.TYPE_FUNCTION : BindingFlag.TYPE_LEXICAL,\n node.id.loc.start,\n );\n\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterDeclaration();\n } else {\n node.typeParameters = null;\n }\n\n node.extends = [];\n\n if (this.eat(tt._extends)) {\n do {\n node.extends.push(this.flowParseInterfaceExtends());\n } while (!isClass && this.eat(tt.comma));\n }\n\n if (isClass) {\n node.implements = [];\n node.mixins = [];\n\n if (this.eatContextual(tt._mixins)) {\n do {\n node.mixins.push(this.flowParseInterfaceExtends());\n } while (this.eat(tt.comma));\n }\n\n if (this.eatContextual(tt._implements)) {\n do {\n node.implements.push(this.flowParseInterfaceExtends());\n } while (this.eat(tt.comma));\n }\n }\n\n node.body = this.flowParseObjectType({\n allowStatic: isClass,\n allowExact: false,\n allowSpread: false,\n allowProto: isClass,\n allowInexact: false,\n });\n }\n\n flowParseInterfaceExtends(): N.FlowInterfaceExtends {\n const node = this.startNode();\n\n node.id = this.flowParseQualifiedTypeIdentifier();\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterInstantiation();\n } else {\n node.typeParameters = null;\n }\n\n return this.finishNode(node, \"InterfaceExtends\");\n }\n\n flowParseInterface(node: Undone): N.FlowInterface {\n this.flowParseInterfaceish(node, /* isClass */ false);\n return this.finishNode(node, \"InterfaceDeclaration\");\n }\n\n checkNotUnderscore(word: string) {\n if (word === \"_\") {\n this.raise(\n FlowErrors.UnexpectedReservedUnderscore,\n this.state.startLoc,\n );\n }\n }\n\n checkReservedType(word: string, startLoc: Position, declaration?: boolean) {\n if (!reservedTypes.has(word)) return;\n\n this.raise(\n declaration\n ? FlowErrors.AssignReservedType\n : FlowErrors.UnexpectedReservedType,\n startLoc,\n {\n reservedType: word,\n },\n );\n }\n\n flowParseRestrictedIdentifier(\n liberal?: boolean,\n declaration?: boolean,\n ): N.Identifier {\n this.checkReservedType(\n this.state.value,\n this.state.startLoc,\n declaration,\n );\n return this.parseIdentifier(liberal);\n }\n\n // Type aliases\n\n flowParseTypeAlias(node: Undone): N.FlowTypeAlias {\n node.id = this.flowParseRestrictedIdentifier(\n /* liberal */ false,\n /* declaration */ true,\n );\n this.scope.declareName(\n node.id.name,\n BindingFlag.TYPE_LEXICAL,\n node.id.loc.start,\n );\n\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterDeclaration();\n } else {\n node.typeParameters = null;\n }\n\n node.right = this.flowParseTypeInitialiser(tt.eq);\n this.semicolon();\n\n return this.finishNode(node, \"TypeAlias\");\n }\n\n flowParseOpaqueType(\n node: Undone,\n declare: boolean,\n ): N.FlowOpaqueType {\n this.expectContextual(tt._type);\n node.id = this.flowParseRestrictedIdentifier(\n /* liberal */ true,\n /* declaration */ true,\n );\n this.scope.declareName(\n node.id.name,\n BindingFlag.TYPE_LEXICAL,\n node.id.loc.start,\n );\n\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterDeclaration();\n } else {\n node.typeParameters = null;\n }\n\n // Parse the supertype\n node.supertype = null;\n if (this.match(tt.colon)) {\n node.supertype = this.flowParseTypeInitialiser(tt.colon);\n }\n\n node.impltype = null;\n if (!declare) {\n node.impltype = this.flowParseTypeInitialiser(tt.eq);\n }\n this.semicolon();\n\n return this.finishNode(node, \"OpaqueType\");\n }\n\n // Type annotations\n\n flowParseTypeParameter(requireDefault: boolean = false): N.TypeParameter {\n const nodeStartLoc = this.state.startLoc;\n\n const node = this.startNode();\n\n const variance = this.flowParseVariance();\n\n const ident = this.flowParseTypeAnnotatableIdentifier();\n node.name = ident.name;\n // @ts-expect-error migrate to Babel types\n node.variance = variance;\n // @ts-expect-error migrate to Babel types\n node.bound = ident.typeAnnotation;\n\n if (this.match(tt.eq)) {\n this.eat(tt.eq);\n // @ts-expect-error migrate to Babel types\n node.default = this.flowParseType();\n } else {\n if (requireDefault) {\n this.raise(FlowErrors.MissingTypeParamDefault, nodeStartLoc);\n }\n }\n\n return this.finishNode(node, \"TypeParameter\");\n }\n\n flowParseTypeParameterDeclaration(): N.TypeParameterDeclaration {\n const oldInType = this.state.inType;\n const node = this.startNode();\n node.params = [];\n\n this.state.inType = true;\n\n // istanbul ignore else: this condition is already checked at all call sites\n if (this.match(tt.lt) || this.match(tt.jsxTagStart)) {\n this.next();\n } else {\n this.unexpected();\n }\n\n let defaultRequired = false;\n\n do {\n const typeParameter = this.flowParseTypeParameter(defaultRequired);\n\n node.params.push(typeParameter);\n\n if (typeParameter.default) {\n defaultRequired = true;\n }\n\n if (!this.match(tt.gt)) {\n this.expect(tt.comma);\n }\n } while (!this.match(tt.gt));\n this.expect(tt.gt);\n\n this.state.inType = oldInType;\n\n return this.finishNode(node, \"TypeParameterDeclaration\");\n }\n\n // Parse in top level normal context if we are in a JSX context\n flowInTopLevelContext(cb: () => T): T {\n if (this.curContext() !== tc.brace) {\n const oldContext = this.state.context;\n this.state.context = [oldContext[0]];\n try {\n return cb();\n } finally {\n this.state.context = oldContext;\n }\n } else {\n return cb();\n }\n }\n\n // Used when parsing type arguments from ES or JSX productions, where the first token\n // has been created without state.inType. Thus we need to re-scan the lt token.\n flowParseTypeParameterInstantiationInExpression():\n | N.TypeParameterInstantiation\n | undefined {\n if (this.reScan_lt() !== tt.lt) return;\n return this.flowParseTypeParameterInstantiation();\n }\n\n flowParseTypeParameterInstantiation(): N.TypeParameterInstantiation {\n const node = this.startNode();\n const oldInType = this.state.inType;\n\n this.state.inType = true;\n node.params = [];\n this.flowInTopLevelContext(() => {\n this.expect(tt.lt);\n const oldNoAnonFunctionType = this.state.noAnonFunctionType;\n this.state.noAnonFunctionType = false;\n while (!this.match(tt.gt)) {\n node.params.push(this.flowParseType());\n if (!this.match(tt.gt)) {\n this.expect(tt.comma);\n }\n }\n this.state.noAnonFunctionType = oldNoAnonFunctionType;\n });\n\n this.state.inType = oldInType;\n if (!this.state.inType && this.curContext() === tc.brace) {\n // rescan `>` when we are no longer in type context and JSX parsing context\n // since it was tokenized when `inType` is `true`.\n this.reScan_lt_gt();\n }\n this.expect(tt.gt);\n\n return this.finishNode(node, \"TypeParameterInstantiation\");\n }\n\n flowParseTypeParameterInstantiationCallOrNew(): N.TypeParameterInstantiation | null {\n if (this.reScan_lt() !== tt.lt) return null;\n const node = this.startNode();\n const oldInType = this.state.inType;\n node.params = [];\n\n this.state.inType = true;\n\n this.expect(tt.lt);\n while (!this.match(tt.gt)) {\n node.params.push(this.flowParseTypeOrImplicitInstantiation());\n if (!this.match(tt.gt)) {\n this.expect(tt.comma);\n }\n }\n this.expect(tt.gt);\n\n this.state.inType = oldInType;\n\n return this.finishNode(node, \"TypeParameterInstantiation\");\n }\n\n flowParseInterfaceType(): N.FlowInterfaceType {\n const node = this.startNode();\n this.expectContextual(tt._interface);\n\n node.extends = [];\n if (this.eat(tt._extends)) {\n do {\n node.extends.push(this.flowParseInterfaceExtends());\n } while (this.eat(tt.comma));\n }\n\n node.body = this.flowParseObjectType({\n allowStatic: false,\n allowExact: false,\n allowSpread: false,\n allowProto: false,\n allowInexact: false,\n });\n\n return this.finishNode(node, \"InterfaceTypeAnnotation\");\n }\n\n flowParseObjectPropertyKey(): N.Expression {\n return this.match(tt.num) || this.match(tt.string)\n ? super.parseExprAtom()\n : this.parseIdentifier(true);\n }\n\n flowParseObjectTypeIndexer(\n node: Undone,\n isStatic: boolean,\n variance?: N.FlowVariance | null,\n ): N.FlowObjectTypeIndexer {\n node.static = isStatic;\n\n // Note: bracketL has already been consumed\n if (this.lookahead().type === tt.colon) {\n node.id = this.flowParseObjectPropertyKey();\n node.key = this.flowParseTypeInitialiser();\n } else {\n node.id = null;\n node.key = this.flowParseType();\n }\n this.expect(tt.bracketR);\n node.value = this.flowParseTypeInitialiser();\n node.variance = variance;\n\n return this.finishNode(node, \"ObjectTypeIndexer\");\n }\n\n flowParseObjectTypeInternalSlot(\n node: Undone,\n isStatic: boolean,\n ): N.FlowObjectTypeInternalSlot {\n node.static = isStatic;\n // Note: both bracketL have already been consumed\n node.id = this.flowParseObjectPropertyKey();\n this.expect(tt.bracketR);\n this.expect(tt.bracketR);\n if (this.match(tt.lt) || this.match(tt.parenL)) {\n node.method = true;\n node.optional = false;\n node.value = this.flowParseObjectTypeMethodish(\n this.startNodeAt(node.loc.start),\n );\n } else {\n node.method = false;\n if (this.eat(tt.question)) {\n node.optional = true;\n }\n node.value = this.flowParseTypeInitialiser();\n }\n return this.finishNode(node, \"ObjectTypeInternalSlot\");\n }\n\n flowParseObjectTypeMethodish(\n node: Undone,\n ): N.FlowFunctionTypeAnnotation {\n node.params = [];\n node.rest = null;\n node.typeParameters = null;\n node.this = null;\n\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterDeclaration();\n }\n\n this.expect(tt.parenL);\n if (this.match(tt._this)) {\n node.this = this.flowParseFunctionTypeParam(/* first */ true);\n // match Flow parser behavior\n node.this.name = null;\n if (!this.match(tt.parenR)) {\n this.expect(tt.comma);\n }\n }\n while (!this.match(tt.parenR) && !this.match(tt.ellipsis)) {\n node.params.push(this.flowParseFunctionTypeParam(false));\n if (!this.match(tt.parenR)) {\n this.expect(tt.comma);\n }\n }\n\n if (this.eat(tt.ellipsis)) {\n node.rest = this.flowParseFunctionTypeParam(false);\n }\n this.expect(tt.parenR);\n node.returnType = this.flowParseTypeInitialiser();\n\n return this.finishNode(node, \"FunctionTypeAnnotation\");\n }\n\n flowParseObjectTypeCallProperty(\n node: Undone,\n isStatic: boolean,\n ): N.FlowObjectTypeCallProperty {\n const valueNode = this.startNode();\n node.static = isStatic;\n node.value = this.flowParseObjectTypeMethodish(valueNode);\n return this.finishNode(node, \"ObjectTypeCallProperty\");\n }\n\n flowParseObjectType({\n allowStatic,\n allowExact,\n allowSpread,\n allowProto,\n allowInexact,\n }: {\n allowStatic: boolean;\n allowExact: boolean;\n allowSpread: boolean;\n allowProto: boolean;\n allowInexact: boolean;\n }): N.FlowObjectTypeAnnotation {\n const oldInType = this.state.inType;\n this.state.inType = true;\n\n const nodeStart = this.startNode();\n\n nodeStart.callProperties = [];\n nodeStart.properties = [];\n nodeStart.indexers = [];\n nodeStart.internalSlots = [];\n\n let endDelim;\n let exact;\n let inexact = false;\n if (allowExact && this.match(tt.braceBarL)) {\n this.expect(tt.braceBarL);\n endDelim = tt.braceBarR;\n exact = true;\n } else {\n this.expect(tt.braceL);\n endDelim = tt.braceR;\n exact = false;\n }\n\n nodeStart.exact = exact;\n\n while (!this.match(endDelim)) {\n let isStatic = false;\n let protoStartLoc: Position | undefined | null = null;\n let inexactStartLoc: Position | undefined | null = null;\n const node = this.startNode();\n\n if (allowProto && this.isContextual(tt._proto)) {\n const lookahead = this.lookahead();\n\n if (lookahead.type !== tt.colon && lookahead.type !== tt.question) {\n this.next();\n protoStartLoc = this.state.startLoc;\n allowStatic = false;\n }\n }\n\n if (allowStatic && this.isContextual(tt._static)) {\n const lookahead = this.lookahead();\n\n // static is a valid identifier name\n if (lookahead.type !== tt.colon && lookahead.type !== tt.question) {\n this.next();\n isStatic = true;\n }\n }\n\n const variance = this.flowParseVariance();\n\n if (this.eat(tt.bracketL)) {\n if (protoStartLoc != null) {\n this.unexpected(protoStartLoc);\n }\n if (this.eat(tt.bracketL)) {\n if (variance) {\n this.unexpected(variance.loc.start);\n }\n nodeStart.internalSlots.push(\n this.flowParseObjectTypeInternalSlot(node, isStatic),\n );\n } else {\n nodeStart.indexers.push(\n this.flowParseObjectTypeIndexer(node, isStatic, variance),\n );\n }\n } else if (this.match(tt.parenL) || this.match(tt.lt)) {\n if (protoStartLoc != null) {\n this.unexpected(protoStartLoc);\n }\n if (variance) {\n this.unexpected(variance.loc.start);\n }\n nodeStart.callProperties.push(\n this.flowParseObjectTypeCallProperty(node, isStatic),\n );\n } else {\n let kind = \"init\";\n\n if (this.isContextual(tt._get) || this.isContextual(tt._set)) {\n const lookahead = this.lookahead();\n if (tokenIsLiteralPropertyName(lookahead.type)) {\n kind = this.state.value;\n this.next();\n }\n }\n\n const propOrInexact = this.flowParseObjectTypeProperty(\n node,\n isStatic,\n protoStartLoc,\n variance,\n kind,\n allowSpread,\n allowInexact ?? !exact,\n );\n\n if (propOrInexact === null) {\n inexact = true;\n inexactStartLoc = this.state.lastTokStartLoc;\n } else {\n nodeStart.properties.push(propOrInexact);\n }\n }\n\n this.flowObjectTypeSemicolon();\n\n if (\n inexactStartLoc &&\n !this.match(tt.braceR) &&\n !this.match(tt.braceBarR)\n ) {\n this.raise(\n FlowErrors.UnexpectedExplicitInexactInObject,\n inexactStartLoc,\n );\n }\n }\n\n this.expect(endDelim);\n\n /* The inexact flag should only be added on ObjectTypeAnnotations that\n * are not the body of an interface, declare interface, or declare class.\n * Since spreads are only allowed in object types, checking that is\n * sufficient here.\n */\n if (allowSpread) {\n nodeStart.inexact = inexact;\n }\n\n const out = this.finishNode(nodeStart, \"ObjectTypeAnnotation\");\n\n this.state.inType = oldInType;\n\n return out;\n }\n\n flowParseObjectTypeProperty(\n node: Undone,\n isStatic: boolean,\n protoStartLoc: Position | undefined | null,\n variance: N.FlowVariance | undefined | null,\n kind: string,\n allowSpread: boolean,\n allowInexact: boolean,\n ): N.FlowObjectTypeProperty | N.FlowObjectTypeSpreadProperty | null {\n if (this.eat(tt.ellipsis)) {\n const isInexactToken =\n this.match(tt.comma) ||\n this.match(tt.semi) ||\n this.match(tt.braceR) ||\n this.match(tt.braceBarR);\n\n if (isInexactToken) {\n if (!allowSpread) {\n this.raise(\n FlowErrors.InexactInsideNonObject,\n this.state.lastTokStartLoc!,\n );\n } else if (!allowInexact) {\n this.raise(\n FlowErrors.InexactInsideExact,\n this.state.lastTokStartLoc!,\n );\n }\n if (variance) {\n this.raise(FlowErrors.InexactVariance, variance);\n }\n\n return null;\n }\n\n if (!allowSpread) {\n this.raise(\n FlowErrors.UnexpectedSpreadType,\n this.state.lastTokStartLoc!,\n );\n }\n if (protoStartLoc != null) {\n this.unexpected(protoStartLoc);\n }\n if (variance) {\n this.raise(FlowErrors.SpreadVariance, variance);\n }\n\n node.argument = this.flowParseType();\n return this.finishNode(node, \"ObjectTypeSpreadProperty\");\n } else {\n node.key = this.flowParseObjectPropertyKey();\n node.static = isStatic;\n node.proto = protoStartLoc != null;\n node.kind = kind;\n\n let optional = false;\n if (this.match(tt.lt) || this.match(tt.parenL)) {\n // This is a method property\n node.method = true;\n\n if (protoStartLoc != null) {\n this.unexpected(protoStartLoc);\n }\n if (variance) {\n this.unexpected(variance.loc.start);\n }\n\n node.value = this.flowParseObjectTypeMethodish(\n this.startNodeAt(node.loc.start),\n );\n if (kind === \"get\" || kind === \"set\") {\n this.flowCheckGetterSetterParams(node);\n }\n /** Declared classes/interfaces do not allow spread */\n if (\n !allowSpread &&\n node.key.name === \"constructor\" &&\n node.value.this\n ) {\n this.raise(\n FlowErrors.ThisParamBannedInConstructor,\n node.value.this,\n );\n }\n } else {\n if (kind !== \"init\") this.unexpected();\n\n node.method = false;\n\n if (this.eat(tt.question)) {\n optional = true;\n }\n node.value = this.flowParseTypeInitialiser();\n node.variance = variance;\n }\n\n node.optional = optional;\n\n return this.finishNode(node, \"ObjectTypeProperty\");\n }\n }\n\n // This is similar to checkGetterSetterParams, but as\n // @babel/parser uses non estree properties we cannot reuse it here\n flowCheckGetterSetterParams(\n property: Undone<\n N.FlowObjectTypeProperty | N.FlowObjectTypeSpreadProperty\n >,\n ): void {\n const paramCount = property.kind === \"get\" ? 0 : 1;\n const length =\n property.value.params.length + (property.value.rest ? 1 : 0);\n\n if (property.value.this) {\n this.raise(\n property.kind === \"get\"\n ? FlowErrors.GetterMayNotHaveThisParam\n : FlowErrors.SetterMayNotHaveThisParam,\n property.value.this,\n );\n }\n\n if (length !== paramCount) {\n this.raise(\n property.kind === \"get\"\n ? Errors.BadGetterArity\n : Errors.BadSetterArity,\n property,\n );\n }\n\n if (property.kind === \"set\" && property.value.rest) {\n this.raise(Errors.BadSetterRestParameter, property);\n }\n }\n\n flowObjectTypeSemicolon(): void {\n if (\n !this.eat(tt.semi) &&\n !this.eat(tt.comma) &&\n !this.match(tt.braceR) &&\n !this.match(tt.braceBarR)\n ) {\n this.unexpected();\n }\n }\n\n flowParseQualifiedTypeIdentifier(\n startLoc?: Position,\n id?: N.Identifier,\n ): N.FlowQualifiedTypeIdentifier | N.Identifier {\n startLoc ??= this.state.startLoc;\n let node: N.Identifier | N.FlowQualifiedTypeIdentifier =\n id || this.flowParseRestrictedIdentifier(true);\n\n while (this.eat(tt.dot)) {\n const node2 = this.startNodeAt(startLoc);\n node2.qualification = node;\n node2.id = this.flowParseRestrictedIdentifier(true);\n node = this.finishNode(node2, \"QualifiedTypeIdentifier\");\n }\n\n return node;\n }\n\n flowParseGenericType(\n startLoc: Position,\n id: N.Identifier,\n ): N.FlowGenericTypeAnnotation {\n const node = this.startNodeAt(startLoc);\n\n node.typeParameters = null;\n node.id = this.flowParseQualifiedTypeIdentifier(startLoc, id);\n\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterInstantiation();\n }\n\n return this.finishNode(node, \"GenericTypeAnnotation\");\n }\n\n flowParseTypeofType(): N.FlowTypeofTypeAnnotation {\n const node = this.startNode();\n this.expect(tt._typeof);\n node.argument = this.flowParsePrimaryType();\n return this.finishNode(node, \"TypeofTypeAnnotation\");\n }\n\n flowParseTupleType(): N.FlowTupleTypeAnnotation {\n const node = this.startNode();\n node.types = [];\n this.expect(tt.bracketL);\n // We allow trailing commas\n while (this.state.pos < this.length && !this.match(tt.bracketR)) {\n node.types.push(this.flowParseType());\n if (this.match(tt.bracketR)) break;\n this.expect(tt.comma);\n }\n this.expect(tt.bracketR);\n return this.finishNode(node, \"TupleTypeAnnotation\");\n }\n\n flowParseFunctionTypeParam(first: boolean): N.FlowFunctionTypeParam {\n let name = null;\n let optional = false;\n let typeAnnotation = null;\n const node = this.startNode();\n const lh = this.lookahead();\n const isThis = this.state.type === tt._this;\n\n if (lh.type === tt.colon || lh.type === tt.question) {\n if (isThis && !first) {\n this.raise(FlowErrors.ThisParamMustBeFirst, node);\n }\n name = this.parseIdentifier(isThis);\n if (this.eat(tt.question)) {\n optional = true;\n if (isThis) {\n this.raise(FlowErrors.ThisParamMayNotBeOptional, node);\n }\n }\n typeAnnotation = this.flowParseTypeInitialiser();\n } else {\n typeAnnotation = this.flowParseType();\n }\n node.name = name;\n node.optional = optional;\n node.typeAnnotation = typeAnnotation;\n return this.finishNode(node, \"FunctionTypeParam\");\n }\n\n reinterpretTypeAsFunctionTypeParam(\n type: N.FlowType,\n ): N.FlowFunctionTypeParam {\n const node = this.startNodeAt(type.loc.start);\n node.name = null;\n node.optional = false;\n node.typeAnnotation = type;\n return this.finishNode(node, \"FunctionTypeParam\");\n }\n\n flowParseFunctionTypeParams(params: N.FlowFunctionTypeParam[] = []): {\n params: N.FlowFunctionTypeParam[];\n rest: N.FlowFunctionTypeParam | undefined | null;\n _this: N.FlowFunctionTypeParam | undefined | null;\n } {\n let rest: N.FlowFunctionTypeParam | undefined | null = null;\n let _this: N.FlowFunctionTypeParam | undefined | null = null;\n if (this.match(tt._this)) {\n _this = this.flowParseFunctionTypeParam(/* first */ true);\n // match Flow parser behavior\n _this.name = null;\n if (!this.match(tt.parenR)) {\n this.expect(tt.comma);\n }\n }\n while (!this.match(tt.parenR) && !this.match(tt.ellipsis)) {\n params.push(this.flowParseFunctionTypeParam(false));\n if (!this.match(tt.parenR)) {\n this.expect(tt.comma);\n }\n }\n if (this.eat(tt.ellipsis)) {\n rest = this.flowParseFunctionTypeParam(false);\n }\n return { params, rest, _this };\n }\n\n flowIdentToTypeAnnotation(\n startLoc: Position,\n node: Undone,\n id: N.Identifier,\n ): N.FlowType {\n switch (id.name) {\n case \"any\":\n return this.finishNode(node, \"AnyTypeAnnotation\");\n\n case \"bool\":\n case \"boolean\":\n return this.finishNode(node, \"BooleanTypeAnnotation\");\n\n case \"mixed\":\n return this.finishNode(node, \"MixedTypeAnnotation\");\n\n case \"empty\":\n return this.finishNode(node, \"EmptyTypeAnnotation\");\n\n case \"number\":\n return this.finishNode(node, \"NumberTypeAnnotation\");\n\n case \"string\":\n return this.finishNode(node, \"StringTypeAnnotation\");\n\n case \"symbol\":\n return this.finishNode(node, \"SymbolTypeAnnotation\");\n\n default:\n this.checkNotUnderscore(id.name);\n return this.flowParseGenericType(startLoc, id);\n }\n }\n\n // The parsing of types roughly parallels the parsing of expressions, and\n // primary types are kind of like primary expressions...they're the\n // primitives with which other types are constructed.\n flowParsePrimaryType(): N.FlowType {\n const startLoc = this.state.startLoc;\n const node = this.startNode();\n let tmp;\n let type;\n let isGroupedType = false;\n const oldNoAnonFunctionType = this.state.noAnonFunctionType;\n\n switch (this.state.type) {\n case tt.braceL:\n return this.flowParseObjectType({\n allowStatic: false,\n allowExact: false,\n allowSpread: true,\n allowProto: false,\n allowInexact: true,\n });\n\n case tt.braceBarL:\n return this.flowParseObjectType({\n allowStatic: false,\n allowExact: true,\n allowSpread: true,\n allowProto: false,\n allowInexact: false,\n });\n\n case tt.bracketL:\n this.state.noAnonFunctionType = false;\n type = this.flowParseTupleType();\n this.state.noAnonFunctionType = oldNoAnonFunctionType;\n return type;\n\n case tt.lt: {\n const node = this.startNode();\n node.typeParameters = this.flowParseTypeParameterDeclaration();\n this.expect(tt.parenL);\n tmp = this.flowParseFunctionTypeParams();\n node.params = tmp.params;\n node.rest = tmp.rest;\n node.this = tmp._this;\n this.expect(tt.parenR);\n\n this.expect(tt.arrow);\n\n node.returnType = this.flowParseType();\n\n return this.finishNode(node, \"FunctionTypeAnnotation\");\n }\n\n case tt.parenL: {\n const node = this.startNode();\n this.next();\n\n // Check to see if this is actually a grouped type\n if (!this.match(tt.parenR) && !this.match(tt.ellipsis)) {\n if (tokenIsIdentifier(this.state.type) || this.match(tt._this)) {\n const token = this.lookahead().type;\n isGroupedType = token !== tt.question && token !== tt.colon;\n } else {\n isGroupedType = true;\n }\n }\n\n if (isGroupedType) {\n this.state.noAnonFunctionType = false;\n type = this.flowParseType();\n this.state.noAnonFunctionType = oldNoAnonFunctionType;\n\n // A `,` or a `) =>` means this is an anonymous function type\n if (\n this.state.noAnonFunctionType ||\n !(\n this.match(tt.comma) ||\n (this.match(tt.parenR) && this.lookahead().type === tt.arrow)\n )\n ) {\n this.expect(tt.parenR);\n return type;\n } else {\n // Eat a comma if there is one\n this.eat(tt.comma);\n }\n }\n\n if (type) {\n tmp = this.flowParseFunctionTypeParams([\n this.reinterpretTypeAsFunctionTypeParam(type),\n ]);\n } else {\n tmp = this.flowParseFunctionTypeParams();\n }\n\n node.params = tmp.params;\n node.rest = tmp.rest;\n node.this = tmp._this;\n\n this.expect(tt.parenR);\n\n this.expect(tt.arrow);\n\n node.returnType = this.flowParseType();\n\n node.typeParameters = null;\n\n return this.finishNode(node, \"FunctionTypeAnnotation\");\n }\n\n case tt.string:\n return this.parseLiteral(\n this.state.value,\n \"StringLiteralTypeAnnotation\",\n );\n\n case tt._true:\n case tt._false:\n node.value = this.match(tt._true);\n this.next();\n return this.finishNode(\n node as Undone,\n \"BooleanLiteralTypeAnnotation\",\n );\n\n case tt.plusMin:\n if (this.state.value === \"-\") {\n this.next();\n if (this.match(tt.num)) {\n return this.parseLiteralAtNode(\n -this.state.value,\n \"NumberLiteralTypeAnnotation\",\n node,\n );\n }\n\n if (this.match(tt.bigint)) {\n return this.parseLiteralAtNode(\n -this.state.value,\n \"BigIntLiteralTypeAnnotation\",\n node,\n );\n }\n\n throw this.raise(\n FlowErrors.UnexpectedSubtractionOperand,\n this.state.startLoc,\n );\n }\n throw this.unexpected();\n case tt.num:\n return this.parseLiteral(\n this.state.value,\n \"NumberLiteralTypeAnnotation\",\n );\n\n case tt.bigint:\n return this.parseLiteral(\n this.state.value,\n \"BigIntLiteralTypeAnnotation\",\n );\n\n case tt._void:\n this.next();\n return this.finishNode(node, \"VoidTypeAnnotation\");\n\n case tt._null:\n this.next();\n return this.finishNode(node, \"NullLiteralTypeAnnotation\");\n\n case tt._this:\n this.next();\n return this.finishNode(node, \"ThisTypeAnnotation\");\n\n case tt.star:\n this.next();\n return this.finishNode(node, \"ExistsTypeAnnotation\");\n\n case tt._typeof:\n return this.flowParseTypeofType();\n\n default:\n if (tokenIsKeyword(this.state.type)) {\n const label = tokenLabelName(this.state.type);\n this.next();\n return super.createIdentifier(node as Undone, label);\n } else if (tokenIsIdentifier(this.state.type)) {\n if (this.isContextual(tt._interface)) {\n return this.flowParseInterfaceType();\n }\n\n return this.flowIdentToTypeAnnotation(\n startLoc,\n node,\n this.parseIdentifier(),\n );\n }\n }\n\n throw this.unexpected();\n }\n\n flowParsePostfixType(): N.FlowType {\n const startLoc = this.state.startLoc;\n let type = this.flowParsePrimaryType();\n let seenOptionalIndexedAccess = false;\n while (\n (this.match(tt.bracketL) || this.match(tt.questionDot)) &&\n !this.canInsertSemicolon()\n ) {\n const node = this.startNodeAt(startLoc);\n const optional = this.eat(tt.questionDot);\n seenOptionalIndexedAccess = seenOptionalIndexedAccess || optional;\n this.expect(tt.bracketL);\n if (!optional && this.match(tt.bracketR)) {\n node.elementType = type;\n this.next(); // eat `]`\n type = this.finishNode(node, \"ArrayTypeAnnotation\");\n } else {\n node.objectType = type;\n node.indexType = this.flowParseType();\n this.expect(tt.bracketR);\n if (seenOptionalIndexedAccess) {\n node.optional = optional;\n type = this.finishNode(\n // @ts-expect-error todo(flow->ts)\n node,\n \"OptionalIndexedAccessType\",\n );\n } else {\n type = this.finishNode(\n // @ts-expect-error todo(flow->ts)\n node,\n \"IndexedAccessType\",\n );\n }\n }\n }\n return type;\n }\n\n flowParsePrefixType(): N.FlowType {\n const node = this.startNode();\n if (this.eat(tt.question)) {\n node.typeAnnotation = this.flowParsePrefixType();\n return this.finishNode(node, \"NullableTypeAnnotation\");\n } else {\n return this.flowParsePostfixType();\n }\n }\n\n flowParseAnonFunctionWithoutParens(): N.FlowType {\n const param = this.flowParsePrefixType();\n if (!this.state.noAnonFunctionType && this.eat(tt.arrow)) {\n // TODO: This should be a type error. Passing in a SourceLocation, and it expects a Position.\n const node = this.startNodeAt(\n param.loc.start,\n );\n node.params = [this.reinterpretTypeAsFunctionTypeParam(param)];\n node.rest = null;\n node.this = null;\n node.returnType = this.flowParseType();\n node.typeParameters = null;\n return this.finishNode(node, \"FunctionTypeAnnotation\");\n }\n return param;\n }\n\n flowParseIntersectionType(): N.FlowType {\n const node = this.startNode();\n this.eat(tt.bitwiseAND);\n const type = this.flowParseAnonFunctionWithoutParens();\n node.types = [type];\n while (this.eat(tt.bitwiseAND)) {\n node.types.push(this.flowParseAnonFunctionWithoutParens());\n }\n return node.types.length === 1\n ? type\n : this.finishNode(node, \"IntersectionTypeAnnotation\");\n }\n\n flowParseUnionType(): N.FlowType {\n const node = this.startNode();\n this.eat(tt.bitwiseOR);\n const type = this.flowParseIntersectionType();\n node.types = [type];\n while (this.eat(tt.bitwiseOR)) {\n node.types.push(this.flowParseIntersectionType());\n }\n return node.types.length === 1\n ? type\n : this.finishNode(node, \"UnionTypeAnnotation\");\n }\n\n flowParseType(): N.FlowType {\n const oldInType = this.state.inType;\n this.state.inType = true;\n const type = this.flowParseUnionType();\n this.state.inType = oldInType;\n return type;\n }\n\n flowParseTypeOrImplicitInstantiation(): N.FlowType {\n if (this.state.type === tt.name && this.state.value === \"_\") {\n const startLoc = this.state.startLoc;\n const node = this.parseIdentifier();\n return this.flowParseGenericType(startLoc, node);\n } else {\n return this.flowParseType();\n }\n }\n\n flowParseTypeAnnotation(): N.TypeAnnotation {\n const node = this.startNode();\n node.typeAnnotation = this.flowParseTypeInitialiser();\n return this.finishNode(node, \"TypeAnnotation\");\n }\n\n flowParseTypeAnnotatableIdentifier(\n allowPrimitiveOverride?: boolean,\n ): N.Identifier {\n const ident = allowPrimitiveOverride\n ? this.parseIdentifier()\n : this.flowParseRestrictedIdentifier();\n if (this.match(tt.colon)) {\n ident.typeAnnotation = this.flowParseTypeAnnotation();\n this.resetEndLocation(ident);\n }\n return ident;\n }\n\n typeCastToParameter(node: N.TypeCastExpression): N.Expression {\n (node.expression as N.Identifier).typeAnnotation = node.typeAnnotation;\n\n this.resetEndLocation(node.expression, node.typeAnnotation.loc.end);\n\n return node.expression;\n }\n\n flowParseVariance(): N.FlowVariance | undefined | null {\n let variance = null;\n if (this.match(tt.plusMin)) {\n variance = this.startNode();\n if (this.state.value === \"+\") {\n variance.kind = \"plus\";\n } else {\n variance.kind = \"minus\";\n }\n this.next();\n return this.finishNode(variance, \"Variance\");\n }\n return variance;\n }\n\n // ==================================\n // Overrides\n // ==================================\n\n parseFunctionBody(\n node: N.Function,\n allowExpressionBody?: boolean | null,\n isMethod: boolean = false,\n ): void {\n if (allowExpressionBody) {\n this.forwardNoArrowParamsConversionAt(node, () =>\n super.parseFunctionBody(node, true, isMethod),\n );\n return;\n }\n\n super.parseFunctionBody(node, false, isMethod);\n }\n\n parseFunctionBodyAndFinish<\n T extends\n | N.Function\n | N.TSDeclareMethod\n | N.TSDeclareFunction\n | N.ClassPrivateMethod,\n >(node: Undone, type: T[\"type\"], isMethod: boolean = false): T {\n if (this.match(tt.colon)) {\n const typeNode = this.startNode();\n\n [\n typeNode.typeAnnotation,\n // @ts-expect-error predicate may not exist\n node.predicate,\n ] = this.flowParseTypeAndPredicateInitialiser() as [\n N.FlowType,\n N.FlowPredicate,\n ];\n\n node.returnType = typeNode.typeAnnotation\n ? this.finishNode(typeNode, \"TypeAnnotation\")\n : null;\n }\n\n return super.parseFunctionBodyAndFinish(node, type, isMethod);\n }\n\n // interfaces and enums\n parseStatementLike(flags: ParseStatementFlag): N.Statement {\n // strict mode handling of `interface` since it's a reserved word\n if (this.state.strict && this.isContextual(tt._interface)) {\n const lookahead = this.lookahead();\n if (tokenIsKeywordOrIdentifier(lookahead.type)) {\n const node = this.startNode();\n this.next();\n return this.flowParseInterface(node);\n }\n } else if (this.isContextual(tt._enum)) {\n const node = this.startNode();\n this.next();\n return this.flowParseEnumDeclaration(node);\n }\n const stmt = super.parseStatementLike(flags);\n // We will parse a flow pragma in any comment before the first statement.\n if (this.flowPragma === undefined && !this.isValidDirective(stmt)) {\n this.flowPragma = null;\n }\n return stmt;\n }\n\n // declares, interfaces and type aliases\n parseExpressionStatement(\n node: N.ExpressionStatement,\n expr: N.Expression,\n decorators: N.Decorator[] | null,\n ): N.ExpressionStatement {\n if (expr.type === \"Identifier\") {\n if (expr.name === \"declare\") {\n if (\n this.match(tt._class) ||\n tokenIsIdentifier(this.state.type) ||\n this.match(tt._function) ||\n this.match(tt._var) ||\n this.match(tt._export)\n ) {\n // @ts-expect-error: refine typings\n return this.flowParseDeclare(node);\n }\n } else if (tokenIsIdentifier(this.state.type)) {\n if (expr.name === \"interface\") {\n // @ts-expect-error: refine typings\n return this.flowParseInterface(node);\n } else if (expr.name === \"type\") {\n // @ts-expect-error: refine typings\n return this.flowParseTypeAlias(node);\n } else if (expr.name === \"opaque\") {\n // @ts-expect-error: refine typings\n return this.flowParseOpaqueType(node, false);\n }\n }\n }\n\n return super.parseExpressionStatement(node, expr, decorators);\n }\n\n // export type\n shouldParseExportDeclaration(): boolean {\n const { type } = this.state;\n if (type === tt._enum || tokenIsFlowInterfaceOrTypeOrOpaque(type)) {\n return !this.state.containsEsc;\n }\n return super.shouldParseExportDeclaration();\n }\n\n isExportDefaultSpecifier(): boolean {\n const { type } = this.state;\n if (type === tt._enum || tokenIsFlowInterfaceOrTypeOrOpaque(type)) {\n return this.state.containsEsc;\n }\n\n return super.isExportDefaultSpecifier();\n }\n\n parseExportDefaultExpression() {\n if (this.isContextual(tt._enum)) {\n const node = this.startNode();\n this.next();\n return this.flowParseEnumDeclaration(node);\n }\n return super.parseExportDefaultExpression();\n }\n\n parseConditional(\n expr: N.Expression,\n\n startLoc: Position,\n refExpressionErrors?: ExpressionErrors | null,\n ): N.Expression {\n if (!this.match(tt.question)) return expr;\n\n if (this.state.maybeInArrowParameters) {\n const nextCh = this.lookaheadCharCode();\n // These tokens cannot start an expression, so if one of them follows\n // ? then we are probably in an arrow function parameters list and we\n // don't parse the conditional expression.\n if (\n nextCh === charCodes.comma || // (a?, b) => c\n nextCh === charCodes.equalsTo || // (a? = b) => c\n nextCh === charCodes.colon || // (a?: b) => c\n nextCh === charCodes.rightParenthesis // (a?) => c\n ) {\n /*:: invariant(refExpressionErrors != null) */\n this.setOptionalParametersError(refExpressionErrors!);\n return expr;\n }\n }\n\n this.expect(tt.question);\n const state = this.state.clone();\n const originalNoArrowAt = this.state.noArrowAt;\n const node = this.startNodeAt(startLoc);\n let { consequent, failed } = this.tryParseConditionalConsequent();\n let [valid, invalid] = this.getArrowLikeExpressions(consequent);\n\n if (failed || invalid.length > 0) {\n const noArrowAt = [...originalNoArrowAt];\n\n if (invalid.length > 0) {\n this.state = state;\n this.state.noArrowAt = noArrowAt;\n\n for (let i = 0; i < invalid.length; i++) {\n noArrowAt.push(invalid[i].start);\n }\n\n ({ consequent, failed } = this.tryParseConditionalConsequent());\n [valid, invalid] = this.getArrowLikeExpressions(consequent);\n }\n\n if (failed && valid.length > 1) {\n // if there are two or more possible correct ways of parsing, throw an\n // error.\n // e.g. Source: a ? (b): c => (d): e => f\n // Result 1: a ? b : (c => ((d): e => f))\n // Result 2: a ? ((b): c => d) : (e => f)\n this.raise(FlowErrors.AmbiguousConditionalArrow, state.startLoc);\n }\n\n if (failed && valid.length === 1) {\n this.state = state;\n noArrowAt.push(valid[0].start);\n this.state.noArrowAt = noArrowAt;\n ({ consequent, failed } = this.tryParseConditionalConsequent());\n }\n }\n\n this.getArrowLikeExpressions(consequent, true);\n\n this.state.noArrowAt = originalNoArrowAt;\n this.expect(tt.colon);\n\n node.test = expr;\n node.consequent = consequent;\n node.alternate = this.forwardNoArrowParamsConversionAt(node, () =>\n this.parseMaybeAssign(undefined, undefined),\n );\n\n return this.finishNode(node, \"ConditionalExpression\");\n }\n\n tryParseConditionalConsequent(): {\n consequent: N.Expression;\n failed: boolean;\n } {\n this.state.noArrowParamsConversionAt.push(this.state.start);\n\n const consequent = this.parseMaybeAssignAllowIn();\n const failed = !this.match(tt.colon);\n\n this.state.noArrowParamsConversionAt.pop();\n\n return { consequent, failed };\n }\n\n // Given an expression, walks through out its arrow functions whose body is\n // an expression and through out conditional expressions. It returns every\n // function which has been parsed with a return type but could have been\n // parenthesized expressions.\n // These functions are separated into two arrays: one containing the ones\n // whose parameters can be converted to assignable lists, one containing the\n // others.\n getArrowLikeExpressions(\n node: N.Expression,\n disallowInvalid?: boolean,\n ): [N.ArrowFunctionExpression[], N.ArrowFunctionExpression[]] {\n const stack = [node];\n const arrows: N.ArrowFunctionExpression[] = [];\n\n while (stack.length !== 0) {\n const node = stack.pop()!;\n if (\n node.type === \"ArrowFunctionExpression\" &&\n node.body.type !== \"BlockStatement\"\n ) {\n if (node.typeParameters || !node.returnType) {\n // This is an arrow expression without ambiguity, so check its parameters\n this.finishArrowValidation(node);\n } else {\n arrows.push(node);\n }\n stack.push(node.body);\n } else if (node.type === \"ConditionalExpression\") {\n stack.push(node.consequent);\n stack.push(node.alternate);\n }\n }\n\n if (disallowInvalid) {\n arrows.forEach(node => this.finishArrowValidation(node));\n return [arrows, []];\n }\n\n return partition(arrows, node =>\n node.params.every(param => this.isAssignable(param, true)),\n );\n }\n\n finishArrowValidation(node: N.ArrowFunctionExpression) {\n this.toAssignableList(\n // node.params is Expression[] instead of $ReadOnlyArray because it\n // has not been converted yet.\n node.params as any as N.Expression[],\n node.extra?.trailingCommaLoc,\n /* isLHS */ false,\n );\n // Enter scope, as checkParams defines bindings\n this.scope.enter(ScopeFlag.FUNCTION | ScopeFlag.ARROW);\n // Use super's method to force the parameters to be checked\n super.checkParams(node, false, true);\n this.scope.exit();\n }\n\n forwardNoArrowParamsConversionAt(\n node: Undone,\n parse: () => T,\n ): T {\n let result: T;\n if (\n this.state.noArrowParamsConversionAt.includes(\n this.offsetToSourcePos(node.start),\n )\n ) {\n this.state.noArrowParamsConversionAt.push(this.state.start);\n result = parse();\n this.state.noArrowParamsConversionAt.pop();\n } else {\n result = parse();\n }\n\n return result;\n }\n\n parseParenItem(\n node: T,\n startLoc: Position,\n ): T | N.TypeCastExpression | N.TsTypeCastExpression {\n const newNode = super.parseParenItem(node, startLoc);\n if (this.eat(tt.question)) {\n (newNode as N.Identifier).optional = true;\n // Include questionmark in location of node\n // Don't use this.finishNode() as otherwise we might process comments twice and\n // include already consumed parens\n this.resetEndLocation(node);\n }\n\n if (this.match(tt.colon)) {\n const typeCastNode = this.startNodeAt(startLoc);\n typeCastNode.expression = newNode as N.Expression;\n typeCastNode.typeAnnotation = this.flowParseTypeAnnotation();\n\n return this.finishNode(typeCastNode, \"TypeCastExpression\");\n }\n\n return newNode;\n }\n\n assertModuleNodeAllowed(node: N.Node) {\n if (\n (node.type === \"ImportDeclaration\" &&\n (node.importKind === \"type\" || node.importKind === \"typeof\")) ||\n (node.type === \"ExportNamedDeclaration\" &&\n node.exportKind === \"type\") ||\n (node.type === \"ExportAllDeclaration\" && node.exportKind === \"type\")\n ) {\n // Allow Flowtype imports and exports in all conditions because\n // Flow itself does not care about 'sourceType'.\n return;\n }\n\n super.assertModuleNodeAllowed(node);\n }\n\n parseExportDeclaration(\n node: N.ExportNamedDeclaration,\n ): N.Declaration | undefined | null {\n if (this.isContextual(tt._type)) {\n node.exportKind = \"type\";\n\n const declarationNode = this.startNode();\n this.next();\n\n if (this.match(tt.braceL)) {\n // export type { foo, bar };\n node.specifiers = this.parseExportSpecifiers(\n /* isInTypeExport */ true,\n );\n super.parseExportFrom(node);\n return null;\n } else {\n // export type Foo = Bar;\n // @ts-expect-error: refine typings\n return this.flowParseTypeAlias(declarationNode);\n }\n } else if (this.isContextual(tt._opaque)) {\n node.exportKind = \"type\";\n\n const declarationNode = this.startNode();\n this.next();\n // export opaque type Foo = Bar;\n // @ts-expect-error: refine typings\n return this.flowParseOpaqueType(declarationNode, false);\n } else if (this.isContextual(tt._interface)) {\n node.exportKind = \"type\";\n const declarationNode = this.startNode();\n this.next();\n // @ts-expect-error: refine typings\n return this.flowParseInterface(declarationNode);\n } else if (this.isContextual(tt._enum)) {\n node.exportKind = \"value\";\n const declarationNode = this.startNode();\n this.next();\n // @ts-expect-error: refine typings\n return this.flowParseEnumDeclaration(declarationNode);\n } else {\n return super.parseExportDeclaration(node);\n }\n }\n\n eatExportStar(\n node: Undone,\n ): node is Undone {\n if (super.eatExportStar(node)) return true;\n\n if (this.isContextual(tt._type) && this.lookahead().type === tt.star) {\n (\n node as Undone\n ).exportKind = \"type\";\n this.next();\n this.next();\n return true;\n }\n\n return false;\n }\n\n maybeParseExportNamespaceSpecifier(\n node: Undone,\n ): node is Undone {\n const { startLoc } = this.state;\n const hasNamespace = super.maybeParseExportNamespaceSpecifier(node);\n if (hasNamespace && node.exportKind === \"type\") {\n this.unexpected(startLoc);\n }\n return hasNamespace;\n }\n\n parseClassId(\n node: N.Class,\n isStatement: boolean,\n optionalId?: boolean | null,\n ) {\n super.parseClassId(node, isStatement, optionalId);\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterDeclaration();\n }\n }\n\n parseClassMember(\n classBody: N.ClassBody,\n member: any,\n state: N.ParseClassMemberState,\n ): void {\n const { startLoc } = this.state;\n if (this.isContextual(tt._declare)) {\n if (super.parseClassMemberFromModifier(classBody, member)) {\n // 'declare' is a class element name\n return;\n }\n\n member.declare = true;\n }\n\n super.parseClassMember(classBody, member, state);\n\n if (member.declare) {\n if (\n member.type !== \"ClassProperty\" &&\n member.type !== \"ClassPrivateProperty\" &&\n member.type !== \"PropertyDefinition\" // Used by estree plugin\n ) {\n this.raise(FlowErrors.DeclareClassElement, startLoc);\n } else if (member.value) {\n this.raise(FlowErrors.DeclareClassFieldInitializer, member.value);\n }\n }\n }\n\n isIterator(word: string): boolean {\n return word === \"iterator\" || word === \"asyncIterator\";\n }\n\n readIterator(): void {\n const word = super.readWord1();\n const fullWord = \"@@\" + word;\n\n // Allow @@iterator and @@asyncIterator as a identifier only inside type\n if (!this.isIterator(word) || !this.state.inType) {\n this.raise(Errors.InvalidIdentifier, this.state.curPosition(), {\n identifierName: fullWord,\n });\n }\n\n this.finishToken(tt.name, fullWord);\n }\n\n // ensure that inside flow types, we bypass the jsx parser plugin\n getTokenFromCode(code: number): void {\n const next = this.input.charCodeAt(this.state.pos + 1);\n if (code === charCodes.leftCurlyBrace && next === charCodes.verticalBar) {\n this.finishOp(tt.braceBarL, 2);\n } else if (\n this.state.inType &&\n (code === charCodes.greaterThan || code === charCodes.lessThan)\n ) {\n this.finishOp(code === charCodes.greaterThan ? tt.gt : tt.lt, 1);\n } else if (this.state.inType && code === charCodes.questionMark) {\n if (next === charCodes.dot) {\n this.finishOp(tt.questionDot, 2);\n } else {\n // allow double nullable types in Flow: ??string\n this.finishOp(tt.question, 1);\n }\n } else if (\n isIteratorStart(code, next, this.input.charCodeAt(this.state.pos + 2))\n ) {\n this.state.pos += 2; // eat \"@@\"\n this.readIterator();\n } else {\n super.getTokenFromCode(code);\n }\n }\n\n isAssignable(node: N.Node, isBinding?: boolean): boolean {\n if (node.type === \"TypeCastExpression\") {\n return this.isAssignable(node.expression, isBinding);\n } else {\n return super.isAssignable(node, isBinding);\n }\n }\n\n toAssignable(node: N.Node, isLHS: boolean = false): void {\n if (\n !isLHS &&\n node.type === \"AssignmentExpression\" &&\n node.left.type === \"TypeCastExpression\"\n ) {\n node.left = this.typeCastToParameter(node.left) as N.Assignable;\n }\n super.toAssignable(node, isLHS);\n }\n\n // turn type casts that we found in function parameter head into type annotated params\n toAssignableList(\n exprList: N.Expression[],\n trailingCommaLoc: Position | undefined | null,\n isLHS: boolean,\n ): void {\n for (let i = 0; i < exprList.length; i++) {\n const expr = exprList[i];\n if (expr?.type === \"TypeCastExpression\") {\n exprList[i] = this.typeCastToParameter(expr);\n }\n }\n super.toAssignableList(exprList, trailingCommaLoc, isLHS);\n }\n\n // this is a list of nodes, from something like a call expression, we need to filter the\n // type casts that we've found that are illegal in this context\n toReferencedList(\n exprList:\n | readonly (N.Expression | N.SpreadElement | null)[]\n | readonly (N.Expression | N.RestElement)[],\n isParenthesizedExpr?: boolean,\n ):\n | readonly (N.Expression | N.SpreadElement | null)[]\n | readonly (N.Expression | N.RestElement)[] {\n for (let i = 0; i < exprList.length; i++) {\n const expr = exprList[i];\n if (\n expr &&\n expr.type === \"TypeCastExpression\" &&\n !expr.extra?.parenthesized &&\n (exprList.length > 1 || !isParenthesizedExpr)\n ) {\n this.raise(FlowErrors.TypeCastInPattern, expr.typeAnnotation);\n }\n }\n\n return exprList;\n }\n\n parseArrayLike(\n close: TokenType,\n isTuple: boolean,\n refExpressionErrors?: ExpressionErrors | null,\n ): N.ArrayExpression | N.TupleExpression {\n const node = super.parseArrayLike(close, isTuple, refExpressionErrors);\n\n // This could be an array pattern:\n // ([a: string, b: string]) => {}\n // In this case, we don't have to call toReferencedList. We will\n // call it, if needed, when we are sure that it is a parenthesized\n // expression by calling toReferencedListDeep.\n if (refExpressionErrors != null && !this.state.maybeInArrowParameters) {\n this.toReferencedList(node.elements);\n }\n\n return node;\n }\n\n isValidLVal(\n type: string,\n disallowCallExpression: boolean,\n isParenthesized: boolean,\n binding: BindingFlag,\n ) {\n return (\n type === \"TypeCastExpression\" ||\n super.isValidLVal(\n type,\n disallowCallExpression,\n isParenthesized,\n binding,\n )\n );\n }\n\n // parse class property type annotations\n parseClassProperty(node: N.ClassProperty): N.ClassProperty {\n if (this.match(tt.colon)) {\n node.typeAnnotation = this.flowParseTypeAnnotation();\n }\n return super.parseClassProperty(node);\n }\n\n parseClassPrivateProperty(\n node: N.ClassPrivateProperty,\n ): N.ClassPrivateProperty {\n if (this.match(tt.colon)) {\n node.typeAnnotation = this.flowParseTypeAnnotation();\n }\n return super.parseClassPrivateProperty(node);\n }\n\n // determine whether or not we're currently in the position where a class method would appear\n isClassMethod(): boolean {\n return this.match(tt.lt) || super.isClassMethod();\n }\n\n // determine whether or not we're currently in the position where a class property would appear\n isClassProperty(): boolean {\n return this.match(tt.colon) || super.isClassProperty();\n }\n\n isNonstaticConstructor(method: N.ClassMethod | N.ClassProperty): boolean {\n return !this.match(tt.colon) && super.isNonstaticConstructor(method);\n }\n\n // parse type parameters for class methods\n pushClassMethod(\n classBody: N.ClassBody,\n method: N.ClassMethod,\n isGenerator: boolean,\n isAsync: boolean,\n isConstructor: boolean,\n allowsDirectSuper: boolean,\n ): void {\n if ((method as any).variance) {\n this.unexpected((method as any).variance.loc.start);\n }\n delete (method as any).variance;\n if (this.match(tt.lt)) {\n method.typeParameters = this.flowParseTypeParameterDeclaration();\n }\n\n super.pushClassMethod(\n classBody,\n method,\n isGenerator,\n isAsync,\n isConstructor,\n allowsDirectSuper,\n );\n\n if (method.params && isConstructor) {\n const params = method.params;\n if (params.length > 0 && this.isThisParam(params[0])) {\n this.raise(FlowErrors.ThisParamBannedInConstructor, method);\n }\n // estree support\n } else if (\n // @ts-expect-error TS does not know about the fact that estree can replace ClassMethod with MethodDefinition\n method.type === \"MethodDefinition\" &&\n isConstructor &&\n // @ts-expect-error estree\n method.value.params\n ) {\n // @ts-expect-error estree\n const params = method.value.params;\n if (params.length > 0 && this.isThisParam(params[0])) {\n this.raise(FlowErrors.ThisParamBannedInConstructor, method);\n }\n }\n }\n\n pushClassPrivateMethod(\n classBody: N.ClassBody,\n method: N.ClassPrivateMethod,\n isGenerator: boolean,\n isAsync: boolean,\n ): void {\n if ((method as any).variance) {\n this.unexpected((method as any).variance.loc.start);\n }\n delete (method as any).variance;\n if (this.match(tt.lt)) {\n method.typeParameters = this.flowParseTypeParameterDeclaration();\n }\n\n super.pushClassPrivateMethod(classBody, method, isGenerator, isAsync);\n }\n\n // parse a the super class type parameters and implements\n parseClassSuper(node: N.Class): void {\n super.parseClassSuper(node);\n if (\n node.superClass &&\n (this.match(tt.lt) ||\n // handles `class extends C<`\n this.match(tt.bitShiftL))\n ) {\n if (process.env.BABEL_8_BREAKING) {\n node.superTypeArguments =\n this.flowParseTypeParameterInstantiationInExpression();\n } else {\n node.superTypeParameters =\n this.flowParseTypeParameterInstantiationInExpression();\n }\n }\n if (this.isContextual(tt._implements)) {\n this.next();\n const implemented: N.FlowClassImplements[] = (node.implements = []);\n do {\n const node = this.startNode();\n node.id = this.flowParseRestrictedIdentifier(/*liberal*/ true);\n if (this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterInstantiation();\n } else {\n node.typeParameters = null;\n }\n implemented.push(this.finishNode(node, \"ClassImplements\"));\n } while (this.eat(tt.comma));\n }\n }\n\n checkGetterSetterParams(method: N.ObjectMethod | N.ClassMethod): void {\n super.checkGetterSetterParams(method);\n const params = this.getObjectOrClassMethodParams(method);\n if (params.length > 0) {\n const param = params[0];\n if (this.isThisParam(param) && method.kind === \"get\") {\n this.raise(FlowErrors.GetterMayNotHaveThisParam, param);\n } else if (this.isThisParam(param)) {\n this.raise(FlowErrors.SetterMayNotHaveThisParam, param);\n }\n }\n }\n\n parsePropertyNamePrefixOperator(\n node: N.ObjectOrClassMember | N.ClassMember,\n ): void {\n node.variance = this.flowParseVariance();\n }\n\n // parse type parameters for object method shorthand\n parseObjPropValue(\n prop: Undone,\n startLoc: Position | undefined | null,\n isGenerator: boolean,\n isAsync: boolean,\n isPattern: boolean,\n isAccessor: boolean,\n refExpressionErrors?: ExpressionErrors | null,\n ): T {\n if ((prop as any).variance) {\n this.unexpected((prop as any).variance.loc.start);\n }\n delete (prop as any).variance;\n\n let typeParameters;\n\n // method shorthand\n if (this.match(tt.lt) && !isAccessor) {\n typeParameters = this.flowParseTypeParameterDeclaration();\n if (!this.match(tt.parenL)) this.unexpected();\n }\n\n const result = super.parseObjPropValue(\n prop,\n startLoc,\n isGenerator,\n isAsync,\n isPattern,\n isAccessor,\n refExpressionErrors,\n );\n\n // add typeParameters if we found them\n if (typeParameters) {\n // @ts-expect-error: refine typings\n (result.value || result).typeParameters = typeParameters;\n }\n return result;\n }\n\n parseFunctionParamType(param: N.Pattern): N.Pattern {\n if (this.eat(tt.question)) {\n if (param.type !== \"Identifier\") {\n this.raise(FlowErrors.PatternIsOptional, param);\n }\n if (this.isThisParam(param)) {\n this.raise(FlowErrors.ThisParamMayNotBeOptional, param);\n }\n\n (param as any as N.Identifier).optional = true;\n }\n if (this.match(tt.colon)) {\n param.typeAnnotation = this.flowParseTypeAnnotation();\n } else if (this.isThisParam(param)) {\n this.raise(FlowErrors.ThisParamAnnotationRequired, param);\n }\n\n if (this.match(tt.eq) && this.isThisParam(param)) {\n this.raise(FlowErrors.ThisParamNoDefault, param);\n }\n\n this.resetEndLocation(param);\n return param;\n }\n\n parseMaybeDefault

(\n startLoc?: Position | null,\n left?: P | null,\n ): P | N.AssignmentPattern {\n const node = super.parseMaybeDefault(startLoc, left);\n\n if (\n node.type === \"AssignmentPattern\" &&\n node.typeAnnotation &&\n node.right.start < node.typeAnnotation.start\n ) {\n this.raise(FlowErrors.TypeBeforeInitializer, node.typeAnnotation);\n }\n\n return node;\n }\n\n checkImportReflection(node: Undone) {\n super.checkImportReflection(node);\n if (node.module && node.importKind !== \"value\") {\n this.raise(\n FlowErrors.ImportReflectionHasImportType,\n node.specifiers[0].loc.start,\n );\n }\n }\n\n parseImportSpecifierLocal<\n T extends\n | N.ImportSpecifier\n | N.ImportDefaultSpecifier\n | N.ImportNamespaceSpecifier,\n >(node: N.ImportDeclaration, specifier: Undone, type: T[\"type\"]): void {\n specifier.local = hasTypeImportKind(node)\n ? this.flowParseRestrictedIdentifier(\n /* liberal */ true,\n /* declaration */ true,\n )\n : this.parseIdentifier();\n\n node.specifiers.push(this.finishImportSpecifier(specifier, type));\n }\n\n isPotentialImportPhase(isExport: boolean): boolean {\n if (super.isPotentialImportPhase(isExport)) return true;\n if (this.isContextual(tt._type)) {\n if (!isExport) return true;\n const ch = this.lookaheadCharCode();\n return ch === charCodes.leftCurlyBrace || ch === charCodes.asterisk;\n }\n return !isExport && this.isContextual(tt._typeof);\n }\n\n applyImportPhase(\n node: Undone,\n isExport: boolean,\n phase: string | null,\n loc?: Position,\n ): void {\n super.applyImportPhase(node, isExport, phase, loc);\n if (isExport) {\n if (!phase && this.match(tt._default)) {\n // TODO: Align with our TS AST and always add .exportKind\n return;\n }\n (node as N.ExportNamedDeclaration).exportKind =\n phase === \"type\" ? phase : \"value\";\n } else {\n if (phase === \"type\" && this.match(tt.star)) this.unexpected();\n (node as N.ImportDeclaration).importKind =\n phase === \"type\" || phase === \"typeof\" ? phase : \"value\";\n }\n }\n\n // parse import-type/typeof shorthand\n parseImportSpecifier(\n specifier: any,\n importedIsString: boolean,\n isInTypeOnlyImport: boolean,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n isMaybeTypeOnly: boolean,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n bindingType: BindingFlag | undefined,\n ): N.ImportSpecifier {\n const firstIdent = specifier.imported;\n\n let specifierTypeKind = null;\n if (firstIdent.type === \"Identifier\") {\n if (firstIdent.name === \"type\") {\n specifierTypeKind = \"type\";\n } else if (firstIdent.name === \"typeof\") {\n specifierTypeKind = \"typeof\";\n }\n }\n\n let isBinding = false;\n if (this.isContextual(tt._as) && !this.isLookaheadContextual(\"as\")) {\n const as_ident = this.parseIdentifier(true);\n if (\n specifierTypeKind !== null &&\n !tokenIsKeywordOrIdentifier(this.state.type)\n ) {\n // `import {type as ,` or `import {type as }`\n specifier.imported = as_ident;\n specifier.importKind = specifierTypeKind;\n specifier.local = this.cloneIdentifier(as_ident);\n } else {\n // `import {type as foo`\n specifier.imported = firstIdent;\n specifier.importKind = null;\n specifier.local = this.parseIdentifier();\n }\n } else {\n if (\n specifierTypeKind !== null &&\n tokenIsKeywordOrIdentifier(this.state.type)\n ) {\n // `import {type foo`\n specifier.imported = this.parseIdentifier(true);\n specifier.importKind = specifierTypeKind;\n } else {\n if (importedIsString) {\n /*:: invariant(firstIdent instanceof N.StringLiteral) */\n throw this.raise(Errors.ImportBindingIsString, specifier, {\n importName: firstIdent.value,\n });\n }\n /*:: invariant(firstIdent instanceof N.Node) */\n specifier.imported = firstIdent;\n specifier.importKind = null;\n }\n\n if (this.eatContextual(tt._as)) {\n specifier.local = this.parseIdentifier();\n } else {\n isBinding = true;\n specifier.local = this.cloneIdentifier(specifier.imported);\n }\n }\n\n const specifierIsTypeImport = hasTypeImportKind(specifier);\n\n if (isInTypeOnlyImport && specifierIsTypeImport) {\n this.raise(FlowErrors.ImportTypeShorthandOnlyInPureImport, specifier);\n }\n\n if (isInTypeOnlyImport || specifierIsTypeImport) {\n this.checkReservedType(\n specifier.local.name,\n specifier.local.loc.start,\n /* declaration */ true,\n );\n }\n\n if (isBinding && !isInTypeOnlyImport && !specifierIsTypeImport) {\n this.checkReservedWord(\n specifier.local.name,\n specifier.loc.start,\n true,\n true,\n );\n }\n\n return this.finishImportSpecifier(specifier, \"ImportSpecifier\");\n }\n\n parseBindingAtom(): N.Pattern {\n switch (this.state.type) {\n case tt._this:\n // \"this\" may be the name of a parameter, so allow it.\n return this.parseIdentifier(/* liberal */ true);\n default:\n return super.parseBindingAtom();\n }\n }\n\n // parse function type parameters - function foo() {}\n parseFunctionParams(\n node: Undone,\n isConstructor: boolean,\n ): void {\n // @ts-expect-error kind may not index node\n const kind = node.kind;\n if (kind !== \"get\" && kind !== \"set\" && this.match(tt.lt)) {\n node.typeParameters = this.flowParseTypeParameterDeclaration();\n }\n super.parseFunctionParams(node, isConstructor);\n }\n\n // parse flow type annotations on variable declarator heads - let foo: string = bar\n parseVarId(\n decl: N.VariableDeclarator,\n kind: \"var\" | \"let\" | \"const\" | \"using\" | \"await using\",\n ): void {\n super.parseVarId(decl, kind);\n if (this.match(tt.colon)) {\n decl.id.typeAnnotation = this.flowParseTypeAnnotation();\n this.resetEndLocation(decl.id); // set end position to end of type\n }\n }\n\n // parse the return type of an async arrow function - let foo = (async (): number => {});\n parseAsyncArrowFromCallExpression(\n node: N.ArrowFunctionExpression,\n call: N.CallExpression,\n ): N.ArrowFunctionExpression {\n if (this.match(tt.colon)) {\n const oldNoAnonFunctionType = this.state.noAnonFunctionType;\n this.state.noAnonFunctionType = true;\n node.returnType = this.flowParseTypeAnnotation();\n this.state.noAnonFunctionType = oldNoAnonFunctionType;\n }\n\n return super.parseAsyncArrowFromCallExpression(node, call);\n }\n\n // todo description\n shouldParseAsyncArrow(): boolean {\n return this.match(tt.colon) || super.shouldParseAsyncArrow();\n }\n\n // We need to support type parameter declarations for arrow functions. This\n // is tricky. There are three situations we need to handle\n //\n // 1. This is either JSX or an arrow function. We'll try JSX first. If that\n // fails, we'll try an arrow function. If that fails, we'll throw the JSX\n // error.\n // 2. This is an arrow function. We'll parse the type parameter declaration,\n // parse the rest, make sure the rest is an arrow function, and go from\n // there\n // 3. This is neither. Just call the super method\n parseMaybeAssign(\n refExpressionErrors?: ExpressionErrors | null,\n afterLeftParse?: Function,\n ): N.Expression {\n let state = null;\n\n let jsx;\n\n if (\n this.hasPlugin(\"jsx\") &&\n (this.match(tt.jsxTagStart) || this.match(tt.lt))\n ) {\n state = this.state.clone();\n\n jsx = this.tryParse(\n () => super.parseMaybeAssign(refExpressionErrors, afterLeftParse),\n state,\n );\n\n /*:: invariant(!jsx.aborted) */\n /*:: invariant(jsx.node != null) */\n if (!jsx.error) return jsx.node!;\n\n // Remove `tc.j_expr` and `tc.j_oTag` from context added\n // by parsing `jsxTagStart` to stop the JSX plugin from\n // messing with the tokens\n const { context } = this.state;\n const currentContext = context[context.length - 1];\n if (currentContext === tc.j_oTag || currentContext === tc.j_expr) {\n context.pop();\n }\n }\n\n if (jsx?.error || this.match(tt.lt)) {\n state = state || this.state.clone();\n\n let typeParameters: N.TypeParameterDeclaration;\n\n const arrow = this.tryParse((abort: () => never) => {\n typeParameters = this.flowParseTypeParameterDeclaration();\n\n const arrowExpression = this.forwardNoArrowParamsConversionAt(\n typeParameters,\n () => {\n const result = super.parseMaybeAssign(\n refExpressionErrors,\n afterLeftParse,\n );\n\n this.resetStartLocationFromNode(result, typeParameters);\n\n return result;\n },\n );\n\n // (() => {});\n // (() => {}: any);\n if (arrowExpression.extra?.parenthesized) abort();\n\n // The above can return a TypeCastExpression when the arrow\n // expression is not wrapped in parens. See also `this.parseParenItem`.\n // (() => {}: any);\n const expr = this.maybeUnwrapTypeCastExpression(arrowExpression);\n\n if (expr.type !== \"ArrowFunctionExpression\") abort();\n\n expr.typeParameters = typeParameters;\n this.resetStartLocationFromNode(expr, typeParameters);\n\n return arrowExpression;\n }, state);\n\n let arrowExpression:\n | N.ArrowFunctionExpression\n | N.TypeCastExpression\n | undefined\n | null = null;\n\n if (\n arrow.node &&\n this.maybeUnwrapTypeCastExpression(arrow.node).type ===\n \"ArrowFunctionExpression\"\n ) {\n if (!arrow.error && !arrow.aborted) {\n // async () => {}\n // @ts-expect-error: refine tryParse typings\n if (arrow.node.async) {\n /*:: invariant(typeParameters) */\n this.raise(\n FlowErrors.UnexpectedTypeParameterBeforeAsyncArrowFunction,\n typeParameters!,\n );\n }\n return arrow.node;\n }\n\n // @ts-expect-error: refine typings\n arrowExpression = arrow.node;\n }\n\n // If we are here, both JSX and Flow parsing attempts failed.\n // Give the precedence to the JSX error, except if JSX had an\n // unrecoverable error while Flow didn't.\n // If the error is recoverable, we can only re-report it if there is\n // a node we can return.\n\n if (jsx?.node) {\n /*:: invariant(jsx.failState) */\n this.state = jsx.failState;\n return jsx.node;\n }\n\n if (arrowExpression) {\n /*:: invariant(arrow.failState) */\n this.state = arrow.failState!;\n return arrowExpression;\n }\n\n if (jsx?.thrown) throw jsx.error;\n if (arrow.thrown) throw arrow.error;\n\n /*:: invariant(typeParameters) */\n throw this.raise(\n FlowErrors.UnexpectedTokenAfterTypeParameter,\n typeParameters!,\n );\n }\n\n return super.parseMaybeAssign(refExpressionErrors, afterLeftParse);\n }\n\n // handle return types for arrow functions\n parseArrow(\n node: Undone,\n ): Undone | undefined | null {\n if (this.match(tt.colon)) {\n // @ts-expect-error todo(flow->ts)\n const result = this.tryParse(() => {\n const oldNoAnonFunctionType = this.state.noAnonFunctionType;\n this.state.noAnonFunctionType = true;\n\n const typeNode = this.startNode();\n\n [\n typeNode.typeAnnotation,\n // @ts-expect-error (destructuring not supported yet)\n node.predicate,\n ] = this.flowParseTypeAndPredicateInitialiser() as [\n N.FlowType,\n N.FlowPredicate,\n ];\n\n this.state.noAnonFunctionType = oldNoAnonFunctionType;\n\n if (this.canInsertSemicolon()) this.unexpected();\n if (!this.match(tt.arrow)) this.unexpected();\n\n return typeNode;\n });\n\n if (result.thrown) return null;\n /*:: invariant(result.node) */\n\n if (result.error) this.state = result.failState;\n\n // assign after it is clear it is an arrow\n // @ts-expect-error todo(flow->ts)\n node.returnType = result.node.typeAnnotation\n ? this.finishNode(result.node!, \"TypeAnnotation\")\n : null;\n }\n\n return super.parseArrow(node);\n }\n\n shouldParseArrow(params: N.Node[]): boolean {\n return this.match(tt.colon) || super.shouldParseArrow(params);\n }\n\n setArrowFunctionParameters(\n node: Undone,\n params:\n | (N.Expression | N.SpreadElement)[]\n | (N.Expression | N.RestElement)[],\n ): void {\n if (\n this.state.noArrowParamsConversionAt.includes(\n this.offsetToSourcePos(node.start),\n )\n ) {\n node.params = params as N.ArrowFunctionExpression[\"params\"];\n } else {\n super.setArrowFunctionParameters(node, params);\n }\n }\n\n checkParams(\n node: N.Function,\n allowDuplicates: boolean,\n isArrowFunction?: boolean | null,\n strictModeChanged: boolean = true,\n ): void {\n if (\n isArrowFunction &&\n this.state.noArrowParamsConversionAt.includes(\n this.offsetToSourcePos(node.start),\n )\n ) {\n return;\n }\n\n // ensure the `this` param is first, if it exists\n for (let i = 0; i < node.params.length; i++) {\n if (this.isThisParam(node.params[i]) && i > 0) {\n this.raise(FlowErrors.ThisParamMustBeFirst, node.params[i]);\n }\n }\n\n super.checkParams(\n node,\n allowDuplicates,\n isArrowFunction,\n strictModeChanged,\n );\n }\n\n parseParenAndDistinguishExpression(canBeArrow: boolean): N.Expression {\n return super.parseParenAndDistinguishExpression(\n canBeArrow &&\n !this.state.noArrowAt.includes(\n this.sourceToOffsetPos(this.state.start),\n ),\n );\n }\n\n parseSubscripts(\n base: N.Expression,\n startLoc: Position,\n noCalls?: boolean | null,\n ): N.Expression {\n if (\n base.type === \"Identifier\" &&\n base.name === \"async\" &&\n this.state.noArrowAt.includes(startLoc.index)\n ) {\n this.next();\n\n const node = this.startNodeAt(startLoc);\n node.callee = base;\n node.arguments = super.parseCallExpressionArguments();\n base = this.finishNode(node, \"CallExpression\");\n } else if (\n base.type === \"Identifier\" &&\n base.name === \"async\" &&\n this.match(tt.lt)\n ) {\n const state = this.state.clone();\n const arrow = this.tryParse(\n abort => this.parseAsyncArrowWithTypeParameters(startLoc) || abort(),\n state,\n );\n\n /*:: invariant(arrow.node != null) */\n // @ts-expect-error: refine tryParse typings\n if (!arrow.error && !arrow.aborted) return arrow.node;\n\n const result = this.tryParse(\n () => super.parseSubscripts(base, startLoc, noCalls),\n state,\n );\n\n if (result.node && !result.error) return result.node;\n\n if (arrow.node) {\n this.state = arrow.failState;\n // @ts-expect-error: refine tryParse typings\n return arrow.node;\n }\n\n if (result.node) {\n this.state = result.failState!;\n return result.node;\n }\n\n throw arrow.error || result.error!;\n }\n\n return super.parseSubscripts(base, startLoc, noCalls);\n }\n\n parseSubscript(\n base: N.Expression,\n startLoc: Position,\n noCalls: boolean | undefined | null,\n subscriptState: N.ParseSubscriptState,\n ): N.Expression {\n if (this.match(tt.questionDot) && this.isLookaheadToken_lt()) {\n subscriptState.optionalChainMember = true;\n if (noCalls) {\n subscriptState.stop = true;\n return base;\n }\n this.next();\n const node = this.startNodeAt(startLoc);\n node.callee = base;\n node.typeArguments =\n this.flowParseTypeParameterInstantiationInExpression();\n this.expect(tt.parenL);\n node.arguments = this.parseCallExpressionArguments();\n node.optional = true;\n return this.finishCallExpression(node, /* optional */ true);\n } else if (\n !noCalls &&\n this.shouldParseTypes() &&\n (this.match(tt.lt) ||\n // also handles `new C<`\n this.match(tt.bitShiftL))\n ) {\n const node = this.startNodeAt<\n N.OptionalCallExpression | N.CallExpression\n >(startLoc);\n node.callee = base;\n\n const result = this.tryParse(() => {\n node.typeArguments =\n this.flowParseTypeParameterInstantiationCallOrNew();\n this.expect(tt.parenL);\n node.arguments = super.parseCallExpressionArguments();\n if (subscriptState.optionalChainMember) {\n (node as Undone).optional = false;\n }\n return this.finishCallExpression(\n node,\n subscriptState.optionalChainMember,\n );\n });\n\n if (result.node) {\n if (result.error) this.state = result.failState;\n return result.node;\n }\n }\n\n return super.parseSubscript(base, startLoc, noCalls, subscriptState);\n }\n\n parseNewCallee(node: N.NewExpression): void {\n super.parseNewCallee(node);\n\n let targs = null;\n if (this.shouldParseTypes() && this.match(tt.lt)) {\n targs = this.tryParse(() =>\n this.flowParseTypeParameterInstantiationCallOrNew(),\n ).node;\n }\n node.typeArguments = targs;\n }\n\n parseAsyncArrowWithTypeParameters(\n startLoc: Position,\n ): N.ArrowFunctionExpression | undefined | null {\n const node = this.startNodeAt(startLoc);\n this.parseFunctionParams(node, false);\n if (!this.parseArrow(node)) return;\n return super.parseArrowExpression(\n node,\n /* params */ undefined,\n /* isAsync */ true,\n );\n }\n\n readToken_mult_modulo(code: number): void {\n const next = this.input.charCodeAt(this.state.pos + 1);\n if (\n code === charCodes.asterisk &&\n next === charCodes.slash &&\n this.state.hasFlowComment\n ) {\n this.state.hasFlowComment = false;\n this.state.pos += 2;\n this.nextToken();\n return;\n }\n\n super.readToken_mult_modulo(code);\n }\n\n readToken_pipe_amp(code: number): void {\n const next = this.input.charCodeAt(this.state.pos + 1);\n if (\n code === charCodes.verticalBar &&\n next === charCodes.rightCurlyBrace\n ) {\n // '|}'\n this.finishOp(tt.braceBarR, 2);\n return;\n }\n\n super.readToken_pipe_amp(code);\n }\n\n parseTopLevel(file: N.File, program: N.Program): N.File {\n const fileNode = super.parseTopLevel(file, program);\n if (this.state.hasFlowComment) {\n this.raise(\n FlowErrors.UnterminatedFlowComment,\n this.state.curPosition(),\n );\n }\n return fileNode;\n }\n\n skipBlockComment(): N.CommentBlock | undefined {\n if (this.hasPlugin(\"flowComments\") && this.skipFlowComment()) {\n if (this.state.hasFlowComment) {\n throw this.raise(FlowErrors.NestedFlowComment, this.state.startLoc);\n }\n this.hasFlowCommentCompletion();\n const commentSkip = this.skipFlowComment();\n if (commentSkip) {\n this.state.pos += commentSkip;\n this.state.hasFlowComment = true;\n }\n return;\n }\n\n return super.skipBlockComment(this.state.hasFlowComment ? \"*-/\" : \"*/\");\n }\n\n skipFlowComment(): number | false {\n const { pos } = this.state;\n let shiftToFirstNonWhiteSpace = 2;\n while (\n [charCodes.space, charCodes.tab].includes(\n // @ts-expect-error testing whether a number is included\n this.input.charCodeAt(pos + shiftToFirstNonWhiteSpace),\n )\n ) {\n shiftToFirstNonWhiteSpace++;\n }\n\n const ch2 = this.input.charCodeAt(shiftToFirstNonWhiteSpace + pos);\n const ch3 = this.input.charCodeAt(shiftToFirstNonWhiteSpace + pos + 1);\n\n if (ch2 === charCodes.colon && ch3 === charCodes.colon) {\n return shiftToFirstNonWhiteSpace + 2; // check for /*::\n }\n if (\n this.input.slice(\n shiftToFirstNonWhiteSpace + pos,\n shiftToFirstNonWhiteSpace + pos + 12,\n ) === \"flow-include\"\n ) {\n return shiftToFirstNonWhiteSpace + 12; // check for /*flow-include\n }\n if (ch2 === charCodes.colon && ch3 !== charCodes.colon) {\n return shiftToFirstNonWhiteSpace; // check for /*:, advance up to :\n }\n return false;\n }\n\n hasFlowCommentCompletion(): void {\n const end = this.input.indexOf(\"*/\", this.state.pos);\n if (end === -1) {\n throw this.raise(Errors.UnterminatedComment, this.state.curPosition());\n }\n }\n\n // Flow enum parsing\n\n flowEnumErrorBooleanMemberNotInitialized(\n loc: Position,\n {\n enumName,\n memberName,\n }: {\n enumName: string;\n memberName: string;\n },\n ): void {\n this.raise(FlowErrors.EnumBooleanMemberNotInitialized, loc, {\n memberName,\n enumName,\n });\n }\n\n flowEnumErrorInvalidMemberInitializer(\n loc: Position,\n enumContext: EnumContext,\n ) {\n return this.raise(\n !enumContext.explicitType\n ? FlowErrors.EnumInvalidMemberInitializerUnknownType\n : enumContext.explicitType === \"symbol\"\n ? FlowErrors.EnumInvalidMemberInitializerSymbolType\n : FlowErrors.EnumInvalidMemberInitializerPrimaryType,\n loc,\n enumContext,\n );\n }\n\n flowEnumErrorNumberMemberNotInitialized(\n loc: Position,\n details: {\n enumName: string;\n memberName: string;\n },\n ): void {\n this.raise(FlowErrors.EnumNumberMemberNotInitialized, loc, details);\n }\n\n flowEnumErrorStringMemberInconsistentlyInitialized(\n node: N.Node,\n details: {\n enumName: string;\n },\n ): void {\n this.raise(\n FlowErrors.EnumStringMemberInconsistentlyInitialized,\n node,\n details,\n );\n }\n\n flowEnumMemberInit(): EnumMemberInit {\n const startLoc = this.state.startLoc;\n const endOfInit = () => this.match(tt.comma) || this.match(tt.braceR);\n switch (this.state.type) {\n case tt.num: {\n const literal = this.parseNumericLiteral(this.state.value);\n if (endOfInit()) {\n return { type: \"number\", loc: literal.loc.start, value: literal };\n }\n return { type: \"invalid\", loc: startLoc };\n }\n case tt.string: {\n const literal = this.parseStringLiteral(this.state.value);\n if (endOfInit()) {\n return { type: \"string\", loc: literal.loc.start, value: literal };\n }\n return { type: \"invalid\", loc: startLoc };\n }\n case tt._true:\n case tt._false: {\n const literal = this.parseBooleanLiteral(this.match(tt._true));\n if (endOfInit()) {\n return {\n type: \"boolean\",\n loc: literal.loc.start,\n value: literal,\n };\n }\n return { type: \"invalid\", loc: startLoc };\n }\n default:\n return { type: \"invalid\", loc: startLoc };\n }\n }\n\n flowEnumMemberRaw(): {\n id: N.Identifier;\n init: EnumMemberInit;\n } {\n const loc = this.state.startLoc;\n const id = this.parseIdentifier(true);\n const init = this.eat(tt.eq)\n ? this.flowEnumMemberInit()\n : { type: \"none\" as const, loc };\n return { id, init };\n }\n\n flowEnumCheckExplicitTypeMismatch(\n loc: Position,\n context: EnumContext,\n expectedType: EnumExplicitType,\n ): void {\n const { explicitType } = context;\n if (explicitType === null) {\n return;\n }\n if (explicitType !== expectedType) {\n this.flowEnumErrorInvalidMemberInitializer(loc, context);\n }\n }\n\n flowEnumMembers({\n enumName,\n explicitType,\n }: {\n enumName: string;\n explicitType: EnumExplicitType;\n }): {\n members: {\n booleanMembers: Extract<\n N.FlowEnumMember,\n { type: \"EnumBooleanMember\" }\n >[];\n numberMembers: Extract<\n N.FlowEnumMember,\n { type: \"EnumNumberMember\" }\n >[];\n stringMembers: Extract<\n N.FlowEnumMember,\n { type: \"EnumStringMember\" }\n >[];\n defaultedMembers: Extract<\n N.FlowEnumMember,\n { type: \"EnumDefaultedMember\" }\n >[];\n };\n hasUnknownMembers: boolean;\n } {\n const seenNames = new Set();\n const members = {\n booleanMembers: [],\n numberMembers: [],\n stringMembers: [],\n defaultedMembers: [],\n };\n let hasUnknownMembers = false;\n while (!this.match(tt.braceR)) {\n if (this.eat(tt.ellipsis)) {\n hasUnknownMembers = true;\n break;\n }\n const memberNode = this.startNode();\n const { id, init } = this.flowEnumMemberRaw();\n const memberName = id.name;\n if (memberName === \"\") {\n continue;\n }\n if (/^[a-z]/.test(memberName)) {\n this.raise(FlowErrors.EnumInvalidMemberName, id, {\n memberName,\n suggestion: memberName[0].toUpperCase() + memberName.slice(1),\n enumName,\n });\n }\n if (seenNames.has(memberName)) {\n this.raise(FlowErrors.EnumDuplicateMemberName, id, {\n memberName,\n enumName,\n });\n }\n seenNames.add(memberName);\n const context = { enumName, explicitType, memberName };\n memberNode.id = id;\n switch (init.type) {\n case \"boolean\": {\n this.flowEnumCheckExplicitTypeMismatch(\n init.loc,\n context,\n \"boolean\",\n );\n memberNode.init = init.value;\n members.booleanMembers.push(\n // @ts-expect-error NodeAny not supported\n this.finishNode(memberNode, \"EnumBooleanMember\"),\n );\n break;\n }\n case \"number\": {\n this.flowEnumCheckExplicitTypeMismatch(init.loc, context, \"number\");\n memberNode.init = init.value;\n members.numberMembers.push(\n // @ts-expect-error NodeAny not supported\n this.finishNode(memberNode, \"EnumNumberMember\"),\n );\n break;\n }\n case \"string\": {\n this.flowEnumCheckExplicitTypeMismatch(init.loc, context, \"string\");\n memberNode.init = init.value;\n members.stringMembers.push(\n // @ts-expect-error NodeAny not supported\n this.finishNode(memberNode, \"EnumStringMember\"),\n );\n break;\n }\n case \"invalid\": {\n throw this.flowEnumErrorInvalidMemberInitializer(init.loc, context);\n }\n case \"none\": {\n switch (explicitType) {\n case \"boolean\":\n this.flowEnumErrorBooleanMemberNotInitialized(\n init.loc,\n context,\n );\n break;\n case \"number\":\n this.flowEnumErrorNumberMemberNotInitialized(init.loc, context);\n break;\n default:\n members.defaultedMembers.push(\n // @ts-expect-error NodeAny not supported\n this.finishNode(memberNode, \"EnumDefaultedMember\"),\n );\n }\n }\n }\n\n if (!this.match(tt.braceR)) {\n this.expect(tt.comma);\n }\n }\n return { members, hasUnknownMembers };\n }\n\n flowEnumStringMembers(\n initializedMembers: N.Node[],\n defaultedMembers: N.Node[],\n {\n enumName,\n }: {\n enumName: string;\n },\n ): N.Node[] {\n if (initializedMembers.length === 0) {\n return defaultedMembers;\n } else if (defaultedMembers.length === 0) {\n return initializedMembers;\n } else if (defaultedMembers.length > initializedMembers.length) {\n for (const member of initializedMembers) {\n this.flowEnumErrorStringMemberInconsistentlyInitialized(member, {\n enumName,\n });\n }\n return defaultedMembers;\n } else {\n for (const member of defaultedMembers) {\n this.flowEnumErrorStringMemberInconsistentlyInitialized(member, {\n enumName,\n });\n }\n return initializedMembers;\n }\n }\n\n flowEnumParseExplicitType({\n enumName,\n }: {\n enumName: string;\n }): EnumExplicitType {\n if (!this.eatContextual(tt._of)) return null;\n\n if (!tokenIsIdentifier(this.state.type)) {\n throw this.raise(\n FlowErrors.EnumInvalidExplicitTypeUnknownSupplied,\n this.state.startLoc,\n {\n enumName,\n },\n );\n }\n\n const { value } = this.state;\n this.next();\n\n if (\n value !== \"boolean\" &&\n value !== \"number\" &&\n value !== \"string\" &&\n value !== \"symbol\"\n ) {\n this.raise(FlowErrors.EnumInvalidExplicitType, this.state.startLoc, {\n enumName,\n invalidEnumType: value,\n });\n }\n\n return value;\n }\n\n flowEnumBody(node: Undone, id: N.Identifier): N.Node {\n const enumName = id.name;\n const nameLoc = id.loc.start;\n const explicitType = this.flowEnumParseExplicitType({ enumName });\n this.expect(tt.braceL);\n const { members, hasUnknownMembers } = this.flowEnumMembers({\n enumName,\n explicitType,\n });\n node.hasUnknownMembers = hasUnknownMembers;\n\n switch (explicitType) {\n case \"boolean\":\n node.explicitType = true;\n node.members = members.booleanMembers;\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumBooleanBody\");\n case \"number\":\n node.explicitType = true;\n node.members = members.numberMembers;\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumNumberBody\");\n case \"string\":\n node.explicitType = true;\n node.members = this.flowEnumStringMembers(\n members.stringMembers,\n members.defaultedMembers,\n { enumName },\n );\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumStringBody\");\n case \"symbol\":\n node.members = members.defaultedMembers;\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumSymbolBody\");\n default: {\n // `explicitType` is `null`\n const empty = () => {\n node.members = [];\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumStringBody\");\n };\n node.explicitType = false;\n\n const boolsLen = members.booleanMembers.length;\n const numsLen = members.numberMembers.length;\n const strsLen = members.stringMembers.length;\n const defaultedLen = members.defaultedMembers.length;\n\n if (!boolsLen && !numsLen && !strsLen && !defaultedLen) {\n return empty();\n } else if (!boolsLen && !numsLen) {\n node.members = this.flowEnumStringMembers(\n members.stringMembers,\n members.defaultedMembers,\n { enumName },\n );\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumStringBody\");\n } else if (!numsLen && !strsLen && boolsLen >= defaultedLen) {\n for (const member of members.defaultedMembers) {\n this.flowEnumErrorBooleanMemberNotInitialized(member.loc.start, {\n enumName,\n memberName: member.id.name,\n });\n }\n node.members = members.booleanMembers;\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumBooleanBody\");\n } else if (!boolsLen && !strsLen && numsLen >= defaultedLen) {\n for (const member of members.defaultedMembers) {\n this.flowEnumErrorNumberMemberNotInitialized(member.loc.start, {\n enumName,\n memberName: member.id.name,\n });\n }\n node.members = members.numberMembers;\n this.expect(tt.braceR);\n return this.finishNode(node, \"EnumNumberBody\");\n } else {\n this.raise(FlowErrors.EnumInconsistentMemberValues, nameLoc, {\n enumName,\n });\n return empty();\n }\n }\n }\n }\n\n flowParseEnumDeclaration(\n node: Undone,\n ): N.FlowEnumDeclaration {\n const id = this.parseIdentifier();\n node.id = id;\n node.body = this.flowEnumBody(this.startNode(), id);\n return this.finishNode(node, \"EnumDeclaration\");\n }\n\n jsxParseOpeningElementAfterName(\n node: N.JSXOpeningElement,\n ): N.JSXOpeningElement {\n if (this.shouldParseTypes()) {\n if (this.match(tt.lt) || this.match(tt.bitShiftL)) {\n node.typeArguments =\n this.flowParseTypeParameterInstantiationInExpression();\n }\n }\n\n return super.jsxParseOpeningElementAfterName(node);\n }\n\n // check if the next token is a tt.lt\n isLookaheadToken_lt(): boolean {\n const next = this.nextTokenStart();\n if (this.input.charCodeAt(next) === charCodes.lessThan) {\n const afterNext = this.input.charCodeAt(next + 1);\n return (\n afterNext !== charCodes.lessThan && afterNext !== charCodes.equalsTo\n );\n }\n return false;\n }\n\n // used after we have finished parsing types\n reScan_lt_gt() {\n const { type } = this.state;\n if (type === tt.lt) {\n this.state.pos -= 1;\n this.readToken_lt();\n } else if (type === tt.gt) {\n this.state.pos -= 1;\n this.readToken_gt();\n }\n }\n\n reScan_lt() {\n const { type } = this.state;\n if (type === tt.bitShiftL) {\n this.state.pos -= 2;\n this.finishOp(tt.lt, 1);\n return tt.lt;\n }\n return type;\n }\n\n maybeUnwrapTypeCastExpression(node: N.Node) {\n return node.type === \"TypeCastExpression\" ? node.expression : node;\n }\n };\n","const entities: Record = {\n // @ts-expect-error __proto__ is not an actual property: https://github.com/microsoft/TypeScript/issues/38385\n __proto__: null,\n quot: \"\\u0022\",\n amp: \"&\",\n apos: \"\\u0027\",\n lt: \"<\",\n gt: \">\",\n nbsp: \"\\u00A0\",\n iexcl: \"\\u00A1\",\n cent: \"\\u00A2\",\n pound: \"\\u00A3\",\n curren: \"\\u00A4\",\n yen: \"\\u00A5\",\n brvbar: \"\\u00A6\",\n sect: \"\\u00A7\",\n uml: \"\\u00A8\",\n copy: \"\\u00A9\",\n ordf: \"\\u00AA\",\n laquo: \"\\u00AB\",\n not: \"\\u00AC\",\n shy: \"\\u00AD\",\n reg: \"\\u00AE\",\n macr: \"\\u00AF\",\n deg: \"\\u00B0\",\n plusmn: \"\\u00B1\",\n sup2: \"\\u00B2\",\n sup3: \"\\u00B3\",\n acute: \"\\u00B4\",\n micro: \"\\u00B5\",\n para: \"\\u00B6\",\n middot: \"\\u00B7\",\n cedil: \"\\u00B8\",\n sup1: \"\\u00B9\",\n ordm: \"\\u00BA\",\n raquo: \"\\u00BB\",\n frac14: \"\\u00BC\",\n frac12: \"\\u00BD\",\n frac34: \"\\u00BE\",\n iquest: \"\\u00BF\",\n Agrave: \"\\u00C0\",\n Aacute: \"\\u00C1\",\n Acirc: \"\\u00C2\",\n Atilde: \"\\u00C3\",\n Auml: \"\\u00C4\",\n Aring: \"\\u00C5\",\n AElig: \"\\u00C6\",\n Ccedil: \"\\u00C7\",\n Egrave: \"\\u00C8\",\n Eacute: \"\\u00C9\",\n Ecirc: \"\\u00CA\",\n Euml: \"\\u00CB\",\n Igrave: \"\\u00CC\",\n Iacute: \"\\u00CD\",\n Icirc: \"\\u00CE\",\n Iuml: \"\\u00CF\",\n ETH: \"\\u00D0\",\n Ntilde: \"\\u00D1\",\n Ograve: \"\\u00D2\",\n Oacute: \"\\u00D3\",\n Ocirc: \"\\u00D4\",\n Otilde: \"\\u00D5\",\n Ouml: \"\\u00D6\",\n times: \"\\u00D7\",\n Oslash: \"\\u00D8\",\n Ugrave: \"\\u00D9\",\n Uacute: \"\\u00DA\",\n Ucirc: \"\\u00DB\",\n Uuml: \"\\u00DC\",\n Yacute: \"\\u00DD\",\n THORN: \"\\u00DE\",\n szlig: \"\\u00DF\",\n agrave: \"\\u00E0\",\n aacute: \"\\u00E1\",\n acirc: \"\\u00E2\",\n atilde: \"\\u00E3\",\n auml: \"\\u00E4\",\n aring: \"\\u00E5\",\n aelig: \"\\u00E6\",\n ccedil: \"\\u00E7\",\n egrave: \"\\u00E8\",\n eacute: \"\\u00E9\",\n ecirc: \"\\u00EA\",\n euml: \"\\u00EB\",\n igrave: \"\\u00EC\",\n iacute: \"\\u00ED\",\n icirc: \"\\u00EE\",\n iuml: \"\\u00EF\",\n eth: \"\\u00F0\",\n ntilde: \"\\u00F1\",\n ograve: \"\\u00F2\",\n oacute: \"\\u00F3\",\n ocirc: \"\\u00F4\",\n otilde: \"\\u00F5\",\n ouml: \"\\u00F6\",\n divide: \"\\u00F7\",\n oslash: \"\\u00F8\",\n ugrave: \"\\u00F9\",\n uacute: \"\\u00FA\",\n ucirc: \"\\u00FB\",\n uuml: \"\\u00FC\",\n yacute: \"\\u00FD\",\n thorn: \"\\u00FE\",\n yuml: \"\\u00FF\",\n OElig: \"\\u0152\",\n oelig: \"\\u0153\",\n Scaron: \"\\u0160\",\n scaron: \"\\u0161\",\n Yuml: \"\\u0178\",\n fnof: \"\\u0192\",\n circ: \"\\u02C6\",\n tilde: \"\\u02DC\",\n Alpha: \"\\u0391\",\n Beta: \"\\u0392\",\n Gamma: \"\\u0393\",\n Delta: \"\\u0394\",\n Epsilon: \"\\u0395\",\n Zeta: \"\\u0396\",\n Eta: \"\\u0397\",\n Theta: \"\\u0398\",\n Iota: \"\\u0399\",\n Kappa: \"\\u039A\",\n Lambda: \"\\u039B\",\n Mu: \"\\u039C\",\n Nu: \"\\u039D\",\n Xi: \"\\u039E\",\n Omicron: \"\\u039F\",\n Pi: \"\\u03A0\",\n Rho: \"\\u03A1\",\n Sigma: \"\\u03A3\",\n Tau: \"\\u03A4\",\n Upsilon: \"\\u03A5\",\n Phi: \"\\u03A6\",\n Chi: \"\\u03A7\",\n Psi: \"\\u03A8\",\n Omega: \"\\u03A9\",\n alpha: \"\\u03B1\",\n beta: \"\\u03B2\",\n gamma: \"\\u03B3\",\n delta: \"\\u03B4\",\n epsilon: \"\\u03B5\",\n zeta: \"\\u03B6\",\n eta: \"\\u03B7\",\n theta: \"\\u03B8\",\n iota: \"\\u03B9\",\n kappa: \"\\u03BA\",\n lambda: \"\\u03BB\",\n mu: \"\\u03BC\",\n nu: \"\\u03BD\",\n xi: \"\\u03BE\",\n omicron: \"\\u03BF\",\n pi: \"\\u03C0\",\n rho: \"\\u03C1\",\n sigmaf: \"\\u03C2\",\n sigma: \"\\u03C3\",\n tau: \"\\u03C4\",\n upsilon: \"\\u03C5\",\n phi: \"\\u03C6\",\n chi: \"\\u03C7\",\n psi: \"\\u03C8\",\n omega: \"\\u03C9\",\n thetasym: \"\\u03D1\",\n upsih: \"\\u03D2\",\n piv: \"\\u03D6\",\n ensp: \"\\u2002\",\n emsp: \"\\u2003\",\n thinsp: \"\\u2009\",\n zwnj: \"\\u200C\",\n zwj: \"\\u200D\",\n lrm: \"\\u200E\",\n rlm: \"\\u200F\",\n ndash: \"\\u2013\",\n mdash: \"\\u2014\",\n lsquo: \"\\u2018\",\n rsquo: \"\\u2019\",\n sbquo: \"\\u201A\",\n ldquo: \"\\u201C\",\n rdquo: \"\\u201D\",\n bdquo: \"\\u201E\",\n dagger: \"\\u2020\",\n Dagger: \"\\u2021\",\n bull: \"\\u2022\",\n hellip: \"\\u2026\",\n permil: \"\\u2030\",\n prime: \"\\u2032\",\n Prime: \"\\u2033\",\n lsaquo: \"\\u2039\",\n rsaquo: \"\\u203A\",\n oline: \"\\u203E\",\n frasl: \"\\u2044\",\n euro: \"\\u20AC\",\n image: \"\\u2111\",\n weierp: \"\\u2118\",\n real: \"\\u211C\",\n trade: \"\\u2122\",\n alefsym: \"\\u2135\",\n larr: \"\\u2190\",\n uarr: \"\\u2191\",\n rarr: \"\\u2192\",\n darr: \"\\u2193\",\n harr: \"\\u2194\",\n crarr: \"\\u21B5\",\n lArr: \"\\u21D0\",\n uArr: \"\\u21D1\",\n rArr: \"\\u21D2\",\n dArr: \"\\u21D3\",\n hArr: \"\\u21D4\",\n forall: \"\\u2200\",\n part: \"\\u2202\",\n exist: \"\\u2203\",\n empty: \"\\u2205\",\n nabla: \"\\u2207\",\n isin: \"\\u2208\",\n notin: \"\\u2209\",\n ni: \"\\u220B\",\n prod: \"\\u220F\",\n sum: \"\\u2211\",\n minus: \"\\u2212\",\n lowast: \"\\u2217\",\n radic: \"\\u221A\",\n prop: \"\\u221D\",\n infin: \"\\u221E\",\n ang: \"\\u2220\",\n and: \"\\u2227\",\n or: \"\\u2228\",\n cap: \"\\u2229\",\n cup: \"\\u222A\",\n int: \"\\u222B\",\n there4: \"\\u2234\",\n sim: \"\\u223C\",\n cong: \"\\u2245\",\n asymp: \"\\u2248\",\n ne: \"\\u2260\",\n equiv: \"\\u2261\",\n le: \"\\u2264\",\n ge: \"\\u2265\",\n sub: \"\\u2282\",\n sup: \"\\u2283\",\n nsub: \"\\u2284\",\n sube: \"\\u2286\",\n supe: \"\\u2287\",\n oplus: \"\\u2295\",\n otimes: \"\\u2297\",\n perp: \"\\u22A5\",\n sdot: \"\\u22C5\",\n lceil: \"\\u2308\",\n rceil: \"\\u2309\",\n lfloor: \"\\u230A\",\n rfloor: \"\\u230B\",\n lang: \"\\u2329\",\n rang: \"\\u232A\",\n loz: \"\\u25CA\",\n spades: \"\\u2660\",\n clubs: \"\\u2663\",\n hearts: \"\\u2665\",\n diams: \"\\u2666\",\n} as const;\nexport default entities;\n","import * as charCodes from \"charcodes\";\n\n// Matches a whole line break (where CRLF is considered a single\n// line break). Used to count lines.\nexport const lineBreak = /\\r\\n|[\\r\\n\\u2028\\u2029]/;\nexport const lineBreakG = new RegExp(lineBreak.source, \"g\");\n\n// https://tc39.github.io/ecma262/#sec-line-terminators\nexport function isNewLine(code: number): boolean {\n switch (code) {\n case charCodes.lineFeed:\n case charCodes.carriageReturn:\n case charCodes.lineSeparator:\n case charCodes.paragraphSeparator:\n return true;\n\n default:\n return false;\n }\n}\n\nexport function hasNewLine(input: string, start: number, end: number): boolean {\n for (let i = start; i < end; i++) {\n if (isNewLine(input.charCodeAt(i))) {\n return true;\n }\n }\n return false;\n}\n\nexport const skipWhiteSpace = /(?:\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*/g;\n\nexport const skipWhiteSpaceInLine =\n /(?:[^\\S\\n\\r\\u2028\\u2029]|\\/\\/.*|\\/\\*.*?\\*\\/)*/g;\n\n// https://tc39.github.io/ecma262/#sec-white-space\nexport function isWhitespace(code: number): boolean {\n switch (code) {\n case 0x0009: // CHARACTER TABULATION\n case 0x000b: // LINE TABULATION\n case 0x000c: // FORM FEED\n case charCodes.space:\n case charCodes.nonBreakingSpace:\n case charCodes.oghamSpaceMark:\n case 0x2000: // EN QUAD\n case 0x2001: // EM QUAD\n case 0x2002: // EN SPACE\n case 0x2003: // EM SPACE\n case 0x2004: // THREE-PER-EM SPACE\n case 0x2005: // FOUR-PER-EM SPACE\n case 0x2006: // SIX-PER-EM SPACE\n case 0x2007: // FIGURE SPACE\n case 0x2008: // PUNCTUATION SPACE\n case 0x2009: // THIN SPACE\n case 0x200a: // HAIR SPACE\n case 0x202f: // NARROW NO-BREAK SPACE\n case 0x205f: // MEDIUM MATHEMATICAL SPACE\n case 0x3000: // IDEOGRAPHIC SPACE\n case 0xfeff: // ZERO WIDTH NO-BREAK SPACE\n return true;\n\n default:\n return false;\n }\n}\n","import * as charCodes from \"charcodes\";\n\nimport XHTMLEntities from \"./xhtml.ts\";\nimport type Parser from \"../../parser/index.ts\";\nimport type { ExpressionErrors } from \"../../parser/util.ts\";\nimport {\n tokenComesBeforeExpression,\n tokenIsKeyword,\n tokenLabelName,\n type TokenType,\n tt,\n} from \"../../tokenizer/types.ts\";\nimport type { TokContext } from \"../../tokenizer/context.ts\";\nimport { types as tc } from \"../../tokenizer/context.ts\";\nimport type * as N from \"../../types.ts\";\nimport { isIdentifierChar, isIdentifierStart } from \"../../util/identifier.ts\";\nimport type { Position } from \"../../util/location.ts\";\nimport { isNewLine } from \"../../util/whitespace.ts\";\nimport { Errors, ParseErrorEnum } from \"../../parse-error.ts\";\nimport type { Undone } from \"../../parser/node.ts\";\n\n/* eslint sort-keys: \"error\" */\nconst JsxErrors = ParseErrorEnum`jsx`({\n AttributeIsEmpty:\n \"JSX attributes must only be assigned a non-empty expression.\",\n MissingClosingTagElement: ({ openingTagName }: { openingTagName: string }) =>\n `Expected corresponding JSX closing tag for <${openingTagName}>.`,\n MissingClosingTagFragment: \"Expected corresponding JSX closing tag for <>.\",\n UnexpectedSequenceExpression:\n \"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?\",\n // FIXME: Unify with Errors.UnexpectedToken\n UnexpectedToken: ({\n unexpected,\n HTMLEntity,\n }: {\n unexpected: string;\n HTMLEntity: string;\n }) =>\n `Unexpected token \\`${unexpected}\\`. Did you mean \\`${HTMLEntity}\\` or \\`{'${unexpected}'}\\`?`,\n UnsupportedJsxValue:\n \"JSX value should be either an expression or a quoted JSX text.\",\n UnterminatedJsxContent: \"Unterminated JSX contents.\",\n UnwrappedAdjacentJSXElements:\n \"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?\",\n});\n\n/* eslint-disable sort-keys */\n\nfunction isFragment(object?: N.JSXTag | null): object is N.JSXFragmentTag {\n return object\n ? object.type === \"JSXOpeningFragment\" ||\n object.type === \"JSXClosingFragment\"\n : false;\n}\n\n// Transforms JSX element name to string.\n\nfunction getQualifiedJSXName(\n object: N.JSXIdentifier | N.JSXNamespacedName | N.JSXMemberExpression,\n): string {\n if (object.type === \"JSXIdentifier\") {\n return object.name;\n }\n\n if (object.type === \"JSXNamespacedName\") {\n return object.namespace.name + \":\" + object.name.name;\n }\n\n if (object.type === \"JSXMemberExpression\") {\n return (\n getQualifiedJSXName(object.object) +\n \".\" +\n getQualifiedJSXName(object.property)\n );\n }\n\n // istanbul ignore next\n // @ts-expect-error - object is 'never'\n throw new Error(\"Node had unexpected type: \" + object.type);\n}\n\nexport interface IJSXParserMixin {\n jsxParseOpeningElementAfterName(\n node: N.JSXOpeningElement,\n ): N.JSXOpeningElement;\n}\n\nexport type ClassWithMixin<\n T extends new (...args: any) => any,\n M extends object,\n> = T extends new (...args: infer P) => infer I\n ? new (...args: P) => I & M\n : never;\n\nexport default (superClass: typeof Parser) =>\n class JSXParserMixin extends superClass implements Parser, IJSXParserMixin {\n // Reads inline JSX contents token.\n\n jsxReadToken(): void {\n let out = \"\";\n let chunkStart = this.state.pos;\n for (;;) {\n if (this.state.pos >= this.length) {\n throw this.raise(\n JsxErrors.UnterminatedJsxContent,\n this.state.startLoc,\n );\n }\n\n const ch = this.input.charCodeAt(this.state.pos);\n\n switch (ch) {\n case charCodes.lessThan:\n case charCodes.leftCurlyBrace:\n if (this.state.pos === this.state.start) {\n if (ch === charCodes.lessThan && this.state.canStartJSXElement) {\n ++this.state.pos;\n this.finishToken(tt.jsxTagStart);\n } else {\n super.getTokenFromCode(ch);\n }\n return;\n }\n out += this.input.slice(chunkStart, this.state.pos);\n this.finishToken(tt.jsxText, out);\n return;\n\n case charCodes.ampersand:\n out += this.input.slice(chunkStart, this.state.pos);\n out += this.jsxReadEntity();\n chunkStart = this.state.pos;\n break;\n\n case charCodes.greaterThan:\n case charCodes.rightCurlyBrace:\n if (process.env.BABEL_8_BREAKING) {\n this.raise(JsxErrors.UnexpectedToken, this.state.curPosition(), {\n unexpected: this.input[this.state.pos],\n HTMLEntity:\n ch === charCodes.rightCurlyBrace ? \"}\" : \">\",\n });\n }\n /* falls through */\n\n default:\n if (isNewLine(ch)) {\n out += this.input.slice(chunkStart, this.state.pos);\n out += this.jsxReadNewLine(true);\n chunkStart = this.state.pos;\n } else {\n ++this.state.pos;\n }\n }\n }\n }\n\n jsxReadNewLine(normalizeCRLF: boolean): string {\n const ch = this.input.charCodeAt(this.state.pos);\n let out;\n ++this.state.pos;\n if (\n ch === charCodes.carriageReturn &&\n this.input.charCodeAt(this.state.pos) === charCodes.lineFeed\n ) {\n ++this.state.pos;\n out = normalizeCRLF ? \"\\n\" : \"\\r\\n\";\n } else {\n out = String.fromCharCode(ch);\n }\n ++this.state.curLine;\n this.state.lineStart = this.state.pos;\n\n return out;\n }\n\n jsxReadString(quote: number): void {\n let out = \"\";\n let chunkStart = ++this.state.pos;\n for (;;) {\n if (this.state.pos >= this.length) {\n throw this.raise(Errors.UnterminatedString, this.state.startLoc);\n }\n\n const ch = this.input.charCodeAt(this.state.pos);\n if (ch === quote) break;\n if (ch === charCodes.ampersand) {\n out += this.input.slice(chunkStart, this.state.pos);\n out += this.jsxReadEntity();\n chunkStart = this.state.pos;\n } else if (isNewLine(ch)) {\n out += this.input.slice(chunkStart, this.state.pos);\n out += this.jsxReadNewLine(false);\n chunkStart = this.state.pos;\n } else {\n ++this.state.pos;\n }\n }\n out += this.input.slice(chunkStart, this.state.pos++);\n this.finishToken(tt.string, out);\n }\n\n jsxReadEntity(): string {\n const startPos = ++this.state.pos;\n if (this.codePointAtPos(this.state.pos) === charCodes.numberSign) {\n ++this.state.pos;\n\n let radix = 10;\n if (this.codePointAtPos(this.state.pos) === charCodes.lowercaseX) {\n radix = 16;\n ++this.state.pos;\n }\n\n const codePoint = this.readInt(\n radix,\n /* len */ undefined,\n /* forceLen */ false,\n /* allowNumSeparator */ \"bail\",\n );\n if (\n codePoint !== null &&\n this.codePointAtPos(this.state.pos) === charCodes.semicolon\n ) {\n ++this.state.pos;\n return String.fromCodePoint(codePoint);\n }\n } else {\n let count = 0;\n let semi = false;\n while (\n count++ < 10 &&\n this.state.pos < this.length &&\n !(semi = this.codePointAtPos(this.state.pos) === charCodes.semicolon)\n ) {\n ++this.state.pos;\n }\n\n if (semi) {\n const desc = this.input.slice(startPos, this.state.pos);\n const entity = XHTMLEntities[desc];\n ++this.state.pos;\n\n if (entity) {\n return entity;\n }\n }\n }\n\n // Not a valid entity\n this.state.pos = startPos;\n return \"&\";\n }\n\n // Read a JSX identifier (valid tag or attribute name).\n //\n // Optimized version since JSX identifiers can\"t contain\n // escape characters and so can be read as single slice.\n // Also assumes that first character was already checked\n // by isIdentifierStart in readToken.\n\n jsxReadWord(): void {\n let ch;\n const start = this.state.pos;\n do {\n ch = this.input.charCodeAt(++this.state.pos);\n } while (isIdentifierChar(ch) || ch === charCodes.dash);\n this.finishToken(tt.jsxName, this.input.slice(start, this.state.pos));\n }\n\n // Parse next token as JSX identifier\n\n jsxParseIdentifier(): N.JSXIdentifier {\n const node = this.startNode();\n if (this.match(tt.jsxName)) {\n node.name = this.state.value;\n } else if (tokenIsKeyword(this.state.type)) {\n node.name = tokenLabelName(this.state.type);\n } else {\n this.unexpected();\n }\n this.next();\n return this.finishNode(node, \"JSXIdentifier\");\n }\n\n // Parse namespaced identifier.\n\n jsxParseNamespacedName(): N.JSXNamespacedName | N.JSXIdentifier {\n const startLoc = this.state.startLoc;\n const name = this.jsxParseIdentifier();\n if (!this.eat(tt.colon)) return name;\n\n const node = this.startNodeAt(startLoc);\n node.namespace = name;\n node.name = this.jsxParseIdentifier();\n return this.finishNode(node, \"JSXNamespacedName\");\n }\n\n // Parses element name in any form - namespaced, member\n // or single identifier.\n\n jsxParseElementName():\n | N.JSXIdentifier\n | N.JSXNamespacedName\n | N.JSXMemberExpression {\n const startLoc = this.state.startLoc;\n let node: N.JSXIdentifier | N.JSXNamespacedName | N.JSXMemberExpression =\n this.jsxParseNamespacedName();\n if (node.type === \"JSXNamespacedName\") {\n return node;\n }\n while (this.eat(tt.dot)) {\n const newNode = this.startNodeAt(startLoc);\n newNode.object = node;\n newNode.property = this.jsxParseIdentifier();\n node = this.finishNode(newNode, \"JSXMemberExpression\");\n }\n return node;\n }\n\n // Parses any type of JSX attribute value.\n\n jsxParseAttributeValue():\n | N.JSXExpressionContainer\n | N.JSXElement\n | N.StringLiteral {\n let node;\n switch (this.state.type) {\n case tt.braceL:\n node = this.startNode();\n this.setContext(tc.brace);\n this.next();\n node = this.jsxParseExpressionContainer(node, tc.j_oTag);\n if (node.expression.type === \"JSXEmptyExpression\") {\n this.raise(JsxErrors.AttributeIsEmpty, node);\n }\n return node;\n\n case tt.jsxTagStart:\n case tt.string:\n return this.parseExprAtom() as N.JSXElement | N.StringLiteral;\n\n default:\n throw this.raise(JsxErrors.UnsupportedJsxValue, this.state.startLoc);\n }\n }\n\n // JSXEmptyExpression is unique type since it doesn't actually parse anything,\n // and so it should start at the end of last read token (left brace) and finish\n // at the beginning of the next one (right brace).\n\n jsxParseEmptyExpression(): N.JSXEmptyExpression {\n const node = this.startNodeAt(this.state.lastTokEndLoc!);\n return this.finishNodeAt(node, \"JSXEmptyExpression\", this.state.startLoc);\n }\n\n // Parse JSX spread child\n\n jsxParseSpreadChild(node: Undone): N.JSXSpreadChild {\n this.next(); // ellipsis\n node.expression = this.parseExpression();\n this.setContext(tc.j_expr);\n this.state.canStartJSXElement = true;\n this.expect(tt.braceR);\n\n return this.finishNode(node, \"JSXSpreadChild\");\n }\n\n // Parses JSX expression enclosed into curly brackets.\n\n jsxParseExpressionContainer(\n node: Undone,\n previousContext: TokContext,\n ): N.JSXExpressionContainer {\n if (this.match(tt.braceR)) {\n node.expression = this.jsxParseEmptyExpression();\n } else {\n const expression = this.parseExpression();\n\n if (process.env.BABEL_8_BREAKING) {\n if (\n expression.type === \"SequenceExpression\" &&\n !expression.extra?.parenthesized\n ) {\n this.raise(\n JsxErrors.UnexpectedSequenceExpression,\n expression.expressions[1],\n );\n }\n }\n\n node.expression = expression;\n }\n this.setContext(previousContext);\n this.state.canStartJSXElement = true;\n this.expect(tt.braceR);\n\n return this.finishNode(node, \"JSXExpressionContainer\");\n }\n\n // Parses following JSX attribute name-value pair.\n\n jsxParseAttribute(): N.JSXAttribute | N.JSXSpreadAttribute {\n const node = this.startNode();\n if (this.match(tt.braceL)) {\n this.setContext(tc.brace);\n this.next();\n this.expect(tt.ellipsis);\n node.argument = this.parseMaybeAssignAllowIn();\n this.setContext(tc.j_oTag);\n this.state.canStartJSXElement = true;\n this.expect(tt.braceR);\n return this.finishNode(node, \"JSXSpreadAttribute\");\n }\n node.name = this.jsxParseNamespacedName();\n node.value = this.eat(tt.eq) ? this.jsxParseAttributeValue() : null;\n return this.finishNode(node, \"JSXAttribute\");\n }\n\n // Parses JSX opening tag starting after \"<\".\n\n jsxParseOpeningElementAt(\n startLoc: Position,\n ): N.JSXOpeningElement | N.JSXOpeningFragment {\n const node = this.startNodeAt(\n startLoc,\n );\n if (this.eat(tt.jsxTagEnd)) {\n return this.finishNode(node, \"JSXOpeningFragment\");\n }\n node.name = this.jsxParseElementName();\n return this.jsxParseOpeningElementAfterName(\n node as Undone,\n );\n }\n\n jsxParseOpeningElementAfterName(\n node: Undone,\n ): N.JSXOpeningElement {\n const attributes: (N.JSXAttribute | N.JSXSpreadAttribute)[] = [];\n while (!this.match(tt.slash) && !this.match(tt.jsxTagEnd)) {\n attributes.push(this.jsxParseAttribute());\n }\n node.attributes = attributes;\n node.selfClosing = this.eat(tt.slash);\n this.expect(tt.jsxTagEnd);\n return this.finishNode(node, \"JSXOpeningElement\");\n }\n\n // Parses JSX closing tag starting after \"(\n startLoc,\n );\n if (this.eat(tt.jsxTagEnd)) {\n return this.finishNode(node, \"JSXClosingFragment\");\n }\n node.name = this.jsxParseElementName();\n this.expect(tt.jsxTagEnd);\n return this.finishNode(node, \"JSXClosingElement\");\n }\n\n // Parses entire JSX element, including it\"s opening tag\n // (starting after \"<\"), attributes, contents and closing tag.\n\n jsxParseElementAt(startLoc: Position): N.JSXElement | N.JSXFragment {\n const node = this.startNodeAt(startLoc);\n const children = [];\n const openingElement = this.jsxParseOpeningElementAt(startLoc);\n let closingElement = null;\n\n if (!openingElement.selfClosing) {\n contents: for (;;) {\n switch (this.state.type) {\n case tt.jsxTagStart:\n startLoc = this.state.startLoc;\n this.next();\n if (this.eat(tt.slash)) {\n closingElement = this.jsxParseClosingElementAt(startLoc);\n break contents;\n }\n children.push(this.jsxParseElementAt(startLoc));\n break;\n\n case tt.jsxText:\n children.push(this.parseLiteral(this.state.value, \"JSXText\"));\n break;\n\n case tt.braceL: {\n const node = this.startNode<\n N.JSXSpreadChild | N.JSXExpressionContainer\n >();\n this.setContext(tc.brace);\n this.next();\n if (this.match(tt.ellipsis)) {\n children.push(this.jsxParseSpreadChild(node));\n } else {\n children.push(\n this.jsxParseExpressionContainer(node, tc.j_expr),\n );\n }\n\n break;\n }\n // istanbul ignore next - should never happen\n default:\n this.unexpected();\n }\n }\n\n if (\n isFragment(openingElement) &&\n !isFragment(closingElement) &&\n closingElement !== null\n ) {\n this.raise(JsxErrors.MissingClosingTagFragment, closingElement);\n } else if (!isFragment(openingElement) && isFragment(closingElement)) {\n this.raise(JsxErrors.MissingClosingTagElement, closingElement, {\n openingTagName: getQualifiedJSXName(openingElement.name),\n });\n } else if (!isFragment(openingElement) && !isFragment(closingElement)) {\n if (\n getQualifiedJSXName(closingElement.name) !==\n getQualifiedJSXName(openingElement.name)\n ) {\n this.raise(JsxErrors.MissingClosingTagElement, closingElement, {\n openingTagName: getQualifiedJSXName(openingElement.name),\n });\n }\n }\n }\n\n if (isFragment(openingElement)) {\n node.openingFragment = openingElement;\n node.closingFragment = closingElement;\n } else {\n node.openingElement = openingElement;\n node.closingElement = closingElement;\n }\n node.children = children;\n if (this.match(tt.lt)) {\n throw this.raise(\n JsxErrors.UnwrappedAdjacentJSXElements,\n this.state.startLoc,\n );\n }\n\n return isFragment(openingElement)\n ? this.finishNode(node, \"JSXFragment\")\n : this.finishNode(node, \"JSXElement\");\n }\n\n // Parses entire JSX element from current position.\n\n jsxParseElement(): N.JSXElement | N.JSXFragment {\n const startLoc = this.state.startLoc;\n this.next();\n return this.jsxParseElementAt(startLoc);\n }\n\n setContext(newContext: TokContext) {\n const { context } = this.state;\n context[context.length - 1] = newContext;\n }\n\n // ==================================\n // Overrides\n // ==================================\n\n parseExprAtom(refExpressionErrors?: ExpressionErrors | null): N.Expression {\n if (this.match(tt.jsxTagStart)) {\n return this.jsxParseElement();\n } else if (\n this.match(tt.lt) &&\n this.input.charCodeAt(this.state.pos) !== charCodes.exclamationMark\n ) {\n // In case we encounter an lt token here it will always be the start of\n // jsx as the lt sign is not allowed in places that expect an expression\n this.replaceToken(tt.jsxTagStart);\n return this.jsxParseElement();\n } else {\n return super.parseExprAtom(refExpressionErrors);\n }\n }\n\n skipSpace() {\n const curContext = this.curContext();\n if (!curContext.preserveSpace) super.skipSpace();\n }\n\n getTokenFromCode(code: number): void {\n const context = this.curContext();\n\n if (context === tc.j_expr) {\n this.jsxReadToken();\n return;\n }\n\n if (context === tc.j_oTag || context === tc.j_cTag) {\n if (isIdentifierStart(code)) {\n this.jsxReadWord();\n return;\n }\n\n if (code === charCodes.greaterThan) {\n ++this.state.pos;\n this.finishToken(tt.jsxTagEnd);\n return;\n }\n\n if (\n (code === charCodes.quotationMark || code === charCodes.apostrophe) &&\n context === tc.j_oTag\n ) {\n this.jsxReadString(code);\n return;\n }\n }\n\n if (\n code === charCodes.lessThan &&\n this.state.canStartJSXElement &&\n this.input.charCodeAt(this.state.pos + 1) !== charCodes.exclamationMark\n ) {\n ++this.state.pos;\n this.finishToken(tt.jsxTagStart);\n return;\n }\n\n super.getTokenFromCode(code);\n }\n\n updateContext(prevType: TokenType): void {\n const { context, type } = this.state;\n if (type === tt.slash && prevType === tt.jsxTagStart) {\n // do not consider JSX expr -> JSX open tag -> ... anymore\n // reconsider as closing tag context\n context.splice(-2, 2, tc.j_cTag);\n this.state.canStartJSXElement = false;\n } else if (type === tt.jsxTagStart) {\n // start opening tag context\n context.push(tc.j_oTag);\n } else if (type === tt.jsxTagEnd) {\n const out = context[context.length - 1];\n if ((out === tc.j_oTag && prevType === tt.slash) || out === tc.j_cTag) {\n context.pop();\n this.state.canStartJSXElement =\n context[context.length - 1] === tc.j_expr;\n } else {\n this.setContext(tc.j_expr);\n this.state.canStartJSXElement = true;\n }\n } else {\n this.state.canStartJSXElement = tokenComesBeforeExpression(type);\n }\n }\n };\n","import type { Position } from \"../../util/location.ts\";\nimport ScopeHandler, { NameType, Scope } from \"../../util/scope.ts\";\nimport { BindingFlag, ScopeFlag } from \"../../util/scopeflags.ts\";\nimport type * as N from \"../../types.ts\";\nimport { Errors } from \"../../parse-error.ts\";\n\nconst enum TsNameType {\n Types = 1 << 0,\n // enums (which are also in .types)\n Enums = 1 << 1,\n // const enums (which are also in .enums and .types)\n ConstEnums = 1 << 2,\n // classes (which are also in .lexical) and interface (which are also in .types)\n Classes = 1 << 3,\n // namespaces and ambient functions (or classes) are too difficult to track,\n // especially without type analysis.\n // We need to track them anyway, to avoid \"X is not defined\" errors\n // when exporting them.\n ExportOnlyBindings = 1 << 4,\n}\n\nclass TypeScriptScope extends Scope {\n tsNames = new Map();\n}\n\n// See https://github.com/babel/babel/pull/9766#discussion_r268920730 for an\n// explanation of how typescript handles scope.\n\nexport default class TypeScriptScopeHandler extends ScopeHandler {\n importsStack: Set[] = [];\n\n createScope(flags: ScopeFlag): TypeScriptScope {\n this.importsStack.push(new Set()); // Always keep the top-level scope for export checks.\n\n return new TypeScriptScope(flags);\n }\n\n enter(flags: ScopeFlag): void {\n if (flags === ScopeFlag.TS_MODULE) {\n this.importsStack.push(new Set());\n }\n\n super.enter(flags);\n }\n\n exit() {\n const flags = super.exit();\n\n if (flags === ScopeFlag.TS_MODULE) {\n this.importsStack.pop();\n }\n\n return flags;\n }\n\n hasImport(name: string, allowShadow?: boolean) {\n const len = this.importsStack.length;\n if (this.importsStack[len - 1].has(name)) {\n return true;\n }\n if (!allowShadow && len > 1) {\n for (let i = 0; i < len - 1; i++) {\n if (this.importsStack[i].has(name)) return true;\n }\n }\n return false;\n }\n\n declareName(name: string, bindingType: BindingFlag, loc: Position) {\n if (bindingType & BindingFlag.FLAG_TS_IMPORT) {\n if (this.hasImport(name, true)) {\n this.parser.raise(Errors.VarRedeclaration, loc, {\n identifierName: name,\n });\n }\n this.importsStack[this.importsStack.length - 1].add(name);\n return;\n }\n\n const scope = this.currentScope();\n let type = scope.tsNames.get(name) || 0;\n\n if (bindingType & BindingFlag.FLAG_TS_EXPORT_ONLY) {\n this.maybeExportDefined(scope, name);\n scope.tsNames.set(name, type | TsNameType.ExportOnlyBindings);\n return;\n }\n\n super.declareName(name, bindingType, loc);\n\n if (bindingType & BindingFlag.KIND_TYPE) {\n if (!(bindingType & BindingFlag.KIND_VALUE)) {\n // \"Value\" bindings have already been registered by the superclass.\n this.checkRedeclarationInScope(scope, name, bindingType, loc);\n this.maybeExportDefined(scope, name);\n }\n type = type | TsNameType.Types;\n }\n if (bindingType & BindingFlag.FLAG_TS_ENUM) {\n type = type | TsNameType.Enums;\n }\n if (bindingType & BindingFlag.FLAG_TS_CONST_ENUM) {\n type = type | TsNameType.ConstEnums;\n }\n if (bindingType & BindingFlag.FLAG_CLASS) {\n type = type | TsNameType.Classes;\n }\n if (type) scope.tsNames.set(name, type);\n }\n\n isRedeclaredInScope(\n scope: TypeScriptScope,\n name: string,\n bindingType: BindingFlag,\n ): boolean {\n const type = scope.tsNames.get(name)!;\n if ((type & TsNameType.Enums) > 0) {\n if (bindingType & BindingFlag.FLAG_TS_ENUM) {\n // Enums can be merged with other enums if they are both\n // const or both non-const.\n const isConst = !!(bindingType & BindingFlag.FLAG_TS_CONST_ENUM);\n const wasConst = (type & TsNameType.ConstEnums) > 0;\n return isConst !== wasConst;\n }\n return true;\n }\n if (\n bindingType & BindingFlag.FLAG_CLASS &&\n (type & TsNameType.Classes) > 0\n ) {\n if (scope.names.get(name)! & NameType.Lexical) {\n // Classes can be merged with interfaces\n return !!(bindingType & BindingFlag.KIND_VALUE);\n } else {\n // Interface can be merged with other classes or interfaces\n return false;\n }\n }\n if (bindingType & BindingFlag.KIND_TYPE && (type & TsNameType.Types) > 0) {\n return true;\n }\n\n return super.isRedeclaredInScope(scope, name, bindingType);\n }\n\n checkLocalExport(id: N.Identifier) {\n const { name } = id;\n\n if (this.hasImport(name)) return;\n\n const len = this.scopeStack.length;\n for (let i = len - 1; i >= 0; i--) {\n const scope = this.scopeStack[i];\n const type = scope.tsNames.get(name)!;\n if (\n (type & TsNameType.Types) > 0 ||\n (type & TsNameType.ExportOnlyBindings) > 0\n ) {\n return;\n }\n }\n\n super.checkLocalExport(id);\n }\n}\n","// ProductionParameterHandler is a stack fashioned production parameter tracker\n// https://tc39.es/ecma262/#sec-grammar-notation\n// The tracked parameters are defined above.\n//\n// Whenever [+Await]/[+Yield] appears in the right-hand sides of a production,\n// we must enter a new tracking stack. For example when parsing\n//\n// AsyncFunctionDeclaration [Yield, Await]:\n// async [no LineTerminator here] function BindingIdentifier[?Yield, ?Await]\n// ( FormalParameters[~Yield, +Await] ) { AsyncFunctionBody }\n//\n// we must follow such process:\n//\n// 1. parse async keyword\n// 2. parse function keyword\n// 3. parse bindingIdentifier <= inherit current parameters: [?Await]\n// 4. enter new stack with (PARAM_AWAIT)\n// 5. parse formal parameters <= must have [Await] parameter [+Await]\n// 6. parse function body\n// 7. exit current stack\n\nexport const enum ParamKind {\n // Initial Parameter flags\n PARAM = 0b0000,\n // track [Yield] production parameter\n PARAM_YIELD = 0b0001,\n // track [Await] production parameter\n PARAM_AWAIT = 0b0010,\n // track [Return] production parameter\n PARAM_RETURN = 0b0100,\n // track [In] production parameter\n PARAM_IN = 0b1000,\n}\n\n// todo(flow->ts) - check if more granular type can be used,\n// type below is not good because things like PARAM_AWAIT|PARAM_YIELD are not included\n// export type ParamKind =\n// | typeof PARAM\n// | typeof PARAM_AWAIT\n// | typeof PARAM_IN\n// | typeof PARAM_RETURN\n// | typeof PARAM_YIELD;\n\nexport default class ProductionParameterHandler {\n stacks: ParamKind[] = [];\n enter(flags: ParamKind) {\n this.stacks.push(flags);\n }\n\n exit() {\n this.stacks.pop();\n }\n\n currentFlags(): ParamKind {\n return this.stacks[this.stacks.length - 1];\n }\n\n get hasAwait(): boolean {\n return (this.currentFlags() & ParamKind.PARAM_AWAIT) > 0;\n }\n\n get hasYield(): boolean {\n return (this.currentFlags() & ParamKind.PARAM_YIELD) > 0;\n }\n\n get hasReturn(): boolean {\n return (this.currentFlags() & ParamKind.PARAM_RETURN) > 0;\n }\n\n get hasIn(): boolean {\n return (this.currentFlags() & ParamKind.PARAM_IN) > 0;\n }\n}\n\nexport function functionFlags(\n isAsync: boolean,\n isGenerator: boolean,\n): ParamKind {\n return (\n (isAsync ? ParamKind.PARAM_AWAIT : 0) |\n (isGenerator ? ParamKind.PARAM_YIELD : 0)\n );\n}\n","import type { OptionFlags, Options } from \"../options.ts\";\nimport type State from \"../tokenizer/state.ts\";\nimport type { PluginsMap } from \"./index.ts\";\nimport type ScopeHandler from \"../util/scope.ts\";\nimport type ExpressionScopeHandler from \"../util/expression-scope.ts\";\nimport type ClassScopeHandler from \"../util/class-scope.ts\";\nimport type ProductionParameterHandler from \"../util/production-parameter.ts\";\nimport type {\n ParserPluginWithOptions,\n PluginConfig,\n PluginOptions,\n} from \"../typings.ts\";\nimport type * as N from \"../types.ts\";\n\nexport default class BaseParser {\n // Properties set by constructor in index.js\n declare options: Options;\n declare optionFlags: OptionFlags;\n declare inModule: boolean;\n declare scope: ScopeHandler;\n declare classScope: ClassScopeHandler;\n declare prodParam: ProductionParameterHandler;\n declare expressionScope: ExpressionScopeHandler;\n declare plugins: PluginsMap;\n declare filename: string | undefined | null;\n declare startIndex: number;\n // Names of exports store. `default` is stored as a name for both\n // `export default foo;` and `export { foo as default };`.\n declare exportedIdentifiers: Set;\n sawUnambiguousESM: boolean = false;\n ambiguousScriptDifferentAst: boolean = false;\n\n // Initialized by Tokenizer\n declare state: State;\n // input and length are not in state as they are constant and we do\n // not want to ever copy them, which happens if state gets cloned\n declare input: string;\n declare length: number;\n // Comment store for Program.comments\n declare comments: N.Comment[];\n\n sourceToOffsetPos(sourcePos: number) {\n return sourcePos + this.startIndex;\n }\n\n offsetToSourcePos(offsetPos: number) {\n return offsetPos - this.startIndex;\n }\n\n // This method accepts either a string (plugin name) or an array pair\n // (plugin name and options object). If an options object is given,\n // then each value is non-recursively checked for identity with that\n // plugin’s actual option value.\n hasPlugin(pluginConfig: PluginConfig): boolean {\n if (typeof pluginConfig === \"string\") {\n return this.plugins.has(pluginConfig);\n } else {\n const [pluginName, pluginOptions] = pluginConfig;\n if (!this.hasPlugin(pluginName)) {\n return false;\n }\n const actualOptions = this.plugins.get(pluginName);\n for (const key of Object.keys(\n pluginOptions,\n ) as (keyof typeof pluginOptions)[]) {\n if (actualOptions?.[key] !== pluginOptions[key]) {\n return false;\n }\n }\n return true;\n }\n }\n\n getPluginOption<\n PluginName extends ParserPluginWithOptions[0],\n OptionName extends keyof PluginOptions,\n >(plugin: PluginName, name: OptionName) {\n return (this.plugins.get(plugin) as null | PluginOptions)?.[\n name\n ];\n }\n}\n","/*:: declare var invariant; */\n\nimport BaseParser from \"./base.ts\";\nimport type { Comment, Node } from \"../types.ts\";\nimport * as charCodes from \"charcodes\";\nimport type { Undone } from \"./node.ts\";\n\n/**\n * A whitespace token containing comments\n */\nexport type CommentWhitespace = {\n /**\n * the start of the whitespace token.\n */\n start: number;\n /**\n * the end of the whitespace token.\n */\n end: number;\n /**\n * the containing comments\n */\n comments: Comment[];\n /**\n * the immediately preceding AST node of the whitespace token\n */\n leadingNode: Node | null;\n /**\n * the immediately following AST node of the whitespace token\n */\n trailingNode: Node | null;\n /**\n * the innermost AST node containing the whitespace with minimal size (|end - start|)\n */\n containingNode: Node | null;\n};\n\n/**\n * Merge comments with node's trailingComments or assign comments to be\n * trailingComments. New comments will be placed before old comments\n * because the commentStack is enumerated reversely.\n */\nfunction setTrailingComments(node: Undone, comments: Comment[]) {\n if (node.trailingComments === undefined) {\n node.trailingComments = comments;\n } else {\n node.trailingComments.unshift(...comments);\n }\n}\n\n/**\n * Merge comments with node's leadingComments or assign comments to be\n * leadingComments. New comments will be placed before old comments\n * because the commentStack is enumerated reversely.\n */\nfunction setLeadingComments(node: Undone, comments: Comment[]) {\n if (node.leadingComments === undefined) {\n node.leadingComments = comments;\n } else {\n node.leadingComments.unshift(...comments);\n }\n}\n\n/**\n * Merge comments with node's innerComments or assign comments to be\n * innerComments. New comments will be placed before old comments\n * because the commentStack is enumerated reversely.\n */\nexport function setInnerComments(node: Undone, comments: Comment[]) {\n if (node.innerComments === undefined) {\n node.innerComments = comments;\n } else {\n node.innerComments.unshift(...comments);\n }\n}\n\n/**\n * Given node and elements array, if elements has non-null element,\n * merge comments to its trailingComments, otherwise merge comments\n * to node's innerComments\n */\nfunction adjustInnerComments(\n node: Undone,\n elements: (Node | null)[],\n commentWS: CommentWhitespace,\n) {\n let lastElement = null;\n let i = elements.length;\n while (lastElement === null && i > 0) {\n lastElement = elements[--i];\n }\n if (lastElement === null || lastElement.start > commentWS.start) {\n setInnerComments(node, commentWS.comments);\n } else {\n setTrailingComments(lastElement, commentWS.comments);\n }\n}\n\nexport default class CommentsParser extends BaseParser {\n addComment(comment: Comment): void {\n if (this.filename) comment.loc.filename = this.filename;\n const { commentsLen } = this.state;\n if (this.comments.length !== commentsLen) {\n this.comments.length = commentsLen;\n }\n this.comments.push(comment);\n this.state.commentsLen++;\n }\n\n /**\n * Given a newly created AST node _n_, attach _n_ to a comment whitespace _w_ if applicable\n * {@see {@link CommentWhitespace}}\n */\n processComment(node: Node): void {\n const { commentStack } = this.state;\n const commentStackLength = commentStack.length;\n if (commentStackLength === 0) return;\n let i = commentStackLength - 1;\n const lastCommentWS = commentStack[i];\n\n if (lastCommentWS.start === node.end) {\n lastCommentWS.leadingNode = node;\n i--;\n }\n\n const { start: nodeStart } = node;\n // invariant: for all 0 <= j <= i, let c = commentStack[j], c must satisfy c.end < node.end\n for (; i >= 0; i--) {\n const commentWS = commentStack[i];\n const commentEnd = commentWS.end;\n if (commentEnd > nodeStart) {\n // by definition of commentWhiteSpace, this implies commentWS.start > nodeStart\n // so node can be a containingNode candidate. At this time we can finalize the comment\n // whitespace, because\n // 1) its leadingNode or trailingNode, if exists, will not change\n // 2) its containingNode have been assigned and will not change because it is the\n // innermost minimal-sized AST node\n commentWS.containingNode = node;\n this.finalizeComment(commentWS);\n commentStack.splice(i, 1);\n } else {\n if (commentEnd === nodeStart) {\n commentWS.trailingNode = node;\n }\n // stop the loop when commentEnd <= nodeStart\n break;\n }\n }\n }\n\n /**\n * Assign the comments of comment whitespaces to related AST nodes.\n * Also adjust innerComments following trailing comma.\n */\n finalizeComment(commentWS: CommentWhitespace) {\n const { comments } = commentWS;\n if (commentWS.leadingNode !== null || commentWS.trailingNode !== null) {\n if (commentWS.leadingNode !== null) {\n setTrailingComments(commentWS.leadingNode, comments);\n }\n if (commentWS.trailingNode !== null) {\n setLeadingComments(commentWS.trailingNode, comments);\n }\n } else {\n /*:: invariant(commentWS.containingNode !== null) */\n const node = commentWS.containingNode!;\n const commentStart = commentWS.start;\n if (\n this.input.charCodeAt(this.offsetToSourcePos(commentStart) - 1) ===\n charCodes.comma\n ) {\n // If a commentWhitespace follows a comma and the containingNode allows\n // list structures with trailing comma, merge it to the trailingComment\n // of the last non-null list element\n switch (node.type) {\n case \"ObjectExpression\":\n case \"ObjectPattern\":\n adjustInnerComments(node, node.properties, commentWS);\n break;\n case \"CallExpression\":\n case \"OptionalCallExpression\":\n adjustInnerComments(node, node.arguments, commentWS);\n break;\n case \"ImportExpression\":\n adjustInnerComments(\n node,\n [node.source, node.options ?? null],\n commentWS,\n );\n break;\n case \"FunctionDeclaration\":\n case \"FunctionExpression\":\n case \"ArrowFunctionExpression\":\n case \"ObjectMethod\":\n case \"ClassMethod\":\n case \"ClassPrivateMethod\":\n adjustInnerComments(node, node.params, commentWS);\n break;\n case \"ArrayExpression\":\n case \"ArrayPattern\":\n adjustInnerComments(node, node.elements, commentWS);\n break;\n case \"ExportNamedDeclaration\":\n case \"ImportDeclaration\":\n adjustInnerComments(node, node.specifiers, commentWS);\n break;\n case \"TSEnumDeclaration\":\n if (!process.env.BABEL_8_BREAKING) {\n adjustInnerComments(node, node.members!, commentWS);\n } else {\n setInnerComments(node, comments);\n }\n break;\n case \"TSEnumBody\":\n adjustInnerComments(node, node.members, commentWS);\n break;\n default: {\n if (!process.env.BABEL_8_BREAKING) {\n if (node.type === \"RecordExpression\") {\n adjustInnerComments(node, node.properties, commentWS);\n break;\n }\n if (node.type === \"TupleExpression\") {\n adjustInnerComments(node, node.elements, commentWS);\n break;\n }\n }\n setInnerComments(node, comments);\n }\n }\n } else {\n setInnerComments(node, comments);\n }\n }\n }\n\n /**\n * Drains remaining commentStack and applies finalizeComment\n * to each comment whitespace. Used only in parseExpression\n * where the top level AST node is _not_ Program\n * {@see {@link CommentsParser#finalizeComment}}\n */\n finalizeRemainingComments() {\n const { commentStack } = this.state;\n for (let i = commentStack.length - 1; i >= 0; i--) {\n this.finalizeComment(commentStack[i]);\n }\n this.state.commentStack = [];\n }\n\n /* eslint-disable no-irregular-whitespace */\n /**\n * Reset previous node trailing comments. Used in object / class\n * property parsing. We parse `async`, `static`, `set` and `get`\n * as an identifier but may reinterpret it into an async/static/accessor\n * method later. In this case the identifier is not part of the AST and we\n * should sync the knowledge to commentStacks\n *\n * For example, when parsing\n * ```\n * async /* 1 *​/ function f() {}\n * ```\n * the comment whitespace `/* 1 *​/` has leading node Identifier(async). When\n * we see the function token, we create a Function node and mark `/* 1 *​/` as\n * inner comments. So `/* 1 *​/` should be detached from the Identifier node.\n *\n * @param node the last finished AST node _before_ current token\n */\n /* eslint-enable no-irregular-whitespace */\n resetPreviousNodeTrailingComments(node: Node) {\n const { commentStack } = this.state;\n const { length } = commentStack;\n if (length === 0) return;\n const commentWS = commentStack[length - 1];\n if (commentWS.leadingNode === node) {\n commentWS.leadingNode = null;\n }\n }\n\n /**\n * Attach a node to the comment whitespaces right before/after\n * the given range.\n *\n * This is used to properly attach comments around parenthesized\n * expressions as leading/trailing comments of the inner expression.\n */\n takeSurroundingComments(node: Node, start: number, end: number) {\n const { commentStack } = this.state;\n const commentStackLength = commentStack.length;\n if (commentStackLength === 0) return;\n let i = commentStackLength - 1;\n\n for (; i >= 0; i--) {\n const commentWS = commentStack[i];\n const commentEnd = commentWS.end;\n const commentStart = commentWS.start;\n\n if (commentStart === end) {\n commentWS.leadingNode = node;\n } else if (commentEnd === start) {\n commentWS.trailingNode = node;\n } else if (commentEnd < start) {\n break;\n }\n }\n }\n}\n","import type { OptionsWithDefaults } from \"../options.ts\";\nimport type { CommentWhitespace } from \"../parser/comments\";\nimport { Position } from \"../util/location.ts\";\n\nimport { types as ct, type TokContext } from \"./context.ts\";\nimport { tt, type TokenType } from \"./types.ts\";\nimport type { Errors } from \"../parse-error.ts\";\nimport type { ParseError } from \"../parse-error.ts\";\n\nexport type DeferredStrictError =\n | typeof Errors.StrictNumericEscape\n | typeof Errors.StrictOctalLiteral;\n\ntype TopicContextState = {\n // When a topic binding has been currently established,\n // then this is 1. Otherwise, it is 0. This is forwards compatible\n // with a future plugin for multiple lexical topics.\n maxNumOfResolvableTopics: number;\n // When a topic binding has been currently established, and if that binding\n // has been used as a topic reference `#`, then this is 0. Otherwise, it is\n // `null`. This is forwards compatible with a future plugin for multiple\n // lexical topics.\n maxTopicIndex: null | 0;\n};\n\nexport const enum LoopLabelKind {\n Loop = 1,\n Switch = 2,\n}\n\ndeclare const bit: import(\"../../../../scripts/babel-plugin-bit-decorator/types.d.ts\").BitDecorator;\n\nexport default class State {\n @bit.storage flags: number = 0;\n\n @bit accessor strict = false;\n\n startIndex!: number;\n curLine!: number;\n lineStart!: number;\n\n // And, if locations are used, the {line, column} object\n // corresponding to those offsets\n startLoc!: Position;\n endLoc!: Position;\n\n init({\n strictMode,\n sourceType,\n startIndex,\n startLine,\n startColumn,\n }: OptionsWithDefaults): void {\n this.strict =\n strictMode === false\n ? false\n : strictMode === true\n ? true\n : sourceType === \"module\";\n\n this.startIndex = startIndex;\n this.curLine = startLine;\n this.lineStart = -startColumn;\n this.startLoc = this.endLoc = new Position(\n startLine,\n startColumn,\n startIndex,\n );\n }\n\n errors: ParseError[] = [];\n\n // Used to signify the start of a potential arrow function\n potentialArrowAt: number = -1;\n\n // Used to signify the start of an expression which looks like a\n // typed arrow function, but it isn't\n // e.g. a ? (b) : c => d\n // ^\n noArrowAt: number[] = [];\n\n // Used to signify the start of an expression whose params, if it looks like\n // an arrow function, shouldn't be converted to assignable nodes.\n // This is used to defer the validation of typed arrow functions inside\n // conditional expressions.\n // e.g. a ? (b) : c => d\n // ^\n noArrowParamsConversionAt: number[] = [];\n\n // Flags to track\n @bit accessor maybeInArrowParameters = false;\n @bit accessor inType = false;\n @bit accessor noAnonFunctionType = false;\n @bit accessor hasFlowComment = false;\n @bit accessor isAmbientContext = false;\n @bit accessor inAbstractClass = false;\n @bit accessor inDisallowConditionalTypesContext = false;\n\n // For the Hack-style pipelines plugin\n topicContext: TopicContextState = {\n maxNumOfResolvableTopics: 0,\n maxTopicIndex: null,\n };\n\n // For the F#-style pipelines plugin\n @bit accessor soloAwait = false;\n @bit accessor inFSharpPipelineDirectBody = false;\n\n // Labels in scope.\n labels: {\n kind: LoopLabelKind | null;\n name?: string | null;\n statementStart?: number;\n }[] = [];\n\n commentsLen = 0;\n // Comment attachment store\n commentStack: CommentWhitespace[] = [];\n\n // The current position of the tokenizer in the input.\n pos: number = 0;\n\n // Properties of the current token:\n // Its type\n type: TokenType = tt.eof;\n\n // For tokens that include more information than their type, the value\n value: any = null;\n\n // Its start and end offset\n start: number = 0;\n end: number = 0;\n\n // Position information for the previous token\n // this is initialized when generating the second token.\n lastTokEndLoc: Position | null = null;\n // this is initialized when generating the second token.\n lastTokStartLoc: Position | null = null;\n\n // The context stack is used to track whether the apostrophe \"`\" starts\n // or ends a string template\n context: TokContext[] = [ct.brace];\n\n // Used to track whether a JSX element is allowed to form\n @bit accessor canStartJSXElement = true;\n\n // Used to signal to callers of `readWord1` whether the word\n // contained any escape sequences. This is needed because words with\n // escape sequences must not be interpreted as keywords.\n @bit accessor containsEsc = false;\n\n // Used to track invalid escape sequences in template literals,\n // that must be reported if the template is not tagged.\n firstInvalidTemplateEscapePos: null | Position = null;\n\n @bit accessor hasTopLevelAwait = false;\n\n // This property is used to track the following errors\n // - StrictNumericEscape\n // - StrictOctalLiteral\n //\n // in a literal that occurs prior to/immediately after a \"use strict\" directive.\n\n // todo(JLHwung): set strictErrors to null and avoid recording string errors\n // after a non-directive is parsed\n strictErrors = new Map();\n\n // Tokens length in token store\n tokensLength: number = 0;\n\n /**\n * When we add a new property, we must manually update the `clone` method\n * @see State#clone\n */\n\n curPosition(): Position {\n return new Position(\n this.curLine,\n this.pos - this.lineStart,\n this.pos + this.startIndex,\n );\n }\n\n clone(): State {\n const state = new State();\n state.flags = this.flags;\n state.startIndex = this.startIndex;\n state.curLine = this.curLine;\n state.lineStart = this.lineStart;\n state.startLoc = this.startLoc;\n state.endLoc = this.endLoc;\n state.errors = this.errors.slice();\n state.potentialArrowAt = this.potentialArrowAt;\n state.noArrowAt = this.noArrowAt.slice();\n state.noArrowParamsConversionAt = this.noArrowParamsConversionAt.slice();\n state.topicContext = this.topicContext;\n state.labels = this.labels.slice();\n state.commentsLen = this.commentsLen;\n state.commentStack = this.commentStack.slice();\n state.pos = this.pos;\n state.type = this.type;\n state.value = this.value;\n state.start = this.start;\n state.end = this.end;\n state.lastTokEndLoc = this.lastTokEndLoc;\n state.lastTokStartLoc = this.lastTokStartLoc;\n state.context = this.context.slice();\n state.firstInvalidTemplateEscapePos = this.firstInvalidTemplateEscapePos;\n state.strictErrors = this.strictErrors;\n state.tokensLength = this.tokensLength;\n\n return state;\n }\n}\n\nexport type LookaheadState = {\n pos: number;\n value: any;\n type: TokenType;\n start: number;\n end: number;\n context: TokContext[];\n startLoc: Position;\n lastTokEndLoc: Position | null;\n curLine: number;\n lineStart: number;\n curPosition: State[\"curPosition\"];\n /* Used only in readToken_mult_modulo */\n inType: boolean;\n // These boolean properties are not initialized in createLookaheadState()\n // instead they will only be set by the tokenizer\n containsEsc?: boolean;\n};\n","// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\n\n// The following character codes are forbidden from being\n// an immediate sibling of NumericLiteralSeparator _\nconst forbiddenNumericSeparatorSiblings = {\n decBinOct: new Set([\n charCodes.dot,\n charCodes.uppercaseB,\n charCodes.uppercaseE,\n charCodes.uppercaseO,\n charCodes.underscore, // multiple separators are not allowed\n charCodes.lowercaseB,\n charCodes.lowercaseE,\n charCodes.lowercaseO,\n ]),\n hex: new Set([\n charCodes.dot,\n charCodes.uppercaseX,\n charCodes.underscore, // multiple separators are not allowed\n charCodes.lowercaseX,\n ]),\n};\n\nconst isAllowedNumericSeparatorSibling = {\n // 0 - 1\n bin: (ch: number) => ch === charCodes.digit0 || ch === charCodes.digit1,\n\n // 0 - 7\n oct: (ch: number) => ch >= charCodes.digit0 && ch <= charCodes.digit7,\n\n // 0 - 9\n dec: (ch: number) => ch >= charCodes.digit0 && ch <= charCodes.digit9,\n\n // 0 - 9, A - F, a - f,\n hex: (ch: number) =>\n (ch >= charCodes.digit0 && ch <= charCodes.digit9) ||\n (ch >= charCodes.uppercaseA && ch <= charCodes.uppercaseF) ||\n (ch >= charCodes.lowercaseA && ch <= charCodes.lowercaseF),\n};\n\nexport type StringContentsErrorHandlers = EscapedCharErrorHandlers & {\n unterminated(\n initialPos: number,\n initialLineStart: number,\n initialCurLine: number,\n ): void;\n};\n\nexport function readStringContents(\n type: \"single\" | \"double\" | \"template\",\n input: string,\n pos: number,\n lineStart: number,\n curLine: number,\n errors: StringContentsErrorHandlers,\n) {\n const initialPos = pos;\n const initialLineStart = lineStart;\n const initialCurLine = curLine;\n\n let out = \"\";\n let firstInvalidLoc = null;\n let chunkStart = pos;\n const { length } = input;\n for (;;) {\n if (pos >= length) {\n errors.unterminated(initialPos, initialLineStart, initialCurLine);\n out += input.slice(chunkStart, pos);\n break;\n }\n const ch = input.charCodeAt(pos);\n if (isStringEnd(type, ch, input, pos)) {\n out += input.slice(chunkStart, pos);\n break;\n }\n if (ch === charCodes.backslash) {\n out += input.slice(chunkStart, pos);\n const res = readEscapedChar(\n input,\n pos,\n lineStart,\n curLine,\n type === \"template\",\n errors,\n );\n if (res.ch === null && !firstInvalidLoc) {\n firstInvalidLoc = { pos, lineStart, curLine };\n } else {\n out += res.ch;\n }\n ({ pos, lineStart, curLine } = res);\n chunkStart = pos;\n } else if (\n ch === charCodes.lineSeparator ||\n ch === charCodes.paragraphSeparator\n ) {\n ++pos;\n ++curLine;\n lineStart = pos;\n } else if (ch === charCodes.lineFeed || ch === charCodes.carriageReturn) {\n if (type === \"template\") {\n out += input.slice(chunkStart, pos) + \"\\n\";\n ++pos;\n if (\n ch === charCodes.carriageReturn &&\n input.charCodeAt(pos) === charCodes.lineFeed\n ) {\n ++pos;\n }\n ++curLine;\n chunkStart = lineStart = pos;\n } else {\n errors.unterminated(initialPos, initialLineStart, initialCurLine);\n }\n } else {\n ++pos;\n }\n }\n return process.env.BABEL_8_BREAKING\n ? { pos, str: out, firstInvalidLoc, lineStart, curLine }\n : {\n pos,\n str: out,\n firstInvalidLoc,\n lineStart,\n curLine,\n containsInvalid: !!firstInvalidLoc,\n };\n}\n\nfunction isStringEnd(\n type: \"single\" | \"double\" | \"template\",\n ch: number,\n input: string,\n pos: number,\n) {\n if (type === \"template\") {\n return (\n ch === charCodes.graveAccent ||\n (ch === charCodes.dollarSign &&\n input.charCodeAt(pos + 1) === charCodes.leftCurlyBrace)\n );\n }\n return (\n ch === (type === \"double\" ? charCodes.quotationMark : charCodes.apostrophe)\n );\n}\n\ntype EscapedCharErrorHandlers = HexCharErrorHandlers &\n CodePointErrorHandlers & {\n strictNumericEscape(pos: number, lineStart: number, curLine: number): void;\n };\n\nfunction readEscapedChar(\n input: string,\n pos: number,\n lineStart: number,\n curLine: number,\n inTemplate: boolean,\n errors: EscapedCharErrorHandlers,\n) {\n const throwOnInvalid = !inTemplate;\n pos++; // skip '\\'\n\n const res = (ch: string | null) => ({ pos, ch, lineStart, curLine });\n\n const ch = input.charCodeAt(pos++);\n switch (ch) {\n case charCodes.lowercaseN:\n return res(\"\\n\");\n case charCodes.lowercaseR:\n return res(\"\\r\");\n case charCodes.lowercaseX: {\n let code;\n ({ code, pos } = readHexChar(\n input,\n pos,\n lineStart,\n curLine,\n 2,\n false,\n throwOnInvalid,\n errors,\n ));\n return res(code === null ? null : String.fromCharCode(code));\n }\n case charCodes.lowercaseU: {\n let code;\n ({ code, pos } = readCodePoint(\n input,\n pos,\n lineStart,\n curLine,\n throwOnInvalid,\n errors,\n ));\n return res(code === null ? null : String.fromCodePoint(code));\n }\n case charCodes.lowercaseT:\n return res(\"\\t\");\n case charCodes.lowercaseB:\n return res(\"\\b\");\n case charCodes.lowercaseV:\n return res(\"\\u000b\");\n case charCodes.lowercaseF:\n return res(\"\\f\");\n case charCodes.carriageReturn:\n if (input.charCodeAt(pos) === charCodes.lineFeed) {\n ++pos;\n }\n // fall through\n case charCodes.lineFeed:\n lineStart = pos;\n ++curLine;\n // fall through\n case charCodes.lineSeparator:\n case charCodes.paragraphSeparator:\n return res(\"\");\n case charCodes.digit8:\n case charCodes.digit9:\n if (inTemplate) {\n return res(null);\n } else {\n errors.strictNumericEscape(pos - 1, lineStart, curLine);\n }\n // fall through\n default:\n if (ch >= charCodes.digit0 && ch <= charCodes.digit7) {\n const startPos = pos - 1;\n const match = /^[0-7]+/.exec(input.slice(startPos, pos + 2));\n\n let octalStr = match[0];\n\n let octal = parseInt(octalStr, 8);\n if (octal > 255) {\n octalStr = octalStr.slice(0, -1);\n octal = parseInt(octalStr, 8);\n }\n pos += octalStr.length - 1;\n const next = input.charCodeAt(pos);\n if (\n octalStr !== \"0\" ||\n next === charCodes.digit8 ||\n next === charCodes.digit9\n ) {\n if (inTemplate) {\n return res(null);\n } else {\n errors.strictNumericEscape(startPos, lineStart, curLine);\n }\n }\n\n return res(String.fromCharCode(octal));\n }\n\n return res(String.fromCharCode(ch));\n }\n}\n\ntype HexCharErrorHandlers = IntErrorHandlers & {\n invalidEscapeSequence(pos: number, lineStart: number, curLine: number): void;\n};\n\n// Used to read character escape sequences ('\\x', '\\u').\nfunction readHexChar(\n input: string,\n pos: number,\n lineStart: number,\n curLine: number,\n len: number,\n forceLen: boolean,\n throwOnInvalid: boolean,\n errors: HexCharErrorHandlers,\n) {\n const initialPos = pos;\n let n;\n ({ n, pos } = readInt(\n input,\n pos,\n lineStart,\n curLine,\n 16,\n len,\n forceLen,\n false,\n errors,\n /* bailOnError */ !throwOnInvalid,\n ));\n if (n === null) {\n if (throwOnInvalid) {\n errors.invalidEscapeSequence(initialPos, lineStart, curLine);\n } else {\n pos = initialPos - 1;\n }\n }\n return { code: n, pos };\n}\n\nexport type IntErrorHandlers = {\n numericSeparatorInEscapeSequence(\n pos: number,\n lineStart: number,\n curLine: number,\n ): void;\n unexpectedNumericSeparator(\n pos: number,\n lineStart: number,\n curLine: number,\n ): void;\n // It can return \"true\" to indicate that the error was handled\n // and the int parsing should continue.\n invalidDigit(\n pos: number,\n lineStart: number,\n curLine: number,\n radix: number,\n ): boolean;\n};\n\nexport function readInt(\n input: string,\n pos: number,\n lineStart: number,\n curLine: number,\n radix: number,\n len: number | undefined,\n forceLen: boolean,\n allowNumSeparator: boolean | \"bail\",\n errors: IntErrorHandlers,\n bailOnError: boolean,\n) {\n const start = pos;\n const forbiddenSiblings =\n radix === 16\n ? forbiddenNumericSeparatorSiblings.hex\n : forbiddenNumericSeparatorSiblings.decBinOct;\n const isAllowedSibling =\n radix === 16\n ? isAllowedNumericSeparatorSibling.hex\n : radix === 10\n ? isAllowedNumericSeparatorSibling.dec\n : radix === 8\n ? isAllowedNumericSeparatorSibling.oct\n : isAllowedNumericSeparatorSibling.bin;\n\n let invalid = false;\n let total = 0;\n\n for (let i = 0, e = len == null ? Infinity : len; i < e; ++i) {\n const code = input.charCodeAt(pos);\n let val;\n\n if (code === charCodes.underscore && allowNumSeparator !== \"bail\") {\n const prev = input.charCodeAt(pos - 1);\n const next = input.charCodeAt(pos + 1);\n\n if (!allowNumSeparator) {\n if (bailOnError) return { n: null, pos };\n errors.numericSeparatorInEscapeSequence(pos, lineStart, curLine);\n } else if (\n Number.isNaN(next) ||\n !isAllowedSibling(next) ||\n forbiddenSiblings.has(prev) ||\n forbiddenSiblings.has(next)\n ) {\n if (bailOnError) return { n: null, pos };\n errors.unexpectedNumericSeparator(pos, lineStart, curLine);\n }\n\n // Ignore this _ character\n ++pos;\n continue;\n }\n\n if (code >= charCodes.lowercaseA) {\n val = code - charCodes.lowercaseA + charCodes.lineFeed;\n } else if (code >= charCodes.uppercaseA) {\n val = code - charCodes.uppercaseA + charCodes.lineFeed;\n } else if (charCodes.isDigit(code)) {\n val = code - charCodes.digit0; // 0-9\n } else {\n val = Infinity;\n }\n if (val >= radix) {\n // If we found a digit which is too big, errors.invalidDigit can return true to avoid\n // breaking the loop (this is used for error recovery).\n if (val <= 9 && bailOnError) {\n return { n: null, pos };\n } else if (\n val <= 9 &&\n errors.invalidDigit(pos, lineStart, curLine, radix)\n ) {\n val = 0;\n } else if (forceLen) {\n val = 0;\n invalid = true;\n } else {\n break;\n }\n }\n ++pos;\n total = total * radix + val;\n }\n if (pos === start || (len != null && pos - start !== len) || invalid) {\n return { n: null, pos };\n }\n\n return { n: total, pos };\n}\n\nexport type CodePointErrorHandlers = HexCharErrorHandlers & {\n invalidCodePoint(pos: number, lineStart: number, curLine: number): void;\n};\n\nexport function readCodePoint(\n input: string,\n pos: number,\n lineStart: number,\n curLine: number,\n throwOnInvalid: boolean,\n errors: CodePointErrorHandlers,\n) {\n const ch = input.charCodeAt(pos);\n let code;\n\n if (ch === charCodes.leftCurlyBrace) {\n ++pos;\n ({ code, pos } = readHexChar(\n input,\n pos,\n lineStart,\n curLine,\n input.indexOf(\"}\", pos) - pos,\n true,\n throwOnInvalid,\n errors,\n ));\n ++pos;\n if (code !== null && code > 0x10ffff) {\n if (throwOnInvalid) {\n errors.invalidCodePoint(pos, lineStart, curLine);\n } else {\n return { code: null, pos };\n }\n }\n } else {\n ({ code, pos } = readHexChar(\n input,\n pos,\n lineStart,\n curLine,\n 4,\n false,\n throwOnInvalid,\n errors,\n ));\n }\n return { code, pos };\n}\n","/*:: declare var invariant; */\n\nimport type { OptionsWithDefaults } from \"../options.ts\";\nimport { OptionFlags } from \"../options.ts\";\nimport {\n Position,\n SourceLocation,\n createPositionWithColumnOffset,\n} from \"../util/location.ts\";\nimport CommentsParser, { type CommentWhitespace } from \"../parser/comments.ts\";\nimport type * as N from \"../types.ts\";\nimport * as charCodes from \"charcodes\";\nimport { isIdentifierStart, isIdentifierChar } from \"../util/identifier.ts\";\nimport {\n tokenIsKeyword,\n tokenLabelName,\n tt,\n keywords as keywordTypes,\n type TokenType,\n} from \"./types.ts\";\nimport type { TokContext } from \"./context.ts\";\nimport {\n Errors,\n type ParseError,\n type ParseErrorConstructor,\n} from \"../parse-error.ts\";\nimport {\n lineBreakG,\n isNewLine,\n isWhitespace,\n skipWhiteSpace,\n skipWhiteSpaceInLine,\n} from \"../util/whitespace.ts\";\nimport State from \"./state.ts\";\nimport type { LookaheadState, DeferredStrictError } from \"./state.ts\";\nimport type { Undone } from \"../parser/node.ts\";\nimport type { Node } from \"../types.ts\";\n\nimport {\n readInt,\n readCodePoint,\n readStringContents,\n type IntErrorHandlers,\n type CodePointErrorHandlers,\n type StringContentsErrorHandlers,\n} from \"@babel/helper-string-parser\";\n\nimport type { Plugin } from \"../typings.ts\";\n\nfunction buildPosition(pos: number, lineStart: number, curLine: number) {\n return new Position(curLine, pos - lineStart, pos);\n}\n\nconst VALID_REGEX_FLAGS = new Set([\n charCodes.lowercaseG,\n charCodes.lowercaseM,\n charCodes.lowercaseS,\n charCodes.lowercaseI,\n charCodes.lowercaseY,\n charCodes.lowercaseU,\n charCodes.lowercaseD,\n charCodes.lowercaseV,\n]);\n\n// Object type used to represent tokens. Note that normally, tokens\n// simply exist as properties on the parser object. This is only\n// used for the onToken callback and the external tokenizer.\n\nexport class Token {\n constructor(state: State) {\n const startIndex = state.startIndex || 0;\n this.type = state.type;\n this.value = state.value;\n this.start = startIndex + state.start;\n this.end = startIndex + state.end;\n this.loc = new SourceLocation(state.startLoc, state.endLoc);\n }\n\n declare type: TokenType;\n declare value: any;\n declare start: number;\n declare end: number;\n declare loc: SourceLocation;\n}\n\n// ## Tokenizer\n\nexport default abstract class Tokenizer extends CommentsParser {\n isLookahead: boolean;\n\n // Token store.\n tokens: (Token | N.Comment)[] = [];\n\n constructor(options: OptionsWithDefaults, input: string) {\n super();\n this.state = new State();\n this.state.init(options);\n this.input = input;\n this.length = input.length;\n this.comments = [];\n this.isLookahead = false;\n }\n\n pushToken(token: Token | N.Comment) {\n // Pop out invalid tokens trapped by try-catch parsing.\n // Those parsing branches are mainly created by typescript and flow plugins.\n this.tokens.length = this.state.tokensLength;\n this.tokens.push(token);\n ++this.state.tokensLength;\n }\n\n // Move to the next token\n\n next(): void {\n this.checkKeywordEscapes();\n if (this.optionFlags & OptionFlags.Tokens) {\n this.pushToken(new Token(this.state));\n }\n\n this.state.lastTokEndLoc = this.state.endLoc;\n this.state.lastTokStartLoc = this.state.startLoc;\n this.nextToken();\n }\n\n eat(type: TokenType): boolean {\n if (this.match(type)) {\n this.next();\n return true;\n } else {\n return false;\n }\n }\n\n /**\n * Whether current token matches given type\n */\n match(type: TokenType): boolean {\n return this.state.type === type;\n }\n\n /**\n * Create a LookaheadState from current parser state\n */\n createLookaheadState(state: State): LookaheadState {\n return {\n pos: state.pos,\n value: null,\n type: state.type,\n start: state.start,\n end: state.end,\n context: [this.curContext()],\n inType: state.inType,\n startLoc: state.startLoc,\n lastTokEndLoc: state.lastTokEndLoc,\n curLine: state.curLine,\n lineStart: state.lineStart,\n curPosition: state.curPosition,\n };\n }\n\n /**\n * lookahead peeks the next token, skipping changes to token context and\n * comment stack. For performance it returns a limited LookaheadState\n * instead of full parser state.\n *\n * The { column, line } Loc info is not included in lookahead since such usage\n * is rare. Although it may return other location properties e.g. `curLine` and\n * `lineStart`, these properties are not listed in the LookaheadState interface\n * and thus the returned value is _NOT_ reliable.\n *\n * The tokenizer should make best efforts to avoid using any parser state\n * other than those defined in LookaheadState\n */\n lookahead(): LookaheadState {\n const old = this.state;\n // @ts-expect-error For performance we use a simplified tokenizer state structure\n this.state = this.createLookaheadState(old);\n\n this.isLookahead = true;\n this.nextToken();\n this.isLookahead = false;\n\n const curr = this.state;\n this.state = old;\n return curr;\n }\n\n nextTokenStart(): number {\n return this.nextTokenStartSince(this.state.pos);\n }\n\n nextTokenStartSince(pos: number): number {\n skipWhiteSpace.lastIndex = pos;\n return skipWhiteSpace.test(this.input) ? skipWhiteSpace.lastIndex : pos;\n }\n\n lookaheadCharCode(): number {\n return this.lookaheadCharCodeSince(this.state.pos);\n }\n\n lookaheadCharCodeSince(pos: number): number {\n return this.input.charCodeAt(this.nextTokenStartSince(pos));\n }\n\n /**\n * Similar to nextToken, but it will stop at line break when it is seen before the next token\n *\n * @returns {number} position of the next token start or line break, whichever is seen first.\n * @memberof Tokenizer\n */\n nextTokenInLineStart(): number {\n return this.nextTokenInLineStartSince(this.state.pos);\n }\n\n nextTokenInLineStartSince(pos: number): number {\n skipWhiteSpaceInLine.lastIndex = pos;\n return skipWhiteSpaceInLine.test(this.input)\n ? skipWhiteSpaceInLine.lastIndex\n : pos;\n }\n\n /**\n * Similar to lookaheadCharCode, but it will return the char code of line break if it is\n * seen before the next token\n *\n * @returns {number} char code of the next token start or line break, whichever is seen first.\n * @memberof Tokenizer\n */\n lookaheadInLineCharCode(): number {\n return this.input.charCodeAt(this.nextTokenInLineStart());\n }\n\n codePointAtPos(pos: number): number {\n // The implementation is based on\n // https://source.chromium.org/chromium/chromium/src/+/master:v8/src/builtins/builtins-string-gen.cc;l=1455;drc=221e331b49dfefadbc6fa40b0c68e6f97606d0b3;bpv=0;bpt=1\n // We reimplement `codePointAt` because `codePointAt` is a V8 builtin which is not inlined by TurboFan (as of M91)\n // since `input` is mostly ASCII, an inlined `charCodeAt` wins here\n let cp = this.input.charCodeAt(pos);\n if ((cp & 0xfc00) === 0xd800 && ++pos < this.input.length) {\n const trail = this.input.charCodeAt(pos);\n if ((trail & 0xfc00) === 0xdc00) {\n cp = 0x10000 + ((cp & 0x3ff) << 10) + (trail & 0x3ff);\n }\n }\n return cp;\n }\n\n // Toggle strict mode. Re-reads the next number or string to please\n // pedantic tests (`\"use strict\"; 010;` should fail).\n\n setStrict(strict: boolean): void {\n this.state.strict = strict;\n if (strict) {\n // Throw an error for any string decimal escape found before/immediately\n // after a \"use strict\" directive. Strict mode will be set at parse\n // time for any literals that occur after the next node of the strict\n // directive.\n this.state.strictErrors.forEach(([toParseError, at]) =>\n this.raise(toParseError, at),\n );\n this.state.strictErrors.clear();\n }\n }\n\n curContext(): TokContext {\n return this.state.context[this.state.context.length - 1];\n }\n\n // Read a single token, updating the parser object's token-related properties.\n nextToken(): void {\n this.skipSpace();\n this.state.start = this.state.pos;\n if (!this.isLookahead) this.state.startLoc = this.state.curPosition();\n if (this.state.pos >= this.length) {\n this.finishToken(tt.eof);\n return;\n }\n\n this.getTokenFromCode(this.codePointAtPos(this.state.pos));\n }\n\n // Skips a block comment, whose end is marked by commentEnd.\n // *-/ is used by the Flow plugin, when parsing block comments nested\n // inside Flow comments.\n skipBlockComment(commentEnd: \"*/\" | \"*-/\"): N.CommentBlock | undefined {\n let startLoc;\n if (!this.isLookahead) startLoc = this.state.curPosition();\n const start = this.state.pos;\n const end = this.input.indexOf(commentEnd, start + 2);\n if (end === -1) {\n // We have to call this again here because startLoc may not be set...\n // This seems to be for performance reasons:\n // https://github.com/babel/babel/commit/acf2a10899f696a8aaf34df78bf9725b5ea7f2da\n throw this.raise(Errors.UnterminatedComment, this.state.curPosition());\n }\n\n this.state.pos = end + commentEnd.length;\n lineBreakG.lastIndex = start + 2;\n while (lineBreakG.test(this.input) && lineBreakG.lastIndex <= end) {\n ++this.state.curLine;\n this.state.lineStart = lineBreakG.lastIndex;\n }\n\n // If we are doing a lookahead right now we need to advance the position (above code)\n // but we do not want to push the comment to the state.\n if (this.isLookahead) return;\n /*:: invariant(startLoc) */\n\n const comment: N.CommentBlock = {\n type: \"CommentBlock\",\n value: this.input.slice(start + 2, end),\n start: this.sourceToOffsetPos(start),\n end: this.sourceToOffsetPos(end + commentEnd.length),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n loc: new SourceLocation(startLoc!, this.state.curPosition()),\n };\n if (this.optionFlags & OptionFlags.Tokens) this.pushToken(comment);\n return comment;\n }\n\n skipLineComment(startSkip: number): N.CommentLine | undefined {\n const start = this.state.pos;\n let startLoc;\n if (!this.isLookahead) startLoc = this.state.curPosition();\n let ch = this.input.charCodeAt((this.state.pos += startSkip));\n if (this.state.pos < this.length) {\n while (!isNewLine(ch) && ++this.state.pos < this.length) {\n ch = this.input.charCodeAt(this.state.pos);\n }\n }\n\n // If we are doing a lookahead right now we need to advance the position (above code)\n // but we do not want to push the comment to the state.\n if (this.isLookahead) return;\n\n const end = this.state.pos;\n const value = this.input.slice(start + startSkip, end);\n\n const comment: N.CommentLine = {\n type: \"CommentLine\",\n value,\n start: this.sourceToOffsetPos(start),\n end: this.sourceToOffsetPos(end),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n loc: new SourceLocation(startLoc!, this.state.curPosition()),\n };\n if (this.optionFlags & OptionFlags.Tokens) this.pushToken(comment);\n return comment;\n }\n\n // Called at the start of the parse and after every token. Skips\n // whitespace and comments, and.\n\n skipSpace(): void {\n const spaceStart = this.state.pos;\n const comments: N.Comment[] | null =\n this.optionFlags & OptionFlags.AttachComment ? [] : null;\n loop: while (this.state.pos < this.length) {\n const ch = this.input.charCodeAt(this.state.pos);\n switch (ch) {\n case charCodes.space:\n case charCodes.nonBreakingSpace:\n case charCodes.tab:\n ++this.state.pos;\n break;\n case charCodes.carriageReturn:\n if (\n this.input.charCodeAt(this.state.pos + 1) === charCodes.lineFeed\n ) {\n ++this.state.pos;\n }\n // fall through\n case charCodes.lineFeed:\n case charCodes.lineSeparator:\n case charCodes.paragraphSeparator:\n ++this.state.pos;\n ++this.state.curLine;\n this.state.lineStart = this.state.pos;\n break;\n\n case charCodes.slash:\n switch (this.input.charCodeAt(this.state.pos + 1)) {\n case charCodes.asterisk: {\n const comment = this.skipBlockComment(\"*/\");\n if (comment !== undefined) {\n this.addComment(comment);\n comments?.push(comment);\n }\n break;\n }\n\n case charCodes.slash: {\n const comment = this.skipLineComment(2);\n if (comment !== undefined) {\n this.addComment(comment);\n comments?.push(comment);\n }\n break;\n }\n\n default:\n break loop;\n }\n break;\n\n default:\n if (isWhitespace(ch)) {\n ++this.state.pos;\n } else if (\n ch === charCodes.dash &&\n !this.inModule &&\n this.optionFlags & OptionFlags.AnnexB\n ) {\n const pos = this.state.pos;\n if (\n this.input.charCodeAt(pos + 1) === charCodes.dash &&\n this.input.charCodeAt(pos + 2) === charCodes.greaterThan &&\n (spaceStart === 0 || this.state.lineStart > spaceStart)\n ) {\n // A `-->` line comment\n const comment = this.skipLineComment(3);\n if (comment !== undefined) {\n this.addComment(comment);\n comments?.push(comment);\n }\n } else {\n break loop;\n }\n } else if (\n ch === charCodes.lessThan &&\n !this.inModule &&\n this.optionFlags & OptionFlags.AnnexB\n ) {\n const pos = this.state.pos;\n if (\n this.input.charCodeAt(pos + 1) === charCodes.exclamationMark &&\n this.input.charCodeAt(pos + 2) === charCodes.dash &&\n this.input.charCodeAt(pos + 3) === charCodes.dash\n ) {\n // `|$))/,Za=Aa("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",Ma).replace("tag",Ra).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),La=Aa(Pa).replace("hr",xa).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ra).getRegex(),$a={blockquote:Aa(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",La).getRegex(),code:/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,def:Na,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:xa,html:Za,lheading:Ia,list:za,newline:/^(?:[ \t]*(?:\n|$))+/,paragraph:La,table:ka,text:/^[^\n]+/},qa=Aa("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",xa).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ra).getRegex(),Ua=pn(pn({},$a),{},{lheading:Ta,table:qa,paragraph:Aa(Pa).replace("hr",xa).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",qa).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ra).getRegex()}),Ha=pn(pn({},$a),{},{html:Aa("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",Ma).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:ka,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Aa(Pa).replace("hr",xa).replace("heading"," *#{1,6} *[^\n]").replace("lheading",Ia).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),Va=/^( {2,}|\\)\n(?!\s*$)/,Wa=/(?:[!-\/:-@\[-`\{-~\xA1-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2010-\u2027\u2030-\u205E\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3001-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/,Ka=/(?:[\t-\r -\/:-@\[-`\{-~\xA0-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u1680\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2000-\u200A\u2010-\u2029\u202F-\u205F\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFEFF\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/,Ja=/(?:[\0-\x08\x0E-\x1F0-9A-Za-z\x7F-\x9F\xAA\xAD\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376-\u037D\u037F-\u0383\u0386\u0388-\u03F5\u03F7-\u0481\u0483-\u0559\u0560-\u0588\u058B\u058C\u0590-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7-\u05F2\u05F5-\u0605\u0610-\u061A\u061C\u0620-\u0669\u066E-\u06D3\u06D5-\u06DD\u06DF-\u06E8\u06EA-\u06FC\u06FF\u070E-\u07F5\u07FA-\u07FD\u0800-\u082F\u083F-\u085D\u085F-\u0887\u0889-\u0963\u0966-\u096F\u0971-\u09F1\u09F4-\u09F9\u09FC\u09FE-\u0A75\u0A77-\u0AEF\u0AF2-\u0B6F\u0B71-\u0BF2\u0BFB-\u0C76\u0C78-\u0C7E\u0C80-\u0C83\u0C85-\u0D4E\u0D50-\u0D78\u0D7A-\u0DF3\u0DF5-\u0E3E\u0E40-\u0E4E\u0E50-\u0E59\u0E5C-\u0F00\u0F18\u0F19\u0F20-\u0F33\u0F35\u0F37\u0F39\u0F3E-\u0F84\u0F86-\u0FBD\u0FC6\u0FCD\u0FDB-\u1049\u1050-\u109D\u10A0-\u10FA\u10FC-\u135F\u1369-\u138F\u139A-\u13FF\u1401-\u166C\u166F-\u167F\u1681-\u169A\u169D-\u16EA\u16EE-\u1734\u1737-\u17D3\u17D7\u17DC-\u17FF\u180B-\u193F\u1941-\u1943\u1946-\u19DD\u1A00-\u1A1D\u1A20-\u1A9F\u1AA7\u1AAE-\u1B4D\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BFB\u1C00-\u1C3A\u1C40-\u1C7D\u1C80-\u1CBF\u1CC8-\u1CD2\u1CD4-\u1FBC\u1FBE\u1FC2-\u1FCC\u1FD0-\u1FDC\u1FE0-\u1FEC\u1FF0-\u1FFC\u1FFF\u200B-\u200F\u202A-\u202E\u2060-\u2079\u207F-\u2089\u208F-\u209F\u20C2-\u20FF\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u218C-\u218F\u242A-\u243F\u244B-\u249B\u24EA-\u24FF\u2776-\u2793\u2B74\u2B75\u2C00-\u2CE4\u2CEB-\u2CF8\u2CFD\u2D00-\u2D6F\u2D71-\u2DFF\u2E2F\u2E5E-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3040-\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u318F\u3192-\u3195\u31A0-\u31BF\u31E6-\u31EE\u31F0-\u31FF\u321F-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48F\uA4C7-\uA4FD\uA500-\uA60C\uA610-\uA672\uA674-\uA67D\uA67F-\uA6F1\uA6F8-\uA6FF\uA717-\uA71F\uA722-\uA788\uA78B-\uA827\uA82C-\uA835\uA83A-\uA873\uA878-\uA8CD\uA8D0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA95E\uA960-\uA9C0\uA9CE-\uA9DD\uA9E0-\uAA5B\uAA60-\uAA76\uAA7A-\uAADD\uAAE0-\uAAEF\uAAF2-\uAB5A\uAB5C-\uAB69\uAB6C-\uABEA\uABEC-\uD7FF\uE000-\uFB28\uFB2A-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDD0-\uFDFB\uFE00-\uFE0F\uFE1A-\uFE2F\uFE53\uFE67\uFE6C-\uFEFE\uFF00\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFDF\uFFE7\uFFEF-\uFFFB\uFFFE\uFFFF]|\uD800[\uDC00-\uDCFF\uDD03-\uDD36\uDD40-\uDD78\uDD8A\uDD8B\uDD8F\uDD9D-\uDD9F\uDDA1-\uDDCF\uDDFD-\uDF9E\uDFA0-\uDFCF\uDFD1-\uDFFF]|\uD801[\uDC00-\uDD6E\uDD70-\uDFFF]|\uD802[\uDC00-\uDC56\uDC58-\uDC76\uDC79-\uDD1E\uDD20-\uDD3E\uDD40-\uDE4F\uDE59-\uDE7E\uDE80-\uDEC7\uDEC9-\uDEEF\uDEF7-\uDF38\uDF40-\uDF98\uDF9D-\uDFFF]|\uD803[\uDC00-\uDD6D\uDD6F-\uDD8D\uDD90-\uDEAC\uDEAE-\uDECF\uDED9-\uDF54\uDF5A-\uDF85\uDF8A-\uDFFF]|\uD804[\uDC00-\uDC46\uDC4E-\uDCBA\uDCBD\uDCC2-\uDD3F\uDD44-\uDD73\uDD76-\uDDC4\uDDC9-\uDDCC\uDDCE-\uDDDA\uDDDC\uDDE0-\uDE37\uDE3E-\uDEA8\uDEAA-\uDFD3\uDFD6\uDFD9-\uDFFF]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5C\uDC5E-\uDCC5\uDCC7-\uDDC0\uDDD8-\uDE40\uDE44-\uDE5F\uDE6D-\uDEB8\uDEBA-\uDF3B\uDF40-\uDFFF]|\uD806[\uDC00-\uDC3A\uDC3C-\uDD43\uDD47-\uDDE1\uDDE3-\uDE3E\uDE47-\uDE99\uDE9D\uDEA3-\uDEFF\uDF0A-\uDFE0\uDFE2-\uDFFF]|\uD807[\uDC00-\uDC40\uDC46-\uDC6F\uDC72-\uDEF6\uDEF9-\uDF42\uDF50-\uDFD4\uDFF2-\uDFFE]|[\uD808\uD80A\uD80C-\uD819\uD81C-\uD82E\uD830-\uD832\uD837\uD83F-\uDBFF][\uDC00-\uDFFF]|\uD809[\uDC00-\uDC6F\uDC75-\uDFFF]|\uD80B[\uDC00-\uDFF0\uDFF3-\uDFFF]|\uD81A[\uDC00-\uDE6D\uDE70-\uDEF4\uDEF6-\uDF36\uDF40-\uDF43\uDF46-\uDFFF]|\uD81B[\uDC00-\uDD6C\uDD70-\uDE96\uDE9B-\uDFE1\uDFE3-\uDFFF]|\uD82F[\uDC00-\uDC9B\uDC9D\uDC9E\uDCA0-\uDFFF]|\uD833[\uDCF0-\uDCF9\uDCFD-\uDCFF\uDEB4-\uDEB9\uDED1-\uDEDF\uDEF1-\uDF4F\uDFC4-\uDFFF]|\uD834[\uDCF6-\uDCFF\uDD27\uDD28\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDDEB-\uDDFF\uDE42-\uDE44\uDE46-\uDEFF\uDF57-\uDFFF]|\uD835[\uDC00-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE8C-\uDFFF]|\uD838[\uDC00-\uDD4E\uDD50-\uDEFE\uDF00-\uDFFF]|\uD839[\uDC00-\uDDFE\uDE00-\uDFFF]|\uD83A[\uDC00-\uDD5D\uDD60-\uDFFF]|\uD83B[\uDC00-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDD2D\uDD2F-\uDEEF\uDEF2-\uDFFF]|\uD83C[\uDC2C-\uDC2F\uDC94-\uDC9F\uDCAF\uDCB0\uDCC0\uDCD0\uDCF6-\uDD0C\uDDAE-\uDDE5\uDE03-\uDE0F\uDE3C-\uDE3F\uDE49-\uDE4F\uDE52-\uDE5F\uDE66-\uDEFF]|\uD83D[\uDED9-\uDEDB\uDEED-\uDEEF\uDEFD-\uDEFF\uDFDA-\uDFDF\uDFEC-\uDFEF\uDFF1-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE\uDCAF\uDCBC-\uDCBF\uDCC2-\uDCCF\uDCD9-\uDCFF\uDE58-\uDE5F\uDE6E\uDE6F\uDE7D-\uDE7F\uDE8B-\uDE8D\uDEC7\uDEC9-\uDECC\uDEDD\uDEDE\uDEEB-\uDEEE\uDEF9-\uDEFF\uDF93\uDFF0-\uDFF9\uDFFB-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/,Qa=Aa(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Ka).getRegex(),Ga=/(?!~)(?:[!-\/:-@\[-`\{-~\xA1-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2010-\u2027\u2030-\u205E\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3001-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/,Ya=Aa(/link|precode-code|html/,"g").replace("link",Cn(/\[(?:[^\[\]`]|(`+)[^`]+\1(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/,{a:1})).replace("precode-",wa?"(?]*?>/).getRegex(),Xa=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,ei=Aa(Xa,"u").replace(/punct/g,Wa).getRegex(),ti=Aa(Xa,"u").replace(/punct/g,Ga).getRegex(),ni="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",ri=Aa(ni,"gu").replace(/notPunctSpace/g,Ja).replace(/punctSpace/g,Ka).replace(/punct/g,Wa).getRegex(),ui=Aa(ni,"gu").replace(/notPunctSpace/g,/(?:(?:[\0-\x08\x0E-\x1F0-9A-Za-z\x7F-\x9F\xAA\xAD\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376-\u037D\u037F-\u0383\u0386\u0388-\u03F5\u03F7-\u0481\u0483-\u0559\u0560-\u0588\u058B\u058C\u0590-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7-\u05F2\u05F5-\u0605\u0610-\u061A\u061C\u0620-\u0669\u066E-\u06D3\u06D5-\u06DD\u06DF-\u06E8\u06EA-\u06FC\u06FF\u070E-\u07F5\u07FA-\u07FD\u0800-\u082F\u083F-\u085D\u085F-\u0887\u0889-\u0963\u0966-\u096F\u0971-\u09F1\u09F4-\u09F9\u09FC\u09FE-\u0A75\u0A77-\u0AEF\u0AF2-\u0B6F\u0B71-\u0BF2\u0BFB-\u0C76\u0C78-\u0C7E\u0C80-\u0C83\u0C85-\u0D4E\u0D50-\u0D78\u0D7A-\u0DF3\u0DF5-\u0E3E\u0E40-\u0E4E\u0E50-\u0E59\u0E5C-\u0F00\u0F18\u0F19\u0F20-\u0F33\u0F35\u0F37\u0F39\u0F3E-\u0F84\u0F86-\u0FBD\u0FC6\u0FCD\u0FDB-\u1049\u1050-\u109D\u10A0-\u10FA\u10FC-\u135F\u1369-\u138F\u139A-\u13FF\u1401-\u166C\u166F-\u167F\u1681-\u169A\u169D-\u16EA\u16EE-\u1734\u1737-\u17D3\u17D7\u17DC-\u17FF\u180B-\u193F\u1941-\u1943\u1946-\u19DD\u1A00-\u1A1D\u1A20-\u1A9F\u1AA7\u1AAE-\u1B4D\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BFB\u1C00-\u1C3A\u1C40-\u1C7D\u1C80-\u1CBF\u1CC8-\u1CD2\u1CD4-\u1FBC\u1FBE\u1FC2-\u1FCC\u1FD0-\u1FDC\u1FE0-\u1FEC\u1FF0-\u1FFC\u1FFF\u200B-\u200F\u202A-\u202E\u2060-\u2079\u207F-\u2089\u208F-\u209F\u20C2-\u20FF\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u218C-\u218F\u242A-\u243F\u244B-\u249B\u24EA-\u24FF\u2776-\u2793\u2B74\u2B75\u2C00-\u2CE4\u2CEB-\u2CF8\u2CFD\u2D00-\u2D6F\u2D71-\u2DFF\u2E2F\u2E5E-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3040-\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u318F\u3192-\u3195\u31A0-\u31BF\u31E6-\u31EE\u31F0-\u31FF\u321F-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48F\uA4C7-\uA4FD\uA500-\uA60C\uA610-\uA672\uA674-\uA67D\uA67F-\uA6F1\uA6F8-\uA6FF\uA717-\uA71F\uA722-\uA788\uA78B-\uA827\uA82C-\uA835\uA83A-\uA873\uA878-\uA8CD\uA8D0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA95E\uA960-\uA9C0\uA9CE-\uA9DD\uA9E0-\uAA5B\uAA60-\uAA76\uAA7A-\uAADD\uAAE0-\uAAEF\uAAF2-\uAB5A\uAB5C-\uAB69\uAB6C-\uABEA\uABEC-\uD7FF\uE000-\uFB28\uFB2A-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDD0-\uFDFB\uFE00-\uFE0F\uFE1A-\uFE2F\uFE53\uFE67\uFE6C-\uFEFE\uFF00\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFDF\uFFE7\uFFEF-\uFFFB\uFFFE\uFFFF]|\uD800[\uDC00-\uDCFF\uDD03-\uDD36\uDD40-\uDD78\uDD8A\uDD8B\uDD8F\uDD9D-\uDD9F\uDDA1-\uDDCF\uDDFD-\uDF9E\uDFA0-\uDFCF\uDFD1-\uDFFF]|\uD801[\uDC00-\uDD6E\uDD70-\uDFFF]|\uD802[\uDC00-\uDC56\uDC58-\uDC76\uDC79-\uDD1E\uDD20-\uDD3E\uDD40-\uDE4F\uDE59-\uDE7E\uDE80-\uDEC7\uDEC9-\uDEEF\uDEF7-\uDF38\uDF40-\uDF98\uDF9D-\uDFFF]|\uD803[\uDC00-\uDD6D\uDD6F-\uDD8D\uDD90-\uDEAC\uDEAE-\uDECF\uDED9-\uDF54\uDF5A-\uDF85\uDF8A-\uDFFF]|\uD804[\uDC00-\uDC46\uDC4E-\uDCBA\uDCBD\uDCC2-\uDD3F\uDD44-\uDD73\uDD76-\uDDC4\uDDC9-\uDDCC\uDDCE-\uDDDA\uDDDC\uDDE0-\uDE37\uDE3E-\uDEA8\uDEAA-\uDFD3\uDFD6\uDFD9-\uDFFF]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5C\uDC5E-\uDCC5\uDCC7-\uDDC0\uDDD8-\uDE40\uDE44-\uDE5F\uDE6D-\uDEB8\uDEBA-\uDF3B\uDF40-\uDFFF]|\uD806[\uDC00-\uDC3A\uDC3C-\uDD43\uDD47-\uDDE1\uDDE3-\uDE3E\uDE47-\uDE99\uDE9D\uDEA3-\uDEFF\uDF0A-\uDFE0\uDFE2-\uDFFF]|\uD807[\uDC00-\uDC40\uDC46-\uDC6F\uDC72-\uDEF6\uDEF9-\uDF42\uDF50-\uDFD4\uDFF2-\uDFFE]|[\uD808\uD80A\uD80C-\uD819\uD81C-\uD82E\uD830-\uD832\uD837\uD83F-\uDBFF][\uDC00-\uDFFF]|\uD809[\uDC00-\uDC6F\uDC75-\uDFFF]|\uD80B[\uDC00-\uDFF0\uDFF3-\uDFFF]|\uD81A[\uDC00-\uDE6D\uDE70-\uDEF4\uDEF6-\uDF36\uDF40-\uDF43\uDF46-\uDFFF]|\uD81B[\uDC00-\uDD6C\uDD70-\uDE96\uDE9B-\uDFE1\uDFE3-\uDFFF]|\uD82F[\uDC00-\uDC9B\uDC9D\uDC9E\uDCA0-\uDFFF]|\uD833[\uDCF0-\uDCF9\uDCFD-\uDCFF\uDEB4-\uDEB9\uDED1-\uDEDF\uDEF1-\uDF4F\uDFC4-\uDFFF]|\uD834[\uDCF6-\uDCFF\uDD27\uDD28\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDDEB-\uDDFF\uDE42-\uDE44\uDE46-\uDEFF\uDF57-\uDFFF]|\uD835[\uDC00-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE8C-\uDFFF]|\uD838[\uDC00-\uDD4E\uDD50-\uDEFE\uDF00-\uDFFF]|\uD839[\uDC00-\uDDFE\uDE00-\uDFFF]|\uD83A[\uDC00-\uDD5D\uDD60-\uDFFF]|\uD83B[\uDC00-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDD2D\uDD2F-\uDEEF\uDEF2-\uDFFF]|\uD83C[\uDC2C-\uDC2F\uDC94-\uDC9F\uDCAF\uDCB0\uDCC0\uDCD0\uDCF6-\uDD0C\uDDAE-\uDDE5\uDE03-\uDE0F\uDE3C-\uDE3F\uDE49-\uDE4F\uDE52-\uDE5F\uDE66-\uDEFF]|\uD83D[\uDED9-\uDEDB\uDEED-\uDEEF\uDEFD-\uDEFF\uDFDA-\uDFDF\uDFEC-\uDFEF\uDFF1-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE\uDCAF\uDCBC-\uDCBF\uDCC2-\uDCCF\uDCD9-\uDCFF\uDE58-\uDE5F\uDE6E\uDE6F\uDE7D-\uDE7F\uDE8B-\uDE8D\uDEC7\uDEC9-\uDECC\uDEDD\uDEDE\uDEEB-\uDEEE\uDEF9-\uDEFF\uDF93\uDFF0-\uDFF9\uDFFB-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])|~)/).replace(/punctSpace/g,/(?!~)(?:[\t-\r -\/:-@\[-`\{-~\xA0-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u1680\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2000-\u200A\u2010-\u2029\u202F-\u205F\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFEFF\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/).replace(/punct/g,Ga).getRegex(),ai=Aa("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Ja).replace(/punctSpace/g,Ka).replace(/punct/g,Wa).getRegex(),ii=Aa(/\\(punct)/,"gu").replace(/punct/g,Wa).getRegex(),oi=Aa(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),si=Aa(Ma).replace("(?:--\x3e|$)","--\x3e").getRegex(),ci=Aa("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",si).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),li=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,fi=Aa(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",li).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),di=Aa(/^!?\[(label)\]\[(ref)\]/).replace("label",li).replace("ref",ja).getRegex(),pi=Aa(/^!?\[(ref)\](?:\[\])?/).replace("ref",ja).getRegex(),hi=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,vi={_backpedal:ka,anyPunctuation:ii,autolink:oi,blockSkip:Ya,br:Va,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:ka,emStrongLDelim:ei,emStrongRDelimAst:ri,emStrongRDelimUnd:ai,escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,link:fi,nolink:pi,punctuation:Qa,reflink:di,reflinkSearch:Aa("reflink|nolink(?!\\()","g").replace("reflink",di).replace("nolink",pi).getRegex(),tag:ci,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},_i=function(e){return Ei[e]};function bi(e,t){if(t){if(Sa.escapeTest.test(e))return e.replace(Sa.escapeReplace,_i)}else if(Sa.escapeTestNoEncode.test(e))return e.replace(Sa.escapeReplaceNoEncode,_i);return e}function Ci(e){try{e=encodeURI(e).replace(Sa.percentDecode,"%")}catch(e){return null}return e}function ki(e,t){var n,r=e.replace(Sa.findPipe,function(e,t,n){for(var r=!1,u=t;--u>=0&&"\\"===n[u];)r=!r;return r?"|":" |"}).split(Sa.splitPipe),u=0;if(r[0].trim()||r.shift(),r.length>0&&!(null!==(n=r.at(-1))&&void 0!==n&&n.trim())&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length0)return{type:"space",raw:t[0]}}},{key:"code",value:function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:Ai(n,"\n")}}}},{key:"fences",value:function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=function(e,t,n){var r=e.match(n.other.indentCodeCompensation);if(null===r)return t;var u=r[1];return t.split("\n").map(function(e){var t=e.match(n.other.beginningSpace);return null===t?e:yn(t,1)[0].length>=u.length?e.slice(u.length):e}).join("\n")}(n,t[3]||"",this.rules);return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:r}}}},{key:"heading",value:function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(this.rules.other.endingHash.test(n)){var r=Ai(n,"#");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}},{key:"hr",value:function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:Ai(t[0],"\n")}}},{key:"blockquote",value:function(e){var t=this.rules.block.blockquote.exec(e);if(t){for(var n=Ai(t[0],"\n").split("\n"),r="",u="",a=[];n.length>0;){var i=!1,o=[],s=void 0;for(s=0;s1,a={type:"list",raw:"",ordered:u,start:u?+r.slice(0,-1):"",loose:!1,items:[]};r=u?"\\d{1,9}\\".concat(r.slice(-1)):"\\".concat(r),this.options.pedantic&&(r=u?r:"[*+-]");for(var i=this.rules.other.listItemRegex(r),o=!1;e;){var s=!1,c="",l="";if(!(n=i.exec(e))||this.rules.block.hr.test(e))break;c=n[0],e=e.substring(c.length);var f=n[2].split("\n",1)[0].replace(this.rules.other.listReplaceTabs,function(e){return" ".repeat(3*e.length)}),d=e.split("\n",1)[0],p=!f.trim(),h=0;if(this.options.pedantic?(h=2,l=f.trimStart()):p?h=n[1].length+1:(h=(h=n[2].search(this.rules.other.nonSpaceChar))>4?1:h,l=f.slice(h),h+=n[1].length),p&&this.rules.other.blankLine.test(d)&&(c+=d+"\n",e=e.substring(d.length+1),s=!0),!s)for(var v=this.rules.other.nextBulletRegex(h),m=this.rules.other.hrRegex(h),D=this.rules.other.fencesBeginRegex(h),y=this.rules.other.headingBeginRegex(h),g=this.rules.other.htmlBeginRegex(h);e;){var F=e.split("\n",1)[0],E=void 0;if(d=F,E=this.options.pedantic?d=d.replace(this.rules.other.listReplaceNesting," "):d.replace(this.rules.other.tabCharGlobal," "),D.test(d)||y.test(d)||g.test(d)||v.test(d)||m.test(d))break;if(E.search(this.rules.other.nonSpaceChar)>=h||!d.trim())l+="\n"+E.slice(h);else{if(p||f.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||D.test(f)||y.test(f)||m.test(f))break;l+="\n"+d}!p&&!d.trim()&&(p=!0),c+=F+"\n",e=e.substring(F.length+1),f=E.slice(h)}a.loose||(o?a.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0));var _=null,b=void 0;this.options.gfm&&(_=this.rules.other.listIsTask.exec(l))&&(b="[ ] "!==_[0],l=l.replace(this.rules.other.listReplaceTask,"")),a.items.push({type:"list_item",raw:c,task:!!_,checked:b,loose:!1,text:l,tokens:[]}),a.raw+=c}var C=a.items.at(-1);if(!C)return;C.raw=C.raw.trimEnd(),C.text=C.text.trimEnd(),a.raw=a.raw.trimEnd();for(var k=0;k0&&A.some(function(e){return t.rules.other.anyLine.test(e.raw)});a.loose=w}if(a.loose)for(var S=0;S0?-2:-1}(t[2],"()");if(-2===u)return;if(u>-1){var a=(0===t[0].indexOf("!")?5:4)+t[1].length+u;t[2]=t[2].substring(0,u),t[0]=t[0].substring(0,a).trim(),t[3]=""}}var i=t[2],o="";if(this.options.pedantic){var s=this.rules.other.pedanticHrefTitle.exec(i);s&&(i=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(i=this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?i.slice(1):i.slice(1,-1)),wi(t,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}},{key:"reflink",value:function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!r){var u=n[0].charAt(0);return{type:"text",raw:u,text:u}}return wi(n,r,n[0],this.lexer,this.rules)}}},{key:"emStrong",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!r[1]&&!r[2]||!n||this.rules.inline.punctuation.exec(n))){var u,a,i=gn(r[0]).length-1,o=i,s=0,c="*"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+i);null!=(r=c.exec(t));)if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(a=gn(u).length,r[3]||r[4])o+=a;else if(!((r[5]||r[6])&&i%3)||(i+a)%3){if(!((o-=a)>0)){a=Math.min(a,a+o+s);var l=gn(r[0])[0].length,f=e.slice(0,i+r.index+l+a);if(Math.min(i,a)%2){var d=f.slice(1,-1);return{type:"em",raw:f,text:d,tokens:this.lexer.inlineTokens(d)}}var p=f.slice(2,-2);return{type:"strong",raw:f,text:p,tokens:this.lexer.inlineTokens(p)}}}else s+=a}}},{key:"codespan",value:function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(this.rules.other.newLineCharGlobal," "),r=this.rules.other.nonSpaceChar.test(n),u=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&u&&(n=n.substring(1,n.length-1)),{type:"codespan",raw:t[0],text:n}}}},{key:"br",value:function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}},{key:"del",value:function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}},{key:"autolink",value:function(e){var t,n,r=this.rules.inline.autolink.exec(e);if(r)return n="@"===r[2]?"mailto:"+(t=r[1]):t=r[1],{type:"link",raw:r[0],text:t,href:n,tokens:[{type:"text",raw:t,text:t}]}}},{key:"url",value:function(e){var t;if(t=this.rules.inline.url.exec(e)){var n,r;if("@"===t[2])r="mailto:"+(n=t[0]);else{var u;do{var a,i;u=t[0],t[0]=null!==(a=null===(i=this.rules.inline._backpedal.exec(t[0]))||void 0===i?void 0:i[0])&&void 0!==a?a:""}while(u!==t[0]);n=t[0],r="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}}},{key:"inlineText",value:function(e){var t=this.rules.inline.text.exec(e);if(t){var n=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:n}}}}]),xi=function(){function e(t){tn(this,e),on(this,"tokens",void 0),on(this,"options",void 0),on(this,"state",void 0),on(this,"tokenizer",void 0),on(this,"inlineQueue",void 0),this.tokens=[],this.tokens.links=Object.create(null),this.options=t||ba,this.options.tokenizer=this.options.tokenizer||new Si,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var n={other:Sa,block:gi.normal,inline:Fi.normal};this.options.pedantic?(n.block=gi.pedantic,n.inline=Fi.pedantic):this.options.gfm&&(n.block=gi.gfm,this.options.breaks?n.inline=Fi.breaks:n.inline=Fi.gfm),this.tokenizer.rules=n}return un(e,[{key:"lex",value:function(e){e=e.replace(Sa.carriageReturn,"\n"),this.blockTokens(e,this.tokens);for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:[],u=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=function(){var t,a,i;if(null!==(t=n.options.extensions)&&void 0!==t&&null!==(t=t.block)&&void 0!==t&&t.some(function(t){return!!(i=t.call({lexer:n},e,r))&&(e=e.substring(i.raw.length),r.push(i),!0)}))return 0;if(i=n.tokenizer.space(e)){e=e.substring(i.raw.length);var o=r.at(-1);return 1===i.raw.length&&void 0!==o?o.raw+="\n":r.push(i),0}if(i=n.tokenizer.code(e)){e=e.substring(i.raw.length);var s=r.at(-1);return"paragraph"===(null==s?void 0:s.type)||"text"===(null==s?void 0:s.type)?(s.raw+=(s.raw.endsWith("\n")?"":"\n")+i.raw,s.text+="\n"+i.text,n.inlineQueue.at(-1).src=s.text):r.push(i),0}if(i=n.tokenizer.fences(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.heading(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.hr(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.blockquote(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.list(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.html(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.def(e)){e=e.substring(i.raw.length);var c=r.at(-1);return"paragraph"===(null==c?void 0:c.type)||"text"===(null==c?void 0:c.type)?(c.raw+=(c.raw.endsWith("\n")?"":"\n")+i.raw,c.text+="\n"+i.raw,n.inlineQueue.at(-1).src=c.text):n.tokens.links[i.tag]||(n.tokens.links[i.tag]={href:i.href,title:i.title},r.push(i)),0}if(i=n.tokenizer.table(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.lheading(e))return e=e.substring(i.raw.length),r.push(i),0;var l=e;if(null!==(a=n.options.extensions)&&void 0!==a&&a.startBlock){var f,d=1/0,p=e.slice(1);n.options.extensions.startBlock.forEach(function(e){"number"==typeof(f=e.call({lexer:n},p))&&f>=0&&(d=Math.min(d,f))}),d<1/0&&d>=0&&(l=e.substring(0,d+1))}if(n.state.top&&(i=n.tokenizer.paragraph(l))){var h=r.at(-1);return u&&"paragraph"===(null==h?void 0:h.type)?(h.raw+=(h.raw.endsWith("\n")?"":"\n")+i.raw,h.text+="\n"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=h.text):r.push(i),u=l.length!==e.length,e=e.substring(i.raw.length),0}if(i=n.tokenizer.text(e)){e=e.substring(i.raw.length);var v=r.at(-1);return"text"===(null==v?void 0:v.type)?(v.raw+=(v.raw.endsWith("\n")?"":"\n")+i.raw,v.text+="\n"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=v.text):r.push(i),0}if(e){var m="Infinite loop on byte: "+e.charCodeAt(0);if(n.options.silent)return console.error(m),1;throw new Error(m)}};for(this.options.pedantic&&(e=e.replace(Sa.tabCharGlobal," ").replace(Sa.spaceLine,""));e&&(0===(t=a())||1!==t););return this.state.top=!0,r}},{key:"inline",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return this.inlineQueue.push({src:e,tokens:t}),t}},{key:"inlineTokens",value:function(e){var t,n,r,u=this,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=e,o=null;if(this.tokens.links){var s=Object.keys(this.tokens.links);if(s.length>0)for(;null!=(o=this.tokenizer.rules.inline.reflinkSearch.exec(i));)s.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(i=i.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(o=this.tokenizer.rules.inline.anyPunctuation.exec(i));)i=i.slice(0,o.index)+"++"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;null!=(o=this.tokenizer.rules.inline.blockSkip.exec(i));)r=o[2]?o[2].length:0,i=i.slice(0,o.index+r)+"["+"a".repeat(o[0].length-r-2)+"]"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);i=null!==(t=null===(n=this.options.hooks)||void 0===n||null===(n=n.emStrongMask)||void 0===n?void 0:n.call({lexer:this},i))&&void 0!==t?t:i;for(var c,l=!1,f="",d=function(){var t,n,r;if(l||(f=""),l=!1,null!==(t=u.options.extensions)&&void 0!==t&&null!==(t=t.inline)&&void 0!==t&&t.some(function(t){return!!(r=t.call({lexer:u},e,a))&&(e=e.substring(r.raw.length),a.push(r),!0)}))return 0;if(r=u.tokenizer.escape(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.tag(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.link(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.reflink(e,u.tokens.links)){e=e.substring(r.raw.length);var o=a.at(-1);return"text"===r.type&&"text"===(null==o?void 0:o.type)?(o.raw+=r.raw,o.text+=r.text):a.push(r),0}if(r=u.tokenizer.emStrong(e,i,f))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.codespan(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.br(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.del(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.autolink(e))return e=e.substring(r.raw.length),a.push(r),0;if(!u.state.inLink&&(r=u.tokenizer.url(e)))return e=e.substring(r.raw.length),a.push(r),0;var s=e;if(null!==(n=u.options.extensions)&&void 0!==n&&n.startInline){var c,d=1/0,p=e.slice(1);u.options.extensions.startInline.forEach(function(e){"number"==typeof(c=e.call({lexer:u},p))&&c>=0&&(d=Math.min(d,c))}),d<1/0&&d>=0&&(s=e.substring(0,d+1))}if(r=u.tokenizer.inlineText(s)){e=e.substring(r.raw.length),"_"!==r.raw.slice(-1)&&(f=r.raw.slice(-1)),l=!0;var h=a.at(-1);return"text"===(null==h?void 0:h.type)?(h.raw+=r.raw,h.text+=r.text):a.push(r),0}if(e){var v="Infinite loop on byte: "+e.charCodeAt(0);if(u.options.silent)return console.error(v),1;throw new Error(v)}};e&&(0===(c=d())||1!==c););return a}}],[{key:"rules",get:function(){return{block:gi,inline:Fi}}},{key:"lex",value:function(t,n){return new e(n).lex(t)}},{key:"lexInline",value:function(t,n){return new e(n).inlineTokens(t)}}])}(),Oi=un(function e(t){tn(this,e),on(this,"options",void 0),on(this,"parser",void 0),this.options=t||ba},[{key:"space",value:function(e){return""}},{key:"code",value:function(e){var t,n=e.text,r=e.lang,u=e.escaped,a=null===(t=(r||"").match(Sa.notSpaceStart))||void 0===t?void 0:t[0],i=n.replace(Sa.endingNewline,"")+"\n";return a?'

'+(u?i:bi(i,!0))+"
\n":"
"+(u?i:bi(i,!0))+"
\n"}},{key:"blockquote",value:function(e){var t=e.tokens;return"
\n".concat(this.parser.parse(t),"
\n")}},{key:"html",value:function(e){return e.text}},{key:"def",value:function(e){return""}},{key:"heading",value:function(e){var t=e.tokens,n=e.depth;return"").concat(this.parser.parseInline(t),"\n")}},{key:"hr",value:function(e){return"
\n"}},{key:"list",value:function(e){for(var t=e.ordered,n=e.start,r="",u=0;u\n"+r+"\n"}},{key:"listitem",value:function(e){var t="";if(e.task){var n,r=this.checkbox({checked:!!e.checked});e.loose?"paragraph"===(null===(n=e.tokens[0])||void 0===n?void 0:n.type)?(e.tokens[0].text=r+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=r+" "+bi(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:"text",raw:r+" ",text:r+" ",escaped:!0}):t+=r+" "}return t+=this.parser.parse(e.tokens,!!e.loose),"
  • ".concat(t,"
  • \n")}},{key:"checkbox",value:function(e){return"'}},{key:"paragraph",value:function(e){var t=e.tokens;return"

    ".concat(this.parser.parseInline(t),"

    \n")}},{key:"table",value:function(e){for(var t="",n="",r=0;r")),"\n\n"+t+"\n"+u+"
    \n"}},{key:"tablerow",value:function(e){var t=e.text;return"\n".concat(t,"\n")}},{key:"tablecell",value:function(e){var t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?"<".concat(n,' align="').concat(e.align,'">'):"<".concat(n,">"))+t+"\n")}},{key:"strong",value:function(e){var t=e.tokens;return"".concat(this.parser.parseInline(t),"")}},{key:"em",value:function(e){var t=e.tokens;return"".concat(this.parser.parseInline(t),"")}},{key:"codespan",value:function(e){var t=e.text;return"".concat(bi(t,!0),"")}},{key:"br",value:function(e){return"
    "}},{key:"del",value:function(e){var t=e.tokens;return"".concat(this.parser.parseInline(t),"")}},{key:"link",value:function(e){var t=e.href,n=e.title,r=e.tokens,u=this.parser.parseInline(r),a=Ci(t);if(null===a)return u;var i='"+u+""}},{key:"image",value:function(e){var t=e.href,n=e.title,r=e.text,u=e.tokens;u&&(r=this.parser.parseInline(u,this.parser.textRenderer));var a=Ci(t);if(null===a)return bi(r);var i='').concat(r,'"}},{key:"text",value:function(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:bi(e.text)}}]),Bi=un(function e(){tn(this,e)},[{key:"strong",value:function(e){return e.text}},{key:"em",value:function(e){return e.text}},{key:"codespan",value:function(e){return e.text}},{key:"del",value:function(e){return e.text}},{key:"html",value:function(e){return e.text}},{key:"text",value:function(e){return e.text}},{key:"link",value:function(e){return""+e.text}},{key:"image",value:function(e){return""+e.text}},{key:"br",value:function(){return""}}]),Ii=function(){function e(t){tn(this,e),on(this,"options",void 0),on(this,"renderer",void 0),on(this,"textRenderer",void 0),this.options=t||ba,this.options.renderer=this.options.renderer||new Oi,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Bi}return un(e,[{key:"parse",value:function(e){for(var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n="",r=0;r1&&void 0!==arguments[1]?arguments[1]:this.renderer,n="",r=0;r"u"||null===n)return i(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof n)return i(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));if(a.hooks&&(a.hooks.options=a,a.hooks.block=e),a.async)return Xt(vn().m(function r(){var u,i,o,s,c,l,f,d,p,h,v;return vn().w(function(r){for(;;)switch(r.n){case 0:if(!a.hooks){r.n=2;break}return r.n=1,a.hooks.preprocess(n);case 1:c=r.v,r.n=3;break;case 2:c=n;case 3:if(u=c,!a.hooks){r.n=5;break}return r.n=4,a.hooks.provideLexer();case 4:l=r.v,r.n=6;break;case 5:l=e?xi.lex:xi.lexInline;case 6:return f=l,r.n=7,f(u,a);case 7:if(i=r.v,!a.hooks){r.n=9;break}return r.n=8,a.hooks.processAllTokens(i);case 8:d=r.v,r.n=10;break;case 9:d=i;case 10:if(o=d,!a.walkTokens){r.n=11;break}return r.n=11,Promise.all(t.walkTokens(o,a.walkTokens));case 11:if(!a.hooks){r.n=13;break}return r.n=12,a.hooks.provideParser();case 12:p=r.v,r.n=14;break;case 13:p=e?Ii.parse:Ii.parseInline;case 14:return h=p,r.n=15,h(o,a);case 15:if(s=r.v,!a.hooks){r.n=17;break}return r.n=16,a.hooks.postprocess(s);case 16:v=r.v,r.n=18;break;case 17:v=s;case 18:return r.a(2,v)}},r)}))().catch(i);try{a.hooks&&(n=a.hooks.preprocess(n));var o=(a.hooks?a.hooks.provideLexer():e?xi.lex:xi.lexInline)(n,a);a.hooks&&(o=a.hooks.processAllTokens(o)),a.walkTokens&&t.walkTokens(o,a.walkTokens);var s=(a.hooks?a.hooks.provideParser():e?Ii.parse:Ii.parseInline)(o,a);return a.hooks&&(s=a.hooks.postprocess(s)),s}catch(e){return i(e)}}}},{key:"onError",value:function(e,t){return function(n){if(n.message+="\nPlease report this to https://github.com/markedjs/marked.",e){var r="

    An error occurred:

    "+bi(n.message+"",!0)+"
    ";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}}]),ji=new Pi;function Ni(e,t){return ji.parse(e,t)}function zi(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}Ni.options=Ni.setOptions=function(e){return ji.setOptions(e),Ni.defaults=ji.defaults,Ca(Ni.defaults),Ni},Ni.getDefaults=function(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}},Ni.defaults=ba,Ni.use=function(){return ji.use.apply(ji,arguments),Ni.defaults=ji.defaults,Ca(Ni.defaults),Ni},Ni.walkTokens=function(e,t){return ji.walkTokens(e,t)},Ni.parseInline=ji.parseInline,Ni.Parser=Ii,Ni.parser=Ii.parse,Ni.Renderer=Oi,Ni.TextRenderer=Bi,Ni.Lexer=xi,Ni.lexer=xi.lex,Ni.Tokenizer=Si,Ni.Hooks=Ti,Ni.parse=Ni,Ni.options,Ni.setOptions,Ni.use,Ni.walkTokens,Ni.parseInline,Ii.parse,xi.lex;var Ri=new Ni.Renderer;Ri.code=function(e){var t=e.text,n=e.lang,r=void 0===n?"":n,u=e.escaped,a=r?"language-".concat(r):"",i=u?t:zi(t),o=encodeURIComponent(t);return'\n
    \n \n
    ').concat(i,"
    \n
    \n ")},Ri.link=function(e){var t=e.href,n=e.title,r=e.text,u=n?' title="'.concat(zi(n),'"'):"",a=t?zi(t):"",i=zi(r);return'').concat(i,"")};var Mi=nt(function(e){var t=e.content,n=e.copyButtonText,r=e.copyButtonCopiedText,u=e.isStreaming,a=Pe(function(){return Ni.parse(t,{gfm:!0,breaks:!0,renderer:Ri})},[t]),i=Ie(null);return Oe(function(){var e=i.current;if(e)return Array.from(e.querySelectorAll(".DocSearch-CodeSnippet-CopyButton")).forEach(function(e){var t=e.querySelector(".DocSearch-CodeSnippet-CopyButton-Label");t&&(t.textContent=n),e.classList.remove("DocSearch-CodeSnippet-CopyButton--copied")}),e.addEventListener("click",t),function(){e.removeEventListener("click",t)};function t(e){var t,u=e.target.closest(".DocSearch-CodeSnippet-CopyButton");if(u){var a=null!==(t=u.getAttribute("data-code"))&&void 0!==t?t:"";navigator.clipboard.writeText(decodeURIComponent(a)).catch(function(){});var i=u.querySelector(".DocSearch-CodeSnippet-CopyButton-Label");if(i){u.classList.add("DocSearch-CodeSnippet-CopyButton--copied");var o=n;i.textContent=r,setTimeout(function(){u.classList.remove("DocSearch-CodeSnippet-CopyButton--copied"),i.textContent=o},1500)}}}},[a,n,r]),It.createElement("div",{ref:i,className:"DocSearch-Markdown-Content ".concat(u?"DocSearch-Markdown-Content--streaming":""),dangerouslySetInnerHTML:{__html:a}})});function Zi(e){var t=e.part,n=e.translations,r=e.onSearchQueryClick,u=n.searchingText,a=n.preToolCallText,i=n.toolCallResultText;switch(t.state){case"input-streaming":return It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Tool Tool--PartialCall shimmer"},It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}),It.createElement("span",null,u));case"input-available":return It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Tool Tool--Call shimmer"},It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}),It.createElement("span",null,a," ",'"'.concat(t.input.query||"",'" ...')));case"output-available":var o,s="tool-searchIndex"===t.type?t.output.query:t.input.query,c="tool-searchIndex"===t.type?null===(o=t.output.hits)||void 0===o?void 0:o.length:t.output.nbHits;return It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Tool Tool--Result"},It.createElement(wn,null),It.createElement("span",null,i," ",r?It.createElement("span",{role:"button",tabIndex:0,className:"DocSearch-AskAiScreen-MessageContent-Tool-Query",onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),r(s||""))},onClick:function(){return r(s||"")}}," ",'"',s||"",'"'):It.createElement("span",{className:"DocSearch-AskAiScreen-MessageContent-Tool-Query"},' "',s||"",'"')," ","found ",c||0," results"));default:return null}}function Li(e){return e.replace(/<[^>]*>/g,"").replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}Mi.displayName="MemoizedMarkdown";var $i=function(e,t){var n=t[0].parts.find(function(e){return"text"===e.type}),r=null!=n&&n.text?Li(n.text):"";return{query:e,objectID:r,messages:t,type:"askAI",anchor:"stored",content:null,hierarchy:{lvl0:"askAI",lvl1:r,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},url:"",url_without_anchor:""}},qi=function(e){return null==e?void 0:e.parts.find(function(e){return"text"===e.type})};function Ui(e){var t;return e&&(null===(t=e.message)||void 0===t?void 0:t.includes("AI-217"))||!1}var Hi=["translations"];function Vi(e){var t=e.disclaimerText;return It.createElement("p",{className:"DocSearch-AskAiScreen-Disclaimer"},t)}function Wi(e){var t,n,r,u=e.exchange,a=e.askAiError,i=e.isLastExchange,o=e.loadingStatus,s=e.onSearchQueryClick,c=e.translations,l=e.conversations,f=e.onFeedback,d=e.agentStudio,p=u.userMessage,h=u.assistantMessage,v=c.stoppedStreamingText,m=void 0===v?"You stopped this response":v,D=c.errorTitleText,y=void 0===D?"Chat error":D,g=c.preToolCallText,F=void 0===g?"Searching...":g,E=c.afterToolCallText,_=void 0===E?"Searched for":E,b=c.duringToolCallText,C=void 0===b?"Searching...":b,k=Ui(a),A=Pe(function(){return qi(h)},[h]),w=Pe(function(){return qi(p)},[p]),S=It.useMemo(function(){return e=h,t=[],n=new Set,e?(e.parts.forEach(function(e){if("text"===e.type&&0!==e.text.length){var r,u=e.text.replace(/```[\s\S]*?```/g,"").replace(/`[^`]*`/g,""),a=an(u.matchAll(/\[([^\]]*)\]\(([^)]+)\)/g));try{for(a.s();!(r=a.n()).done;){var i=r.value,o=i[1].trim(),s=i[2];n.has(s)||(n.add(s),t.push({url:s,title:o||void 0}))}}catch(e){a.e(e)}finally{a.f()}var c,l=an(u.matchAll(/(?"{}|\\^`[\]]+/g));try{for(l.s();!(c=l.n()).done;){var f=c.value[0].replace(/[.,;:!?]+$/,"");n.has(f)||(n.add(f),t.push({url:f}))}}catch(e){l.e(e)}finally{l.f()}}}),t):[];var e,t,n},[h]),x=It.useMemo(function(){return function(e){for(var t=[],n=0;n0&&u.push(c),a++}u.length>1?t.push({type:"aggregated-tool-call",queries:u}):1===u.length&&t.push(r),n=a-1}else t.push(r)}return t}((null==h?void 0:h.parts)||[])},[h]),O=(null===(t=p.metadata)||void 0===t?void 0:t.stopped)||(null==h||null===(n=h.metadata)||void 0===n?void 0:n.stopped),B=!O&&(!i||i&&"ready"===o&&Boolean(h)),I=["submitted","streaming"].includes(o)&&i&&!x.some(function(e){return"step-start"!==e.type});return It.createElement("div",{className:"DocSearch-AskAiScreen-Response-Container"},It.createElement("div",{className:"DocSearch-AskAiScreen-Response"},It.createElement("div",{className:"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--user"},It.createElement("p",{className:"DocSearch-AskAiScreen-Query"},null!==(r=null==w?void 0:w.text)&&void 0!==r?r:"")),It.createElement("div",{className:"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--assistant"},It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent"},"error"===o&&a&&i&&!k&&It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error"},It.createElement(oa,null),It.createElement("div",{className:"DocSearch-AskAiScreen-Error-Content"},It.createElement("h4",{className:"DocSearch-AskAiScreen-Error-Title"},y),It.createElement(Mi,{content:a.message,copyButtonText:"",copyButtonCopiedText:"",isStreaming:!1}))),I&&It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Reasoning"},It.createElement("span",{className:"shimmer"},c.thinkingText||"Thinking...")),x.map(function(e,t){var n=t;return"string"==typeof e?It.createElement(Mi,{key:n,content:e,copyButtonText:c.copyButtonText||"Copy",copyButtonCopiedText:c.copyButtonCopiedText||"Copied!",isStreaming:"streaming"===o}):"aggregated-tool-call"===e.type?It.createElement(_a,{key:n,queries:e.queries,translations:c,onSearchQueryClick:s}):"reasoning"===e.type&&"streaming"===e.state?It.createElement("div",{key:n,className:"DocSearch-AskAiScreen-MessageContent-Reasoning shimmer"},It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}),It.createElement("span",{className:"shimmer"},"Reasoning...")):"text"===e.type?It.createElement(Mi,{key:n,content:e.text,copyButtonText:c.copyButtonText||"Copy",copyButtonCopiedText:c.copyButtonCopiedText||"Copied!",isStreaming:"streaming"===e.state}):"tool-searchIndex"===e.type||"tool-algolia_search_index"===e.type?It.createElement(Zi,{key:n,translations:{preToolCallText:F,searchingText:C,toolCallResultText:_},part:e,onSearchQueryClick:s}):null})),O&&It.createElement("p",{className:"DocSearck-AskAiScreen-MessageContent-Stopped"},m)),It.createElement("div",{className:"DocSearch-AskAiScreen-Answer-Footer"},It.createElement(Ki,{id:(null==p?void 0:p.id)||u.id,showActions:B,latestAssistantMessageContent:(null==A?void 0:A.text)||null,translations:c,conversations:l,agentStudio:d,onFeedback:f}))),S.length>0?It.createElement(Ji,{urlsToDisplay:S,relatedSourcesText:c.relatedSourcesText}):null)}function Ki(e){var t=e.id,n=e.showActions,r=e.latestAssistantMessageContent,u=e.translations,a=e.conversations,i=e.onFeedback,o=e.agentStudio,s=It.useMemo(function(){var e,n,r=null===(e=a.getOne)||void 0===e?void 0:e.call(a,t);return null!==(n=null==r?void 0:r.feedback)&&void 0!==n?n:null},[a,t]),c=yn(It.useState(s),2),l=c[0],f=c[1],d=yn(It.useState(!1),2),p=d[0],h=d[1],v=yn(It.useState(null),2),m=v[0],D=v[1],y=function(){var e=Xt(vn().m(function e(n){var r;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!p){e.n=1;break}return e.a(2);case 1:return D(null),h(!0),e.p=2,e.n=3,null==i?void 0:i(t,"like"===n?1:0);case 3:f(n),e.n=5;break;case 4:e.p=4,r=e.v,D(r);case 5:return e.p=5,h(!1),e.f(5);case 6:return e.a(2)}},e,null,[[2,4,5,6]])}));return function(t){return e.apply(this,arguments)}}(),g=u.likeButtonTitle,F=void 0===g?"Like":g,E=u.dislikeButtonTitle,_=void 0===E?"Dislike":E,b=u.thanksForFeedbackText,C=void 0===b?"Thanks for your feedback!":b;return n&&r?It.createElement("div",{className:"DocSearch-AskAiScreen-Actions"},!o&&(null===l?It.createElement(It.Fragment,null,p?It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}):It.createElement(It.Fragment,null,It.createElement(Xi,{title:F,onClick:function(){return y("like")}}),It.createElement(eo,{title:_,onClick:function(){return y("dislike")}})),m&&It.createElement("p",{className:"DocSearch-AskAiScreen-FeedbackText"},m.message||"An error occured")):It.createElement("p",{className:"DocSearch-AskAiScreen-FeedbackText DocSearch-AskAiScreen-FeedbackText--visible"},C)),It.createElement(Yi,{translations:u,onClick:function(){return navigator.clipboard.writeText(r)}})):null}function Ji(e){var t=e.urlsToDisplay,n=e.relatedSourcesText;return It.createElement("div",{className:"DocSearch-AskAiScreen-RelatedSources"},It.createElement("p",{className:"DocSearch-AskAiScreen-RelatedSources-Title"},n||"Related sources"),It.createElement("div",{className:"DocSearch-AskAiScreen-RelatedSources-List"},t.length>0&&t.map(function(e){return It.createElement("a",{key:e.url,href:e.url,className:"DocSearch-AskAiScreen-RelatedSources-Item-Link",target:"_blank",rel:"noopener noreferrer"},It.createElement(Gi,null),It.createElement("span",null,e.title||e.url))})))}function Qi(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,Hi),u=n.disclaimerText,a=void 0===u?"Answers are generated with AI which can make mistakes. Verify responses.":u,i=n.threadDepthExceededMessage,o=void 0===i?"This conversation is now closed to keep responses accurate.":i,s=n.startNewConversationButtonText,c=void 0===s?"Start a new conversation":s,l=r.messages,f=r.askAiError,d=r.status,p=Pe(function(){return"error"===d&&Ui(f)},[d,f]),h=Pe(function(){for(var e=[],t=0;t0&&(e[e.length-1].assistantMessage||e.pop()),e},[l,p]),v=function(e){r.onAskAiToggle(!1),r.setQuery(e)},m=p&&l.some(function(e){return"assistant"===e.role});return It.createElement("div",{className:"DocSearch-AskAiScreen DocSearch-AskAiScreen-Container"},m&&It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error DocSearch-AskAiScreen-Error--ThreadDepth"},It.createElement("div",{className:"DocSearch-AskAiScreen-Error-Content"},It.createElement("p",null,o," ",It.createElement("button",{type:"button",className:"DocSearch-ThreadDepthError-Link",onClick:r.onNewConversation},c)," ","to continue."))),It.createElement(Vi,{disclaimerText:a}),It.createElement("div",{className:"DocSearch-AskAiScreen-Body"},It.createElement("div",{className:"DocSearch-AskAiScreen-ExchangesList"},h.slice().reverse().map(function(e,t){return It.createElement(Wi,{key:e.id,exchange:e,askAiError:r.askAiError,isLastExchange:0===t,loadingStatus:r.status,translations:n,conversations:r.conversations,agentStudio:r.agentStudio,onSearchQueryClick:v,onFeedback:r.onFeedback})}))))}function Gi(){return It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},It.createElement("line",{x1:"4",x2:"20",y1:"9",y2:"9"}),It.createElement("line",{x1:"4",x2:"20",y1:"15",y2:"15"}),It.createElement("line",{x1:"10",x2:"8",y1:"3",y2:"21"}),It.createElement("line",{x1:"16",x2:"14",y1:"3",y2:"21"}))}function Yi(e){var t=e.onClick,n=e.translations,r=n.copyButtonTitle,u=void 0===r?"Copy":r,a=n.copyButtonCopiedText,i=void 0===a?"Copied!":a,o=yn(Se(!1),2),s=o[0],c=o[1];return Oe(function(){if(s){var e=setTimeout(function(){c(!1)},1500);return function(){return clearTimeout(e)}}},[s]),It.createElement("button",{type:"button",className:"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-CopyButton ".concat(s?"DocSearch-AskAiScreen-CopyButton--copied":""),disabled:s,title:s?i:u,onClick:function(){t(),c(!0)}},s?It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-check-icon lucide-check"},It.createElement("path",{d:"M20 6 9 17l-5-5"})):It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-copy-icon lucide-copy"},It.createElement("rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}),It.createElement("path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"})))}function Xi(e){var t=e.title,n=e.onClick;return It.createElement("button",{type:"button",className:"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-LikeButton",title:t,onClick:n},It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-thumbs-up-icon lucide-thumbs-up"},It.createElement("path",{d:"M7 10v12"}),It.createElement("path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"})))}function eo(e){var t=e.title,n=e.onClick;return It.createElement("button",{type:"button",className:"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-DislikeButton",title:t,onClick:n},It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-thumbs-down-icon lucide-thumbs-down"},It.createElement("path",{d:"M17 14V2"}),It.createElement("path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"})))}var to=["hit","attribute","tagName"];function no(e,t){return t.split(".").reduce(function(e,t){return null!=e&&e[t]?e[t]:null},e)}function ro(e){var t=e.hit,n=e.attribute,r=e.tagName;return $(void 0===r?"span":r,pn(pn({},hn(e,to)),{},{dangerouslySetInnerHTML:{__html:no(t,"_snippetResult.".concat(n,".value"))||no(t,n)}}))}var uo=["item","getItemProps","onItemClick","translations","collection"];function ao(e){var t=It.useMemo(function(){return e.title?e.title.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'"):null},[e.title]);return e.collection&&0!==e.collection.items.length?"askAI"===e.collection.source.sourceId?It.createElement("section",{className:"DocSearch-AskAi-Section"},It.createElement("ul",e.getListProps({source:e.collection.source}),It.createElement(oo,sn({item:e.collection.items[0],translations:e.translations},e)))):(e.collection.source.sourceId,It.createElement("section",{className:"DocSearch-Hits"},It.createElement("div",{className:"DocSearch-Hit-source"},t),It.createElement("ul",e.getListProps({source:e.collection.source}),e.collection.items.map(function(t,n){return It.createElement(io,sn({key:[e.title,t.objectID].join(":"),item:t,index:n},e))})))):null}function io(e){var t=e.item,n=e.index,r=e.renderIcon,u=e.renderAction,a=e.getItemProps,i=e.onItemClick,o=e.collection,s=e.hitComponent;return It.createElement("li",sn({className:["DocSearch-Hit",t.__docsearch_parent&&"DocSearch-Hit--Child"].filter(Boolean).join(" ")},a({item:t,source:o.source,onClick:function(e){i(t,e)}})),It.createElement(s,{hit:t},It.createElement("div",{className:"DocSearch-Hit-Container"},r({item:t,index:n}),t.hierarchy[t.type]&&"lvl1"===t.type&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement(ro,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.lvl1"}),t.content&&It.createElement(ro,{className:"DocSearch-Hit-path",hit:t,attribute:"content"})),"askAI"===t.type&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement("span",{className:"DocSearch-Hit-title"},Li(t.hierarchy.lvl1||""))),t.hierarchy[t.type]&&("lvl2"===t.type||"lvl3"===t.type||"lvl4"===t.type||"lvl5"===t.type||"lvl6"===t.type)&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement(ro,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.".concat(t.type)}),It.createElement(ro,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),"content"===t.type&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement(ro,{className:"DocSearch-Hit-title",hit:t,attribute:"content"}),It.createElement(ro,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),u({item:t}))))}function oo(e){var t=e.item,n=e.getItemProps,r=e.onItemClick,u=e.translations,a=e.collection,i=hn(e,uo),o=u||{},s=o.askAiPlaceholder,c=void 0===s?"Ask AI: ":s,l=o.noResultsAskAiPlaceholder,f=void 0===l?"Didn't find it in the docs? Ask AI to help: ":l,d=1===i.state.collections.length?f:c;return It.createElement("li",sn({className:"DocSearch-Hit"},n({item:t,source:a.source,onClick:function(e){r(t,e)}})),It.createElement("div",{className:"DocSearch-Hit--AskAI"},It.createElement("div",{className:"DocSearch-Hit-AskAIButton DocSearch-Hit-Container"},It.createElement("div",{className:" DocSearch-Hit-AskAIButton-icon DocSearch-Hit-icon"},It.createElement(ua,null)),It.createElement("div",{className:"DocSearch-Hit-AskAIButton-title"},It.createElement("span",{className:"DocSearch-Hit-AskAIButton-title-highlight"},d),It.createElement("mark",{className:"DocSearch-Hit-AskAIButton-title-query"},String(t.query||""))))))}var so=["onAskAiToggle"];function co(e){var t=e.onAskAiToggle,n=hn(e,so),r=It.useMemo(function(){return n.state.collections[2]},[n.state]);return It.useEffect(function(){r&&0!==r.items.length||t(!0)},[r,t]),It.createElement("div",{className:"DocSearch-Dropdown-Container DocSearch-Conversation-History"},It.createElement(ao,sn({},n,{key:r.source.sourceId,title:"",translations:n.translations,collection:r,renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(ua,null))},renderAction:function(e){var t=e.item;return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{type:"button",className:"DocSearch-Hit-action-button",onClick:function(e){e.preventDefault(),e.stopPropagation(),n.conversations.remove(t),n.refresh()}},It.createElement(ia,null)))}})))}function lo(e){var t=e.translations,n=void 0===t?{}:t,r=n.titleText,u=void 0===r?"Unable to fetch results":r,a=n.helpText,i=void 0===a?"You might want to check your network connection.":a;return It.createElement("div",{className:"DocSearch-ErrorScreen"},It.createElement("div",{className:"DocSearch-Screen-Icon"},It.createElement(va,null)),It.createElement("p",{className:"DocSearch-Title"},u),It.createElement("p",{className:"DocSearch-Help"},i))}function fo(e){var t=e.translations,n=void 0===t?{}:t,r=e.suggestedQuestions,u=void 0===r?[]:r,a=e.selectSuggestedQuestion,i=n.newConversationTitle,o=void 0===i?"How can I help you today?":i,s=n.newConversationDescription,c=void 0===s?"I search through your documentation to help you find setup guides, feature details and troubleshooting tips, fast.":s;return It.createElement("div",{className:"DocSearch-NewConversationScreen"},It.createElement("h3",{className:"DocSearch-NewConversationScreen-Title"},o),It.createElement("p",{className:"DocSearch-NewConversationScreen-Description"},c),It.createElement("div",{className:"DocSearch-NewConversationScreen-SuggestedQuestions"},u.map(function(e){return It.createElement("button",{key:e.objectID,type:"button",className:"DocSearch-NewConversationScreen-SuggestedQuestion",onClick:function(){return a(e)}},e.question)})))}var po=["translations"];function ho(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,po),u=n.noResultsText,a=void 0===u?"No results found for":u,i=n.suggestedQueryText,o=void 0===i?"Try searching for":i,s=n.reportMissingResultsText,c=void 0===s?"Believe this query should return results?":s,l=n.reportMissingResultsLinkText,f=void 0===l?"Let us know.":l,d=r.state.context.searchSuggestions;return It.createElement("div",{className:"DocSearch-NoResults ".concat(r.canHandleAskAi?"DocSearch-NoResults--withAskAi":"")},It.createElement("div",{className:"DocSearch-Screen-Icon"},It.createElement(ma,null)),It.createElement("p",{className:"DocSearch-Title"},a,' "',It.createElement("strong",null,r.state.query),'"'),d&&d.length>0&&It.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},It.createElement("p",{className:"DocSearch-Help"},o,":"),It.createElement("div",{className:"DocSearch-NoResults-Prefill-List-Items"},d.slice(0,3).reduce(function(e,t){return[].concat(gn(e),[It.createElement("p",{key:t},It.createElement(wn,{size:16}),It.createElement("button",{className:"DocSearch-Prefill",key:t,type:"button",onClick:function(){r.setQuery(t.toLowerCase()+" "),r.refresh(),r.inputRef.current.focus()}},t))])},[]))),r.getMissingResultsUrl&&It.createElement("p",{className:"DocSearch-Help"},"".concat(c," "),It.createElement("a",{href:r.getMissingResultsUrl({query:r.state.query}),target:"_blank",rel:"noopener noreferrer"},f)))}var vo=["translations"];function mo(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,vo);return It.createElement("div",{className:"DocSearch-Dropdown-Container"},r.state.collections.map(function(e){if(0===e.items.length)return null;var t=jn(e.items[0]);return It.createElement(ao,sn({},r,{key:e.source.sourceId,translations:n,title:t,collection:e,renderIcon:function(t){var n,r=t.item,u=t.index;return It.createElement(It.Fragment,null,r.__docsearch_parent&&It.createElement("svg",{className:"DocSearch-Hit-Tree",viewBox:"0 0 24 54"},It.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},r.__docsearch_parent!==(null===(n=e.items[u+1])||void 0===n?void 0:n.__docsearch_parent)?It.createElement("path",{d:"M8 6v21M20 27H8.3"}):It.createElement("path",{d:"M8 6v42M20 27H8.3"}))),It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(la,{type:r.type})))},renderAction:function(){return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement(sa,null))}}))}),r.resultsFooterComponent&&It.createElement("section",{className:"DocSearch-HitsFooter"},It.createElement(r.resultsFooterComponent,{state:r.state})))}var Do=["translations"];function yo(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,Do),u=n.recentSearchesTitle,a=void 0===u?"Recent":u,i=n.saveRecentSearchButtonTitle,o=void 0===i?"Save this search":i,s=n.removeRecentSearchButtonTitle,c=void 0===s?"Remove this search from history":s,l=n.favoriteSearchesTitle,f=void 0===l?"Favorite":l,d=n.removeFavoriteSearchButtonTitle,p=void 0===d?"Remove this search from favorites":d,h=n.recentConversationsTitle,v=void 0===h?"Recent conversations":h,m=n.removeRecentConversationButtonTitle,D=void 0===m?"Remove this conversation from history":m;return It.createElement("div",{className:"DocSearch-Dropdown-Container"},It.createElement(ao,sn({},r,{title:a,collection:r.state.collections[0],renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(aa,null))},renderAction:function(e){var t=e.item;return It.createElement(It.Fragment,null,It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:o,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.favoriteSearches.add(t),r.recentSearches.remove(t),r.refresh()}},It.createElement(pa,null))),It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:c,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.recentSearches.remove(t),r.refresh()}},It.createElement(ia,null))))}})),It.createElement(ao,sn({},r,{title:f,collection:r.state.collections[1],renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(pa,null))},renderAction:function(e){var t=e.item;return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:p,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.favoriteSearches.remove(t),r.refresh()}},It.createElement(ia,null)))}})),It.createElement(ao,sn({},r,{title:v,collection:r.state.collections[2],renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(ua,null))},renderAction:function(e){var t=e.item;return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:D,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.conversations.remove(t),r.refresh()}},It.createElement(ia,null)))}})))}var go=["translations"],Fo=It.memo(function(e){var t,n=e.translations,r=void 0===n?{}:n,u=hn(e,go);return u.canHandleAskAi&&u.isAskAiActive&&"conversation-history"===u.askAiState?It.createElement(co,u):u.canHandleAskAi&&u.isAskAiActive&&"new-conversation"===u.askAiState?It.createElement(fo,{translations:null==r?void 0:r.newConversation,selectSuggestedQuestion:u.selectSuggestedQuestion,suggestedQuestions:u.suggestedQuestions}):u.isAskAiActive&&u.canHandleAskAi?It.createElement(Qi,sn({},u,{messages:u.messages,status:u.status,askAiError:u.askAiError,translations:null==r?void 0:r.askAiScreen,agentStudio:u.agentStudio})):"error"===(null===(t=u.state)||void 0===t?void 0:t.status)?It.createElement(lo,{translations:null==r?void 0:r.errorScreen}):u.state.query?u.hasCollections||u.canHandleAskAi?It.createElement(It.Fragment,null,It.createElement(mo,sn({},u,{translations:null==r?void 0:r.resultsScreen})),u.canHandleAskAi&&1===u.state.collections.length&&It.createElement(ho,sn({},u,{translations:null==r?void 0:r.noResultsScreen}))):It.createElement(ho,sn({},u,{translations:null==r?void 0:r.noResultsScreen})):It.createElement(yo,sn({},u,{hasCollections:u.hasCollections,translations:null==r?void 0:r.startScreen}))},function(e,t){return"loading"===t.state.status||"stalled"===t.state.status});function Eo(e){var t=e.size,n=void 0===t?20:t,r=e.color,u=void 0===r?"currentColor":r;return It.createElement("svg",{width:n,height:n,className:"DocSearch-Back-Icon",viewBox:"0 0 24 24",fill:"none",stroke:u,strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true"},It.createElement("path",{d:"m12 19-7-7 7-7"}),It.createElement("path",{d:"M19 12H5"}))}var _o=["children","className","onClick"],bo=It.createContext({open:!1,setOpen:function(e){}});function Co(e){var t=e.children,n=yn(It.useState(!1),2),r=n[0],u=n[1],a=It.useRef(null);return It.useEffect(function(){function e(e){var t;null!==(t=a.current)&&void 0!==t&&t.contains(e.target)||u(!1)}return r&&window.addEventListener("click",e),function(){window.removeEventListener("click",e)}},[r]),It.createElement(bo.Provider,{value:{open:r,setOpen:u}},It.createElement("div",{ref:a,className:"DocSearch-Menu"},t))}function ko(e){var t=e.heading,n=e.shimmer,r=void 0!==n&&n;return It.createElement("span",{className:"DocSearch-Modal-heading".concat(r?" shimmer":"")},t)}Co.Trigger=function(e){var t=e.children,n=e.className,r=void 0===n?"":n,u=e.disabled,a=It.useContext(bo),i=a.open,o=a.setOpen;return It.createElement("button",{type:"button",className:"DocSearch-Menu-trigger ".concat(r).concat(u?" disabled":""),"aria-disabled":u,onClick:function(){u||o(!i)}},t)},Co.Content=function(e){var t=e.children,n=It.useContext(bo).open;return It.createElement("div",{className:"DocSearch-Menu-content".concat(n?" open":"")},t)},Co.Item=function(e){var t=e.children,n=e.className,r=void 0===n?"":n,u=e.onClick,a=hn(e,_o),i=It.useContext(bo).setOpen;return It.createElement("button",sn({type:"button",className:"DocSearch-Menu-item ".concat(r),onClick:function(e){u&&(u(e),i(!1))}},a),t)};var Ao=["translations","askAiState","onAskAiToggle","setAskAiState"];function wo(e){var t=e.translations,n=void 0===t?{}:t,r=e.askAiState,u=e.onAskAiToggle,a=e.setAskAiState,i=hn(e,Ao),o=n.clearButtonTitle,s=void 0===o?"Clear":o,c=n.clearButtonAriaLabel,l=void 0===c?"Clear the query":c,f=n.closeButtonText,d=void 0===f?"Close":f,p=n.closeButtonAriaLabel,h=void 0===p?"Close":p,v=n.searchInputLabel,m=void 0===v?"Search":v,D=n.backToKeywordSearchButtonText,y=void 0===D?"Back to keyword search":D,g=n.backToKeywordSearchButtonAriaLabel,F=void 0===g?"Back to keyword search":g,E=n.placeholderTextAskAiStreaming,_=void 0===E?"Answering...":E,b=n.newConversationPlaceholder,C=void 0===b?"Ask a question":b,k=n.conversationHistoryTitle,A=void 0===k?"My conversation history":k,w=n.startNewConversationText,S=void 0===w?"Start a new conversation":w,x=n.viewConversationHistoryText,O=void 0===x?"Conversation history":x,B=n.threadDepthErrorPlaceholder,I=void 0===B?"Conversation limit reached":B,T=i.getFormProps({inputElement:i.inputRef.current}).onReset;It.useEffect(function(){i.autoFocus&&i.inputRef.current&&i.inputRef.current.focus()},[i.autoFocus,i.inputRef]),It.useEffect(function(){i.isFromSelection&&i.inputRef.current&&i.inputRef.current.select()},[i.isFromSelection,i.inputRef]);var P=It.useMemo(function(){var e=i.state.collections[2];return!!e&&e.items.length>0},[i.state.collections]),j=i.getInputProps({inputElement:i.inputRef.current,autoFocus:i.autoFocus,maxLength:512}),N=new Set(["ArrowUp","ArrowDown","Enter"]),z=j.onKeyDown,R=j.onChange,M="streaming"===i.askAiStatus||"submitted"===i.askAiStatus,Z="stalled"===i.state.status,L=i.isAskAiActive&&"conversation-history"!==r,$=i.isThreadDepthError||!1,q=i.placeholder;"new-conversation"===r&&(q=C),$&&i.isAskAiActive&&(q=I);var U=null;M&&(U=_),"conversation-history"===r&&(U=A),It.useEffect(function(){"streaming"!==i.askAiStatus&&"submitted"!==i.askAiStatus&&i.inputRef.current&&i.inputRef.current.focus()},[i.askAiStatus,i.inputRef]);var H=pn(pn({},j),{},{enterKeyHint:i.isAskAiActive?"enter":"search",onKeyDown:function(e){if(i.isAskAiActive&&N.has(e.key))return"Enter"===e.key&&!M&&i.state.query&&i.onAskAgain(i.state.query),e.preventDefault(),void e.stopPropagation();null==z||z(e)},onChange:function(e){if(i.isAskAiActive)return i.setQuery(e.currentTarget.value),e.preventDefault(),void e.stopPropagation();null==R||R(e)},disabled:M||$&&i.isAskAiActive}),V=It.useCallback(function(){if(!$)return"conversation-history"===r?(u(!0),void a("initial")):void u(!1);i.onNewConversation()},[r,$,u,a,i]);return It.createElement(It.Fragment,null,It.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:T},i.isAskAiActive?It.createElement(It.Fragment,null,It.createElement("button",{type:"button",tabIndex:0,className:"DocSearch-Action DocSearch-AskAi-Return",title:y,"aria-label":F,onClick:V},It.createElement(Eo,null))):It.createElement(It.Fragment,null,Z&&It.createElement("div",{className:"DocSearch-LoadingIndicator"},It.createElement(ra,null)),!Z&&It.createElement("label",sn({className:"DocSearch-MagnifierLabel"},i.getLabelProps()),It.createElement(wn,null),It.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},m))),U&&It.createElement(ko,{heading:U,shimmer:M}),It.createElement("input",sn({className:"DocSearch-Input",ref:i.inputRef},H,{placeholder:q,hidden:Boolean(U)})),It.createElement("div",{className:"DocSearch-Actions"},It.createElement("button",{className:"DocSearch-Clear",type:"reset","aria-label":l,hidden:!i.state.query,tabIndex:i.state.query?0:-1,"aria-hidden":i.state.query?"false":"true"},s),i.state.query&&It.createElement("div",{className:"DocSearch-Divider"}),M&&It.createElement(It.Fragment,null,It.createElement("button",{type:"button",className:"DocSearch-Action DocSearch-StopStreaming",onClick:i.onStopAskAiStreaming},It.createElement(ha,null)),It.createElement("div",{className:"DocSearch-Divider"})),L&&It.createElement(It.Fragment,null,It.createElement(Co,null,It.createElement(Co.Trigger,{className:"DocSearch-Action"},It.createElement(Da,null)),It.createElement(Co.Content,null,It.createElement(Co.Item,{onClick:i.onNewConversation},It.createElement(ga,null),S),P&&It.createElement(Co.Item,{onClick:i.onViewConversationHistory},It.createElement(ya,null),O))),It.createElement("div",{className:"DocSearch-Divider"})),It.createElement("button",{type:"button",title:d,className:"DocSearch-Action DocSearch-Close","aria-label":h,onClick:i.onClose},It.createElement(ia,null)))))}function So(){if("undefined"!=typeof window&&window.localStorage){var e=[];for(var t in window.localStorage)if(t.includes("__DOCSEARCH_")){var n=window.localStorage[t];e.push({key:t,size:n.length+t.length})}e.sort(function(e,t){return t.size-e.size});for(var r=Math.ceil(e.length/2),u=0;u-1&&a.splice(i,1),a.unshift(n),a=a.slice(0,r),u.setItem(a)},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getAll:function(){return a}}}function Io(e){var t=e.key,n=e.limit,r=void 0===n?5:n,u=xo(t),a=u.getItem().slice(0,r);return{add:function(e){var t=e.objectID,n=e.query,i=a.findIndex(function(e){return e.objectID===t||e.query===n});i>-1?a[i]=e:(a.unshift(e),a=a.slice(0,r)),u.setItem(a)},addFeedback:function(e,t){var n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(n&&n.messages){var r=n.messages.find(function(t){return t.id===e});r&&(r.feedback=t,u.setItem(a))}},getOne:function(e){var t,n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});return null==n||null===(t=n.messages)||void 0===t?void 0:t.find(function(t){return t.id===e})},getAll:function(){return a},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getConversation:function(e){var t=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(t&&t.messages)return t}}}var To,Po="vercel.ai.error",jo=Symbol.for(Po),No=function(){function e(t){var n,r=t.name,i=t.message,o=t.cause;return a(this,e),(n=u(this,e,[i]))[To]=!0,n.name=r,n.cause=o,n}return f(e,C(Error)),o(e,null,[{key:"isInstance",value:function(t){return e.hasMarker(t,Po)}},{key:"hasMarker",value:function(e,t){var n=Symbol.for(t);return null!=e&&"object"==_(e)&&n in e&&"boolean"==typeof e[n]&&!0===e[n]}}])}();To=jo;var zo=No;function Ro(e){return null==e?"unknown error":"string"==typeof e?e:e instanceof Error?e.message:JSON.stringify(e)}var Mo,Zo="AI_InvalidArgumentError",Lo="vercel.ai.error.".concat(Zo),$o=Symbol.for(Lo),qo=function(){function e(t){var n,r=t.message,i=t.cause,o=t.argument;return a(this,e),(n=u(this,e,[{name:Zo,message:r,cause:i}]))[Mo]=!0,n.argument=o,n}return f(e,zo),o(e,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Lo)}}])}();Mo=$o;var Uo,Ho="AI_JSONParseError",Vo="vercel.ai.error.".concat(Ho),Wo=Symbol.for(Vo),Ko=function(){function e(t){var n,r=t.text,i=t.cause;return a(this,e),(n=u(this,e,[{name:Ho,message:"JSON parsing failed: Text: ".concat(r,".\nError message: ").concat(Ro(i)),cause:i}]))[Uo]=!0,n.text=r,n}return f(e,zo),o(e,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Vo)}}])}();Uo=Wo;var Jo,Qo="AI_TypeValidationError",Go="vercel.ai.error.".concat(Qo),Yo=Symbol.for(Go);Jo=Yo;var Xo=function(){function e(t){var n,r=t.value,i=t.cause;return a(this,e),(n=u(this,e,[{name:Qo,message:"Type validation failed: Value: ".concat(JSON.stringify(r),".\nError message: ").concat(Ro(i)),cause:i}]))[Jo]=!0,n.value=r,n}return f(e,zo),o(e,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Go)}},{key:"wrap",value:function(t){var n=t.value,r=t.cause;return e.isInstance(r)&&r.value===n?r:new e({value:n,cause:r})}}])}(),es=function(){function e(t,n){var r;return tn(this,e),(r=en(this,e,[t])).name="ParseError",r.type=n.type,r.field=n.field,r.value=n.value,r.line=n.line,r}return ln(e,bn(Error)),un(e)}();function ts(e){}var ns=function(){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=n.onError,u=n.onRetry,a=n.onComment;return tn(this,e),en(this,e,[{start:function(e){t=function(e){if("function"==typeof e)throw new TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");var t,n=e.onEvent,r=void 0===n?ts:n,u=e.onError,a=void 0===u?ts:u,i=e.onRetry,o=void 0===i?ts:i,s=e.onComment,c="",l=!0,f="",d="";function p(e){if(""===e)return f.length>0&&r({id:t,event:d||void 0,data:f.endsWith("\n")?f.slice(0,-1):f}),t=void 0,f="",void(d="");if(e.startsWith(":"))s&&s(e.slice(e.startsWith(": ")?2:1));else{var n=e.indexOf(":");if(-1===n)h(e,"",e);else{var u=e.slice(0,n),a=" "===e[n+1]?2:1;h(u,e.slice(n+a),e)}}}function h(e,n,r){switch(e){case"event":d=n;break;case"data":f="".concat(f).concat(n,"\n");break;case"id":t=n.includes("\0")?void 0:n;break;case"retry":/^\d+$/.test(n)?o(parseInt(n,10)):a(new es('Invalid `retry` value: "'.concat(n,'"'),{type:"invalid-retry",value:n,line:r}));break;default:a(new es('Unknown field "'.concat(e.length>20?"".concat(e.slice(0,20),"…"):e,'"'),{type:"unknown-field",field:e,value:n,line:r}))}}return{feed:function(e){var t,n=l?e.replace(/^\xEF\xBB\xBF/,""):e,r=function(e){for(var t=[],n="",r=0;r0&&void 0!==arguments[0]?arguments[0]:{}).consume&&p(c),l=!0,t=void 0,f="",d="",c=""}}}({onEvent:function(t){e.enqueue(t)},onError:function(t){"terminate"===r?e.error(t):"function"==typeof r&&r(t)},onRetry:u,onComment:a})},transform:function(e){t.feed(e)}}])}return ln(e,bn(TransformStream)),un(e)}();function rs(e,t,n){var r;function u(n,r){var u,a,o;for(var s in Object.defineProperty(n,"_zod",{value:null!==(u=n._zod)&&void 0!==u?u:{},enumerable:!1}),null!==(a=(o=n._zod).traits)&&void 0!==a||(o.traits=new Set),n._zod.traits.add(e),t(n,r),i.prototype)s in n||Object.defineProperty(n,s,{value:i.prototype[s].bind(n)});n._zod.constr=i,n._zod.def=r}var a=function(e){function t(){return tn(this,t),en(this,t,arguments)}return ln(t,e),un(t)}(null!==(r=null==n?void 0:n.Parent)&&void 0!==r?r:Object);function i(e){var t,r,i=null!=n&&n.Parent?new a:this;u(i,e),null!==(t=(r=i._zod).deferred)&&void 0!==t||(r.deferred=[]);var o,s=an(i._zod.deferred);try{for(s.s();!(o=s.n()).done;)(0,o.value)()}catch(e){s.e(e)}finally{s.f()}return i}return Object.defineProperty(a,"name",{value:e}),Object.defineProperty(i,"init",{value:u}),Object.defineProperty(i,Symbol.hasInstance,{value:function(t){var r;return!!(null!=n&&n.Parent&&t instanceof n.Parent)||(null==t||null===(r=t._zod)||void 0===r||null===(r=r.traits)||void 0===r?void 0:r.has(e))}}),Object.defineProperty(i,"name",{value:e}),i}var us=function(){function e(){return tn(this,e),en(this,e,["Encountered Promise during synchronous parse. Use .parseAsync() instead."])}return ln(e,bn(Error)),un(e)}(),as=function(){function e(t){var n;return tn(this,e),(n=en(this,e,["Encountered unidirectional transform during encode: ".concat(t)])).name="ZodEncodeError",n}return ln(e,bn(Error)),un(e)}(),is={};function os(e){return is}function ss(e){var t=Object.values(e).filter(function(e){return"number"==typeof e}),n=Object.entries(e).filter(function(e){var n=yn(e,2),r=n[0];return n[1],-1===t.indexOf(+r)}).map(function(e){var t=yn(e,2);return t[0],t[1]});return n}function cs(e,t){return"bigint"==typeof t?t.toString():t}function ls(e){return{get value(){var t=e();return Object.defineProperty(this,"value",{value:t}),t}}}function fs(e){return null==e}function ds(e){var t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}var ps=Symbol("evaluating");function hs(e,t,n){var r=void 0;Object.defineProperty(e,t,{get:function(){if(r!==ps)return void 0===r&&(r=ps,r=n()),r},set:function(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function vs(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ms(){for(var e={},t=arguments.length,n=new Array(t),r=0;r1&&void 0!==arguments[1]?arguments[1]:0;if(!0===e.aborted)return!0;for(var n=t;nu&&(t.inclusive?r.minimum=t.value:r.exclusiveMinimum=t.value)}),e._zod.check=function(r){(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ec=rs("$ZodCheckMultipleOf",function(e,t){Dc.init(e,t),e._zod.onattach.push(function(e){var n,r;null!==(n=(r=e._zod.bag).multipleOf)&&void 0!==n||(r.multipleOf=t.value)}),e._zod.check=function(n){if(En(n.value)!==En(t.value))throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){var n=(e.toString().split(".")[1]||"").length,r=t.toString(),u=(r.split(".")[1]||"").length;if(0===u&&/\d?e-\d?/.test(r)){var a=r.match(/\d?e-(\d?)/);null!=a&&a[1]&&(u=Number.parseInt(a[1]))}var i=n>u?n:u;return Number.parseInt(e.toFixed(i).replace(".",""))%Number.parseInt(t.toFixed(i).replace(".",""))/Math.pow(10,i)}(n.value,t.value))||n.issues.push({origin:En(n.value),code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),_c=rs("$ZodCheckNumberFormat",function(e,t){var n;Dc.init(e,t),t.format=t.format||"float64";var r=null===(n=t.format)||void 0===n?void 0:n.includes("int"),u=r?"int":"number",a=yn(ws[t.format],2),i=a[0],o=a[1];e._zod.onattach.push(function(e){var n=e._zod.bag;n.format=t.format,n.minimum=i,n.maximum=o,r&&(n.pattern=fc)}),e._zod.check=function(n){var a=n.value;if(r){if(!Number.isInteger(a))return void n.issues.push({expected:u,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});if(!Number.isSafeInteger(a))return void(a>0?n.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:u,continue:!t.abort}):n.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:u,continue:!t.abort}))}ao&&n.issues.push({origin:"number",input:a,code:"too_big",maximum:o,inst:e})}}),bc=rs("$ZodCheckMaxSize",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;r.size>=t.minimum||n.issues.push({origin:Is(r),code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),kc=rs("$ZodCheckSizeEquals",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.size,n.maximum=t.size,n.size=t.size}),e._zod.check=function(n){var r=n.value,u=r.size;if(u!==t.size){var a=u>t.size;n.issues.push(pn(pn({origin:Is(r)},a?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),Ac=rs("$ZodCheckMaxLength",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;if(!(r.length>=t.minimum)){var u=Ts(r);n.issues.push({origin:u,code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}}),Sc=rs("$ZodCheckLengthEquals",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=function(n){var r=n.value,u=r.length;if(u!==t.length){var a=Ts(r),i=u>t.length;n.issues.push(pn(pn({origin:a},i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),xc=rs("$ZodCheckStringFormat",function(e,t){var n,r,u,a;Dc.init(e,t),e._zod.onattach.push(function(e){var n,r=e._zod.bag;r.format=t.format,t.pattern&&(null!==(n=r.patterns)&&void 0!==n||(r.patterns=new Set),r.patterns.add(t.pattern))}),t.pattern?null!==(n=(u=e._zod).check)&&void 0!==n||(u.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push(pn(pn({origin:"string",code:"invalid_format",format:t.format,input:n.value},t.pattern?{pattern:t.pattern.toString()}:{}),{},{inst:e,continue:!t.abort}))}):null!==(r=(a=e._zod).check)&&void 0!==r||(a.check=function(){})}),Oc=rs("$ZodCheckRegex",function(e,t){xc.init(e,t),e._zod.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Bc=rs("$ZodCheckLowerCase",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=vc),xc.init(e,t)}),Ic=rs("$ZodCheckUpperCase",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=mc),xc.init(e,t)}),Tc=rs("$ZodCheckIncludes",function(e,t){Dc.init(e,t);var n=Cs(t.includes),r=new RegExp("number"==typeof t.position?"^.{".concat(t.position,"}").concat(n):n);t.pattern=r,e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Pc=rs("$ZodCheckStartsWith",function(e,t){var n;Dc.init(e,t);var r=new RegExp("^".concat(Cs(t.prefix),".*"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),jc=rs("$ZodCheckEndsWith",function(e,t){var n;Dc.init(e,t);var r=new RegExp(".*".concat(Cs(t.suffix),"$"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});function Nc(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,gn(xs(n,e.issues)))}var zc=rs("$ZodCheckProperty",function(e,t){Dc.init(e,t),e._zod.check=function(e){var n=t.schema._zod.run({value:e.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(function(n){return Nc(n,e,t.property)});Nc(n,e,t.property)}}),Rc=rs("$ZodCheckMimeType",function(e,t){Dc.init(e,t);var n=new Set(t.mime);e._zod.onattach.push(function(e){e._zod.bag.mime=t.mime}),e._zod.check=function(r){n.has(r.value.type)||r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Mc=rs("$ZodCheckOverwrite",function(e,t){Dc.init(e,t),e._zod.check=function(e){e.value=t.tx(e.value)}}),Zc=un(function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];tn(this,e),this.content=[],this.indent=0,this&&(this.args=t)},[{key:"indented",value:function(e){this.indent+=1,e(this),this.indent-=1}},{key:"write",value:function(e){var t=this;if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});var n,r=e.split("\n").filter(function(e){return e}),u=Math.min.apply(Math,gn(r.map(function(e){return e.length-e.trimStart().length}))),a=r.map(function(e){return e.slice(u)}).map(function(e){return" ".repeat(2*t.indent)+e}),i=an(a);try{for(i.s();!(n=i.n()).done;){var o=n.value;this.content.push(o)}}catch(e){i.e(e)}finally{i.f()}}},{key:"compile",value:function(){var e,t=Function,n=null==this?void 0:this.args,r=gn((null!==(e=null==this?void 0:this.content)&&void 0!==e?e:[""]).map(function(e){return" ".concat(e)}));return nn(t,gn(n).concat([r.join("\n")]))}}]),Lc={major:4,minor:1,patch:12},$c=rs("$ZodType",function(e,t){var n,r;null!=e||(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Lc;var u=gn(null!==(n=e._zod.def.checks)&&void 0!==n?n:[]);e._zod.traits.has("$ZodCheck")&&u.unshift(e);var a,i=an(u);try{for(i.s();!(a=i.n()).done;){var o,s=an(a.value._zod.onattach);try{for(s.s();!(o=s.n()).done;)(0,o.value)(e)}catch(e){s.e(e)}finally{s.f()}}}catch(e){i.e(e)}finally{i.f()}if(0===u.length){var c,l;null!==(c=(r=e._zod).deferred)&&void 0!==c||(r.deferred=[]),null===(l=e._zod.deferred)||void 0===l||l.push(function(){e._zod.run=e._zod.parse})}else{var f=function(e,t,n){var r,u,a=Ss(e),i=an(t);try{var o=function(){var t=u.value;if(t._zod.def.when){if(!t._zod.def.when(e))return 0}else if(a)return 0;var i=e.issues.length,o=t._zod.check(e);if(o instanceof Promise&&!1===(null==n?void 0:n.async))throw new us;if(r||o instanceof Promise)r=(null!=r?r:Promise.resolve()).then(Xt(vn().m(function t(){return vn().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,o;case 1:if(e.issues.length!==i){t.n=2;break}return t.a(2);case 2:a||(a=Ss(e,i));case 3:return t.a(2)}},t)})));else{if(e.issues.length===i)return 0;a||(a=Ss(e,i))}};for(i.s();!(u=i.n()).done;)o()}catch(e){i.e(e)}finally{i.f()}return r?r.then(function(){return e}):e},d=function(t,n,r){if(Ss(t))return t.aborted=!0,t;var a=f(n,u,r);if(a instanceof Promise){if(!1===r.async)throw new us;return a.then(function(t){return e._zod.parse(t,r)})}return e._zod.parse(a,r)};e._zod.run=function(t,n){if(n.skipChecks)return e._zod.parse(t,n);if("backward"===n.direction){var r=e._zod.parse({value:t.value,issues:[]},pn(pn({},n),{},{skipChecks:!0}));return r instanceof Promise?r.then(function(e){return d(e,t,n)}):d(r,t,n)}var a=e._zod.parse(t,n);if(a instanceof Promise){if(!1===n.async)throw new us;return a.then(function(e){return f(e,u,n)})}return f(a,u,n)}}e["~standard"]={validate:function(t){try{var n,r=Ls(e,t);return r.success?{value:r.data}:{issues:null===(n=r.error)||void 0===n?void 0:n.issues}}catch(n){return qs(e,t).then(function(e){var t;return e.success?{value:e.data}:{issues:null===(t=e.error)||void 0===t?void 0:t.issues}})}},vendor:"zod",version:1}}),qc=rs("$ZodString",function(e,t){var n,r,u;$c.init(e,t),e._zod.pattern=null!==(n=gn(null!==(r=null==e||null===(u=e._zod.bag)||void 0===u?void 0:u.patterns)&&void 0!==r?r:[]).pop())&&void 0!==n?n:function(e){var t,n,r=e?"[\\s\\S]{".concat(null!==(t=null==e?void 0:e.minimum)&&void 0!==t?t:0,",").concat(null!==(n=null==e?void 0:e.maximum)&&void 0!==n?n:"","}"):"[\\s\\S]*";return new RegExp("^".concat(r,"$"))}(e._zod.bag),e._zod.parse=function(n,r){if(t.coerce)try{n.value=String(n.value)}catch(r){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),Uc=rs("$ZodStringFormat",function(e,t){xc.init(e,t),qc.init(e,t)}),Hc=rs("$ZodGUID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Gs),Uc.init(e,t)}),Vc=rs("$ZodUUID",function(e,t){var n;if(t.version){var r,u={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===u)throw new Error('Invalid UUID version: "'.concat(t.version,'"'));null!==(r=t.pattern)&&void 0!==r||(t.pattern=Ys(u))}else null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ys());Uc.init(e,t)}),Wc=rs("$ZodEmail",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Xs),Uc.init(e,t)}),Kc=rs("$ZodURL",function(e,t){Uc.init(e,t),e._zod.check=function(n){try{var r=n.value.trim(),u=new URL(r);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(u.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:ic.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(u.protocol.endsWith(":")?u.protocol.slice(0,-1):u.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=u.href:n.value=r)}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Jc=rs("$ZodEmoji",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Uc.init(e,t)}),Qc=rs("$ZodNanoID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Js),Uc.init(e,t)}),Gc=rs("$ZodCUID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Us),Uc.init(e,t)}),Yc=rs("$ZodCUID2",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Hs),Uc.init(e,t)}),Xc=rs("$ZodULID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Vs),Uc.init(e,t)}),el=rs("$ZodXID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ws),Uc.init(e,t)}),tl=rs("$ZodKSUID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ks),Uc.init(e,t)}),nl=rs("$ZodISODateTime",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=function(e){var t=lc({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");var r="".concat(t,"(?:").concat(n.join("|"),")");return new RegExp("^".concat(sc,"T(?:").concat(r,")$"))}(t)),Uc.init(e,t)}),rl=rs("$ZodISODate",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=cc),Uc.init(e,t)}),ul=rs("$ZodISOTime",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp("^".concat(lc(t),"$"))),Uc.init(e,t)}),al=rs("$ZodISODuration",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Qs),Uc.init(e,t)}),il=rs("$ZodIPv4",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ec),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format="ipv4"})}),ol=rs("$ZodIPv6",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=tc),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format="ipv6"}),e._zod.check=function(n){try{new URL("http://[".concat(n.value,"]"))}catch(r){n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),sl=rs("$ZodCIDRv4",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=nc),Uc.init(e,t)}),cl=rs("$ZodCIDRv6",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=rc),Uc.init(e,t),e._zod.check=function(n){var r=n.value.split("/");try{if(2!==r.length)throw new Error;var u=yn(r,2),a=u[0],i=u[1];if(!i)throw new Error;var o=Number(i);if("".concat(o)!==i)throw new Error;if(o<0||o>128)throw new Error;new URL("http://[".concat(a,"]"))}catch(r){n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function ll(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch(e){return!1}}var fl=rs("$ZodBase64",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=uc),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding="base64"}),e._zod.check=function(n){ll(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}}),dl=rs("$ZodBase64URL",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ac),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding="base64url"}),e._zod.check=function(n){(function(e){if(!ac.test(e))return!1;var t=e.replace(/[-_]/g,function(e){return"-"===e?"+":"/"});return ll(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),pl=rs("$ZodE164",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=oc),Uc.init(e,t)}),hl=rs("$ZodJWT",function(e,t){Uc.init(e,t),e._zod.check=function(n){(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;try{var n=e.split(".");if(3!==n.length)return!1;var r=yn(n,1)[0];if(!r)return!1;var u=JSON.parse(atob(r));return!("typ"in u&&"JWT"!==(null==u?void 0:u.typ)||!u.alg||t&&(!("alg"in u)||u.alg!==t))}catch(e){return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),vl=rs("$ZodNumber",function(e,t){var n;$c.init(e,t),e._zod.pattern=null!==(n=e._zod.bag.pattern)&&void 0!==n?n:dc,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Number(n.value)}catch(e){}var u=n.value;if("number"==typeof u&&!Number.isNaN(u)&&Number.isFinite(u))return n;var a="number"==typeof u?Number.isNaN(u)?"NaN":Number.isFinite(u)?void 0:"Infinity":void 0;return n.issues.push(pn({expected:"number",code:"invalid_type",input:u,inst:e},a?{received:a}:{})),n}}),ml=rs("$ZodNumber",function(e,t){_c.init(e,t),vl.init(e,t)}),Dl=rs("$ZodBoolean",function(e,t){$c.init(e,t),e._zod.pattern=pc,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}var u=n.value;return"boolean"==typeof u||n.issues.push({expected:"boolean",code:"invalid_type",input:u,inst:e}),n}}),yl=rs("$ZodNull",function(e,t){$c.init(e,t),e._zod.pattern=hc,e._zod.values=new Set([null]),e._zod.parse=function(t,n){var r=t.value;return null===r||t.issues.push({expected:"null",code:"invalid_type",input:r,inst:e}),t}}),gl=rs("$ZodUnknown",function(e,t){$c.init(e,t),e._zod.parse=function(e){return e}}),Fl=rs("$ZodNever",function(e,t){$c.init(e,t),e._zod.parse=function(t,n){return t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t}});function El(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,gn(xs(n,e.issues))),t.value[n]=e.value}var _l=rs("$ZodArray",function(e,t){$c.init(e,t),e._zod.parse=function(n,r){var u=n.value;if(!Array.isArray(u))return n.issues.push({expected:"array",code:"invalid_type",input:u,inst:e}),n;n.value=Array(u.length);for(var a=[],i=function(e){var i=u[e],o=t.element._zod.run({value:i,issues:[]},r);o instanceof Promise?a.push(o.then(function(t){return El(t,n,e)})):El(o,n,e)},o=0;o ({\n ...iss,\n path: iss.path ? [").concat(p,", ...iss.path] : [").concat(p,"]\n })));\n }\n \n \n if (").concat(d,".value === undefined) {\n if (").concat(p," in input) {\n newResult[").concat(p,"] = undefined;\n }\n } else {\n newResult[").concat(p,"] = ").concat(d,".value;\n }\n \n "))}}catch(e){l.e(e)}finally{l.f()}t.write("payload.value = newResult;"),t.write("return payload;");var h=t.compile();return function(t,n){return h(e,t,n)}}(t.shape)),l=n(l,f),c?kl([],d,l,f,r,e):l):u(l,f):(l.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),l)}});function Sl(e,t,n,r){var u,a=an(e);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(0===i.issues.length)return t.value=i.value,t}}catch(e){a.e(e)}finally{a.f()}var o=e.filter(function(e){return!Ss(e)});return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(function(e){return e.issues.map(function(e){return Bs(e,r,os())})})}),t)}var xl=rs("$ZodUnion",function(e,t){$c.init(e,t),hs(e._zod,"optin",function(){return t.options.some(function(e){return"optional"===e._zod.optin})?"optional":void 0}),hs(e._zod,"optout",function(){return t.options.some(function(e){return"optional"===e._zod.optout})?"optional":void 0}),hs(e._zod,"values",function(){if(t.options.every(function(e){return e._zod.values}))return new Set(t.options.flatMap(function(e){return Array.from(e._zod.values)}))}),hs(e._zod,"pattern",function(){if(t.options.every(function(e){return e._zod.pattern})){var e=t.options.map(function(e){return e._zod.pattern});return new RegExp("^(".concat(e.map(function(e){return ds(e.source)}).join("|"),")$"))}});var n=1===t.options.length,r=t.options[0]._zod.run;e._zod.parse=function(u,a){if(n)return r(u,a);var i,o=!1,s=[],c=an(t.options);try{for(c.s();!(i=c.n()).done;){var l=i.value._zod.run({value:u.value,issues:[]},a);if(l instanceof Promise)s.push(l),o=!0;else{if(0===l.issues.length)return l;s.push(l)}}}catch(e){c.e(e)}finally{c.f()}return o?Promise.all(s).then(function(t){return Sl(t,u,e,a)}):Sl(s,u,e,a)}}),Ol=rs("$ZodDiscriminatedUnion",function(e,t){xl.init(e,t);var n=e._zod.parse;hs(e._zod,"propValues",function(){var e,n={},r=an(t.options);try{for(r.s();!(e=r.n()).done;){var u=e.value,a=u._zod.propValues;if(!a||0===Object.keys(a).length)throw new Error('Invalid discriminated union option at index "'.concat(t.options.indexOf(u),'"'));for(var i=0,o=Object.entries(a);i0&&n.issues.push({code:"unrecognized_keys",input:u,inst:e,keys:s})}else{n.value={};var d,p=an(Reflect.ownKeys(u));try{var h=function(){var i=d.value;if("__proto__"===i)return 0;var o=t.keyType._zod.run({value:i,issues:[]},r);if(o instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(o.issues.length)return n.issues.push({code:"invalid_key",origin:"record",issues:o.issues.map(function(e){return Bs(e,r,os())}),input:i,path:[i],inst:e}),n.value[o.value]=o.value,0;var s,c=t.valueType._zod.run({value:u[i],issues:[]},r);c instanceof Promise?a.push(c.then(function(e){var t;e.issues.length&&(t=n.issues).push.apply(t,gn(xs(i,e.issues))),n.value[o.value]=e.value})):(c.issues.length&&(s=n.issues).push.apply(s,gn(xs(i,c.issues))),n.value[o.value]=c.value)};for(p.s();!(d=p.n()).done;)h()}catch(e){p.e(e)}finally{p.f()}}return a.length?Promise.all(a).then(function(){return n}):n}}),jl=rs("$ZodEnum",function(e,t){$c.init(e,t);var n=ss(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp("^(".concat(n.filter(function(e){return bs.has(En(e))}).map(function(e){return"string"==typeof e?Cs(e):e.toString()}).join("|"),")$")),e._zod.parse=function(t,u){var a=t.value;return r.has(a)||t.issues.push({code:"invalid_value",values:n,input:a,inst:e}),t}}),Nl=rs("$ZodLiteral",function(e,t){if($c.init(e,t),0===t.values.length)throw new Error("Cannot create literal schema with no valid values");e._zod.values=new Set(t.values),e._zod.pattern=new RegExp("^(".concat(t.values.map(function(e){return"string"==typeof e?Cs(e):e?Cs(e.toString()):String(e)}).join("|"),")$")),e._zod.parse=function(n,r){var u=n.value;return e._zod.values.has(u)||n.issues.push({code:"invalid_value",values:t.values,input:u,inst:e}),n}}),zl=rs("$ZodTransform",function(e,t){$c.init(e,t),e._zod.parse=function(n,r){if("backward"===r.direction)throw new as(e.constructor.name);var u=t.transform(n.value,n);if(r.async)return(u instanceof Promise?u:Promise.resolve(u)).then(function(e){return n.value=e,n});if(u instanceof Promise)throw new us;return n.value=u,n}});function Rl(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}var Ml=rs("$ZodOptional",function(e,t){$c.init(e,t),e._zod.optin="optional",e._zod.optout="optional",hs(e._zod,"values",function(){return t.innerType._zod.values?new Set([].concat(gn(t.innerType._zod.values),[void 0])):void 0}),hs(e._zod,"pattern",function(){var e=t.innerType._zod.pattern;return e?new RegExp("^(".concat(ds(e.source),")?$")):void 0}),e._zod.parse=function(e,n){if("optional"===t.innerType._zod.optin){var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(t){return Rl(t,e.value)}):Rl(r,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}}),Zl=rs("$ZodNullable",function(e,t){$c.init(e,t),hs(e._zod,"optin",function(){return t.innerType._zod.optin}),hs(e._zod,"optout",function(){return t.innerType._zod.optout}),hs(e._zod,"pattern",function(){var e=t.innerType._zod.pattern;return e?new RegExp("^(".concat(ds(e.source),"|null)$")):void 0}),hs(e._zod,"values",function(){return t.innerType._zod.values?new Set([].concat(gn(t.innerType._zod.values),[null])):void 0}),e._zod.parse=function(e,n){return null===e.value?e:t.innerType._zod.run(e,n)}}),Ll=rs("$ZodDefault",function(e,t){$c.init(e,t),e._zod.optin="optional",hs(e._zod,"values",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(e){return $l(e,t)}):$l(r,t)}});function $l(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}var ql=rs("$ZodPrefault",function(e,t){$c.init(e,t),e._zod.optin="optional",hs(e._zod,"values",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){return"backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n)}}),Ul=rs("$ZodNonOptional",function(e,t){$c.init(e,t),hs(e._zod,"values",function(){var e=t.innerType._zod.values;return e?new Set(gn(e).filter(function(e){return void 0!==e})):void 0}),e._zod.parse=function(n,r){var u=t.innerType._zod.run(n,r);return u instanceof Promise?u.then(function(t){return Hl(t,e)}):Hl(u,e)}});function Hl(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var Vl=rs("$ZodCatch",function(e,t){$c.init(e,t),hs(e._zod,"optin",function(){return t.innerType._zod.optin}),hs(e._zod,"optout",function(){return t.innerType._zod.optout}),hs(e._zod,"values",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if("backward"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(r){return e.value=r.value,r.issues.length&&(e.value=t.catchValue(pn(pn({},e),{},{error:{issues:r.issues.map(function(e){return Bs(e,n,os())})},input:e.value})),e.issues=[]),e}):(e.value=r.value,r.issues.length&&(e.value=t.catchValue(pn(pn({},e),{},{error:{issues:r.issues.map(function(e){return Bs(e,n,os())})},input:e.value})),e.issues=[]),e)}}),Wl=rs("$ZodPipe",function(e,t){$c.init(e,t),hs(e._zod,"values",function(){return t.in._zod.values}),hs(e._zod,"optin",function(){return t.in._zod.optin}),hs(e._zod,"optout",function(){return t.out._zod.optout}),hs(e._zod,"propValues",function(){return t.in._zod.propValues}),e._zod.parse=function(e,n){if("backward"===n.direction){var r=t.out._zod.run(e,n);return r instanceof Promise?r.then(function(e){return Kl(e,t.in,n)}):Kl(r,t.in,n)}var u=t.in._zod.run(e,n);return u instanceof Promise?u.then(function(e){return Kl(e,t.out,n)}):Kl(u,t.out,n)}});function Kl(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Jl=rs("$ZodReadonly",function(e,t){$c.init(e,t),hs(e._zod,"propValues",function(){return t.innerType._zod.propValues}),hs(e._zod,"values",function(){return t.innerType._zod.values}),hs(e._zod,"optin",function(){return t.innerType._zod.optin}),hs(e._zod,"optout",function(){return t.innerType._zod.optout}),e._zod.parse=function(e,n){if("backward"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Ql):Ql(r)}});function Ql(e){return e.value=Object.freeze(e.value),e}var Gl=rs("$ZodLazy",function(e,t){$c.init(e,t),hs(e._zod,"innerType",function(){return t.getter()}),hs(e._zod,"pattern",function(){return e._zod.innerType._zod.pattern}),hs(e._zod,"propValues",function(){return e._zod.innerType._zod.propValues}),hs(e._zod,"optin",function(){var t;return null!==(t=e._zod.innerType._zod.optin)&&void 0!==t?t:void 0}),hs(e._zod,"optout",function(){var t;return null!==(t=e._zod.innerType._zod.optout)&&void 0!==t?t:void 0}),e._zod.parse=function(t,n){return e._zod.innerType._zod.run(t,n)}}),Yl=rs("$ZodCustom",function(e,t){Dc.init(e,t),$c.init(e,t),e._zod.parse=function(e,t){return e},e._zod.check=function(n){var r=n.value,u=t.fn(r);if(u instanceof Promise)return u.then(function(t){return Xl(t,n,r,e)});Xl(u,n,r,e)}});function Xl(e,t,n,r){if(!e){var u,a={code:"custom",input:n,inst:r,path:gn(null!==(u=r._zod.def.path)&&void 0!==u?u:[]),continue:!r._zod.def.abort};r._zod.def.params&&(a.params=r._zod.def.params),t.issues.push(Ps(a))}}var ef=un(function e(){tn(this,e),this._map=new WeakMap,this._idmap=new Map},[{key:"add",value:function(e){var t=arguments.length<=1?void 0:arguments[1];if(this._map.set(e,t),t&&"object"===En(t)&&"id"in t){if(this._idmap.has(t.id))throw new Error("ID ".concat(t.id," already exists in the registry"));this._idmap.set(t.id,e)}return this}},{key:"clear",value:function(){return this._map=new WeakMap,this._idmap=new Map,this}},{key:"remove",value:function(e){var t=this._map.get(e);return t&&"object"===En(t)&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}},{key:"get",value:function(e){var t=e._zod.parent;if(t){var n,r=pn({},null!==(n=this.get(t))&&void 0!==n?n:{});delete r.id;var u=pn(pn({},r),this._map.get(e));return Object.keys(u).length?u:void 0}return this._map.get(e)}},{key:"has",value:function(e){return this._map.has(e)}}]);var tf=new ef;function nf(e,t){return new e(pn({type:"string",format:"guid",check:"string_format",abort:!1},As(t)))}function rf(e,t){return new gc(pn(pn({check:"less_than"},As(t)),{},{value:e,inclusive:!1}))}function uf(e,t){return new gc(pn(pn({check:"less_than"},As(t)),{},{value:e,inclusive:!0}))}function af(e,t){return new Fc(pn(pn({check:"greater_than"},As(t)),{},{value:e,inclusive:!1}))}function of(e,t){return new Fc(pn(pn({check:"greater_than"},As(t)),{},{value:e,inclusive:!0}))}function sf(e,t){return new Ec(pn(pn({check:"multiple_of"},As(t)),{},{value:e}))}function cf(e,t){return new Ac(pn(pn({check:"max_length"},As(t)),{},{maximum:e}))}function lf(e,t){return new wc(pn(pn({check:"min_length"},As(t)),{},{minimum:e}))}function ff(e,t){return new Sc(pn(pn({check:"length_equals"},As(t)),{},{length:e}))}function df(e,t){return new Oc(pn(pn({check:"string_format",format:"regex"},As(t)),{},{pattern:e}))}function pf(e){return new Bc(pn({check:"string_format",format:"lowercase"},As(e)))}function hf(e){return new Ic(pn({check:"string_format",format:"uppercase"},As(e)))}function vf(e,t){return new Tc(pn(pn({check:"string_format",format:"includes"},As(t)),{},{includes:e}))}function mf(e,t){return new Pc(pn(pn({check:"string_format",format:"starts_with"},As(t)),{},{prefix:e}))}function Df(e,t){return new jc(pn(pn({check:"string_format",format:"ends_with"},As(t)),{},{suffix:e}))}function yf(e){return new Mc({check:"overwrite",tx:e})}function gf(e){return yf(function(t){return t.normalize(e)})}function Ff(){return yf(function(e){return e.trim()})}function Ef(){return yf(function(e){return e.toLowerCase()})}function _f(){return yf(function(e){return e.toUpperCase()})}var bf=un(function e(t){var n,r,u,a,i;tn(this,e),this.counter=0,this.metadataRegistry=null!==(n=null==t?void 0:t.metadata)&&void 0!==n?n:tf,this.target=null!==(r=null==t?void 0:t.target)&&void 0!==r?r:"draft-2020-12",this.unrepresentable=null!==(u=null==t?void 0:t.unrepresentable)&&void 0!==u?u:"throw",this.override=null!==(a=null==t?void 0:t.override)&&void 0!==a?a:function(){},this.io=null!==(i=null==t?void 0:t.io)&&void 0!==i?i:"output",this.seen=new Map},[{key:"process",value:function(e){var t,n,r,u,a=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{path:[],schemaPath:[]},o=e._zod.def,s=this.seen.get(e);if(s)return s.count++,i.schemaPath.includes(e)&&(s.cycle=i.path),s.schema;var c={schema:{},count:1,cycle:void 0,path:i.path};this.seen.set(e,c);var l=null===(t=(n=e._zod).toJSONSchema)||void 0===t?void 0:t.call(n);if(l)c.schema=l;else{var f=pn(pn({},i),{},{schemaPath:[].concat(gn(i.schemaPath),[e]),path:i.path}),d=e._zod.parent;if(d)c.ref=d,this.process(d,f),this.seen.get(d).isParent=!0;else{var p=c.schema;switch(o.type){case"string":var h=p;h.type="string";var v,m=e._zod.bag,D=m.minimum,y=m.maximum,g=m.format,F=m.patterns,E=m.contentEncoding;if("number"==typeof D&&(h.minLength=D),"number"==typeof y&&(h.maxLength=y),g&&(h.format=null!==(v={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""}[g])&&void 0!==v?v:g,""===h.format&&delete h.format),E&&(h.contentEncoding=E),F&&F.size>0){var _=gn(F);1===_.length?h.pattern=_[0].source:_.length>1&&(c.schema.allOf=gn(_.map(function(e){return pn(pn({},"draft-7"===a.target||"draft-4"===a.target||"openapi-3.0"===a.target?{type:"string"}:{}),{},{pattern:e.source})})))}break;case"number":var b=p,C=e._zod.bag,k=C.minimum,A=C.maximum,w=C.format,S=C.multipleOf,x=C.exclusiveMaximum,O=C.exclusiveMinimum;"string"==typeof w&&w.includes("int")?b.type="integer":b.type="number","number"==typeof O&&("draft-4"===this.target||"openapi-3.0"===this.target?(b.minimum=O,b.exclusiveMinimum=!0):b.exclusiveMinimum=O),"number"==typeof k&&(b.minimum=k,"number"==typeof O&&"draft-4"!==this.target&&(O>=k?delete b.minimum:delete b.exclusiveMinimum)),"number"==typeof x&&("draft-4"===this.target||"openapi-3.0"===this.target?(b.maximum=x,b.exclusiveMaximum=!0):b.exclusiveMaximum=x),"number"==typeof A&&(b.maximum=A,"number"==typeof x&&"draft-4"!==this.target&&(x<=A?delete b.maximum:delete b.exclusiveMaximum)),"number"==typeof S&&(b.multipleOf=S);break;case"boolean":case"success":p.type="boolean";break;case"bigint":if("throw"===this.unrepresentable)throw new Error("BigInt cannot be represented in JSON Schema");break;case"symbol":if("throw"===this.unrepresentable)throw new Error("Symbols cannot be represented in JSON Schema");break;case"null":"openapi-3.0"===this.target?(p.type="string",p.nullable=!0,p.enum=[null]):p.type="null";break;case"any":case"unknown":break;case"undefined":if("throw"===this.unrepresentable)throw new Error("Undefined cannot be represented in JSON Schema");break;case"void":if("throw"===this.unrepresentable)throw new Error("Void cannot be represented in JSON Schema");break;case"never":p.not={};break;case"date":if("throw"===this.unrepresentable)throw new Error("Date cannot be represented in JSON Schema");break;case"array":var B=p,I=e._zod.bag,T=I.minimum,P=I.maximum;"number"==typeof T&&(B.minItems=T),"number"==typeof P&&(B.maxItems=P),B.type="array",B.items=this.process(o.element,pn(pn({},f),{},{path:[].concat(gn(f.path),["items"])}));break;case"object":var j,N=p;N.type="object",N.properties={};var z=o.shape;for(var R in z)N.properties[R]=this.process(z[R],pn(pn({},f),{},{path:[].concat(gn(f.path),["properties",R])}));var M=new Set(Object.keys(z)),Z=new Set(gn(M).filter(function(e){var t=o.shape[e]._zod;return"input"===a.io?void 0===t.optin:void 0===t.optout}));Z.size>0&&(N.required=Array.from(Z)),"never"===(null===(j=o.catchall)||void 0===j?void 0:j._zod.def.type)?N.additionalProperties=!1:o.catchall?o.catchall&&(N.additionalProperties=this.process(o.catchall,pn(pn({},f),{},{path:[].concat(gn(f.path),["additionalProperties"])}))):"output"===this.io&&(N.additionalProperties=!1);break;case"union":var L=p,$=o.options.map(function(e,t){return a.process(e,pn(pn({},f),{},{path:[].concat(gn(f.path),["anyOf",t])}))});L.anyOf=$;break;case"intersection":var q=p,U=this.process(o.left,pn(pn({},f),{},{path:[].concat(gn(f.path),["allOf",0])})),H=this.process(o.right,pn(pn({},f),{},{path:[].concat(gn(f.path),["allOf",1])})),V=function(e){return"allOf"in e&&1===Object.keys(e).length},W=[].concat(gn(V(U)?U.allOf:[U]),gn(V(H)?H.allOf:[H]));q.allOf=W;break;case"tuple":var K=p;K.type="array";var J="draft-2020-12"===this.target?"prefixItems":"items",Q="draft-2020-12"===this.target||"openapi-3.0"===this.target?"items":"additionalItems",G=o.items.map(function(e,t){return a.process(e,pn(pn({},f),{},{path:[].concat(gn(f.path),[J,t])}))}),Y=o.rest?this.process(o.rest,pn(pn({},f),{},{path:[].concat(gn(f.path),[Q],gn("openapi-3.0"===this.target?[o.items.length]:[]))})):null;"draft-2020-12"===this.target?(K.prefixItems=G,Y&&(K.items=Y)):"openapi-3.0"===this.target?(K.items={anyOf:G},Y&&K.items.anyOf.push(Y),K.minItems=G.length,Y||(K.maxItems=G.length)):(K.items=G,Y&&(K.additionalItems=Y));var X=e._zod.bag,ee=X.minimum,te=X.maximum;"number"==typeof ee&&(K.minItems=ee),"number"==typeof te&&(K.maxItems=te);break;case"record":var ne=p;ne.type="object","draft-7"!==this.target&&"draft-2020-12"!==this.target||(ne.propertyNames=this.process(o.keyType,pn(pn({},f),{},{path:[].concat(gn(f.path),["propertyNames"])}))),ne.additionalProperties=this.process(o.valueType,pn(pn({},f),{},{path:[].concat(gn(f.path),["additionalProperties"])}));break;case"map":if("throw"===this.unrepresentable)throw new Error("Map cannot be represented in JSON Schema");break;case"set":if("throw"===this.unrepresentable)throw new Error("Set cannot be represented in JSON Schema");break;case"enum":var re=p,ue=ss(o.entries);ue.every(function(e){return"number"==typeof e})&&(re.type="number"),ue.every(function(e){return"string"==typeof e})&&(re.type="string"),re.enum=ue;break;case"literal":var ae,ie=p,oe=[],se=an(o.values);try{for(se.s();!(ae=se.n()).done;){var ce=ae.value;if(void 0===ce){if("throw"===this.unrepresentable)throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if("bigint"==typeof ce){if("throw"===this.unrepresentable)throw new Error("BigInt literals cannot be represented in JSON Schema");oe.push(Number(ce))}else oe.push(ce)}}catch(e){se.e(e)}finally{se.f()}if(0===oe.length);else if(1===oe.length){var le=oe[0];ie.type=null===le?"null":En(le),"draft-4"===this.target||"openapi-3.0"===this.target?ie.enum=[le]:ie.const=le}else oe.every(function(e){return"number"==typeof e})&&(ie.type="number"),oe.every(function(e){return"string"==typeof e})&&(ie.type="string"),oe.every(function(e){return"boolean"==typeof e})&&(ie.type="string"),oe.every(function(e){return null===e})&&(ie.type="null"),ie.enum=oe;break;case"file":var fe=p,de={type:"string",format:"binary",contentEncoding:"binary"},pe=e._zod.bag,he=pe.minimum,ve=pe.maximum,me=pe.mime;void 0!==he&&(de.minLength=he),void 0!==ve&&(de.maxLength=ve),me?1===me.length?(de.contentMediaType=me[0],Object.assign(fe,de)):fe.anyOf=me.map(function(e){return pn(pn({},de),{},{contentMediaType:e})}):Object.assign(fe,de);break;case"transform":if("throw"===this.unrepresentable)throw new Error("Transforms cannot be represented in JSON Schema");break;case"nullable":var De=this.process(o.innerType,f);"openapi-3.0"===this.target?(c.ref=o.innerType,p.nullable=!0):p.anyOf=[De,{type:"null"}];break;case"nonoptional":case"promise":case"optional":this.process(o.innerType,f),c.ref=o.innerType;break;case"default":this.process(o.innerType,f),c.ref=o.innerType,p.default=JSON.parse(JSON.stringify(o.defaultValue));break;case"prefault":this.process(o.innerType,f),c.ref=o.innerType,"input"===this.io&&(p._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break;case"catch":var ye;this.process(o.innerType,f),c.ref=o.innerType;try{ye=o.catchValue(void 0)}catch(e){throw new Error("Dynamic catch values are not supported in JSON Schema")}p.default=ye;break;case"nan":if("throw"===this.unrepresentable)throw new Error("NaN cannot be represented in JSON Schema");break;case"template_literal":var ge=p,Fe=e._zod.pattern;if(!Fe)throw new Error("Pattern not found in template literal");ge.type="string",ge.pattern=Fe.source;break;case"pipe":var Ee="input"===this.io?"transform"===o.in._zod.def.type?o.out:o.in:o.out;this.process(Ee,f),c.ref=Ee;break;case"readonly":this.process(o.innerType,f),c.ref=o.innerType,p.readOnly=!0;break;case"lazy":var _e=e._zod.innerType;this.process(_e,f),c.ref=_e;break;case"custom":if("throw"===this.unrepresentable)throw new Error("Custom types cannot be represented in JSON Schema");break;case"function":if("throw"===this.unrepresentable)throw new Error("Function types cannot be represented in JSON Schema")}}}var be=this.metadataRegistry.get(e);return be&&Object.assign(c.schema,be),"input"===this.io&&Cf(e)&&(delete c.schema.examples,delete c.schema.default),"input"===this.io&&c.schema._prefault&&(null!==(r=(u=c.schema).default)&&void 0!==r||(u.default=c.schema._prefault)),delete c.schema._prefault,this.seen.get(e).schema}},{key:"emit",value:function(e,t){var n,r,u,a,i,o,s=this,c={cycles:null!==(n=null==t?void 0:t.cycles)&&void 0!==n?n:"ref",reused:null!==(r=null==t?void 0:t.reused)&&void 0!==r?r:"inline",external:null!==(u=null==t?void 0:t.external)&&void 0!==u?u:void 0},l=this.seen.get(e);if(!l)throw new Error("Unprocessed schema. This is a bug in Zod.");var f=function(e){if(!e[1].schema.$ref){var t=e[1],n=function(e){var t,n="draft-2020-12"===s.target?"$defs":"definitions";if(c.external){var r,u,a,i,o=null===(r=c.external.registry.get(e[0]))||void 0===r?void 0:r.id,f=null!==(u=c.external.uri)&&void 0!==u?u:function(e){return e};if(o)return{ref:f(o)};var d=null!==(a=null!==(i=e[1].defId)&&void 0!==i?i:e[1].schema.id)&&void 0!==a?a:"schema".concat(s.counter++);return e[1].defId=d,{defId:d,ref:"".concat(f("__shared"),"#/").concat(n,"/").concat(d)}}if(e[1]===l)return{ref:"#"};var p="".concat("#","/").concat(n,"/"),h=null!==(t=e[1].schema.id)&&void 0!==t?t:"__schema".concat(s.counter++);return{defId:h,ref:p+h}}(e),r=n.ref,u=n.defId;t.def=pn({},t.schema),u&&(t.defId=u);var a=t.schema;for(var i in a)delete a[i];a.$ref=r}};if("throw"===c.cycles){var d,p=an(this.seen.entries());try{for(p.s();!(d=p.n()).done;){var h,v=d.value[1];if(v.cycle)throw new Error("Cycle detected: "+"#/".concat(null===(h=v.cycle)||void 0===h?void 0:h.join("/"),"/")+'\n\nSet the `cycles` parameter to `"ref"` to resolve cyclical schemas with defs.')}}catch(e){p.e(e)}finally{p.f()}}var m,D=an(this.seen.entries());try{for(D.s();!(m=D.n()).done;){var y,g=m.value,F=g[1];if(e!==g[0]){if(c.external){var E,_=null===(E=c.external.registry.get(g[0]))||void 0===E?void 0:E.id;if(e!==g[0]&&_){f(g);continue}}((null===(y=this.metadataRegistry.get(g[0]))||void 0===y?void 0:y.id)||F.cycle||F.count>1&&"ref"===c.reused)&&f(g)}else f(g)}}catch(e){D.e(e)}finally{D.f()}var b,C=function(e,t){var n,r,u=s.seen.get(e),a=null!==(n=u.def)&&void 0!==n?n:u.schema,i=pn({},a);if(null!==u.ref){var o=u.ref;if(u.ref=null,o){C(o,t);var c,l=s.seen.get(o).schema;!l.$ref||"draft-7"!==t.target&&"draft-4"!==t.target&&"openapi-3.0"!==t.target?(Object.assign(a,l),Object.assign(a,i)):(a.allOf=null!==(c=a.allOf)&&void 0!==c?c:[],a.allOf.push(l))}u.isParent||s.override({zodSchema:e,jsonSchema:a,path:null!==(r=u.path)&&void 0!==r?r:[]})}},k=an(gn(this.seen.entries()).reverse());try{for(k.s();!(b=k.n()).done;){var A=b.value;C(A[0],{target:this.target})}}catch(e){k.e(e)}finally{k.f()}var w={};if("draft-2020-12"===this.target?w.$schema="https://json-schema.org/draft/2020-12/schema":"draft-7"===this.target?w.$schema="http://json-schema.org/draft-07/schema#":"draft-4"===this.target?w.$schema="http://json-schema.org/draft-04/schema#":"openapi-3.0"===this.target||console.warn("Invalid target: ".concat(this.target)),null!==(a=c.external)&&void 0!==a&&a.uri){var S,x=null===(S=c.external.registry.get(e))||void 0===S?void 0:S.id;if(!x)throw new Error("Schema is missing an `id` property");w.$id=c.external.uri(x)}Object.assign(w,l.def);var O,B=null!==(i=null===(o=c.external)||void 0===o?void 0:o.defs)&&void 0!==i?i:{},I=an(this.seen.entries());try{for(I.s();!(O=I.n()).done;){var T=O.value[1];T.def&&T.defId&&(B[T.defId]=T.def)}}catch(e){I.e(e)}finally{I.f()}c.external||Object.keys(B).length>0&&("draft-2020-12"===this.target?w.$defs=B:w.definitions=B);try{return JSON.parse(JSON.stringify(w))}catch(e){throw new Error("Error converting schema to JSON.")}}}]);function Cf(e,t){var n=null!=t?t:{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);var r=e._zod.def;switch(r.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":case"custom":case"success":case"catch":case"function":return!1;case"array":return Cf(r.element,n);case"object":for(var u in r.shape)if(Cf(r.shape[u],n))return!0;return!1;case"union":var a,i=an(r.options);try{for(i.s();!(a=i.n()).done;)if(Cf(a.value,n))return!0}catch(e){i.e(e)}finally{i.f()}return!1;case"intersection":return Cf(r.left,n)||Cf(r.right,n);case"tuple":var o,s=an(r.items);try{for(s.s();!(o=s.n()).done;)if(Cf(o.value,n))return!0}catch(e){s.e(e)}finally{s.f()}return!(!r.rest||!Cf(r.rest,n));case"record":case"map":return Cf(r.keyType,n)||Cf(r.valueType,n);case"set":return Cf(r.valueType,n);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":case"default":case"prefault":return Cf(r.innerType,n);case"lazy":return Cf(r.getter(),n);case"transform":return!0;case"pipe":return Cf(r.in,n)||Cf(r.out,n)}throw new Error("Unknown schema type: ".concat(r.type))}var kf=Object.freeze({__proto__:null,endsWith:Df,gt:af,gte:of,includes:vf,length:ff,lowercase:pf,lt:rf,lte:uf,maxLength:cf,maxSize:function(e,t){return new bc(pn(pn({check:"max_size"},As(t)),{},{maximum:e}))},mime:function(e,t){return new Rc(pn({check:"mime_type",mime:e},As(t)))},minLength:lf,minSize:function(e,t){return new Cc(pn(pn({check:"min_size"},As(t)),{},{minimum:e}))},multipleOf:sf,negative:function(e){return rf(0,e)},nonnegative:function(e){return of(0,e)},nonpositive:function(e){return uf(0,e)},normalize:gf,overwrite:yf,positive:function(e){return af(0,e)},property:function(e,t,n){return new zc(pn({check:"property",property:e,schema:t},As(n)))},regex:df,size:function(e,t){return new kc(pn(pn({check:"size_equals"},As(t)),{},{size:e}))},startsWith:mf,toLowerCase:Ef,toUpperCase:_f,trim:Ff,uppercase:hf}),Af=rs("ZodISODateTime",function(e,t){nl.init(e,t),Wf.init(e,t)});var wf=rs("ZodISODate",function(e,t){rl.init(e,t),Wf.init(e,t)});var Sf=rs("ZodISOTime",function(e,t){ul.init(e,t),Wf.init(e,t)});var xf=rs("ZodISODuration",function(e,t){al.init(e,t),Wf.init(e,t)});var Of=rs("ZodError",function(e,t){Ns.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:function(t){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},n={_errors:[]},r=function(e){var u,a=an(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if("invalid_union"===i.code&&i.errors.length)i.errors.map(function(e){return r({issues:e})});else if("invalid_key"===i.code)r({issues:i.issues});else if("invalid_element"===i.code)r({issues:i.issues});else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},r={},u=[],a=an(e.issues);try{for(a.s();!(t=a.n()).done;){var i=t.value;i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(n(i))):u.push(n(i))}}catch(e){a.e(e)}finally{a.f()}return{formErrors:u,fieldErrors:r}}(e,t)}},addIssue:{value:function(t){e.issues.push(t),e.message=JSON.stringify(e.issues,cs,2)}},addIssues:{value:function(t){var n;(n=e.issues).push.apply(n,gn(t)),e.message=JSON.stringify(e.issues,cs,2)}},isEmpty:{get:function(){return 0===e.issues.length}}})},{Parent:Error}),Bf=Rs(Of),If=Ms(Of),Tf=Zs(Of),Pf=$s(Of),jf=function(e){return function(t,n,r){var u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Rs(e)(t,n,u)}}(Of),Nf=function(e){return function(t,n,r){return Rs(e)(t,n,r)}}(Of),zf=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){var a;return vn().w(function(t){for(;;)if(0===t.n)return a=u?Object.assign(u,{direction:"backward"}):{direction:"backward"},t.a(2,Ms(e)(n,r,a))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),Rf=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){return vn().w(function(t){for(;;)if(0===t.n)return t.a(2,Ms(e)(n,r,u))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),Mf=function(e){return function(t,n,r){var u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Zs(e)(t,n,u)}}(Of),Zf=function(e){return function(t,n,r){return Zs(e)(t,n,r)}}(Of),Lf=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){var a;return vn().w(function(t){for(;;)if(0===t.n)return a=u?Object.assign(u,{direction:"backward"}):{direction:"backward"},t.a(2,$s(e)(n,r,a))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),$f=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){return vn().w(function(t){for(;;)if(0===t.n)return t.a(2,$s(e)(n,r,u))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),qf=rs("ZodType",function(e,t){return $c.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=function(){for(var n,r=arguments.length,u=new Array(r),a=0;a1&&void 0!==arguments[1]?arguments[1]:{})}(t,n))},e.superRefine=function(t){return e.check(function(e){var t=function(e){var t=new Dc(pn({check:"custom"},As(void 0)));return t._zod.check=e,t}(function(n){return n.addIssue=function(e){if("string"==typeof e)n.issues.push(Ps(e,n.value,t._zod.def));else{var r,u,a,i,o=e;o.fatal&&(o.continue=!1),null!==(r=o.code)&&void 0!==r||(o.code="custom"),null!==(u=o.input)&&void 0!==u||(o.input=n.value),null!==(a=o.inst)&&void 0!==a||(o.inst=t),null!==(i=o.continue)&&void 0!==i||(o.continue=!t._zod.def.abort),n.issues.push(Ps(o))}},e(n.value,n)});return t}(t))},e.overwrite=function(t){return e.check(yf(t))},e.optional=function(){return $d(e)},e.nullable=function(){return Ud(e)},e.nullish=function(){return $d(Ud(e))},e.nonoptional=function(t){return function(e,t){return new Wd(pn({type:"nonoptional",innerType:e},As(t)))}(e,t)},e.array=function(){return Ad(e)},e.or=function(t){return Bd([e,t])},e.and=function(t){return new Td({type:"intersection",left:e,right:t})},e.transform=function(t){return Qd(e,new Zd({type:"transform",transform:t}))},e.default=function(t){return n=t,new Hd({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():_s(n)}});var n},e.prefault=function(t){return n=t,new Vd({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():_s(n)}});var n},e.catch=function(t){return new Kd({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:function(){return n}});var n},e.pipe=function(t){return Qd(e,t)},e.readonly=function(){return new Xd({type:"readonly",innerType:e})},e.describe=function(t){var n=e.clone();return tf.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:function(){var t;return null===(t=tf.get(e))||void 0===t?void 0:t.description},configurable:!0}),e.meta=function(){if(0===arguments.length)return tf.get(e);var t=e.clone();return tf.add(t,arguments.length<=0?void 0:arguments[0]),t},e.isOptional=function(){return e.safeParse(void 0).success},e.isNullable=function(){return e.safeParse(null).success},e}),Uf=rs("_ZodString",function(e,t){var n,r,u;qc.init(e,t),qf.init(e,t);var a=e._zod.bag;e.format=null!==(n=a.format)&&void 0!==n?n:null,e.minLength=null!==(r=a.minimum)&&void 0!==r?r:null,e.maxLength=null!==(u=a.maximum)&&void 0!==u?u:null,e.regex=function(){return e.check(df.apply(kf,arguments))},e.includes=function(){return e.check(vf.apply(kf,arguments))},e.startsWith=function(){return e.check(mf.apply(kf,arguments))},e.endsWith=function(){return e.check(Df.apply(kf,arguments))},e.min=function(){return e.check(lf.apply(kf,arguments))},e.max=function(){return e.check(cf.apply(kf,arguments))},e.length=function(){return e.check(ff.apply(kf,arguments))},e.nonempty=function(){for(var t=arguments.length,n=new Array(t),r=0;r0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");var r=ms(e._zod.def,{get shape(){var n=pn(pn({},e._zod.def.shape),t);return vs(this,"shape",n),n},checks:[]});return ks(e,r)}(e,t)},e.safeExtend=function(t){return function(e,t){if(!Es(t))throw new Error("Invalid input to safeExtend: expected a plain object");var n=pn(pn({},e._zod.def),{},{get shape(){var n=pn(pn({},e._zod.def.shape),t);return vs(this,"shape",n),n},checks:e._zod.def.checks});return ks(e,n)}(e,t)},e.merge=function(t){return function(e,t){var n=ms(e._zod.def,{get shape(){var n=pn(pn({},e._zod.def.shape),t._zod.def.shape);return vs(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return ks(e,n)}(e,t)},e.pick=function(t){return function(e,t){var n=e._zod.def;return ks(e,ms(e._zod.def,{get shape(){var e={};for(var r in t){if(!(r in n.shape))throw new Error('Unrecognized key: "'.concat(r,'"'));t[r]&&(e[r]=n.shape[r])}return vs(this,"shape",e),e},checks:[]}))}(e,t)},e.omit=function(t){return function(e,t){var n=e._zod.def,r=ms(e._zod.def,{get shape(){var r=pn({},e._zod.def.shape);for(var u in t){if(!(u in n.shape))throw new Error('Unrecognized key: "'.concat(u,'"'));t[u]&&delete r[u]}return vs(this,"shape",r),r},checks:[]});return ks(e,r)}(e,t)},e.partial=function(){return function(e,t,n){var r=ms(t._zod.def,{get shape(){var r=t._zod.def.shape,u=pn({},r);if(n)for(var a in n){if(!(a in r))throw new Error('Unrecognized key: "'.concat(a,'"'));n[a]&&(u[a]=new e({type:"optional",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:"optional",innerType:r[i]});return vs(this,"shape",u),u},checks:[]});return ks(t,r)}(Ld,e,arguments.length<=0?void 0:arguments[0])},e.required=function(){return function(e,t,n){var r=ms(t._zod.def,{get shape(){var r=t._zod.def.shape,u=pn({},r);if(n)for(var a in n){if(!(a in u))throw new Error('Unrecognized key: "'.concat(a,'"'));n[a]&&(u[a]=new e({type:"nonoptional",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:"nonoptional",innerType:r[i]});return vs(this,"shape",u),u},checks:[]});return ks(t,r)}(Wd,e,arguments.length<=0?void 0:arguments[0])}});function Sd(e,t){var n=pn({type:"object",shape:null!=e?e:{}},As(t));return new wd(n)}function xd(e,t){return new wd(pn({type:"object",shape:e,catchall:Cd()},As(t)))}var Od=rs("ZodUnion",function(e,t){xl.init(e,t),qf.init(e,t),e.options=t.options});function Bd(e,t){return new Od(pn({type:"union",options:e},As(t)))}var Id=rs("ZodDiscriminatedUnion",function(e,t){Od.init(e,t),Ol.init(e,t)}),Td=rs("ZodIntersection",function(e,t){Bl.init(e,t),qf.init(e,t)}),Pd=rs("ZodRecord",function(e,t){Pl.init(e,t),qf.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function jd(e,t,n){return new Pd(pn({type:"record",keyType:e,valueType:t},As(n)))}var Nd=rs("ZodEnum",function(e,t){jl.init(e,t),qf.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);var n=new Set(Object.keys(t.entries));e.extract=function(e,r){var u,a={},i=an(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error("Key ".concat(o," not found in enum"));a[o]=t.entries[o]}}catch(e){i.e(e)}finally{i.f()}return new Nd(pn(pn(pn({},t),{},{checks:[]},As(r)),{},{entries:a}))},e.exclude=function(e,r){var u,a=pn({},t.entries),i=an(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error("Key ".concat(o," not found in enum"));delete a[o]}}catch(e){i.e(e)}finally{i.f()}return new Nd(pn(pn(pn({},t),{},{checks:[]},As(r)),{},{entries:a}))}});function zd(e,t){var n=Array.isArray(e)?Object.fromEntries(e.map(function(e){return[e,e]})):e;return new Nd(pn({type:"enum",entries:n},As(t)))}var Rd=rs("ZodLiteral",function(e,t){Nl.init(e,t),qf.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get:function(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Md(e,t){return new Rd(pn({type:"literal",values:Array.isArray(e)?e:[e]},As(t)))}var Zd=rs("ZodTransform",function(e,t){zl.init(e,t),qf.init(e,t),e._zod.parse=function(n,r){if("backward"===r.direction)throw new as(e.constructor.name);n.addIssue=function(r){if("string"==typeof r)n.issues.push(Ps(r,n.value,t));else{var u,a,i,o=r;o.fatal&&(o.continue=!1),null!==(u=o.code)&&void 0!==u||(o.code="custom"),null!==(a=o.input)&&void 0!==a||(o.input=n.value),null!==(i=o.inst)&&void 0!==i||(o.inst=e),n.issues.push(Ps(o))}};var u=t.transform(n.value,n);return u instanceof Promise?u.then(function(e){return n.value=e,n}):(n.value=u,n)}}),Ld=rs("ZodOptional",function(e,t){Ml.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function $d(e){return new Ld({type:"optional",innerType:e})}var qd=rs("ZodNullable",function(e,t){Zl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function Ud(e){return new qd({type:"nullable",innerType:e})}var Hd=rs("ZodDefault",function(e,t){Ll.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeDefault=e.unwrap}),Vd=rs("ZodPrefault",function(e,t){ql.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}}),Wd=rs("ZodNonOptional",function(e,t){Ul.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}}),Kd=rs("ZodCatch",function(e,t){Vl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeCatch=e.unwrap}),Jd=rs("ZodPipe",function(e,t){Wl.init(e,t),qf.init(e,t),e.in=t.in,e.out=t.out});function Qd(e,t){return new Jd({type:"pipe",in:e,out:t})}var Gd,Yd,Xd=rs("ZodReadonly",function(e,t){Jl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}}),ep=rs("ZodLazy",function(e,t){Gl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.getter()}}),tp=rs("ZodCustom",function(e,t){Yl.init(e,t),qf.init(e,t)});function np(e,t){return function(e,t,n){var r,u=As(n);return null!==(r=u.abort)&&void 0!==r||(u.abort=!0),new e(pn({type:"custom",check:"custom",fn:t},u))}(tp,null!=e?e:function(){return!0},t)}function rp(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{error:"Input not instance of ".concat(e.name)},n=new tp(pn({type:"custom",check:"custom",fn:function(t){return t instanceof e},abort:!0},As(t)));return n._zod.bag.Class=e,n}!function(e){e.assertEqual=function(e){},e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=function(e){var t,n={},r=an(e);try{for(r.s();!(t=r.n()).done;){var u=t.value;n[u]=u}}catch(e){r.e(e)}finally{r.f()}return n},e.getValidEnumValues=function(t){var n,r={},u=an(e.objectKeys(t).filter(function(e){return"number"!=typeof t[t[e]]}));try{for(u.s();!(n=u.n()).done;){var a=n.value;r[a]=t[a]}}catch(e){u.e(e)}finally{u.f()}return e.objectValues(r)},e.objectValues=function(t){return e.objectKeys(t).map(function(e){return t[e]})},e.objectKeys="function"==typeof Object.keys?function(e){return Object.keys(e)}:function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=function(e,t){var n,r=an(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if(t(u))return u}}catch(e){r.e(e)}finally{r.f()}},e.isInteger="function"==typeof Number.isInteger?function(e){return Number.isInteger(e)}:function(e){return"number"==typeof e&&Number.isFinite(e)&&Math.floor(e)===e},e.joinValues=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" | ";return e.map(function(e){return"string"==typeof e?"'".concat(e,"'"):e}).join(t)},e.jsonStringifyReplacer=function(e,t){return"bigint"==typeof t?t.toString():t}}(Gd||(Gd={})),(Yd||(Yd={})).mergeShapes=function(e,t){return pn(pn({},e),t)};var up=Gd.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ap=function(e){switch(En(e)){case"undefined":return up.undefined;case"string":return up.string;case"number":return Number.isNaN(e)?up.nan:up.number;case"boolean":return up.boolean;case"function":return up.function;case"bigint":return up.bigint;case"symbol":return up.symbol;case"object":return Array.isArray(e)?up.array:null===e?up.null:e.then&&"function"==typeof e.then&&e.catch&&"function"==typeof e.catch?up.promise:"undefined"!=typeof Map&&e instanceof Map?up.map:"undefined"!=typeof Set&&e instanceof Set?up.set:"undefined"!=typeof Date&&e instanceof Date?up.date:up.object;default:return up.unknown}},ip=Gd.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),op=function(){function e(t){var n;tn(this,e),(n=en(this,e)).issues=[],n.addIssue=function(e){n.issues=[].concat(gn(n.issues),[e])},n.addIssues=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];n.issues=[].concat(gn(n.issues),gn(e))};var r=(this instanceof e?this.constructor:void 0).prototype;return Object.setPrototypeOf?Object.setPrototypeOf(n,r):n.__proto__=r,n.name="ZodError",n.issues=t,n}return ln(e,bn(Error)),un(e,[{key:"errors",get:function(){return this.issues}},{key:"format",value:function(e){var t=e||function(e){return e.message},n={_errors:[]},r=function(e){var u,a=an(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if("invalid_union"===i.code)i.unionErrors.map(r);else if("invalid_return_type"===i.code)r(i.returnTypeError);else if("invalid_arguments"===i.code)r(i.argumentsError);else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s0&&void 0!==arguments[0]?arguments[0]:function(e){return e.message},n=Object.create(null),r=[],u=an(this.issues);try{for(u.s();!(e=u.n()).done;){var a=e.value;if(a.path.length>0){var i=a.path[0];n[i]=n[i]||[],n[i].push(t(a))}else r.push(t(a))}}catch(e){u.e(e)}finally{u.f()}return{formErrors:r,fieldErrors:n}}},{key:"formErrors",get:function(){return this.flatten()}}],[{key:"assert",value:function(t){if(!(t instanceof e))throw new Error("Not a ZodError: ".concat(t))}}])}();op.create=function(e){return new op(e)};var sp=function(e,t){var n;switch(e.code){case ip.invalid_type:n=e.received===up.undefined?"Required":"Expected ".concat(e.expected,", received ").concat(e.received);break;case ip.invalid_literal:n="Invalid literal value, expected ".concat(JSON.stringify(e.expected,Gd.jsonStringifyReplacer));break;case ip.unrecognized_keys:n="Unrecognized key(s) in object: ".concat(Gd.joinValues(e.keys,", "));break;case ip.invalid_union:n="Invalid input";break;case ip.invalid_union_discriminator:n="Invalid discriminator value. Expected ".concat(Gd.joinValues(e.options));break;case ip.invalid_enum_value:n="Invalid enum value. Expected ".concat(Gd.joinValues(e.options),", received '").concat(e.received,"'");break;case ip.invalid_arguments:n="Invalid function arguments";break;case ip.invalid_return_type:n="Invalid function return type";break;case ip.invalid_date:n="Invalid date";break;case ip.invalid_string:"object"===En(e.validation)?"includes"in e.validation?(n='Invalid input: must include "'.concat(e.validation.includes,'"'),"number"==typeof e.validation.position&&(n="".concat(n," at one or more positions greater than or equal to ").concat(e.validation.position))):"startsWith"in e.validation?n='Invalid input: must start with "'.concat(e.validation.startsWith,'"'):"endsWith"in e.validation?n='Invalid input: must end with "'.concat(e.validation.endsWith,'"'):Gd.assertNever(e.validation):n="regex"!==e.validation?"Invalid ".concat(e.validation):"Invalid";break;case ip.too_small:n="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"more than"," ").concat(e.minimum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"over"," ").concat(e.minimum," character(s)"):"number"===e.type||"bigint"===e.type?"Number must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(e.minimum):"date"===e.type?"Date must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(new Date(Number(e.minimum))):"Invalid input";break;case ip.too_big:n="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"less than"," ").concat(e.maximum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"under"," ").concat(e.maximum," character(s)"):"number"===e.type?"Number must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"bigint"===e.type?"BigInt must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"date"===e.type?"Date must be ".concat(e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"," ").concat(new Date(Number(e.maximum))):"Invalid input";break;case ip.custom:n="Invalid input";break;case ip.invalid_intersection_types:n="Intersection results could not be merged";break;case ip.not_multiple_of:n="Number must be a multiple of ".concat(e.multipleOf);break;case ip.not_finite:n="Number must be finite";break;default:n=t.defaultError,Gd.assertNever(e)}return{message:n}},cp=sp;function lp(){return cp}var fp=function(e){var t=e.data,n=e.path,r=e.errorMaps,u=e.issueData,a=[].concat(gn(n),gn(u.path||[])),i=pn(pn({},u),{},{path:a});if(void 0!==u.message)return pn(pn({},u),{},{path:a,message:u.message});var o,s="",c=r.filter(function(e){return!!e}).slice().reverse(),l=an(c);try{for(l.s();!(o=l.n()).done;)s=(0,o.value)(i,{data:t,defaultError:s}).message}catch(e){l.e(e)}finally{l.f()}return pn(pn({},u),{},{path:a,message:s})};function dp(e,t){var n=lp(),r=fp({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===sp?void 0:sp].filter(function(e){return!!e})});e.common.issues.push(r)}var pp,hp=function(){function e(){tn(this,e),this.value="valid"}return un(e,[{key:"dirty",value:function(){"valid"===this.value&&(this.value="dirty")}},{key:"abort",value:function(){"aborted"!==this.value&&(this.value="aborted")}}],[{key:"mergeArray",value:function(e,t){var n,r=[],u=an(t);try{for(u.s();!(n=u.n()).done;){var a=n.value;if("aborted"===a.status)return vp;"dirty"===a.status&&e.dirty(),r.push(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}},{key:"mergeObjectAsync",value:(t=Xt(vn().m(function t(n,r){var u,a,i,o,s,c,l;return vn().w(function(t){for(;;)switch(t.p=t.n){case 0:u=[],a=an(r),t.p=1,a.s();case 2:if((i=a.n()).done){t.n=6;break}return o=i.value,t.n=3,o.key;case 3:return s=t.v,t.n=4,o.value;case 4:c=t.v,u.push({key:s,value:c});case 5:t.n=2;break;case 6:t.n=8;break;case 7:t.p=7,l=t.v,a.e(l);case 8:return t.p=8,a.f(),t.f(8);case 9:return t.a(2,e.mergeObjectSync(n,u))}},t,null,[[1,7,8,9]])})),function(e,n){return t.apply(this,arguments)})},{key:"mergeObjectSync",value:function(e,t){var n,r={},u=an(t);try{for(u.s();!(n=u.n()).done;){var a=n.value,i=a.key,o=a.value;if("aborted"===i.status)return vp;if("aborted"===o.status)return vp;"dirty"===i.status&&e.dirty(),"dirty"===o.status&&e.dirty(),"__proto__"===i.value||void 0===o.value&&!a.alwaysSet||(r[i.value]=o.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}}]);var t}(),vp=Object.freeze({status:"aborted"}),mp=function(e){return{status:"dirty",value:e}},Dp=function(e){return{status:"valid",value:e}},yp=function(e){return"aborted"===e.status},gp=function(e){return"dirty"===e.status},Fp=function(e){return"valid"===e.status},Ep=function(e){return"undefined"!=typeof Promise&&e instanceof Promise};!function(e){e.errToObj=function(e){return"string"==typeof e?{message:e}:e||{}},e.toString=function(e){return"string"==typeof e?e:null==e?void 0:e.message}}(pp||(pp={}));var _p=un(function e(t,n,r,u){tn(this,e),this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=u},[{key:"path",get:function(){var e,t;return this._cachedPath.length||(Array.isArray(this._key)?(e=this._cachedPath).push.apply(e,gn(this._path).concat(gn(this._key))):(t=this._cachedPath).push.apply(t,gn(this._path).concat([this._key]))),this._cachedPath}}]),bp=function(e,t){if(Fp(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;var t=new op(e.common.issues);return this._error=t,this._error}}};function Cp(e){if(!e)return{};var t=e.errorMap,n=e.invalid_type_error,r=e.required_error,u=e.description;if(t&&(n||r))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');return t?{errorMap:t,description:u}:{errorMap:function(t,u){var a,i,o=e.message;return"invalid_enum_value"===t.code?{message:null!=o?o:u.defaultError}:void 0===u.data?{message:null!==(i=null!=o?o:r)&&void 0!==i?i:u.defaultError}:"invalid_type"!==t.code?{message:u.defaultError}:{message:null!==(a=null!=o?o:n)&&void 0!==a?a:u.defaultError}},description:u}}var kp,Ap=function(){return un(function e(t){var n=this;tn(this,e),this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:function(e){return n["~validate"](e)}}},[{key:"description",get:function(){return this._def.description}},{key:"_getType",value:function(e){return ap(e.data)}},{key:"_getOrReturnCtx",value:function(e,t){return t||{common:e.parent.common,data:e.data,parsedType:ap(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}},{key:"_processInputParams",value:function(e){return{status:new hp,ctx:{common:e.parent.common,data:e.data,parsedType:ap(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}},{key:"_parseSync",value:function(e){var t=this._parse(e);if(Ep(t))throw new Error("Synchronous parse encountered promise.");return t}},{key:"_parseAsync",value:function(e){var t=this._parse(e);return Promise.resolve(t)}},{key:"parse",value:function(e,t){var n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}},{key:"safeParse",value:function(e,t){var n,r={common:{issues:[],async:null!==(n=null==t?void 0:t.async)&&void 0!==n&&n,contextualErrorMap:null==t?void 0:t.errorMap},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ap(e)},u=this._parseSync({data:e,path:r.path,parent:r});return bp(r,u)}},{key:"~validate",value:function(e){var t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ap(e)};if(!this["~standard"].async)try{var n=this._parseSync({data:e,path:[],parent:t});return Fp(n)?{value:n.value}:{issues:t.common.issues}}catch(e){var r;null!=e&&null!==(r=e.message)&&void 0!==r&&null!==(r=r.toLowerCase())&&void 0!==r&&r.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(function(e){return Fp(e)?{value:e.value}:{issues:t.common.issues}})}},{key:"parseAsync",value:(e=Xt(vn().m(function e(t,n){var r;return vn().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.safeParseAsync(t,n);case 1:if(!(r=e.v).success){e.n=2;break}return e.a(2,r.data);case 2:throw r.error;case 3:return e.a(2)}},e,this)})),function(t,n){return e.apply(this,arguments)})},{key:"safeParseAsync",value:function(){var e=Xt(vn().m(function e(t,n){var r,u,a;return vn().w(function(e){for(;;)switch(e.n){case 0:return r={common:{issues:[],contextualErrorMap:null==n?void 0:n.errorMap,async:!0},path:(null==n?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:ap(t)},u=this._parse({data:t,path:r.path,parent:r}),e.n=1,Ep(u)?u:Promise.resolve(u);case 1:return a=e.v,e.a(2,bp(r,a))}},e,this)}));return function(t,n){return e.apply(this,arguments)}}()},{key:"refine",value:function(e,t){return this._refinement(function(n,r){var u=e(n),a=function(){return r.addIssue(pn({code:ip.custom},function(e){return"string"==typeof t||void 0===t?{message:t}:"function"==typeof t?t(e):t}(n)))};return"undefined"!=typeof Promise&&u instanceof Promise?u.then(function(e){return!!e||(a(),!1)}):!!u||(a(),!1)})}},{key:"refinement",value:function(e,t){return this._refinement(function(n,r){return!!e(n)||(r.addIssue("function"==typeof t?t(n,r):t),!1)})}},{key:"_refinement",value:function(e){return new wh({schema:this,typeName:Th.ZodEffects,effect:{type:"refinement",refinement:e}})}},{key:"superRefine",value:function(e){return this._refinement(e)}},{key:"optional",value:function(){return Sh.create(this,this._def)}},{key:"nullable",value:function(){return xh.create(this,this._def)}},{key:"nullish",value:function(){return this.nullable().optional()}},{key:"array",value:function(){return sh.create(this)}},{key:"promise",value:function(){return Ah.create(this,this._def)}},{key:"or",value:function(e){return fh.create([this,e],this._def)}},{key:"and",value:function(e){return vh.create(this,e,this._def)}},{key:"transform",value:function(e){return new wh(pn(pn({},Cp(this._def)),{},{schema:this,typeName:Th.ZodEffects,effect:{type:"transform",transform:e}}))}},{key:"default",value:function(e){var t="function"==typeof e?e:function(){return e};return new Oh(pn(pn({},Cp(this._def)),{},{innerType:this,defaultValue:t,typeName:Th.ZodDefault}))}},{key:"brand",value:function(){return new Ph(pn({typeName:Th.ZodBranded,type:this},Cp(this._def)))}},{key:"catch",value:function(e){var t="function"==typeof e?e:function(){return e};return new Bh(pn(pn({},Cp(this._def)),{},{innerType:this,catchValue:t,typeName:Th.ZodCatch}))}},{key:"describe",value:function(e){return new this.constructor(pn(pn({},this._def),{},{description:e}))}},{key:"pipe",value:function(e){return jh.create(this,e)}},{key:"readonly",value:function(){return Nh.create(this)}},{key:"isOptional",value:function(){return this.safeParse(void 0).success}},{key:"isNullable",value:function(){return this.safeParse(null).success}}]);var e}(),wp=/^c[^\s-]{8,}$/i,Sp=/^[0-9a-z]+$/,xp=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Op=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Bp=/^[a-z0-9_-]{21}$/i,Ip=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Tp=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Pp=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,jp=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Np=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,zp=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Rp=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Mp=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Zp=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Lp="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",$p=new RegExp("^".concat(Lp,"$"));function qp(e){var t="[0-5]\\d";e.precision?t="".concat(t,"\\.\\d{").concat(e.precision,"}"):null==e.precision&&(t="".concat(t,"(\\.\\d+)?"));var n=e.precision?"+":"?";return"([01]\\d|2[0-3]):[0-5]\\d(:".concat(t,")").concat(n)}function Up(e){return new RegExp("^".concat(qp(e),"$"))}function Hp(e){var t="".concat(Lp,"T").concat(qp(e)),n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t="".concat(t,"(").concat(n.join("|"),")"),new RegExp("^".concat(t,"$"))}function Vp(e,t){return!("v4"!==t&&t||!jp.test(e))||!("v6"!==t&&t||!zp.test(e))}function Wp(e,t){if(!Ip.test(e))return!1;try{var n=yn(e.split("."),1)[0];if(!n)return!1;var r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),u=JSON.parse(atob(r));return!("object"!==En(u)||null===u||"typ"in u&&"JWT"!==(null==u?void 0:u.typ)||!u.alg||t&&u.alg!==t)}catch(e){return!1}}function Kp(e,t){return!("v4"!==t&&t||!Np.test(e))||!("v6"!==t&&t||!Rp.test(e))}var Jp=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==up.string){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.string,received:t.parsedType}),vp}var n,r=new hp,u=void 0,a=an(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;if("min"===i.kind)e.data.lengthi.value&&(dp(u=this._getOrReturnCtx(e,u),{code:ip.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if("length"===i.kind){var o=e.data.length>i.value,s=e.data.lengtht)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"maxLength",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valuer?n:r;return Number.parseInt(e.toFixed(u).replace(".",""))%Number.parseInt(t.toFixed(u).replace(".",""))/Math.pow(10,u)}Jp.create=function(e){var t;return new Jp(pn({checks:[],typeName:Th.ZodString,coerce:null!==(t=null==e?void 0:e.coerce)&&void 0!==t&&t},Cp(e)))};var Gp=function(){function e(){var t;return tn(this,e),(t=en(this,e,arguments)).min=t.gte,t.max=t.lte,t.step=t.multipleOf,t}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==up.number){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.number,received:t.parsedType}),vp}var n,r=void 0,u=new hp,a=an(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;"int"===i.kind?Gd.isInteger(e.data)||(dp(r=this._getOrReturnCtx(e,r),{code:ip.invalid_type,expected:"integer",received:"float",message:i.message}),u.dirty()):"min"===i.kind?(i.inclusive?e.datai.value:e.data>=i.value)&&(dp(r=this._getOrReturnCtx(e,r),{code:ip.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),u.dirty()):"multipleOf"===i.kind?0!==Qp(e.data,i.value)&&(dp(r=this._getOrReturnCtx(e,r),{code:ip.not_multiple_of,multipleOf:i.value,message:i.message}),u.dirty()):"finite"===i.kind?Number.isFinite(e.data)||(dp(r=this._getOrReturnCtx(e,r),{code:ip.not_finite,message:i.message}),u.dirty()):Gd.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:u.value,value:e.data}}},{key:"gte",value:function(e,t){return this.setLimit("min",e,!0,pp.toString(t))}},{key:"gt",value:function(e,t){return this.setLimit("min",e,!1,pp.toString(t))}},{key:"lte",value:function(e,t){return this.setLimit("max",e,!0,pp.toString(t))}},{key:"lt",value:function(e,t){return this.setLimit("max",e,!1,pp.toString(t))}},{key:"setLimit",value:function(t,n,r,u){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[{kind:t,value:n,inclusive:r,message:pp.toString(u)}])}))}},{key:"_addCheck",value:function(t){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[t])}))}},{key:"int",value:function(e){return this._addCheck({kind:"int",message:pp.toString(e)})}},{key:"positive",value:function(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:pp.toString(e)})}},{key:"negative",value:function(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:pp.toString(e)})}},{key:"nonpositive",value:function(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:pp.toString(e)})}},{key:"nonnegative",value:function(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:pp.toString(e)})}},{key:"multipleOf",value:function(e,t){return this._addCheck({kind:"multipleOf",value:e,message:pp.toString(t)})}},{key:"finite",value:function(e){return this._addCheck({kind:"finite",message:pp.toString(e)})}},{key:"safe",value:function(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:pp.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:pp.toString(e)})}},{key:"minValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"min"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"maxValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valuen)&&(n=u.value):"max"===u.kind&&(null===t||u.valuea.value:e.data>=a.value)&&(dp(n=this._getOrReturnCtx(e,n),{code:ip.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty()):"multipleOf"===a.kind?e.data%a.value!==BigInt(0)&&(dp(n=this._getOrReturnCtx(e,n),{code:ip.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):Gd.assertNever(a)}}catch(e){u.e(e)}finally{u.f()}return{status:r.value,value:e.data}}},{key:"_getInvalidInput",value:function(e){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.bigint,received:t.parsedType}),vp}},{key:"gte",value:function(e,t){return this.setLimit("min",e,!0,pp.toString(t))}},{key:"gt",value:function(e,t){return this.setLimit("min",e,!1,pp.toString(t))}},{key:"lte",value:function(e,t){return this.setLimit("max",e,!0,pp.toString(t))}},{key:"lt",value:function(e,t){return this.setLimit("max",e,!1,pp.toString(t))}},{key:"setLimit",value:function(t,n,r,u){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[{kind:t,value:n,inclusive:r,message:pp.toString(u)}])}))}},{key:"_addCheck",value:function(t){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[t])}))}},{key:"positive",value:function(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:pp.toString(e)})}},{key:"negative",value:function(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:pp.toString(e)})}},{key:"nonpositive",value:function(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:pp.toString(e)})}},{key:"nonnegative",value:function(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:pp.toString(e)})}},{key:"multipleOf",value:function(e,t){return this._addCheck({kind:"multipleOf",value:e,message:pp.toString(t)})}},{key:"minValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"min"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"maxValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valuei.value&&(dp(u=this._getOrReturnCtx(e,u),{code:ip.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):Gd.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:r.value,value:new Date(e.data.getTime())}}},{key:"_addCheck",value:function(t){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[t])}))}},{key:"min",value:function(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:pp.toString(t)})}},{key:"max",value:function(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:pp.toString(t)})}},{key:"minDate",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"min"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return null!=t?new Date(t):null}},{key:"maxDate",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valueu.exactLength.value,i=n.data.lengthu.maxLength.value&&(dp(n,{code:ip.too_big,maximum:u.maxLength.value,type:"array",inclusive:!0,exact:!1,message:u.maxLength.message}),r.dirty()),n.common.async)return Promise.all(gn(n.data).map(function(e,t){return u.type._parseAsync(new _p(n,e,n.path,t))})).then(function(e){return hp.mergeArray(r,e)});var o=gn(n.data).map(function(e,t){return u.type._parseSync(new _p(n,e,n.path,t))});return hp.mergeArray(r,o)}},{key:"element",get:function(){return this._def.type}},{key:"min",value:function(t,n){return new e(pn(pn({},this._def),{},{minLength:{value:t,message:pp.toString(n)}}))}},{key:"max",value:function(t,n){return new e(pn(pn({},this._def),{},{maxLength:{value:t,message:pp.toString(n)}}))}},{key:"length",value:function(t,n){return new e(pn(pn({},this._def),{},{exactLength:{value:t,message:pp.toString(n)}}))}},{key:"nonempty",value:function(e){return this.min(1,e)}}])}();function ch(e){if(e instanceof lh){var t={};for(var n in e.shape){var r=e.shape[n];t[n]=Sh.create(ch(r))}return new lh(pn(pn({},e._def),{},{shape:function(){return t}}))}return e instanceof sh?new sh(pn(pn({},e._def),{},{type:ch(e.element)})):e instanceof Sh?Sh.create(ch(e.unwrap())):e instanceof xh?xh.create(ch(e.unwrap())):e instanceof mh?mh.create(e.items.map(function(e){return ch(e)})):e}sh.create=function(e,t){return new sh(pn({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Th.ZodArray},Cp(t)))};var lh=function(){function e(){var t;return tn(this,e),(t=en(this,e,arguments))._cached=null,t.nonstrict=t.passthrough,t.augment=t.extend,t}return ln(e,Ap),un(e,[{key:"_getCached",value:function(){if(null!==this._cached)return this._cached;var e=this._def.shape(),t=Gd.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}},{key:"_parse",value:function(e){if(this._getType(e)!==up.object){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.object,received:t.parsedType}),vp}var n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._getCached(),i=a.shape,o=a.keys,s=[];if(!(this._def.catchall instanceof ih&&"strip"===this._def.unknownKeys))for(var c in u.data)o.includes(c)||s.push(c);var l,f=[],d=an(o);try{for(d.s();!(l=d.n()).done;){var p=l.value,h=i[p],v=u.data[p];f.push({key:{status:"valid",value:p},value:h._parse(new _p(u,v,u.path,p)),alwaysSet:p in u.data})}}catch(e){d.e(e)}finally{d.f()}if(this._def.catchall instanceof ih){var m=this._def.unknownKeys;if("passthrough"===m){var D,y=an(s);try{for(y.s();!(D=y.n()).done;){var g=D.value;f.push({key:{status:"valid",value:g},value:{status:"valid",value:u.data[g]}})}}catch(e){y.e(e)}finally{y.f()}}else if("strict"===m)s.length>0&&(dp(u,{code:ip.unrecognized_keys,keys:s}),r.dirty());else if("strip"!==m)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{var F,E=this._def.catchall,_=an(s);try{for(_.s();!(F=_.n()).done;){var b=F.value,C=u.data[b];f.push({key:{status:"valid",value:b},value:E._parse(new _p(u,C,u.path,b)),alwaysSet:b in u.data})}}catch(e){_.e(e)}finally{_.f()}}return u.common.async?Promise.resolve().then(Xt(vn().m(function e(){var t,n,r,u,a,i,o;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:t=[],n=an(f),e.p=1,n.s();case 2:if((r=n.n()).done){e.n=6;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:i=e.v,t.push({key:a,value:i,alwaysSet:u.alwaysSet});case 5:e.n=2;break;case 6:e.n=8;break;case 7:e.p=7,o=e.v,n.e(o);case 8:return e.p=8,n.f(),e.f(8);case 9:return e.a(2,t)}},e,null,[[1,7,8,9]])}))).then(function(e){return hp.mergeObjectSync(r,e)}):hp.mergeObjectSync(r,f)}},{key:"shape",get:function(){return this._def.shape()}},{key:"strict",value:function(t){var n=this;return pp.errToObj,new e(pn(pn({},this._def),{},{unknownKeys:"strict"},void 0!==t?{errorMap:function(e,r){var u,a,i,o,s=null!==(u=null===(a=(i=n._def).errorMap)||void 0===a?void 0:a.call(i,e,r).message)&&void 0!==u?u:r.defaultError;return"unrecognized_keys"===e.code?{message:null!==(o=pp.errToObj(t).message)&&void 0!==o?o:s}:{message:s}}}:{}))}},{key:"strip",value:function(){return new e(pn(pn({},this._def),{},{unknownKeys:"strip"}))}},{key:"passthrough",value:function(){return new e(pn(pn({},this._def),{},{unknownKeys:"passthrough"}))}},{key:"extend",value:function(t){var n=this;return new e(pn(pn({},this._def),{},{shape:function(){return pn(pn({},n._def.shape()),t)}}))}},{key:"merge",value:function(t){var n=this;return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:function(){return pn(pn({},n._def.shape()),t._def.shape())},typeName:Th.ZodObject})}},{key:"setKey",value:function(e,t){return this.augment(on({},e,t))}},{key:"catchall",value:function(t){return new e(pn(pn({},this._def),{},{catchall:t}))}},{key:"pick",value:function(t){var n,r={},u=an(Gd.objectKeys(t));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]&&this.shape[a]&&(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"omit",value:function(t){var n,r={},u=an(Gd.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]||(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"deepPartial",value:function(){return ch(this)}},{key:"partial",value:function(t){var n,r={},u=an(Gd.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value,i=this.shape[a];t&&!t[a]?r[a]=i:r[a]=i.optional()}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"required",value:function(t){var n,r={},u=an(Gd.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;if(t&&!t[a])r[a]=this.shape[a];else{for(var i=this.shape[a];i instanceof Sh;)i=i._def.innerType;r[a]=i}}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"keyof",value:function(){return bh(Gd.objectKeys(this.shape))}}])}();lh.create=function(e,t){return new lh(pn({shape:function(){return e},unknownKeys:"strip",catchall:ih.create(),typeName:Th.ZodObject},Cp(t)))},lh.strictCreate=function(e,t){return new lh(pn({shape:function(){return e},unknownKeys:"strict",catchall:ih.create(),typeName:Th.ZodObject},Cp(t)))},lh.lazycreate=function(e,t){return new lh(pn({shape:e,unknownKeys:"strip",catchall:ih.create(),typeName:Th.ZodObject},Cp(t)))};var fh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx,n=this._def.options;if(t.common.async)return Promise.all(n.map(function(){var e=Xt(vn().m(function e(n){var r,u,a;return vn().w(function(e){for(;;)switch(e.n){case 0:return r=pn(pn({},t),{},{common:pn(pn({},t.common),{},{issues:[]}),parent:null}),e.n=1,n._parseAsync({data:t.data,path:t.path,parent:r});case 1:return u=e.v,a=r,e.a(2,{result:u,ctx:a})}},e)}));return function(t){return e.apply(this,arguments)}}())).then(function(e){var n,r=an(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if("valid"===u.result.status)return u.result}}catch(e){r.e(e)}finally{r.f()}var a,i=an(e);try{for(i.s();!(a=i.n()).done;){var o,s=a.value;if("dirty"===s.result.status)return(o=t.common.issues).push.apply(o,gn(s.ctx.common.issues)),s.result}}catch(e){i.e(e)}finally{i.f()}var c=e.map(function(e){return new op(e.ctx.common.issues)});return dp(t,{code:ip.invalid_union,unionErrors:c}),vp});var r,u,a=void 0,i=[],o=an(n);try{for(o.s();!(r=o.n()).done;){var s=r.value,c=pn(pn({},t),{},{common:pn(pn({},t.common),{},{issues:[]}),parent:null}),l=s._parseSync({data:t.data,path:t.path,parent:c});if("valid"===l.status)return l;"dirty"!==l.status||a||(a={result:l,ctx:c}),c.common.issues.length&&i.push(c.common.issues)}}catch(e){o.e(e)}finally{o.f()}if(a)return(u=t.common.issues).push.apply(u,gn(a.ctx.common.issues)),a.result;var f=i.map(function(e){return new op(e)});return dp(t,{code:ip.invalid_union,unionErrors:f}),vp}},{key:"options",get:function(){return this._def.options}}])}();fh.create=function(e,t){return new fh(pn({options:e,typeName:Th.ZodUnion},Cp(t)))};var dh=function(e){return e instanceof Eh?dh(e.schema):e instanceof wh?dh(e.innerType()):e instanceof _h?[e.value]:e instanceof Ch?e.options:e instanceof kh?Gd.objectValues(e.enum):e instanceof Oh?dh(e._def.innerType):e instanceof nh?[void 0]:e instanceof rh?[null]:e instanceof Sh?[void 0].concat(gn(dh(e.unwrap()))):e instanceof xh?[null].concat(gn(dh(e.unwrap()))):e instanceof Ph||e instanceof Nh?dh(e.unwrap()):e instanceof Bh?dh(e._def.innerType):[]},ph=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==up.object)return dp(t,{code:ip.invalid_type,expected:up.object,received:t.parsedType}),vp;var n=this.discriminator,r=t.data[n],u=this.optionsMap.get(r);return u?t.common.async?u._parseAsync({data:t.data,path:t.path,parent:t}):u._parseSync({data:t.data,path:t.path,parent:t}):(dp(t,{code:ip.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),vp)}},{key:"discriminator",get:function(){return this._def.discriminator}},{key:"options",get:function(){return this._def.options}},{key:"optionsMap",get:function(){return this._def.optionsMap}}],[{key:"create",value:function(t,n,r){var u,a=new Map,i=an(n);try{for(i.s();!(u=i.n()).done;){var o=u.value,s=dh(o.shape[t]);if(!s.length)throw new Error("A discriminator value for key `".concat(t,"` could not be extracted from all schema options"));var c,l=an(s);try{for(l.s();!(c=l.n()).done;){var f=c.value;if(a.has(f))throw new Error("Discriminator property ".concat(String(t)," has duplicate value ").concat(String(f)));a.set(f,o)}}catch(e){l.e(e)}finally{l.f()}}}catch(e){i.e(e)}finally{i.f()}return new e(pn({typeName:Th.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:a},Cp(r)))}}])}();function hh(e,t){var n=ap(e),r=ap(t);if(e===t)return{valid:!0,data:e};if(n===up.object&&r===up.object){var u,a=Gd.objectKeys(t),i=Gd.objectKeys(e).filter(function(e){return-1!==a.indexOf(e)}),o=pn(pn({},e),t),s=an(i);try{for(s.s();!(u=s.n()).done;){var c=u.value,l=hh(e[c],t[c]);if(!l.valid)return{valid:!1};o[c]=l.data}}catch(e){s.e(e)}finally{s.f()}return{valid:!0,data:o}}if(n===up.array&&r===up.array){if(e.length!==t.length)return{valid:!1};for(var f=[],d=0;dthis._def.items.length&&(dp(u,{code:ip.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());var a=gn(u.data).map(function(e,n){var r=t._def.items[n]||t._def.rest;return r?r._parse(new _p(u,e,u.path,n)):null}).filter(function(e){return!!e});return u.common.async?Promise.all(a).then(function(e){return hp.mergeArray(r,e)}):hp.mergeArray(r,a)}},{key:"items",get:function(){return this._def.items}},{key:"rest",value:function(t){return new e(pn(pn({},this._def),{},{rest:t}))}}])}();mh.create=function(e,t){if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new mh(pn({items:e,typeName:Th.ZodTuple,rest:null},Cp(t)))};var Dh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"keySchema",get:function(){return this._def.keyType}},{key:"valueSchema",get:function(){return this._def.valueType}},{key:"_parse",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==up.object)return dp(r,{code:ip.invalid_type,expected:up.object,received:r.parsedType}),vp;var u=[],a=this._def.keyType,i=this._def.valueType;for(var o in r.data)u.push({key:a._parse(new _p(r,o,r.path,o)),value:i._parse(new _p(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?hp.mergeObjectAsync(n,u):hp.mergeObjectSync(n,u)}},{key:"element",get:function(){return this._def.valueType}}],[{key:"create",value:function(t,n,r){return new e(n instanceof Ap?pn({keyType:t,valueType:n,typeName:Th.ZodRecord},Cp(r)):pn({keyType:Jp.create(),valueType:t,typeName:Th.ZodRecord},Cp(n)))}}])}(),yh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"keySchema",get:function(){return this._def.keyType}},{key:"valueSchema",get:function(){return this._def.valueType}},{key:"_parse",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==up.map)return dp(r,{code:ip.invalid_type,expected:up.map,received:r.parsedType}),vp;var u=this._def.keyType,a=this._def.valueType,i=gn(r.data.entries()).map(function(e,t){var n=yn(e,2),i=n[0],o=n[1];return{key:u._parse(new _p(r,i,r.path,[t,"key"])),value:a._parse(new _p(r,o,r.path,[t,"value"]))}});if(r.common.async){var o=new Map;return Promise.resolve().then(Xt(vn().m(function e(){var t,r,u,a,s,c;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:t=an(i),e.p=1,t.s();case 2:if((r=t.n()).done){e.n=7;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:if(s=e.v,"aborted"!==a.status&&"aborted"!==s.status){e.n=5;break}return e.a(2,vp);case 5:"dirty"!==a.status&&"dirty"!==s.status||n.dirty(),o.set(a.value,s.value);case 6:e.n=2;break;case 7:e.n=9;break;case 8:e.p=8,c=e.v,t.e(c);case 9:return e.p=9,t.f(),e.f(9);case 10:return e.a(2,{status:n.value,value:o})}},e,null,[[1,8,9,10]])})))}var s,c=new Map,l=an(i);try{for(l.s();!(s=l.n()).done;){var f=s.value,d=f.key,p=f.value;if("aborted"===d.status||"aborted"===p.status)return vp;"dirty"!==d.status&&"dirty"!==p.status||n.dirty(),c.set(d.value,p.value)}}catch(e){l.e(e)}finally{l.f()}return{status:n.value,value:c}}}])}();yh.create=function(e,t,n){return new yh(pn({valueType:t,keyType:e,typeName:Th.ZodMap},Cp(n)))};var gh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==up.set)return dp(r,{code:ip.invalid_type,expected:up.set,received:r.parsedType}),vp;var u=this._def;null!==u.minSize&&r.data.sizeu.maxSize.value&&(dp(r,{code:ip.too_big,maximum:u.maxSize.value,type:"set",inclusive:!0,exact:!1,message:u.maxSize.message}),n.dirty());var a=this._def.valueType;function i(e){var t,r=new Set,u=an(e);try{for(u.s();!(t=u.n()).done;){var a=t.value;if("aborted"===a.status)return vp;"dirty"===a.status&&n.dirty(),r.add(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:n.value,value:r}}var o=gn(r.data.values()).map(function(e,t){return a._parse(new _p(r,e,r.path,t))});return r.common.async?Promise.all(o).then(function(e){return i(e)}):i(o)}},{key:"min",value:function(t,n){return new e(pn(pn({},this._def),{},{minSize:{value:t,message:pp.toString(n)}}))}},{key:"max",value:function(t,n){return new e(pn(pn({},this._def),{},{maxSize:{value:t,message:pp.toString(n)}}))}},{key:"size",value:function(e,t){return this.min(e,t).max(e,t)}},{key:"nonempty",value:function(e){return this.min(1,e)}}])}();gh.create=function(e,t){return new gh(pn({valueType:e,minSize:null,maxSize:null,typeName:Th.ZodSet},Cp(t)))};var Fh=function(){function e(){var t;return tn(this,e),(t=en(this,e,arguments)).validate=t.implement,t}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==up.function)return dp(t,{code:ip.invalid_type,expected:up.function,received:t.parsedType}),vp;function n(e,n){return fp({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,lp(),sp].filter(function(e){return!!e}),issueData:{code:ip.invalid_arguments,argumentsError:n}})}function r(e,n){return fp({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,lp(),sp].filter(function(e){return!!e}),issueData:{code:ip.invalid_return_type,returnTypeError:n}})}var u={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof Ah){var i=this;return Dp(Xt(vn().m(function e(){var t,o,s,c,l,f,d,p=arguments;return vn().w(function(e){for(;;)switch(e.n){case 0:for(t=p.length,o=new Array(t),s=0;s1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(t,pn(pn({},this._def),n))}},{key:"exclude",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(this.options.filter(function(e){return!t.includes(e)}),pn(pn({},this._def),n))}}])}();Ch.create=bh;var kh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=Gd.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==up.string&&n.parsedType!==up.number){var r=Gd.objectValues(t);return dp(n,{expected:Gd.joinValues(r),received:n.parsedType,code:ip.invalid_type}),vp}if(this._cache||(this._cache=new Set(Gd.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){var u=Gd.objectValues(t);return dp(n,{received:n.data,code:ip.invalid_enum_value,options:u}),vp}return Dp(e.data)}},{key:"enum",get:function(){return this._def.values}}])}();kh.create=function(e,t){return new kh(pn({values:e,typeName:Th.ZodNativeEnum},Cp(t)))};var Ah=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"unwrap",value:function(){return this._def.type}},{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e).ctx;if(n.parsedType!==up.promise&&!1===n.common.async)return dp(n,{code:ip.invalid_type,expected:up.promise,received:n.parsedType}),vp;var r=n.parsedType===up.promise?n.data:Promise.resolve(n.data);return Dp(r.then(function(e){return t._def.type.parseAsync(e,{path:n.path,errorMap:n.common.contextualErrorMap})}))}}])}();Ah.create=function(e,t){return new Ah(pn({type:e,typeName:Th.ZodPromise},Cp(t)))};var wh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"innerType",value:function(){return this._def.schema}},{key:"sourceType",value:function(){return this._def.schema._def.typeName===Th.ZodEffects?this._def.schema.sourceType():this._def.schema}},{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._def.effect||null,i={addIssue:function(e){dp(u,e),e.fatal?r.abort():r.dirty()},get path(){return u.path}};if(i.addIssue=i.addIssue.bind(i),"preprocess"===a.type){var o=a.transform(u.data,i);if(u.common.async)return Promise.resolve(o).then(function(){var e=Xt(vn().m(function e(n){var a;return vn().w(function(e){for(;;)switch(e.n){case 0:if("aborted"!==r.value){e.n=1;break}return e.a(2,vp);case 1:return e.n=2,t._def.schema._parseAsync({data:n,path:u.path,parent:u});case 2:if("aborted"!==(a=e.v).status){e.n=3;break}return e.a(2,vp);case 3:if("dirty"!==a.status){e.n=4;break}return e.a(2,mp(a.value));case 4:if("dirty"!==r.value){e.n=5;break}return e.a(2,mp(a.value));case 5:return e.a(2,a)}},e)}));return function(t){return e.apply(this,arguments)}}());if("aborted"===r.value)return vp;var s=this._def.schema._parseSync({data:o,path:u.path,parent:u});return"aborted"===s.status?vp:"dirty"===s.status||"dirty"===r.value?mp(s.value):s}if("refinement"===a.type){var c=function(e){var t=a.refinement(e,i);if(u.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===u.common.async){var l=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});return"aborted"===l.status?vp:("dirty"===l.status&&r.dirty(),c(l.value),{status:r.value,value:l.value})}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return"aborted"===e.status?vp:("dirty"===e.status&&r.dirty(),c(e.value).then(function(){return{status:r.value,value:e.value}}))})}if("transform"===a.type){if(!1===u.common.async){var f=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});if(!Fp(f))return vp;var d=a.transform(f.value,i);if(d instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:d}}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return Fp(e)?Promise.resolve(a.transform(e.value,i)).then(function(e){return{status:r.value,value:e}}):vp})}Gd.assertNever(a)}}])}();wh.create=function(e,t,n){return new wh(pn({schema:e,typeName:Th.ZodEffects,effect:t},Cp(n)))},wh.createWithPreprocess=function(e,t,n){return new wh(pn({schema:t,effect:{type:"preprocess",transform:e},typeName:Th.ZodEffects},Cp(n)))};var Sh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){return this._getType(e)===up.undefined?Dp(void 0):this._def.innerType._parse(e)}},{key:"unwrap",value:function(){return this._def.innerType}}])}();Sh.create=function(e,t){return new Sh(pn({innerType:e,typeName:Th.ZodOptional},Cp(t)))};var xh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){return this._getType(e)===up.null?Dp(null):this._def.innerType._parse(e)}},{key:"unwrap",value:function(){return this._def.innerType}}])}();xh.create=function(e,t){return new xh(pn({innerType:e,typeName:Th.ZodNullable},Cp(t)))};var Oh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return t.parsedType===up.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}},{key:"removeDefault",value:function(){return this._def.innerType}}])}();Oh.create=function(e,t){return new Oh(pn({innerType:e,typeName:Th.ZodDefault,defaultValue:"function"==typeof t.default?t.default:function(){return t.default}},Cp(t)))};var Bh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e).ctx,r=pn(pn({},n),{},{common:pn(pn({},n.common),{},{issues:[]})}),u=this._def.innerType._parse({data:r.data,path:r.path,parent:pn({},r)});return Ep(u)?u.then(function(e){return{status:"valid",value:"valid"===e.status?e.value:t._def.catchValue({get error(){return new op(r.common.issues)},input:r.data})}}):{status:"valid",value:"valid"===u.status?u.value:this._def.catchValue({get error(){return new op(r.common.issues)},input:r.data})}}},{key:"removeCatch",value:function(){return this._def.innerType}}])}();Bh.create=function(e,t){return new Bh(pn({innerType:e,typeName:Th.ZodCatch,catchValue:"function"==typeof t.catch?t.catch:function(){return t.catch}},Cp(t)))};var Ih=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){if(this._getType(e)!==up.nan){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.nan,received:t.parsedType}),vp}return{status:"valid",value:e.data}}}])}();Ih.create=function(e){return new Ih(pn({typeName:Th.ZodNaN},Cp(e)))};var Th,Ph=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}},{key:"unwrap",value:function(){return this._def.type}}])}(),jh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx;if(u.common.async){var a=function(){var e=Xt(vn().m(function e(){var n;return vn().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,t._def.in._parseAsync({data:u.data,path:u.path,parent:u});case 1:if("aborted"!==(n=e.v).status){e.n=2;break}return e.a(2,vp);case 2:if("dirty"!==n.status){e.n=3;break}return r.dirty(),e.a(2,mp(n.value));case 3:return e.a(2,t._def.out._parseAsync({data:n.value,path:u.path,parent:u}));case 4:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();return a()}var i=this._def.in._parseSync({data:u.data,path:u.path,parent:u});return"aborted"===i.status?vp:"dirty"===i.status?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:u.path,parent:u})}}],[{key:"create",value:function(t,n){return new e({in:t,out:n,typeName:Th.ZodPipeline})}}])}(),Nh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._def.innerType._parse(e),n=function(e){return Fp(e)&&(e.value=Object.freeze(e.value)),e};return Ep(t)?t.then(function(e){return n(e)}):n(t)}},{key:"unwrap",value:function(){return this._def.innerType}}])}();Nh.create=function(e,t){return new Nh(pn({innerType:e,typeName:Th.ZodReadonly},Cp(t)))},lh.lazycreate,function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(Th||(Th={})),Jp.create,Gp.create,Ih.create,Yp.create,Xp.create,eh.create,th.create,nh.create,rh.create,uh.create,ah.create,ih.create,oh.create,sh.create,lh.create,lh.strictCreate,fh.create,ph.create,vh.create,mh.create,Dh.create,yh.create,gh.create,Fh.create,Eh.create,_h.create,Ch.create,kh.create,Ah.create,wh.create,Sh.create,xh.create,wh.createWithPreprocess,jh.create;var zh=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.prefix,n=e.size,r=void 0===n?16:n,u=e.alphabet,a=void 0===u?"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz":u,i=e.separator,o=void 0===i?"-":i,s=function(){for(var e=a.length,t=new Array(r),n=0;n0&&void 0!==arguments[0]?arguments[0]:globalThis;return r.window?"runtime/browser":(null==(e=r.navigator)?void 0:e.userAgent)?"runtime/".concat(r.navigator.userAgent.toLowerCase()):(null==(n=null==(t=r.process)?void 0:t.versions)?void 0:n.node)?"runtime/node.js/".concat(r.process.version.substring(0)):r.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function Zh(e){if(null==e)return{};var t={};if(e instanceof Headers)e.forEach(function(e,n){t[n.toLowerCase()]=e});else{Array.isArray(e)||(e=Object.entries(e));var n,r=s(e);try{for(r.s();!(n=r.n()).done;){var u=g(n.value,2),a=u[0],i=u[1];null!=i&&(t[a.toLowerCase()]=i)}}catch(e){r.e(e)}finally{r.f()}}return t}function Lh(e){for(var t=new Headers(Zh(e)),n=t.get("user-agent")||"",r=arguments.length,u=new Array(r>1?r-1:0),a=1;a1?r:r[0]}}if(n.every(function(e){return"ZodLiteral"===e._def.typeName&&!e.description})){var u=n.reduce(function(e,t){var n=_(t._def.value);switch(n){case"string":case"number":case"boolean":return[].concat(F(e),[n]);case"bigint":return[].concat(F(e),["integer"]);case"object":if(null===t._def.value)return[].concat(F(e),["null"]);default:return e}},[]);if(u.length===n.length){var a=u.filter(function(e,t,n){return n.indexOf(e)===t});return{type:a.length>1?a:a[0],enum:n.reduce(function(e,t){return e.includes(t._def.value)?e:[].concat(F(e),[t._def.value])},[])}}}else if(n.every(function(e){return"ZodEnum"===e._def.typeName}))return{type:"string",enum:n.reduce(function(e,t){return[].concat(F(e),F(t._def.values.filter(function(t){return!e.includes(t)})))},[])};return function(e,t){var n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map(function(e,n){return xv(e._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["anyOf","".concat(n)])}))}).filter(function(e){return!!e&&(!t.strictUnions||"object"==_(e)&&Object.keys(e).length>0)});return n.length?{anyOf:n}:void 0}(e,t)}(e,n);case Th.ZodIntersection:return function(e,t){var n=[xv(e.left._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf","0"])})),xv(e.right._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf","1"])}))].filter(function(e){return!!e}),r=[];return n.forEach(function(e){if("type"in(n=e)&&"string"===n.type||!("allOf"in n)){var t=e;if("additionalProperties"in e&&!1===e.additionalProperties)e.additionalProperties,t=v(e,Vt);r.push(t)}else r.push.apply(r,F(e.allOf));var n}),r.length?{allOf:r}:void 0}(e,n);case Th.ZodTuple:return function(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map(function(e,n){return xv(e._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","".concat(n)])}))}).reduce(function(e,t){return void 0===t?e:[].concat(F(e),[t])},[]),additionalItems:xv(e.rest._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["additionalItems"])}))}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map(function(e,n){return xv(e._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","".concat(n)])}))}).reduce(function(e,t){return void 0===t?e:[].concat(F(e),[t])},[])}}(e,n);case Th.ZodRecord:return kv(e,n);case Th.ZodLiteral:return function(e){var t=_(e.value);return"bigint"!==t&&"number"!==t&&"boolean"!==t&&"string"!==t?{type:Array.isArray(e.value)?"array":"object"}:{type:"bigint"===t?"integer":t,const:e.value}}(e);case Th.ZodEnum:return function(e){return{type:"string",enum:Array.from(e.values)}}(e);case Th.ZodNativeEnum:return function(e){var t=e.values,n=Object.keys(e.values).filter(function(e){return"number"!=typeof t[t[e]]}).map(function(e){return t[e]}),r=Array.from(new Set(n.map(function(e){return _(e)})));return{type:1===r.length?"string"===r[0]?"string":"number":["string","number"],enum:n}}(e);case Th.ZodNullable:return function(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Av[e.innerType._def.typeName],"null"]};var n=xv(e.innerType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["anyOf","0"])}));return n&&{anyOf:[n,{type:"null"}]}}(e,n);case Th.ZodOptional:return function(e,t){var n;if(t.currentPath.toString()===(null==(n=t.propertyPath)?void 0:n.toString()))return xv(e.innerType._def,t);var r=xv(e.innerType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["anyOf","1"])}));return r?{anyOf:[{not:{}},r]}:{}}(e,n);case Th.ZodMap:return function(e,t){return"record"===t.mapStrategy?kv(e,t):{type:"array",maxItems:125,items:{type:"array",items:[xv(e.keyType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","items","0"])}))||{},xv(e.valueType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","items","1"])}))||{}],minItems:2,maxItems:2}}}(e,n);case Th.ZodSet:return function(e,t){var n={type:"array",uniqueItems:!0,items:xv(e.valueType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items"])}))};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}(e,n);case Th.ZodLazy:return function(){return e.getter()._def};case Th.ZodPromise:return function(e,t){return xv(e.type._def,t)}(e,n);case Th.ZodNaN:case Th.ZodNever:return{not:{}};case Th.ZodEffects:return function(e,t){return"input"===t.effectStrategy?xv(e.schema._def,t):{}}(e,n);case Th.ZodAny:case Th.ZodUnknown:return{};case Th.ZodDefault:return function(e,t){return h(h({},xv(e.innerType._def,t)),{},{default:e.defaultValue()})}(e,n);case Th.ZodBranded:return uv(e,n);case Th.ZodReadonly:case Th.ZodCatch:return function(e,t){return xv(e.innerType._def,t)}(e,n);case Th.ZodPipeline:return function(e,t){if("input"===t.pipeStrategy)return xv(e.in._def,t);if("output"===t.pipeStrategy)return xv(e.out._def,t);var n=xv(e.in._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf","0"])}));return{allOf:[n,xv(e.out._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf",n?"1":"0"])}))].filter(function(e){return void 0!==e})}}(e,n);case Th.ZodFunction:case Th.ZodVoid:case Th.ZodSymbol:default:return}};function xv(e,t){var n,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],u=t.seen.get(e);if(t.override){var a=null==(n=t.override)?void 0:n.call(t,e,t,u,r);if(a!==nv)return a}if(u&&!r){var i=Ov(u,t);if(void 0!==i)return i}var o={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,o);var s=Sv(e,e.typeName,t),c="function"==typeof s?xv(s(),t):s;if(c&&Bv(e,t,c),t.postProcess){var l=t.postProcess(c,e,t);return o.jsonSchema=c,l}return o.jsonSchema=c,c}var Ov=function(e,t){switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:tv(t.currentPath,e.path)};case"none":case"seen":return e.path.length0){var v="draft-2020-12"===r.target?"$defs":"definitions";c.__shared=on({},v,u)}return{schemas:c}}var m=new bf(t);return m.process(e),m.emit(e,t)}(e,{target:"draft-7",io:"output",reused:"inline"})},{validate:(t=r(m().m(function t(n){var r;return m().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,Pf(e,n);case 1:return r=t.v,t.a(2,r.success?{success:!0,value:r.data}:{success:!1,error:r.error})}},t)})),function(e){return t.apply(this,arguments)})});var t}(e):function(e){return jv(function(){return Iv(e,{$refStrategy:"none"})},{validate:(t=r(m().m(function t(n){var r;return m().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,e.safeParseAsync(n);case 1:return r=t.v,t.a(2,r.success?{success:!0,value:r.data}:{success:!1,error:r.error})}},t)})),function(e){return t.apply(this,arguments)})});var t}(e)}var Pv=Symbol.for("vercel.ai.schema");function jv(e){var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).validate;return c(function(e,t,n,r){var u={configurable:!0,enumerable:!0};return u[e]=r,Object.defineProperty(t,n,u)}("get",c(c(c({},Pv,!0),"_type",void 0),Hh,!0),"jsonSchema",function(){return"function"==typeof e&&(e=e()),e}),"validate",t)}var Nv,zv=Object.defineProperty,Rv="AI_NoObjectGeneratedError",Mv="vercel.ai.error.".concat(Rv),Zv=Symbol.for(Mv),Lv=function(){function e(t){var n,r=t.message,i=void 0===r?"No object generated.":r,o=t.cause,s=t.text,c=t.response,l=t.usage,f=t.finishReason;return a(this,e),(n=u(this,e,[{name:Rv,message:i,cause:o}]))[Nv]=!0,n.text=s,n.response=c,n.usage=l,n.finishReason=f,n}return f(e,zo),o(e,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Mv)}}])}();Nv=Zv;var $v="5.0.93",qv=Bd([Vf(),rp(Uint8Array),rp(ArrayBuffer),np(function(e){var t,n;return null!=(n=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&n},{message:"Must be a Buffer"})]),Uv=new ep({type:"lazy",getter:function(){return Bd([Fd(),Vf(),hd(),yd(),jd(Vf(),Uv),Ad(Uv)])}}),Hv=jd(Vf(),jd(Vf(),Uv)),Vv=Sd({type:Md("text"),text:Vf(),providerOptions:Hv.optional()}),Wv=Sd({type:Md("image"),image:Bd([qv,rp(URL)]),mediaType:Vf().optional(),providerOptions:Hv.optional()}),Kv=Sd({type:Md("file"),data:Bd([qv,rp(URL)]),filename:Vf().optional(),mediaType:Vf(),providerOptions:Hv.optional()}),Jv=Sd({type:Md("reasoning"),text:Vf(),providerOptions:Hv.optional()}),Qv=Sd({type:Md("tool-call"),toolCallId:Vf(),toolName:Vf(),input:_d(),providerOptions:Hv.optional(),providerExecuted:yd().optional()}),Gv=new Id(pn({type:"union",options:[Sd({type:Md("text"),value:Vf()}),Sd({type:Md("json"),value:Uv}),Sd({type:Md("error-text"),value:Vf()}),Sd({type:Md("error-json"),value:Uv}),Sd({type:Md("content"),value:Ad(Bd([Sd({type:Md("text"),text:Vf()}),Sd({type:Md("media"),data:Vf(),mediaType:Vf()})]))})],discriminator:"type"},As(undefined))),Yv=Sd({type:Md("tool-result"),toolCallId:Vf(),toolName:Vf(),output:Gv,providerOptions:Hv.optional()}),Xv=Sd({role:Md("system"),content:Vf(),providerOptions:Hv.optional()}),em=Sd({role:Md("user"),content:Bd([Vf(),Ad(Bd([Vv,Wv,Kv]))]),providerOptions:Hv.optional()}),tm=Sd({role:Md("assistant"),content:Bd([Vf(),Ad(Bd([Vv,Kv,Jv,Qv,Yv]))]),providerOptions:Hv.optional()});Bd([Xv,em,tm,Sd({role:Md("tool"),content:Ad(Yv),providerOptions:Hv.optional()})]),zh({prefix:"aitxt",size:24}),TransformStream;var nm=function(){var e;return function(){return null==e&&(e=Tv(Bd([xd({type:Md("text-start"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("text-delta"),id:Vf(),delta:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("text-end"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("error"),errorText:Vf()}),xd({type:Md("tool-input-start"),toolCallId:Vf(),toolName:Vf(),providerExecuted:yd().optional(),dynamic:yd().optional()}),xd({type:Md("tool-input-delta"),toolCallId:Vf(),inputTextDelta:Vf()}),xd({type:Md("tool-input-available"),toolCallId:Vf(),toolName:Vf(),input:_d(),providerExecuted:yd().optional(),providerMetadata:Hv.optional(),dynamic:yd().optional()}),xd({type:Md("tool-input-error"),toolCallId:Vf(),toolName:Vf(),input:_d(),providerExecuted:yd().optional(),providerMetadata:Hv.optional(),dynamic:yd().optional(),errorText:Vf()}),xd({type:Md("tool-output-available"),toolCallId:Vf(),output:_d(),providerExecuted:yd().optional(),dynamic:yd().optional(),preliminary:yd().optional()}),xd({type:Md("tool-output-error"),toolCallId:Vf(),errorText:Vf(),providerExecuted:yd().optional(),dynamic:yd().optional()}),xd({type:Md("reasoning-start"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("reasoning-delta"),id:Vf(),delta:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("reasoning-end"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("source-url"),sourceId:Vf(),url:Vf(),title:Vf().optional(),providerMetadata:Hv.optional()}),xd({type:Md("source-document"),sourceId:Vf(),mediaType:Vf(),title:Vf(),filename:Vf().optional(),providerMetadata:Hv.optional()}),xd({type:Md("file"),url:Vf(),mediaType:Vf(),providerMetadata:Hv.optional()}),xd({type:np(function(e){return"string"==typeof e&&e.startsWith("data-")},{message:'Type must start with "data-"'}),id:Vf().optional(),data:_d(),transient:yd().optional()}),xd({type:Md("start-step")}),xd({type:Md("finish-step")}),xd({type:Md("start"),messageId:Vf().optional(),messageMetadata:_d().optional()}),xd({type:Md("finish"),finishReason:zd(["stop","length","content-filter","tool-calls","error","other","unknown"]).optional(),messageMetadata:_d().optional()}),xd({type:Md("abort")}),xd({type:Md("message-metadata"),messageMetadata:_d()})]))),e}}();function rm(e,t){if(void 0!==e||void 0!==t){if(void 0===e)return t;if(void 0===t)return e;var n=h({},e);for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var u=t[r];if(void 0===u)continue;var a=r in e?e[r]:void 0,i=!(null===u||"object"!=_(u)||Array.isArray(u)||u instanceof Date||u instanceof RegExp),o=!(null==a||"object"!=_(a)||Array.isArray(a)||a instanceof Date||a instanceof RegExp);n[r]=i&&o?rm(a,u):u}return n}}function um(e){var t=["ROOT"],n=-1,r=null;function u(e,u,a){switch(e){case'"':n=u,t.pop(),t.push(a),t.push("INSIDE_STRING");break;case"f":case"t":case"n":n=u,r=u,t.pop(),t.push(a),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(a),t.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n=u,t.pop(),t.push(a),t.push("INSIDE_NUMBER");break;case"{":n=u,t.pop(),t.push(a),t.push("INSIDE_OBJECT_START");break;case"[":n=u,t.pop(),t.push(a),t.push("INSIDE_ARRAY_START")}}function a(e,r){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":n=r,t.pop()}}function i(e,r){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":n=r,t.pop()}}for(var o=0;o=0;f--)switch(t[f]){case"INSIDE_STRING":l+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":l+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":l+="]";break;case"INSIDE_LITERAL":var d=e.substring(r,e.length);"true".startsWith(d)?l+="true".slice(d.length):"false".startsWith(d)?l+="false".slice(d.length):"null".startsWith(d)&&(l+="null".slice(d.length))}return l}function am(e){return im.apply(this,arguments)}function im(){return im=r(m().m(function e(t){var n,r;return m().w(function(e){for(;;)switch(e.n){case 0:if(void 0!==t){e.n=1;break}return e.a(2,{value:void 0,state:"undefined-input"});case 1:return e.n=2,Gh({text:t});case 2:if(!(n=e.v).success){e.n=3;break}r={value:n.value,state:"successful-parse"},e.n=5;break;case 3:return e.n=4,Gh({text:um(t)});case 4:n=e.v,r=n.success?{value:n.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"};case 5:return e.a(2,r)}},e)})),im.apply(this,arguments)}function om(e){return e.type.startsWith("tool-")}function sm(e){return om(e)||function(e){return"dynamic-tool"===e.type}(e)}function cm(e){return e.type.split("-").slice(1).join("-")}function lm(e){var t=e.lastMessage,n=e.messageId;return{message:"assistant"===(null==t?void 0:t.role)?t:{id:n,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function fm(e){var t=e.stream,n=e.messageMetadataSchema,u=e.dataPartSchemas,a=e.runUpdateMessageJob,i=e.onError,o=e.onToolCall,s=e.onData;return t.pipeThrough(new TransformStream({transform:function(e,t){return r(m().m(function c(){return m().w(function(c){for(;;)switch(c.n){case 0:return c.n=1,a(function(){var a=r(m().m(function a(c){var l,f,d,p,v,D,y,g,F,E,_,b,C,k,A,w,S,x,O,B,I,T,P,j,N,z,R,M,Z;return m().w(function(a){for(;;)switch(a.n){case 0:b=function(){return b=r(m().m(function e(t){var r;return m().w(function(e){for(;;)switch(e.n){case 0:if(null==t){e.n=2;break}if(r=null!=l.message.metadata?rm(l.message.metadata,t):t,!(null!=n)){e.n=1;break}return e.n=1,Wh({value:r,schema:n});case 1:l.message.metadata=r;case 2:return e.a(2)}},e)})),b.apply(this,arguments)},_=function(e){return b.apply(this,arguments)},E=function(e){var t,n,r=l.message.parts.find(function(t){return"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId}),u=e,a=r;null!=r?(r.state=e.state,a.toolName=e.toolName,a.input=u.input,a.output=u.output,a.errorText=u.errorText,a.rawInput=null!=(t=u.rawInput)?t:a.rawInput,a.preliminary=u.preliminary,a.providerExecuted=null!=(n=u.providerExecuted)?n:r.providerExecuted,null!=u.providerMetadata&&"input-available"===r.state&&(r.callProviderMetadata=u.providerMetadata)):l.message.parts.push(h({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:u.input,output:u.output,errorText:u.errorText,preliminary:u.preliminary,providerExecuted:u.providerExecuted},null!=u.providerMetadata?{callProviderMetadata:u.providerMetadata}:{}))},F=function(e){var t,n=l.message.parts.find(function(t){return om(t)&&t.toolCallId===e.toolCallId}),r=e,u=n;null!=n?(n.state=e.state,u.input=r.input,u.output=r.output,u.errorText=r.errorText,u.rawInput=r.rawInput,u.preliminary=r.preliminary,u.providerExecuted=null!=(t=r.providerExecuted)?t:n.providerExecuted,null!=r.providerMetadata&&"input-available"===n.state&&(n.callProviderMetadata=r.providerMetadata)):l.message.parts.push(h({type:"tool-".concat(e.toolName),toolCallId:e.toolCallId,state:e.state,input:r.input,output:r.output,rawInput:r.rawInput,errorText:r.errorText,providerExecuted:r.providerExecuted,preliminary:r.preliminary},null!=r.providerMetadata?{callProviderMetadata:r.providerMetadata}:{}))},g=function(e){var t=l.message.parts.filter(function(e){return"dynamic-tool"===e.type}).find(function(t){return t.toolCallId===e});if(null==t)throw new Error("tool-output-error must be preceded by a tool-input-available");return t},y=function(e){var t=l.message.parts.filter(om).find(function(t){return t.toolCallId===e});if(null==t)throw new Error("tool-output-error must be preceded by a tool-input-available");return t},l=c.state,f=c.write,Z=e.type,a.n="text-start"===Z?1:"text-delta"===Z?2:"text-end"===Z?3:"reasoning-start"===Z?4:"reasoning-delta"===Z?5:"reasoning-end"===Z?6:"file"===Z?7:"source-url"===Z?8:"source-document"===Z?9:"tool-input-start"===Z?10:"tool-input-delta"===Z?11:"tool-input-available"===Z?13:"tool-input-error"===Z?15:"tool-output-available"===Z?16:"tool-output-error"===Z?17:"start-step"===Z?18:"finish-step"===Z?19:"start"===Z?20:"finish"===Z?22:"message-metadata"===Z?24:"error"===Z?26:27;break;case 1:return C={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"},l.activeTextParts[e.id]=C,l.message.parts.push(C),f(),a.a(3,30);case 2:return(k=l.activeTextParts[e.id]).text+=e.delta,k.providerMetadata=null!=(d=e.providerMetadata)?d:k.providerMetadata,f(),a.a(3,30);case 3:return(A=l.activeTextParts[e.id]).state="done",A.providerMetadata=null!=(p=e.providerMetadata)?p:A.providerMetadata,delete l.activeTextParts[e.id],f(),a.a(3,30);case 4:return w={type:"reasoning",text:"",providerMetadata:e.providerMetadata,state:"streaming"},l.activeReasoningParts[e.id]=w,l.message.parts.push(w),f(),a.a(3,30);case 5:return(S=l.activeReasoningParts[e.id]).text+=e.delta,S.providerMetadata=null!=(v=e.providerMetadata)?v:S.providerMetadata,f(),a.a(3,30);case 6:return(x=l.activeReasoningParts[e.id]).providerMetadata=null!=(D=e.providerMetadata)?D:x.providerMetadata,x.state="done",delete l.activeReasoningParts[e.id],f(),a.a(3,30);case 7:return l.message.parts.push({type:"file",mediaType:e.mediaType,url:e.url}),f(),a.a(3,30);case 8:return l.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),f(),a.a(3,30);case 9:return l.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),f(),a.a(3,30);case 10:return O=l.message.parts.filter(om),l.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:O.length,dynamic:e.dynamic},e.dynamic?E({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted}):F({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted}),f(),a.a(3,30);case 11:return(B=l.partialToolCalls[e.toolCallId]).text+=e.inputTextDelta,a.n=12,am(B.text);case 12:return I=a.v,T=I.value,B.dynamic?E({toolCallId:e.toolCallId,toolName:B.toolName,state:"input-streaming",input:T}):F({toolCallId:e.toolCallId,toolName:B.toolName,state:"input-streaming",input:T}),f(),a.a(3,30);case 13:if(e.dynamic?E({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):F({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),f(),!(o&&!e.providerExecuted)){a.n=14;break}return a.n=14,o({toolCall:e});case 14:return a.a(3,30);case 15:return e.dynamic?E({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):F({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),f(),a.a(3,30);case 16:return e.dynamic?(P=g(e.toolCallId),E({toolCallId:e.toolCallId,toolName:P.toolName,state:"output-available",input:P.input,output:e.output,preliminary:e.preliminary})):(j=y(e.toolCallId),F({toolCallId:e.toolCallId,toolName:cm(j),state:"output-available",input:j.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary})),f(),a.a(3,30);case 17:return e.dynamic?(N=g(e.toolCallId),E({toolCallId:e.toolCallId,toolName:N.toolName,state:"output-error",input:N.input,errorText:e.errorText,providerExecuted:e.providerExecuted})):(z=y(e.toolCallId),F({toolCallId:e.toolCallId,toolName:cm(z),state:"output-error",input:z.input,rawInput:z.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted})),f(),a.a(3,30);case 18:return l.message.parts.push({type:"step-start"}),a.a(3,30);case 19:return l.activeTextParts={},l.activeReasoningParts={},a.a(3,30);case 20:return null!=e.messageId&&(l.message.id=e.messageId),a.n=21,_(e.messageMetadata);case 21:return null==e.messageId&&null==e.messageMetadata||f(),a.a(3,30);case 22:return null!=e.finishReason&&(l.finishReason=e.finishReason),a.n=23,_(e.messageMetadata);case 23:return null!=e.messageMetadata&&f(),a.a(3,30);case 24:return a.n=25,_(e.messageMetadata);case 25:return null!=e.messageMetadata&&f(),a.a(3,30);case 26:return null==i||i(new Error(e.errorText)),a.a(3,30);case 27:if(!function(e){return e.type.startsWith("data-")}(e)){a.n=30;break}if(!(null!=(null==u?void 0:u[e.type]))){a.n=28;break}return a.n=28,Wh({value:e.data,schema:u[e.type]});case 28:if(!(R=e).transient){a.n=29;break}return null==s||s(R),a.a(3,30);case 29:M=null!=R.id?l.message.parts.find(function(e){return R.type===e.type&&R.id===e.id}):void 0,null!=M?M.data=R.data:l.message.parts.push(R),null==s||s(R),f();case 30:t.enqueue(e);case 31:return a.a(2)}},a)}));return function(e){return a.apply(this,arguments)}}());case 1:return c.a(2)}},c)}))()}}))}zh({prefix:"aitxt",size:24}),zh({prefix:"aiobj",size:24});var dm=function(){return o(function e(){a(this,e),this.queue=[],this.isProcessing=!1},[{key:"processQueue",value:(t=r(m().m(function e(){return m().w(function(e){for(;;)switch(e.n){case 0:if(this.isProcessing){e.n=5;break}this.isProcessing=!0;case 1:if(!(this.queue.length>0)){e.n=4;break}return e.n=2,this.queue[0]();case 2:this.queue.shift();case 3:e.n=1;break;case 4:this.isProcessing=!1;case 5:return e.a(2)}},e,this)})),function(){return t.apply(this,arguments)})},{key:"run",value:(e=r(m().m(function e(t){var n=this;return m().w(function(e){for(;;)if(0===e.n)return e.a(2,new Promise(function(e,u){n.queue.push(r(m().m(function n(){var r;return m().w(function(n){for(;;)switch(n.p=n.n){case 0:return n.p=0,n.n=1,t();case 1:e(),n.n=3;break;case 2:n.p=2,r=n.v,u(r);case 3:return n.a(2)}},n,null,[[0,2]])}))),n.processQueue()}))},e)})),function(t){return e.apply(this,arguments)})}]);var e,t}();zh({prefix:"aiobj",size:24}),function(e,t){for(var n in t)zv(e,n,{get:t[n],enumerable:!0})}({},{object:function(){return mm},text:function(){return vm}});var pm,hm,vm=function(){return{type:"text",responseFormat:{type:"text"},parsePartial:(t=r(m().m(function e(t){var n;return m().w(function(e){for(;;)if(0===e.n)return n=t.text,e.a(2,{partial:n})},e)})),function(e){return t.apply(this,arguments)}),parseOutput:(e=r(m().m(function e(t){var n;return m().w(function(e){for(;;)if(0===e.n)return n=t.text,e.a(2,n)},e)})),function(t){return e.apply(this,arguments)})};var e,t},mm=function(e){var t=function(e){return null==e?jv({properties:{},additionalProperties:!1}):"object"==_(t=e)&&null!==t&&Pv in t&&!0===t[Pv]&&"jsonSchema"in t&&"validate"in t?e:"function"==typeof e?e():Tv(e);var t}(e.schema);return{type:"object",responseFormat:{type:"json",schema:t.jsonSchema},parsePartial:function(e){return r(m().m(function t(){var n,r,u,a;return m().w(function(t){for(;;)switch(t.n){case 0:return n=e.text,t.n=1,am(n);case 1:r=t.v,a=r.state,t.n="failed-parse"===a||"undefined-input"===a?2:"repaired-parse"===a||"successful-parse"===a?3:4;break;case 2:case 5:return t.a(2);case 3:return t.a(2,{partial:r.value});case 4:throw u=r.state,new Error("Unsupported parse state: ".concat(u))}},t)}))()},parseOutput:function(e,n){return r(m().m(function r(){var u,a,i;return m().w(function(r){for(;;)switch(r.n){case 0:return u=e.text,r.n=1,Gh({text:u});case 1:if((a=r.v).success){r.n=2;break}throw new Lv({message:"No object generated: could not parse the response.",cause:a.error,text:u,response:n.response,usage:n.usage,finishReason:n.finishReason});case 2:return r.n=3,Jh({value:a.value,schema:t});case 3:if((i=r.v).success){r.n=4;break}throw new Lv({message:"No object generated: response did not match schema.",cause:i.error,text:u,response:n.response,usage:n.usage,finishReason:n.finishReason});case 4:return r.a(2,i.value)}},r)}))()}}},Dm=function(){return o(function e(t){var n=t.api,r=void 0===n?"/api/chat":n,u=t.credentials,i=t.headers,o=t.body,s=t.fetch,c=t.prepareSendMessagesRequest,l=t.prepareReconnectToStreamRequest;a(this,e),this.api=r,this.credentials=u,this.headers=i,this.body=o,this.fetch=s,this.prepareSendMessagesRequest=c,this.prepareReconnectToStreamRequest=l},[{key:"sendMessages",value:(t=r(m().m(function e(t){var n,r,u,a,i,o,s,c,l,f,d,p,D,y,g,F,E,_,b,C;return m().w(function(e){for(;;)switch(e.n){case 0:return n=t.abortSignal,r=v(t,Wt),e.n=1,Xh(this.body);case 1:return c=e.v,e.n=2,Xh(this.headers);case 2:return l=e.v,e.n=3,Xh(this.credentials);case 3:return f=e.v,d=h(h({},Zh(l)),Zh(r.headers)),e.n=4,null==(u=this.prepareSendMessagesRequest)?void 0:u.call(this,{api:this.api,id:r.chatId,messages:r.messages,body:h(h({},c),r.body),headers:d,credentials:f,requestMetadata:r.metadata,trigger:r.trigger,messageId:r.messageId});case 4:return p=e.v,D=null!=(a=null==p?void 0:p.api)?a:this.api,y=void 0!==(null==p?void 0:p.headers)?Zh(p.headers):d,g=void 0!==(null==p?void 0:p.body)?p.body:h(h(h({},c),r.body),{},{id:r.chatId,messages:r.messages,trigger:r.trigger,messageId:r.messageId}),F=null!=(i=null==p?void 0:p.credentials)?i:f,E=null!=(o=this.fetch)?o:globalThis.fetch,e.n=5,E(D,{method:"POST",headers:Lh(h({"Content-Type":"application/json"},y),"ai-sdk/".concat($v),Mh()),body:JSON.stringify(g),credentials:F,signal:n});case 5:if((_=e.v).ok){e.n=9;break}return b=Error,e.n=6,_.text();case 6:if(null==(s=e.v)){e.n=7;break}C=s,e.n=8;break;case 7:C="Failed to fetch the chat response.";case 8:throw new b(C);case 9:if(_.body){e.n=10;break}throw new Error("The response body is empty.");case 10:return e.a(2,this.processResponseStream(_.body))}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"reconnectToStream",value:(e=r(m().m(function e(t){var n,r,u,a,i,o,s,c,l,f,d,p,v,D,y,g,F;return m().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Xh(this.body);case 1:return o=e.v,e.n=2,Xh(this.headers);case 2:return s=e.v,e.n=3,Xh(this.credentials);case 3:return c=e.v,l=h(h({},Zh(s)),Zh(t.headers)),e.n=4,null==(n=this.prepareReconnectToStreamRequest)?void 0:n.call(this,{api:this.api,id:t.chatId,body:h(h({},o),t.body),headers:l,credentials:c,requestMetadata:t.metadata});case 4:return f=e.v,d=null!=(r=null==f?void 0:f.api)?r:"".concat(this.api,"/").concat(t.chatId,"/stream"),p=void 0!==(null==f?void 0:f.headers)?Zh(f.headers):l,v=null!=(u=null==f?void 0:f.credentials)?u:c,D=null!=(a=this.fetch)?a:globalThis.fetch,e.n=5,D(d,{method:"GET",headers:Lh(p,"ai-sdk/".concat($v),Mh()),credentials:v});case 5:if(204!==(y=e.v).status){e.n=6;break}return e.a(2,null);case 6:if(y.ok){e.n=10;break}return g=Error,e.n=7,y.text();case 7:if(null==(i=e.v)){e.n=8;break}F=i,e.n=9;break;case 8:F="Failed to fetch the chat response.";case 9:throw new g(F);case 10:if(y.body){e.n=11;break}throw new Error("The response body is empty.");case 11:return e.a(2,this.processResponseStream(y.body))}},e,this)})),function(t){return e.apply(this,arguments)})}]);var e,t}(),ym=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return a(this,e),u(this,e,[t])}return f(e,Dm),o(e,[{key:"processResponseStream",value:function(e){return function(e){var t=e.schema;return e.stream.pipeThrough(new TextDecoderStream).pipeThrough(new ns).pipeThrough(new TransformStream({transform:function(e,n){return r(m().m(function r(){var u,a;return m().w(function(r){for(;;)switch(r.n){case 0:if(u=e.data,!("[DONE]"!==u)){r.n=2;break}return a=n,r.n=1,Gh({text:u,schema:t});case 1:a.enqueue.call(a,r.v);case 2:return r.a(2)}},r)}))()}}))}({stream:e,schema:nm}).pipeThrough(new TransformStream({transform:function(e,t){return r(m().m(function n(){return m().w(function(n){for(;;)switch(n.n){case 0:if(e.success){n.n=1;break}throw e.error;case 1:t.enqueue(e.value);case 2:return n.a(2)}},n)}))()}}))}}])}(),gm=function(){return o(function e(t){var n=this,u=t.generateId,i=void 0===u?Rh:u,o=t.id,s=void 0===o?i():o,c=t.transport,l=void 0===c?new ym:c,f=t.messageMetadataSchema,d=t.dataPartSchemas,p=t.state,D=t.onError,y=t.onToolCall,g=t.onFinish,E=t.onData,_=t.sendAutomaticallyWhen;a(this,e),this.activeResponse=void 0,this.jobExecutor=new dm,this.sendMessage=function(){var e=r(m().m(function e(t,u){var a,i,o,s,c,l,f;return m().w(function(e){for(;;)switch(e.n){case 0:if(null!=t){e.n=2;break}return e.n=1,n.makeRequest(h({trigger:"submit-message",messageId:null==(a=n.lastMessage)?void 0:a.id},u));case 1:return e.a(2,void e.v);case 2:if(!("text"in t)&&!("files"in t)){e.n=6;break}if(!Array.isArray(t.files)){e.n=3;break}f=t.files,e.n=5;break;case 3:return e.n=4,function(){var e=r(m().m(function e(t){return m().w(function(e){for(;;)switch(e.n){case 0:if(null!=t){e.n=1;break}return e.a(2,[]);case 1:if(globalThis.FileList&&t instanceof globalThis.FileList){e.n=2;break}throw new Error("FileList is not supported in the current environment");case 2:return e.a(2,Promise.all(Array.from(t).map(function(){var e=r(m().m(function e(t){var n,r,u,a,i;return m().w(function(e){for(;;)switch(e.n){case 0:return n=t.name,r=t.type,u=r,a=n,e.n=1,new Promise(function(e,n){var r=new FileReader;r.onload=function(t){var n;e(null==(n=t.target)?void 0:n.result)},r.onerror=function(e){return n(e)},r.readAsDataURL(t)});case 1:return i=e.v,e.a(2,{type:"file",mediaType:u,filename:a,url:i})}},e)}));return function(t){return e.apply(this,arguments)}}())))}},e)}));return function(t){return e.apply(this,arguments)}}()(t.files);case 4:f=e.v;case 5:c={parts:[].concat(F(f),F("text"in t&&null!=t.text?[{type:"text",text:t.text}]:[]))},e.n=7;break;case 6:c=t;case 7:if(null==t.messageId){e.n=10;break}if(l=n.state.messages.findIndex(function(e){return e.id===t.messageId}),-1!==l){e.n=8;break}throw new Error("message with id ".concat(t.messageId," not found"));case 8:if("user"===n.state.messages[l].role){e.n=9;break}throw new Error("message with id ".concat(t.messageId," is not a user message"));case 9:n.state.messages=n.state.messages.slice(0,l+1),n.state.replaceMessage(l,h(h({},c),{},{id:t.messageId,role:null!=(i=c.role)?i:"user",metadata:t.metadata})),e.n=11;break;case 10:n.state.pushMessage(h(h({},c),{},{id:null!=(o=c.id)?o:n.generateId(),role:null!=(s=c.role)?s:"user",metadata:t.metadata}));case 11:return e.n=12,n.makeRequest(h({trigger:"submit-message",messageId:t.messageId},u));case 12:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),this.regenerate=r(m().m(function e(){var t,r,u,a,i=arguments;return m().w(function(e){for(;;)switch(e.n){case 0:if(r=(t=i.length>0&&void 0!==i[0]?i[0]:{}).messageId,u=v(t,Kt),a=null==r?n.state.messages.length-1:n.state.messages.findIndex(function(e){return e.id===r}),-1!==a){e.n=1;break}throw new Error("message ".concat(r," not found"));case 1:return n.state.messages=n.state.messages.slice(0,"assistant"===n.messages[a].role?a:a+1),e.n=2,n.makeRequest(h({trigger:"regenerate-message",messageId:r},u));case 2:return e.a(2)}},e)})),this.resumeStream=r(m().m(function e(){var t,r=arguments;return m().w(function(e){for(;;)switch(e.n){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},e.n=1,n.makeRequest(h({trigger:"resume-stream"},t));case 1:return e.a(2)}},e)})),this.clearError=function(){"error"===n.status&&(n.state.error=void 0,n.setStatus({status:"ready"}))},this.addToolOutput=function(){var e=r(m().m(function e(t){var u,a,i,o,s;return m().w(function(e){for(;;)if(0===e.n)return u=t.state,a=void 0===u?"output-available":u,t.tool,i=t.toolCallId,o=t.output,s=t.errorText,e.a(2,n.jobExecutor.run(r(m().m(function e(){var t,r,u,c;return m().w(function(e){for(;;)switch(e.n){case 0:u=n.state.messages,c=u[u.length-1],n.state.replaceMessage(u.length-1,h(h({},c),{},{parts:c.parts.map(function(e){return sm(e)&&e.toolCallId===i?h(h({},e),{},{state:a,output:o,errorText:s}):e})})),n.activeResponse&&(n.activeResponse.state.message.parts=n.activeResponse.state.message.parts.map(function(e){return sm(e)&&e.toolCallId===i?h(h({},e),{},{state:a,output:o,errorText:s}):e})),"streaming"!==n.status&&"submitted"!==n.status&&(null==(t=n.sendAutomaticallyWhen)?void 0:t.call(n,{messages:n.state.messages}))&&n.makeRequest({trigger:"submit-message",messageId:null==(r=n.lastMessage)?void 0:r.id});case 1:return e.a(2)}},e)}))))},e)}));return function(t){return e.apply(this,arguments)}}(),this.addToolResult=this.addToolOutput,this.stop=r(m().m(function e(){var t;return m().w(function(e){for(;;)switch(e.n){case 0:"streaming"!==n.status&&"submitted"!==n.status||(null==(t=n.activeResponse)?void 0:t.abortController)&&n.activeResponse.abortController.abort();case 1:return e.a(2)}},e)})),this.id=s,this.transport=l,this.generateId=i,this.messageMetadataSchema=f,this.dataPartSchemas=d,this.state=p,this.onError=D,this.onToolCall=y,this.onFinish=g,this.onData=E,this.sendAutomaticallyWhen=_},[{key:"status",get:function(){return this.state.status}},{key:"setStatus",value:function(e){var t=e.status,n=e.error;this.status!==t&&(this.state.status=t,this.state.error=n)}},{key:"error",get:function(){return this.state.error}},{key:"messages",get:function(){return this.state.messages},set:function(e){this.state.messages=e}},{key:"lastMessage",get:function(){return this.state.messages[this.state.messages.length-1]}},{key:"makeRequest",value:(e=r(m().m(function e(t){var n,u,a,i,o,s,c,l,f,d,p,h,v,D,y,g,F,E,_=this;return m().w(function(e){for(;;)switch(e.p=e.n){case 0:if(n=t.trigger,u=t.metadata,a=t.headers,i=t.body,o=t.messageId,this.setStatus({status:"submitted",error:void 0}),d=this.lastMessage,p=!1,h=!1,v=!1,e.p=1,(D={state:lm({lastMessage:this.state.snapshot(d),messageId:this.generateId()}),abortController:new AbortController}).abortController.signal.addEventListener("abort",function(){p=!0}),this.activeResponse=D,"resume-stream"!==n){e.n=4;break}return e.n=2,this.transport.reconnectToStream({chatId:this.id,metadata:u,headers:a,body:i});case 2:if(null!=(g=e.v)){e.n=3;break}return e.a(2,void this.setStatus({status:"ready"}));case 3:y=g,e.n=6;break;case 4:return e.n=5,this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:D.abortController.signal,metadata:u,headers:a,body:i,trigger:n,messageId:o});case 5:y=e.v;case 6:return F=function(e){return _.jobExecutor.run(function(){return e({state:D.state,write:function(){var e;_.setStatus({status:"streaming"}),D.state.message.id===(null==(e=_.lastMessage)?void 0:e.id)?_.state.replaceMessage(_.state.messages.length-1,D.state.message):_.state.pushMessage(D.state.message)}})})},e.n=7,function(){var e=r(m().m(function e(t){var n,r,u,a;return m().w(function(e){for(;;)switch(e.p=e.n){case 0:n=t.stream,r=t.onError,u=n.getReader(),e.p=1;case 2:return e.n=3,u.read();case 3:if(!e.v.done){e.n=4;break}return e.a(3,5);case 4:e.n=2;break;case 5:e.n=7;break;case 6:e.p=6,a=e.v,null==r||r(a);case 7:return e.p=7,u.releaseLock(),e.f(7);case 8:return e.a(2)}},e,null,[[1,6,7,8]])}));return function(t){return e.apply(this,arguments)}}()({stream:fm({stream:y,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:F,onError:function(e){throw e}}),onError:function(e){throw e}});case 7:this.setStatus({status:"ready"}),e.n=10;break;case 8:if(e.p=8,E=e.v,!p&&"AbortError"!==E.name){e.n=9;break}return e.a(2,(p=!0,this.setStatus({status:"ready"}),null));case 9:v=!0,E instanceof TypeError&&(E.message.toLowerCase().includes("fetch")||E.message.toLowerCase().includes("network"))&&(h=!0),this.onError&&E instanceof Error&&this.onError(E),this.setStatus({status:"error",error:E});case 10:e.p=10;try{null==(c=this.onFinish)||c.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:p,isDisconnect:h,isError:v,finishReason:null==(s=this.activeResponse)?void 0:s.state.finishReason})}catch(e){console.error(e)}return this.activeResponse=void 0,e.f(10);case 11:if(!(null==(l=this.sendAutomaticallyWhen)?void 0:l.call(this,{messages:this.state.messages}))||v){e.n=12;break}return e.n=12,this.makeRequest({trigger:"submit-message",messageId:null==(f=this.lastMessage)?void 0:f.id,metadata:u,headers:a,body:i});case 12:return e.a(2)}},e,this,[[1,8,10,11]])})),function(t){return e.apply(this,arguments)})}]);var e}();function Fm(e){var t=e.messages,n=t[t.length-1];if(!n)return!1;if("assistant"!==n.role)return!1;var r=n.parts.reduce(function(e,t,n){return"step-start"===t.type?n:e},-1),u=n.parts.slice(r+1).filter(sm).filter(function(e){return!e.providerExecuted});return u.length>0&&u.every(function(e){return"output-available"===e.state||"output-error"===e.state})}var Em,_m,bm,Cm,km,Am,wm,Sm,xm,Om,Bm=function(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}((hm||(hm=1,pm=function(e,t){if("function"!=typeof e)throw new TypeError("Expected the first argument to be a `function`, got `".concat(En(e),"`."));var n,r=0;return function(){for(var u=this,a=arguments.length,i=new Array(a),o=0;o0&&void 0!==arguments[0]?arguments[0]:[];a(this,e),Pm(this,Em,void 0),Pm(this,_m,"ready"),Pm(this,bm,void 0),Pm(this,Cm,new Set),Pm(this,km,new Set),Pm(this,Am,new Set),this.pushMessage=function(e){jm(t,Em,Tm(t,Em).concat(e)),Tm(t,wm).call(t)},this.popMessage=function(){jm(t,Em,Tm(t,Em).slice(0,-1)),Tm(t,wm).call(t)},this.replaceMessage=function(e,n){jm(t,Em,[].concat(F(Tm(t,Em).slice(0,e)),[t.snapshot(n)],F(Tm(t,Em).slice(e+1)))),Tm(t,wm).call(t)},this.snapshot=function(e){return structuredClone(e)},this["~registerMessagesCallback"]=function(e,n){var r,u,a=n?(r=e,null!=(u=n)?Bm(r,u):r):e;return Tm(t,Cm).add(a),function(){Tm(t,Cm).delete(a)}},this["~registerStatusCallback"]=function(e){return Tm(t,km).add(e),function(){Tm(t,km).delete(e)}},this["~registerErrorCallback"]=function(e){return Tm(t,Am).add(e),function(){Tm(t,Am).delete(e)}},Pm(this,wm,function(){Tm(t,Cm).forEach(function(e){return e()})}),Pm(this,Sm,function(){Tm(t,km).forEach(function(e){return e()})}),Pm(this,xm,function(){Tm(t,Am).forEach(function(e){return e()})}),jm(this,Em,n)},[{key:"status",get:function(){return Tm(this,_m)},set:function(e){jm(this,_m,e),Tm(this,Sm).call(this)}},{key:"error",get:function(){return Tm(this,bm)},set:function(e){jm(this,bm,e),Tm(this,xm).call(this)}},{key:"messages",get:function(){return Tm(this,Em)},set:function(e){jm(this,Em,F(e)),Tm(this,wm).call(this)}}])}();Em=new WeakMap,_m=new WeakMap,bm=new WeakMap,Cm=new WeakMap,km=new WeakMap,Am=new WeakMap,wm=new WeakMap,Sm=new WeakMap,xm=new WeakMap;var zm=function(){function e(n){var r,i=n.messages,o=v(n,Jt);a(this,e);var s=new Nm(i);return r=u(this,e,[h(h({},o),{},{state:s})]),Pm(t(r),Om,void 0),r["~registerMessagesCallback"]=function(e,n){return Tm(t(r),Om)["~registerMessagesCallback"](e,n)},r["~registerStatusCallback"]=function(e){return Tm(t(r),Om)["~registerStatusCallback"](e)},r["~registerErrorCallback"]=function(e){return Tm(t(r),Om)["~registerErrorCallback"](e)},jm(t(r),Om,s),r}return f(e,gm),o(e)}();Om=new WeakMap;var Rm="askai_token",Mm=function(e){if(!e)return!0;try{var t=function(e){var t=yn(e.split("."),1)[0];return JSON.parse(atob(t))}(e),n=t.exp;return Date.now()/1e3>n-30}catch(e){return!0}},Zm=null,Lm=function(){var e=Xt(vn().m(function e(t){var n,r,u,a,i,o;return vn().w(function(e){for(;;)switch(e.n){case 0:if(n=t.assistantId,r=t.abortSignal,u=t.useStagingEnv,a=void 0!==u&&u,i=sessionStorage.getItem(Rm),Mm(i)){e.n=1;break}return e.a(2,i);case 1:return o=a?Yu:Gu,Zm||(Zm=fetch("".concat(o,"/token"),{method:"POST",headers:{"x-algolia-assistant-id":n,"content-type":"application/json"},signal:r}).then(function(e){return e.json()}).then(function(e){var t=e.token,n=e.success,r=e.message;if(!n&&r)throw new Error(r);return sessionStorage.setItem(Rm,t),t}).finally(function(){return Zm=null})),e.a(2,Zm)}},e)}));return function(t){return e.apply(this,arguments)}}(),$m=function(){var e=Xt(vn().m(function e(t){var n,r,u,a,i,o,s,c,l,f;return vn().w(function(e){for(;;)switch(e.n){case 0:return n=t.assistantId,r=t.thumbs,u=t.messageId,a=t.appId,i=t.abortSignal,o=t.useStagingEnv,s=void 0!==o&&o,(c=new Headers).set("x-algolia-assistant-id",n),c.set("content-type","application/json"),e.n=1,Lm({assistantId:n,abortSignal:i,useStagingEnv:s});case 1:return l=e.v,c.set("authorization","TOKEN ".concat(l)),f=s?Yu:Gu,e.a(2,fetch("".concat(f,"/feedback"),{method:"POST",body:JSON.stringify({appId:a,messageId:u,thumbs:r}),headers:c}))}},e)}));return function(t){return e.apply(this,arguments)}}(),qm=["assistantId","apiKey","appId","indexName","useStagingEnv"];function Um(e){var t,n="algolia-client-js-".concat(e.key);function r(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function u(){return JSON.parse(r().getItem(n)||"{}")}function a(e){r().setItem(n,JSON.stringify(e))}return{get:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){var n,r,i;return n=e.timeToLive?1e3*e.timeToLive:null,r=u(),a(i=Object.fromEntries(Object.entries(r).filter(function(e){return void 0!==yn(e,2)[1].timestamp}))),n&&a(Object.fromEntries(Object.entries(i).filter(function(e){var t=yn(e,2)[1],r=(new Date).getTime();return!(t.timestamp+n2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then(function(e){return Promise.all([e,n.miss(e)])}).then(function(e){return yn(e,1)[0]})},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(e,r,u).catch(function(){return Hm({caches:t}).get(e,r,u)})},set:function(e,r){return n.set(e,r).catch(function(){return Hm({caches:t}).set(e,r)})},delete:function(e){return n.delete(e).catch(function(){return Hm({caches:t}).delete(e)})},clear:function(){return n.clear().catch(function(){return Hm({caches:t}).clear()})}}}function Vm(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(n,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);var i=r();return i.then(function(e){return u.miss(e)}).then(function(){return i})},set:function(n,r){return t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Wm(e){var t=e.algoliaAgents,n=e.client,r=e.version,u=function(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var n="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(n)&&(t.value="".concat(t.value).concat(n)),t}};return t}(r).add({segment:n,version:r});return t.forEach(function(e){return u.add(e)}),u}var Km=12e4;function Jm(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"up",n=Date.now();return pn(pn({},e),{},{status:t,lastUpdate:n,isUp:function(){return"up"===t||Date.now()-n>Km},isTimedOut:function(){return"timed out"===t&&Date.now()-n<=Km}})}var Qm=function(){function e(t,n){var r;return tn(this,e),on(r=en(this,e,[t]),"name","AlgoliaError"),n&&(r.name=n),r}return ln(e,bn(Error)),un(e)}(),Gm=function(){function e(t,n,r){var u;return tn(this,e),on(u=en(this,e,[t,r]),"stackTrace",void 0),u.stackTrace=n,u}return ln(e,Qm),un(e)}(),Ym=function(){function e(t){return tn(this,e),en(this,e,["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",t,"RetryError"])}return ln(e,Gm),un(e)}(),Xm=function(){function e(t,n,r){var u,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"ApiError";return tn(this,e),on(u=en(this,e,[t,r,a]),"status",void 0),u.status=n,u}return ln(e,Gm),un(e)}(),eD=function(){function e(t,n){var r;return tn(this,e),on(r=en(this,e,[t,"DeserializationError"]),"response",void 0),r.response=n,r}return ln(e,Qm),un(e)}(),tD=function(){function e(t,n,r,u){var a;return tn(this,e),on(a=en(this,e,[t,n,u,"DetailedApiError"]),"error",void 0),a.error=r,a}return ln(e,Xm),un(e)}();function nD(e,t,n){var r,u=(r=n,Object.keys(r).filter(function(e){return void 0!==r[e]}).sort().map(function(e){return"".concat(e,"=").concat(encodeURIComponent("[object Array]"===Object.prototype.toString.call(r[e])?r[e].join(","):r[e]).replace(/\+/g,"%20"))}).join("&")),a="".concat(e.protocol,"://").concat(e.url).concat(e.port?":".concat(e.port):"","/").concat("/"===t.charAt(0)?t.substring(1):t);return u.length&&(a+="?".concat(u)),a}function rD(e,t){if("GET"!==e.method&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:pn(pn({},e.data),t.data);return JSON.stringify(n)}}function uD(e,t,n){var r=pn(pn(pn({Accept:"application/json"},e),t),n),u={};return Object.keys(r).forEach(function(e){var t=r[e];u[e.toLowerCase()]=t}),u}function aD(e){try{return JSON.parse(e.content)}catch(t){throw new eD(t.message,e)}}function iD(e,t){var n=e.content,r=e.status;try{var u=JSON.parse(n);return"error"in u?new tD(u.message,r,u.error,t):new Xm(u.message,r,t)}catch(e){}return new Xm(n,r,t)}function oD(e){var t=e.isTimedOut,n=e.status;return t||function(e){return!e.isTimedOut&&0===~~e.status}({isTimedOut:t,status:n})||2!=~~(n/100)&&4!=~~(n/100)}function sD(e){return 2==~~(e.status/100)}function cD(e){return e.map(function(e){return lD(e)})}function lD(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return pn(pn({},e),{},{request:pn(pn({},e.request),{},{headers:pn(pn({},e.request.headers),t)})})}var fD=["appId","apiKey","authMode","algoliaAgents"],dD=["params"],pD="5.43.0";function hD(e){return[{url:"".concat(e,"-dsn.algolia.net"),accept:"read",protocol:"https"},{url:"".concat(e,".algolia.net"),accept:"write",protocol:"https"}].concat(function(e){for(var t=e,n=e.length-1;n>0;n--){var r=Math.floor(Math.random()*(n+1)),u=e[n];t[n]=e[r],t[r]=u}return t}([{url:"".concat(e,"-1.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-2.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-3.algolianet.com"),accept:"readWrite",protocol:"https"}]))}var vD="4.5.4";function mD(e,t,n){var r=It.useMemo(function(){var r=function(e,t){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!t||"string"!=typeof t)throw new Error("`apiKey` is missing.");return function(e){var t=e.appId,n=e.apiKey,r=e.authMode,u=e.algoliaAgents,a=hn(e,fD),i=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"WithinHeaders",r={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers:function(){return"WithinHeaders"===n?r:{}},queryParameters:function(){return"WithinQueryParameters"===n?r:{}}}}(t,n,r),o=function(e){var t=e.hosts,n=e.hostsCache,r=e.baseHeaders,u=e.logger,a=e.baseQueryParameters,i=e.algoliaAgent,o=e.timeouts,s=e.requester,c=e.requestsCache,l=e.responsesCache;function f(e){return d.apply(this,arguments)}function d(){return(d=Xt(vn().m(function e(t){var r,u,a,i,o;return vn().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Promise.all(t.map(function(e){return n.get(e,function(){return Promise.resolve(Jm(e))})}));case 1:return r=e.v,u=r.filter(function(e){return e.isUp()}),a=r.filter(function(e){return e.isTimedOut()}),i=[].concat(gn(u),gn(a)),o=i.length>0?i:t,e.a(2,{hosts:o,getTimeout:function(e,t){return(0===a.length&&0===e?1:a.length+3+e)*t}})}},e)}))).apply(this,arguments)}function p(e,t){return h.apply(this,arguments)}function h(){return h=Xt(vn().m(function e(c,l){var d,p,h,v,m,D,y,g,F,E,_,b,C,k=arguments;return vn().w(function(e){for(;;)switch(e.n){case 0:if(d=!(k.length>2&&void 0!==k[2])||k[2],p=[],h=rD(c,l),v=uD(r,c.headers,l.headers),m="GET"===c.method?pn(pn({},c.data),l.data):{},D=pn(pn(pn({},a),c.queryParameters),m),i.value&&(D["x-algolia-agent"]=i.value),l&&l.queryParameters)for(y=0,g=Object.keys(l.queryParameters);y1&&void 0!==arguments[1]?arguments[1]:{},n=e.useReadTransporter||"GET"===e.method;if(!n)return p(e,t,n);var u=function(){return p(e,t)};if(!0!==(t.cacheable||e.cacheable))return u();var i={request:e,requestOptions:t,transporter:{queryParameters:a,headers:r}};return l.get(i,function(){return c.get(i,function(){return c.set(i,u()).then(function(e){return Promise.all([c.delete(i),e])},function(e){return Promise.all([c.delete(i),Promise.reject(e)])}).then(function(e){var t=yn(e,2);return t[0],t[1]})})},{miss:function(e){return l.set(i,e)}})},requestsCache:c,responsesCache:l}}(pn(pn({hosts:hD(t)},a),{},{algoliaAgent:Wm({algoliaAgents:u,client:"Lite",version:pD}),baseHeaders:pn(pn({"content-type":"text/plain"},i.headers()),a.baseHeaders),baseQueryParameters:pn(pn({},i.queryParameters()),a.baseQueryParameters)}));return{transporter:o,appId:t,apiKey:n,clearCache:function(){return Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(function(){})},get _ua(){return o.algoliaAgent.value},addAlgoliaAgent:function(e,t){o.algoliaAgent.add({segment:e,version:t})},setClientApiKey:function(e){var t=e.apiKey;r&&"WithinHeaders"!==r?o.baseQueryParameters["x-algolia-api-key"]=t:o.baseHeaders["x-algolia-api-key"]=t},searchForHits:function(e,t){return this.search(e,t)},searchForFacets:function(e,t){return this.search(e,t)},customPost:function(e,t){var n=e.path,r=e.parameters,u=e.body;if(!n)throw new Error("Parameter `path` is required when calling `customPost`.");var a={method:"POST",path:"/{path}".replace("{path}",n),queryParameters:r||{},headers:{},data:u||{}};return o.request(a,t)},getRecommendations:function(e,t){if(e&&Array.isArray(e)&&(e={requests:e}),!e)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!e.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");var n={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(n,t)},search:function(e,t){if(e&&Array.isArray(e)){var n={requests:e.map(function(e){var t=e.params,n=hn(e,dD);return"facet"===n.type?pn(pn(pn({},n),t),{},{type:"facet"}):pn(pn(pn({},n),t),{},{facet:void 0,maxFacetHits:void 0,facetQuery:void 0})})};e=n}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");var r={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(r,t)}}}(pn({appId:e,apiKey:t,timeouts:{connect:1e3,read:2e3,write:3e4},logger:{debug:function(e,t){return Promise.resolve()},info:function(e,t){return Promise.resolve()},error:function(e,t){return Promise.resolve()}},requester:{send:function(e){return new Promise(function(t){var n=new XMLHttpRequest;n.open(e.method,e.url,!0),Object.keys(e.headers).forEach(function(t){return n.setRequestHeader(t,e.headers[t])});var r,u=function(e,r){return setTimeout(function(){n.abort(),t({status:0,content:r,isTimedOut:!0})},e)},a=u(e.connectTimeout,"Connection timeout");n.onreadystatechange=function(){n.readyState>n.OPENED&&void 0===r&&(clearTimeout(a),r=u(e.responseTimeout,"Socket timeout"))},n.onerror=function(){0===n.status&&(clearTimeout(a),clearTimeout(r),t({content:n.responseText||"Network request failed",status:n.status,isTimedOut:!1}))},n.onload=function(){clearTimeout(a),clearTimeout(r),t({content:n.responseText,status:n.status,isTimedOut:!1})},n.send(e.data)})}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:Vm(),requestsCache:Vm({serializable:!1}),hostsCache:Hm({caches:[Um({key:"".concat(pD,"-").concat(e)}),Vm()]})},void 0))}(e,t);return r.addAlgoliaAgent("docsearch",vD),!1===/docsearch.js \(.*\)/.test(r.transporter.algoliaAgent.value)&&r.addAlgoliaAgent("docsearch-react",vD),n(r)},[e,t,n]);return r}var DD=["appId","apiKey","askAi","maxResultsPerGroup","theme","onClose","transformItems","hitComponent","resultsFooterComponent","navigator","initialScrollY","transformSearchClient","disableUserPersonalization","initialQuery","translations","getMissingResultsUrl","insights","onAskAiToggle","interceptAskAiEvent","isAskAiActive","recentSearchesLimit","recentSearchesWithFavoritesLimit","indices","indexName","searchParameters","isHybridModeSupported"],yD=["footer","searchBox"],gD=function(){var e=Xt(vn().m(function e(t){var n,r,u,a,i,o,s,c,l,f,d,p,h,v,m,D,y,g,F;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=t.query,r=t.state,u=t.setContext,a=t.setStatus,i=t.searchClient,o=t.indexes,s=t.snippetLength,c=t.insights,l=t.appId,f=t.apiKey,d=t.maxResultsPerGroup,p=t.transformItems,h=void 0===p?xn:p,v=t.saveRecentSearch,m=t.onClose,D=c,e.p=1,e.n=2,i.search({requests:o.map(function(e){var t,r,u,a,i,o,c,l="string"==typeof e?e:e.name,f="string"==typeof e?{}:e.searchParameters;return pn({query:n,indexName:l,attributesToRetrieve:null!==(t=null==f?void 0:f.attributesToRetrieve)&&void 0!==t?t:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:null!==(r=null==f?void 0:f.attributesToSnippet)&&void 0!==r?r:["hierarchy.lvl1:".concat(s.current),"hierarchy.lvl2:".concat(s.current),"hierarchy.lvl3:".concat(s.current),"hierarchy.lvl4:".concat(s.current),"hierarchy.lvl5:".concat(s.current),"hierarchy.lvl6:".concat(s.current),"content:".concat(s.current)],snippetEllipsisText:null!==(u=null==f?void 0:f.snippetEllipsisText)&&void 0!==u?u:"…",highlightPreTag:null!==(a=null==f?void 0:f.highlightPreTag)&&void 0!==a?a:"",highlightPostTag:null!==(i=null==f?void 0:f.highlightPostTag)&&void 0!==i?i:"",hitsPerPage:null!==(o=null==f?void 0:f.hitsPerPage)&&void 0!==o?o:20,clickAnalytics:null!==(c=null==f?void 0:f.clickAnalytics)&&void 0!==c?c:D},null!=f?f:{})})});case 2:return y=e.v,g=y.results,e.a(2,g.flatMap(function(e){var t,n=e,a=n.hits,i=n.nbHits,o=Sn(h(a),function(e){return jn(e)},d);if(r.context.searchSuggestions.length0&&$.forEach(function(e){Fe.push("string"==typeof e?{name:e}:e)}),Fe.length<1)throw new Error("Must supply either `indexName` or `indices` for DocSearch to work");var Ee=Fe[0].name,_e=It.useRef(Io({key:"__DOCSEARCH_ASKAI_CONVERSATIONS__".concat((null==fe?void 0:fe.indexName)||Ee),limit:10})).current,be=It.useRef(Bo({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(Ee),limit:10})).current,Ce=It.useRef(Bo({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(Ee),limit:0===be.getAll().length?R:Z})).current,ke=yn(It.useState(!1),2),Ae=ke[0],we=ke[1],xe=function(e){var t=e.assistantId,n=e.apiKey,r=e.appId,u=e.indexName,a=e.useStagingEnv,i=void 0!==a&&a,o=hn(e,qm),s=Ie(new AbortController),c=Pe(function(){return o.agentStudio?function(e){var t=e.appId,n=e.apiKey,r=e.assistantId,u=e.searchParameters;return new ym({api:"https://".concat(t,".algolia.net/agent-studio/1/agents/").concat(r,"/completions?stream=true&compatibilityMode=ai-sdk-5"),headers:{"x-algolia-application-id":t,"x-algolia-api-key":n},body:u?{algolia:{searchParameters:u}}:{}})}({apiKey:n,appId:r,assistantId:null!=t?t:"",searchParameters:o.searchParameters}):function(e){var t,n=e.assistantId,r=e.apiKey,u=e.indexName,a=e.searchParameters,i=e.appId,o=e.abortController,s=e.useStagingEnv;return new ym({api:s?Yu:Gu,headers:(t=Xt(vn().m(function e(){var t;return vn().w(function(e){for(;;)switch(e.n){case 0:if(n){e.n=1;break}throw new Error("Ask AI assistant ID is required");case 1:return e.n=2,Lm({assistantId:n,abortSignal:o.signal,useStagingEnv:s});case 2:return t=e.v,e.a(2,pn(pn({},t?{authorization:"TOKEN ".concat(t)}:{}),{},{"X-Algolia-API-Key":r,"X-Algolia-Application-Id":i,"X-Algolia-Index-Name":u,"X-Algolia-Assistant-Id":n||"","X-AI-SDK-Version":"v5"}))}},e)})),function(){return t.apply(this,arguments)}),body:a?{searchParameters:a}:{}})}({assistantId:null!=t?t:"",apiKey:n,appId:r,indexName:u,searchParameters:o.searchParameters,abortController:s.current,useStagingEnv:i})},[n,r,t,u,i,o]),l=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.experimental_throttle,n=e.resume,r=void 0!==n&&n,u=v(e,Qt),a=Ie("chat"in u?u.chat:new zm(u));("chat"in u&&u.chat!==a.current||"id"in u&&a.current.id!==u.id)&&(a.current="chat"in u?u.chat:new zm(u));var i="id"in u?u.id:null,o=je(function(e){return a.current["~registerMessagesCallback"](e,t)},[t,i]),s=Ve(o,function(){return a.current.messages}),c=Ve(a.current["~registerStatusCallback"],function(){return a.current.status}),l=Ve(a.current["~registerErrorCallback"],function(){return a.current.error}),f=je(function(e){"function"==typeof e&&(e=e(a.current.messages)),a.current.messages=e},[a]);return Oe(function(){r&&a.current.resumeStream()},[r,a]),{id:a.current.id,messages:s,setMessages:f,sendMessage:a.current.sendMessage,regenerate:a.current.regenerate,clearError:a.current.clearError,stop:a.current.stop,error:l,resumeStream:a.current.resumeStream,status:c,addToolResult:a.current.addToolOutput,addToolOutput:a.current.addToolOutput}}({sendAutomaticallyWhen:Fm,transport:c}),f=l.messages,d=l.sendMessage,p=l.status,h=l.setMessages,m=l.error,D=l.stop,y=Ie(Io({key:"__DOCSEARCH_ASKAI_CONVERSATIONS__".concat(u),limit:10})).current,g=je(function(){var e=Xt(vn().m(function e(n,u){var a;return vn().w(function(e){for(;;)switch(e.n){case 0:if(t){e.n=1;break}return e.a(2);case 1:return e.n=2,$m({assistantId:t,thumbs:u,messageId:n,appId:r,abortSignal:s.current.signal,useStagingEnv:i});case 2:if(!(e.v.status>=300)){e.n=3;break}throw new Error("Failed, try again later.");case 3:null===(a=y.addFeedback)||void 0===a||a.call(y,n,1===u?"like":"dislike");case 4:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[t,r,y,i]),F=function(){var e=Xt(vn().m(function e(){return vn().w(function(e){for(;;)switch(e.n){case 0:return s.current.abort(),e.n=1,D();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),E=Pe(function(){for(var e=[],t=0;t0){var u=r.detail[0],a=u.msg,i=u.loc.at(-1);t="".concat(a,": ").concat(i)}}else t=n.message}catch(e){}return new Error(t)}(m):m},[m,o.agentStudio]);return{messages:f,sendMessage:d,status:p,setMessages:h,askAiError:b,stopAskAiStreaming:F,isStreaming:_,exchanges:E,conversations:y,sendFeedback:g}}({assistantId:de,apiKey:(null==fe?void 0:fe.apiKey)||i,appId:(null==fe?void 0:fe.appId)||a,indexName:(null==fe?void 0:fe.indexName)||Ee,searchParameters:pe,useStagingEnv:he,agentStudio:ge}),Be=xe.messages,Te=xe.status,Ne=xe.setMessages,ze=xe.sendMessage,Re=xe.stopAskAiStreaming,Me=xe.askAiError,Ze=xe.sendFeedback,Le=It.useRef(Te);It.useEffect(function(){if(!k){if("streaming"===Le.current&&"ready"===Te){Ae&&Be.at(-1)&&(Be.at(-1).metadata={stopped:!0});var e,t=an(Be[0].parts);try{for(t.s();!(e=t.n()).done;){var n=e.value;"text"===n.type&&_e.add($i(n.text,Be))}}catch(e){t.e(e)}finally{t.f()}}Le.current=Te}},[Te,Be,_e,k,Ae]);var $e=It.useMemo(function(){return"error"===Te&&Ui(Me)},[Te,Me]),qe=It.useCallback(function(e){var t=e.hierarchy,n=["lvl6","lvl5","lvl4","lvl3","lvl2","lvl1","lvl0"].find(function(e){return t[e]});return pn(pn({},e),{},{type:n||"lvl0",content:null})},[]),Ue=It.useCallback(function(e){if(!k){var t="content"===e.type?e.__docsearch_parent||qe(e):e;t&&-1===be.getAll().findIndex(function(e){return e.objectID===t.objectID})&&Ce.add(t)}},[be,Ce,k,qe]),He=It.useCallback(function(e){if(Y.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,n={eventName:"Item Selected",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};Y.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(n)}},[Y.context.algoliaInsightsPlugin]),We=It.useRef(void 0),Ke=It.useCallback(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;if(e){var r={query:t,suggestedQuestionId:null==n?void 0:n.objectID};if(null!=P&&P(r))return void(We.current&&We.current.setQuery(""))}if(e&&"new-conversation"===me&&De("initial"),T(e,{query:t,suggestedQuestionId:null==n?void 0:n.objectID}),!V){we(!1);var u={};if(n&&(u.body={suggestedQuestionId:n.objectID}),ze({role:"user",parts:[{type:"text",text:t}]},u),ae.current){var a=ae.current;"function"==typeof a.scrollTo?a.scrollTo({top:0,behavior:"smooth"}):a.scrollTop=0}We.current&&We.current.setQuery("")}},[T,P,ze,me,De,V]),Je=It.useCallback(function(){var e=Xt(vn().m(function e(t,n){return vn().w(function(e){for(;;)switch(e.n){case 0:if(de&&a){e.n=1;break}return e.a(2);case 1:return e.n=2,Ze(t,n);case 2:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[de,a,Ze]);We.current||(We.current=Qu({id:"docsearch",defaultActiveItemId:0,openOnFocus:!0,initialState:{query:ce,context:{searchSuggestions:[]}},insights:Boolean(I),navigator:g,onStateChange:function(e){X(e.state)},getSources:function(e){var t=e.query,n=e.state,r=e.setContext,u=e.setStatus;if(!t){var o=function(e){var t=e.recentSearches,n=e.favoriteSearches,r=e.saveRecentSearch,u=e.onClose;return e.disableUserPersonalization?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,n=e.event;r(t),On(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return t.getAll()}},{sourceId:"favoriteSearches",onSelect:function(e){var t=e.item,n=e.event;r(t),On(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return n.getAll()}}]}({recentSearches:Ce,favoriteSearches:be,saveRecentSearch:Ue,onClose:f,disableUserPersonalization:k,canHandleAskAi:ee}),c=ee?[{sourceId:"recentConversations",getItems:function(){return k?[]:_e.getAll()},onSelect:function(e){var t=e.item;t.messages&&(Ne(t.messages),T(!0))}}]:[];return[].concat(gn(o),c)}var l={context:n.context},d=gD({query:t,state:l,setContext:r,setStatus:u,searchClient:le,indexes:Fe,snippetLength:oe,insights:Boolean(I),appId:a,apiKey:i,maxResultsPerGroup:s,transformItems:p,saveRecentSearch:Ue,onClose:f}),h=ee?[{sourceId:"askAI",getItems:function(){return[{type:"askAI",query:t,url_without_anchor:"",objectID:"ask-ai-button",content:null,url:"",anchor:null,hierarchy:{lvl0:"Ask AI",lvl1:t,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},_highlightResult:{},_snippetResult:{},__docsearch_parent:null}]},onSelect:function(e){var t=e.item;"askAI"===t.type&&t.query&&Ke(!0,t.query)}}]:[];return d.then(function(e){return[].concat(h,gn(e))})}}));var Qe,Ge,Ye=We.current,Xe=Ye.getEnvironmentProps,et=Ye.getRootProps,tt=Ye.refresh;!function(e){var t=e.getEnvironmentProps,n=e.panelElement,r=e.formElement,u=e.inputElement;It.useEffect(function(){if(n&&r&&u){var e=t({panelElement:n,formElement:r,inputElement:u}),a=e.onTouchStart,i=e.onTouchMove;return window.addEventListener("touchstart",a),window.addEventListener("touchmove",i),function(){window.removeEventListener("touchstart",a),window.removeEventListener("touchmove",i)}}},[t,n,r,u])}({getEnvironmentProps:Xe,panelElement:ae.current,formElement:ue.current,inputElement:ie.current}),Qe={container:ne.current},Ge=Qe.container,It.useEffect(function(){if(Ge){var e=Ge.querySelectorAll("a[href]:not([disabled]), button:not([disabled]), input:not([disabled])"),t=e[0],n=e[e.length-1];return Ge.addEventListener("keydown",r),function(){Ge.removeEventListener("keydown",r)}}function r(e){"Tab"===e.key&&(e.shiftKey?document.activeElement===t&&(e.preventDefault(),n.focus()):document.activeElement===n&&(e.preventDefault(),t.focus()))}},[Ge]),kn({theme:c}),It.useEffect(function(){return document.body.classList.add("DocSearch--active"),function(){var e,t;document.body.classList.remove("DocSearch--active"),null===(e=(t=window).scrollTo)||void 0===e||e.call(t,0,E)}},[]),It.useEffect(function(){"undefined"!=typeof window&&window.localStorage&&function(){if("undefined"==typeof window||!window.localStorage)return 0;var e=0;for(var t in window.localStorage)window.localStorage.hasOwnProperty(t)&&(e+=window.localStorage[t].length+t.length);return e}()>4194304&&So()},[]),It.useLayoutEffect(function(){var e=window.innerWidth-document.body.clientWidth;return document.body.style.marginInlineEnd="".concat(e,"px"),function(){document.body.style.marginInlineEnd="0px"}},[]),It.useEffect(function(){window.matchMedia("(max-width: 768px)").matches&&(oe.current=5)},[]),It.useEffect(function(){var e;ae.current&&!N&&("function"==typeof(e=ae.current).scrollTo?e.scrollTo({top:0,behavior:"smooth"}):e.scrollTop=0)},[Y.query,N]),It.useEffect(function(){ce.length>0&&(tt(),ie.current&&ie.current.focus())},[ce,tt]),It.useEffect(function(){function e(){if(re.current){var e=.01*window.innerHeight;re.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}},[]),It.useEffect(function(){N||(Ye.refresh(),Ne([]))},[N,Ye,Ne]),It.useEffect(function(){De("initial")},[N,De]);var nt=function(){var e=Xt(vn().m(function e(){return vn().w(function(e){for(;;)switch(e.n){case 0:return we(!0),e.n=1,Re();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),rt=function(){Ne([]),De("new-conversation")},ut=!0,at=Y.collections.some(function(e){return e.items.length>0});return"idle"!==Y.status||!1!==at||0!==Y.query.length||N||(ut=!1),It.createElement("div",sn({ref:ne},et({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===Y.status&&"DocSearch-Container--Stalled","error"===Y.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&f()}}),It.createElement("div",{className:"DocSearch-Modal",ref:re},It.createElement("header",{className:"DocSearch-SearchBar",ref:ue},It.createElement(wo,sn({},Ye,{state:Y,placeholder:te||"Search docs",autoFocus:0===ce.length,inputRef:ie,isFromSelection:Boolean(ce)&&ce===se,translations:J,isAskAiActive:N,askAiStatus:Te,askAiError:Me,askAiState:me,setAskAiState:De,isThreadDepthError:$e&&"new-conversation"!==me,onClose:f,onAskAiToggle:T,onAskAgain:function(e){Ke(!0,e)},onStopAskAiStreaming:nt,onNewConversation:rt,onViewConversationHistory:function(){De("conversation-history")}}))),ut&&It.createElement("div",{className:"DocSearch-Dropdown",ref:ae},It.createElement(Fo,sn({},Ye,{indexName:Ee,state:Y,hitComponent:m,resultsFooterComponent:y,disableUserPersonalization:k,recentSearches:Ce,favoriteSearches:be,conversations:_e,inputRef:ie,translations:Q,getMissingResultsUrl:O,isAskAiActive:N,canHandleAskAi:ee,messages:Be,askAiError:Me,status:Te,hasCollections:at,askAiState:me,selectAskAiQuestion:Ke,suggestedQuestions:ye,selectSuggestedQuestion:function(e){Ke(!0,e.question,e)},agentStudio:ge,onAskAiToggle:T,onNewConversation:rt,onItemClick:function(e,t){if("askAI"===e.type&&e.query){if("stored"===e.anchor&&"messages"in e){Ne(e.messages);var n={query:e.query,messageId:e.messages[0].id};if(null!=P&&P(n))return We.current&&We.current.setQuery(""),void t.preventDefault();T(!0,n)}else Ke(!0,e.query);return De("initial"),void t.preventDefault()}He(e),Ue(e),On(t)||f()},onFeedback:Je}))),It.createElement("footer",{className:"DocSearch-Footer"},It.createElement(ta,{translations:K,isAskAiActive:N}))))}var ED=It.forwardRef(function(e,t){return It.createElement(qt,sn({},e,{ref:t}),It.createElement(_D,e))});function _D(e){var t,n,r,u=function(){var e=It.useContext($t);if(void 0===e)throw new Error("`useDocSearch` must be used within the `DocSearch` provider");return e}(),a=u.searchButtonRef,i=u.keyboardShortcuts,o=u.isModalActive,s=u.isAskAiActive,c=u.initialQuery,l=u.onAskAiToggle,f=u.openModal,d=u.closeModal;return It.createElement(It.Fragment,null,It.createElement(zn,{keyboardShortcuts:i,ref:a,translations:null===(t=e.translations)||void 0===t?void 0:t.button,onClick:f}),o&&pt(It.createElement(FD,sn({},e,{initialScrollY:window.scrollY,initialQuery:c,translations:null==e||null===(n=e.translations)||void 0===n?void 0:n.modal,isAskAiActive:s,onAskAiToggle:l,onClose:d})),null!==(r=e.portalContainer)&&void 0!==r?r:document.body))}var bD=function(e,t,n,r){var u;t[0]=0;for(var a=1;a=5&&((u||!e&&5===r)&&(i.push(r,0,u,n),r=6),e&&(i.push(r,e,0,n),r=6)),u=""},s=0;s"===t?(r=1,u=""):u=t+u[0]:a?t===a?a="":u+=t:'"'===t||"'"===t?a=t:">"===t?(o(),r=1):r&&("="===t?(r=5,n=u,u=""):"/"===t&&(r<5||">"===e[s][c+1])?(o(),3===r&&(i=i[0]),r=i,(i=i[0]).push(2,0,r),r=0):" "===t||"\t"===t||"\n"===t||"\r"===t?(o(),r=2):u+=t),3===r&&"!--"===u&&(r=4,i=i[0])}return o(),i}(e)),t),arguments,[])).length>1?t:t[0]}.bind($);function wD(e){if(e)return function(t){var n=e(t,{html:AD});return Ot(n)?n:"function"==typeof n?n(t):"string"==typeof n?$("span",null,n):n}}function SD(e){var t=e.container,n=e.environment,r=e.transformSearchClient,u=e.hitComponent,a=e.resultsFooterComponent,i=v(e,kD),o=function(e,t){if("string"!=typeof e)return e;if(!t)throw new Error("Cannot resolve a selector without a browser environment.");var n=t.document.querySelector(e);if(!n)throw new Error('Container selector did not match any element: "'.concat(e,'"'));return n}(t,n||("undefined"!=typeof window?window:void 0)),s={current:null},c=!1,l=h(h({},i),{},{ref:s,hitComponent:wD(u),resultsFooterComponent:wD(a),transformSearchClient:function(e){return null!=e&&e.addAlgoliaAgent&&e.addAlgoliaAgent("docsearch.js",vD),"function"==typeof r?r(e):e}});return gt($(ED,l),o),c=!0,{open:function(){var e;null===(e=s.current)||void 0===e||e.open()},close:function(){var e;null===(e=s.current)||void 0===e||e.close()},openAskAi:function(e){var t;null===(t=s.current)||void 0===t||t.openAskAi(e)},get isReady(){return c},get isOpen(){var e,t;return null!==(e=null===(t=s.current)||void 0===t?void 0:t.isOpen)&&void 0!==e&&e},destroy:function(){Bt(o),c=!1}}}export{SD as default}; -//# sourceMappingURL=index.js.map diff --git a/node_modules/@docsearch/js/dist/esm/index.js.map b/node_modules/@docsearch/js/dist/esm/index.js.map deleted file mode 100644 index dd8c840..0000000 --- a/node_modules/@docsearch/js/dist/esm/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../../../../node_modules/preact/dist/preact.mjs","../../../../node_modules/preact/hooks/dist/hooks.mjs","../../../../node_modules/preact/compat/dist/compat.mjs","../../../docsearch-core/dist/esm/index.js","../../../docsearch-react/dist/esm/index.js","../../../../node_modules/htm/dist/htm.module.js","../../src/docsearch.tsx"],"sourcesContent":["var n,l,u,t,i,r,f,e,o,c,s,a,h={},p=[],v=Array.isArray,y=p.slice,w=Object.assign;function d(n){n&&n.parentNode&&n.remove()}function _(n,l,u){var t,i,r,f={};for(r in l)\"key\"==r?t=l[r]:\"ref\"==r&&\"function\"!=typeof n?i=l[r]:f[r]=l[r];return arguments.length>2&&(f.children=arguments.length>3?y.call(arguments,2):u),g(n,f,t,i,null)}function g(u,t,i,r,f){var e={type:u,props:t,key:i,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==f?++l:f,__i:-1,__u:0};return null==f&&null!=n.vnode&&n.vnode(e),e}function b(){return{current:null}}function k(n){return n.children}function m(n,l){this.props=n,this.context=l,this.__g=0}function M(n,l){if(null==l)return n.__?M(n.__,n.__i+1):null;for(var u;lh&&t.sort(f),l=t.shift(),h=t.length,8&l.__g&&(i=void 0,o=(e=(u=l).__v).__e,c=[],s=[],(a=u.__P)&&((i=w({},e)).__v=e.__v+1,n.vnode&&n.vnode(i),q(a,i,e,u.__n,a.namespaceURI,32&e.__u?[o]:null,c,null==o?M(e):o,!!(32&e.__u),s,a.ownerDocument),i.__v=e.__v,i.__.__k[i.__i]=i,P(c,i,s),i.__e!=o&&S(i)));r=0}function C(n,l,u,t,i,r,f,e,o,c,s,a){var v,y,w,d,_,g,b,k=t&&t.__k||p,m=l.length;for(o=j(u,l,k,o,m),v=0;v0?g(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f).__=n,f.__b=n.__b+1,e=null,-1!=(c=f.__i=I(f,u,o,a))&&(a--,(e=u[c])&&(e.__u|=2)),null==e||null==e.__v?(-1==c&&(i>s?h--:io?h--:h++,f.__u|=4))):n.__k[r]=null;if(a)for(r=0;r(s?1:0))for(i=u-1,r=u+1;i>=0||r=0?i--:r++])&&0==(2&c.__u)&&e==c.key&&o==c.type)return f;return-1}function L(n,l,u){\"-\"==l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":u}function O(n,l,u,t,i){var 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||L(n.style,l,\"\");if(u)for(l in u)t&&u[l]==t[l]||L(n.style,l,u[l])}else if(\"o\"==l[0]&&\"n\"==l[1])r=l!=(l=l.replace(e,\"$1\")),(l=l.slice(2))[0].toLowerCase()!=l[0]&&(l=l.toLowerCase()),n.__l||(n.__l={}),n.__l[l+r]=u,u?t?u.l=t.l:(u.l=o,n.addEventListener(l,r?s:c,r)):n.removeEventListener(l,r?s:c,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==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 T(l){return function(u){if(this.__l){var t=this.__l[u.type+l];if(null==u.u)u.u=o++;else if(u.u0&&u.__c.__z.push(B),T++,f[P]=null):8==B.nodeType&&\"/$s\"==B.data?(--T>0&&u.__c.__z.push(B),q=0===T,o=f[P],f[P]=null):T>0&&(u.__c.__z.push(B),f[P]=null));if(!q){for(;o&&8==o.nodeType&&o.nextSibling;)o=o.nextSibling;f[f.indexOf(o)]=null,u.__c.__z=[o]}u.__e=o}else{for(D=f.length;D--;)d(f[D]);N(u)}else u.__e=t.__e,u.__k=t.__k,l.then||N(u);n.__e(l,u,t)}else o=u.__e=z(t.__e,u,t,i,r,f,e,c,s,a);return(h=n.diffed)&&h(u),128&u.__u?void 0:o}function N(n){n&&n.__c&&(n.__c.__g|=4),n&&n.__k&&n.__k.forEach(N)}function P(l,u,t){for(var i=0;i0?n:v(n)?n.map(V):w({},n)}function z(l,u,t,i,r,f,e,o,c,s){var a,p,w,_,g,b,k,m,S=t.props,$=u.props,x=u.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!=f)for(a=0;a2&&(f.children=arguments.length>3?y.call(arguments,2):u),g(n.type,f,t||n.key,i||n.ref,null)}function K(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.__g|=4,$(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\"+a++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l}n={__e:function(n,l,u,t){for(var i,f,e;l=l.__;)if((i=l.__c)&&!(1&i.__g)){i.__g|=4;try{if((f=i.constructor)&&null!=f.getDerivedStateFromError&&(i.setState(f.getDerivedStateFromError(n)),e=8&i.__g),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),e=8&i.__g),e)return void(i.__g|=2)}catch(l){n=l}}throw r=0,n}},l=0,u=function(n){return null!=n&&null==n.constructor},m.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),$(this))},m.prototype.forceUpdate=function(n){this.__v&&(this.__g|=4,n&&this.__h.push(n),$(this))},m.prototype.render=k,t=[],r=0,f=function(n,l){return n.__v.__b-l.__v.__b},e=/(PointerCapture)$|Capture$/i,o=0,c=T(!1),s=T(!0),a=0;export{m as Component,k as Fragment,J as cloneElement,K as createContext,_ as createElement,b as createRef,_ as h,G as hydrate,u as isValidElement,n as options,F as render,H as toChildArray};\n//# sourceMappingURL=preact.mjs.map\n","import{options as n}from\"preact\";var t,r,u,i,o=Object.is,f=0,c=[],e=n,a=e.__b,v=e.__r,l=e.diffed,m=e.__c,s=e.unmount,p=e.__;function d(n,t){e.__h&&e.__h(r,n,f||t),f=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function h(n){return f=1,y(D,n)}function y(n,u,i){var f=d(t++,2);if(f.t=n,!f.__c&&(f.__=[i?i(u):D(void 0,u),function(n){var t=f.__N?f.__N[0]:f.__[0],r=f.t(t,n);o(t,r)||(f.__N=[r,f.__[1]],f.__c.setState({}))}],f.__c=r,!r.__f)){var c=function(n,t,r){if(!f.__c.__H)return!0;var u=f.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!e||e.call(this,n,t,r);var i=f.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,o(t,n.__[0])||(i=!0)}}),e&&e.call(this,n,t,r)||i};r.__f=!0;var e=r.shouldComponentUpdate,a=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(4&this.__g){var u=e;e=void 0,c(n,t,r),e=u}a&&a.call(this,n,t,r)},r.shouldComponentUpdate=c}return f.__N||f.__}function _(n,u){var i=d(t++,3);!e.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__H.__h.push(i))}function A(n,u){var i=d(t++,4);!e.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__h.push(i))}function F(n){return f=5,q(function(){return{current:n}},[])}function T(n,t,r){f=6,A(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 q(n,r){var u=d(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function b(n,t){return f=8,q(function(){return n},t)}function j(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(n,t){e.useDebugValue&&e.useDebugValue(t?t(n):n)}function O(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 P(){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 g(){for(var n;n=c.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=[],e.__e(t,n.__v)}}e.__b=function(n){r=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),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},e.diffed=function(n){l&&l(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==c.push(t)&&i===e.requestAnimationFrame||((i=e.requestAnimationFrame)||w)(g)),t.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),u=r=null},e.__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=[],e.__e(r,n.__v)}}),m&&m(n,t)},e.unmount=function(n){s&&s(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&&e.__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!o(t,n[r])})}function D(n,t){return\"function\"==typeof t?t(n):t}export{b as useCallback,j as useContext,x as useDebugValue,_ as useEffect,O as useErrorBoundary,P as useId,T as useImperativeHandle,A as useLayoutEffect,q as useMemo,y as useReducer,F as useRef,h as useState};\n//# sourceMappingURL=hooks.mjs.map\n","import{Component as n,createElement as e,toChildArray as t,options as r,Fragment as u,render as o,hydrate as i,createContext as l,createRef as c,cloneElement as a}from\"preact\";export{Component,Fragment,createContext,createElement,createRef}from\"preact\";import{useState as f,useLayoutEffect as s,useEffect as v,useCallback as p,useContext as d,useDebugValue as h,useId as m,useImperativeHandle as _,useMemo as y,useReducer as b,useRef as g}from\"preact/hooks\";export*from\"preact/hooks\";function E(n,e){var t=e(),r=f({t:{__:t,u:e}}),u=r[0].t,o=r[1];return s(function(){u.__=t,u.u=e,S(u)&&o({t:u})},[n,t,e]),v(function(){return S(u)&&o({t:u}),n(function(){S(u)&&o({t:u})})},[n]),t}function S(n){var e=n.u,t=n.__;try{var r=e();return!Object.is(t,r)}catch(n){return!0}}function C(n){n()}function x(n){return n}function R(){return[!1,C]}var w=s,k=Object.assign;function I(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}var N=/^(-|f[lo].*[^se]$|g.{5,}[^ps]$|z|o[pr]|(W.{5})?[lL]i.*(t|mp)$|an|(bo|s).{4}Im|sca|m.{6}[ds]|ta|c.*[st]$|wido|ini)/;function O(n,e){this.props=n,this.context=e}function D(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:I(this.props,n)}function u(t){return this.shouldComponentUpdate=r,e(n,t)}return u.displayName=\"Memo(\"+(n.displayName||n.name)+\")\",u.prototype.isReactComponent=!0,u.type=n,u}(O.prototype=new n).isPureReactComponent=!0,O.prototype.shouldComponentUpdate=function(n,e){return I(this.props,n)||I(this.state,e)};var L=Symbol.for(\"react.forward_ref\");function M(n){function e(e){var t=k({},e);return delete t.ref,n(t,e.ref||null)}return e.$$typeof=L,e.render=n,e.prototype.isReactComponent=!0,e.displayName=\"ForwardRef(\"+(n.displayName||n.name)+\")\",e}var A=function(n,e,r){return null==n?null:t(t(n).map(e.bind(r)))},F={map:A,forEach:A,count:function(n){return n?t(n).length:0},only:function(n){var e=t(n);if(1!==e.length)throw\"Children.only\";return e[0]},toArray:t},T=r.__e;r.__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);T(n,e,t,r)};var U=r.unmount;function V(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=k({},n)).__c&&(n.__c.__P===t&&(n.__c.__P=e),n.__c.__g|=4,n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return V(n,e,t)})),n}function j(n,e,t){return n&&t&&(\"string\"==typeof n.type&&(n.__u|=1),n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return j(n,e,t)}),n.__c&&n.__c.__P===e&&(n.__e&&t.appendChild(n.__e),n.__c.__g|=4,n.__c.__P=t)),n}function W(){this.__u=0,this.o=null,this.__b=null}function $(n){var t,r,u;function o(o){if(t||(t=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw t;return e(r,o)}return o.displayName=\"Lazy\",o}function z(n){return this.getChildContext=function(){return n.context},n.children}function P(n){var t=this,r=n.i;if(t.componentWillUnmount=function(){o(null,t.l),t.l=null,t.i=null},t.i&&t.i!==r&&t.componentWillUnmount(),!t.l){for(var u=t.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;t.i=r,t.l={nodeType:1,parentNode:r,childNodes:[],__k:{__m:u.__m},ownerDocument:r.ownerDocument,insertBefore:function(n,e){this.childNodes.push(n),t.i.insertBefore(n,e)}}}o(e(z,{context:t.context},n.__v),t.l)}function H(n,t){var r=e(P,{__v:n,i:t});return r.containerInfo=t,r}r.unmount=function(n){var e=n.__c;e&&e.__R&&e.__R(),U&&U(n)},(W.prototype=new n).__c=function(n,e){var t=e.__c,r=this;null==r.o&&(r.o=[]),r.o.push(t);var u=!1,o=function(){u||(u=!0,t.__R=null,i())};t.__R=o;var i=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=j(n,n.__c.__P,n.__c.__O)}var e;for(r.setState({__a:r.__b=null});e=r.o.pop();)e.forceUpdate()}};r.__u++||32&e.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(o,o)},W.prototype.componentWillUnmount=function(){this.o=[]},W.prototype.render=function(n,t){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}return[e(u,null,t.__a?null:n.children),t.__a&&e(u,null,n.fallback)]};var B=Symbol.for(\"react.element\"),Z=/^(?: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]/,Y=/[A-Z0-9]/g,q=\"undefined\"!=typeof document,G=function(n){return/fil|che|rad/.test(n)};function J(n,e,t){return null==e.__k&&(e.textContent=\"\"),o(n,e),\"function\"==typeof t&&t(),n?n.__c:null}function K(n,e,t){return i(n,e),\"function\"==typeof t&&t(),n?n.__c:null}n.prototype.isReactComponent={},[\"componentWillMount\",\"componentWillReceiveProps\",\"componentWillUpdate\"].forEach(function(e){Object.defineProperty(n.prototype,e,{configurable:!0,get:function(){return this[\"UNSAFE_\"+e]},set:function(n){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:n})}})});var Q=r.event;function X(){}function nn(){return this.cancelBubble}function en(){return this.defaultPrevented}r.event=function(n){return Q&&(n=Q(n)),n.persist=X,n.isPropagationStopped=nn,n.isDefaultPrevented=en,n.nativeEvent=n};var tn,rn={enumerable:!1,configurable:!0,get:function(){return this.class}},un=r.vnode;r.vnode=function(n){if(\"string\"==typeof n.type)!function(n){var e=n.props,r=n.type,u={},o=-1===r.indexOf(\"-\");for(var i in e){var l=e[i];if(!(\"value\"===i&&\"defaultValue\"in e&&null==l||q&&\"children\"===i&&\"noscript\"===r||\"class\"===i||\"className\"===i)){if(\"style\"===i&&\"object\"==typeof l)for(var c in l)\"number\"!=typeof l[c]||N.test(c)||(l[c]+=\"px\");else if(\"defaultValue\"===i&&\"value\"in e&&null==e.value)i=\"value\";else if(\"download\"===i&&!0===l)l=\"\";else if(\"translate\"===i&&\"no\"===l)l=!1;else if(\"o\"===i[0]&&\"n\"===i[1]){var a=i.toLowerCase();\"ondoubleclick\"===a?i=\"ondblclick\":\"onchange\"!==a||\"input\"!==r&&\"textarea\"!==r||G(e.type)?\"onfocus\"===a?i=\"onfocusin\":\"onblur\"===a&&(i=\"onfocusout\"):a=i=\"oninput\",\"oninput\"===a&&u[i=a]&&(i=\"oninputCapture\")}else o&&Z.test(i)?i=i.replace(Y,\"-$&\").toLowerCase():null===l&&(l=void 0);u[i]=l}}\"select\"==r&&u.multiple&&Array.isArray(u.value)&&(u.value=t(e.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),\"select\"==r&&null!=u.defaultValue&&(u.value=t(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\",rn)):(e.className&&!e.class||e.class&&e.className)&&(u.class=u.className=e.className),n.props=u}(n);else if(\"function\"==typeof n.type&&(\"ref\"in n.props&&\"prototype\"in n.type&&n.type.prototype.render&&(n.ref=n.props.ref,delete n.props.ref),n.type.defaultProps)){var e=k({},n.props);for(var r in n.type.defaultProps)void 0===e[r]&&(e[r]=n.type.defaultProps[r]);n.props=e}n.$$typeof=B,un&&un(n)};var on=r.__r;r.__r=function(n){on&&on(n),tn=n.__c};var ln=r.diffed;r.diffed=function(n){ln&&ln(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),tn=null};var cn={ReactCurrentDispatcher:{current:{readContext:function(n){return tn.__n[n.__c].props.value},useCallback:p,useContext:d,useDebugValue:h,useDeferredValue:x,useEffect:v,useId:m,useImperativeHandle:_,useInsertionEffect:w,useLayoutEffect:s,useMemo:y,useReducer:b,useRef:g,useState:f,useSyncExternalStore:E,useTransition:R}}},an=\"18.3.1\";function fn(n){return e.bind(null,n)}function sn(n){return!!n&&n.$$typeof===B}function vn(n){return sn(n)&&n.type===u}function pn(n){return!!n&&!!n.displayName&&(\"string\"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith(\"Memo(\")}function dn(n){return sn(n)?a.apply(null,arguments):n}function hn(n){return!!n.__k&&(o(null,n),!0)}function mn(n){return n&&(n.__v&&n.__v.__e||1===n.nodeType&&n)||null}var _n=function(n,e){return n(e)};function yn(n,e){return n(e)}var bn=u,gn=sn,En={useState:f,useId:m,useReducer:b,useEffect:v,useLayoutEffect:s,useInsertionEffect:w,useTransition:R,useDeferredValue:x,useSyncExternalStore:E,startTransition:C,useRef:g,useImperativeHandle:_,useMemo:y,useCallback:p,useContext:d,useDebugValue:h,version:\"18.3.1\",Children:F,render:J,hydrate:K,unmountComponentAtNode:hn,createPortal:H,createElement:e,createContext:l,createFactory:fn,cloneElement:dn,createRef:c,Fragment:u,isValidElement:sn,isElement:gn,isFragment:vn,isMemo:pn,findDOMNode:mn,Component:n,PureComponent:O,memo:D,forwardRef:M,flushSync:_n,unstable_batchedUpdates:yn,StrictMode:bn,Suspense:W,lazy:$,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:cn};export{F as Children,O as PureComponent,bn as StrictMode,W as Suspense,cn as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,dn as cloneElement,fn as createFactory,H as createPortal,En as default,mn as findDOMNode,_n as flushSync,M as forwardRef,K as hydrate,gn as isElement,vn as isFragment,pn as isMemo,sn as isValidElement,$ as lazy,D as memo,J as render,C as startTransition,hn as unmountComponentAtNode,yn as unstable_batchedUpdates,x as useDeferredValue,w as useInsertionEffect,E as useSyncExternalStore,R as useTransition,an as version};\n//# sourceMappingURL=compat.mjs.map\n","import e,{useEffect as t}from\"react\";function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.length)&&(t=e.length);for(var n=0,r=Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,i=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}function b(e,t,n){return(t=j(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function A(){return A=Object.assign?Object.assign.bind():function(e){for(var t=1;t3?(u=h===r)&&(s=a[(o=a[4])?5:(o=3,3)],a[4]=a[5]=e):a[0]<=p&&((u=n<2&&pr||r>h)&&(a[4]=n,a[5]=r,f.n=h,o=0))}if(u||n>1)return i;throw d=!0,r}return function(u,l,h){if(c>1)throw TypeError(\"Generator is already running\");for(d&&1===l&&p(l,h),o=l,s=h;(t=o<2?e:s)||!d;){a||(o?o<3?(o>1&&(f.n=-1),p(o,s)):f.n=s:f.v=s);try{if(c=2,a){if(o||(u=\"next\"),t=a[u]){if(!(t=t.call(a,s)))throw TypeError(\"iterator result is not an object\");if(!t.done)return t;s=t.value,o<2&&(o=0)}else 1===o&&(t=a.return)&&t.call(a),o<2&&(s=TypeError(\"The iterator does not provide a '\"+u+\"' method\"),o=1);a=e}else if((t=(d=f.n<0)?s:n.call(r,f))!==i)break}catch(t){a=e,o=1,s=t}finally{c=1}}return{value:t,done:d}}}(n,u,a),!0),c}var i={};function o(){}function s(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(I(t={},r,function(){return this}),t),d=c.prototype=o.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,I(e,u,\"GeneratorFunction\")),e.prototype=Object.create(d),e}return s.prototype=c,I(d,\"constructor\",c),I(c,\"constructor\",s),s.displayName=\"GeneratorFunction\",I(c,u,\"GeneratorFunction\"),I(d),I(d,u,\"Generator\"),I(d,r,function(){return this}),I(d,\"toString\",function(){return\"[object Generator]\"}),(B=function(){return{w:a,m:f}})()}function I(e,t,n,r){var u=Object.defineProperty;try{u({},\"\",{})}catch(e){u=0}I=function(e,t,n,r){function a(t,n){I(e,t,function(e){return this._invoke(t,n,e)})}t?u?u(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(a(\"next\",0),a(\"throw\",1),a(\"return\",2))},I(e,t,n,r)}function O(e,t){return O=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},O(e,t)}function T(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:\"undefined\"!=typeof Symbol&&e[Symbol.iterator]||e[\"@@iterator\"];if(null!=n){var r,u,a,i,o=[],s=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=a.call(n)).done)&&(o.push(r.value),o.length!==t);s=!0);}catch(e){c=!0,u=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw u}}return o}}(e,t)||z(e,t)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function P(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\"@@iterator\"])return Array.from(e)}(e)||z(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function j(e){var t=function(e,t){if(\"object\"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||\"default\");if(\"object\"!=typeof r)return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===t?String:Number)(e)}(e,\"string\");return\"symbol\"==typeof t?t:t+\"\"}function N(e){return N=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},N(e)}function z(e,t){if(e){if(\"string\"==typeof e)return p(e,t);var n={}.toString.call(e).slice(8,-1);return\"Object\"===n&&e.constructor&&(n=e.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(e):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p(e,t):void 0}}function R(e){var t=\"function\"==typeof Map?new Map:void 0;return R=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf(\"[native code]\")}catch(t){return\"function\"==typeof e}}(e))return e;if(\"function\"!=typeof e)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return y(e,arguments,C(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),O(n,e)},R(e)}function M(){M=function(e,t){return new n(e,void 0,t)};var e=RegExp.prototype,t=new WeakMap;function n(e,r,u){var a=RegExp(e,r);return t.set(a,u||t.get(e)),O(a,n.prototype)}function r(e,n){var r=t.get(n);return Object.keys(r).reduce(function(t,n){var u=r[n];if(\"number\"==typeof u)t[n]=e[u];else{for(var a=0;void 0===e[u[a]]&&a+1]+)(>|$)/g,function(e,t,n){if(\"\"===n)return e;var r=a[t];return Array.isArray(r)?\"$\"+r.join(\"$\"):\"number\"==typeof r?\"$\"+r:\"\"}))}if(\"function\"==typeof u){var i=this;return e[Symbol.replace].call(this,n,function(){var e=arguments;return\"object\"!=typeof e[e.length-1]&&(e=[].slice.call(e)).push(r(e,i)),u.apply(this,e)})}return e[Symbol.replace].call(this,n,u)},M.apply(this,arguments)}var Z=function(e){var t=e.theme;r(function(){if(t){var e=document.documentElement.dataset.theme;if(t!==e)return document.documentElement.dataset.theme=t,function(){void 0===e?delete document.documentElement.dataset.theme:document.documentElement.dataset.theme=e}}},[t])},L={\"Ctrl/Cmd+K\":!0,\"/\":!0};function $(e){return S(S({},L),e)}function q(e){var t=e.size,r=void 0===t?20:t,u=e.color,a=void 0===u?\"currentColor\":u;return n.createElement(\"svg\",{width:r,height:r,className:\"DocSearch-Search-Icon\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\"},n.createElement(\"circle\",{cx:\"11\",cy:\"11\",r:\"8\",stroke:a,fill:\"none\",strokeWidth:\"1.4\"}),n.createElement(\"path\",{d:\"m21 21-4.3-4.3\",stroke:a,fill:\"none\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}))}function U(e,t,n){return e.reduce(function(e,r){var u=t(r);return e.hasOwnProperty(u)||(e[u]=[]),e[u].length<(n||5)&&e[u].push(r),e},{})}function V(e){return e}function H(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}var K=\"Ctrl\";function W(){}var J=/(|<\\/mark>)/g,Q=RegExp(J.source);function G(e){var t,n,r=e;if(!r.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var u=r.__docsearch_parent?null===(t=r.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(n=e._highlightResult)||void 0===n||null===(n=n.hierarchy)||void 0===n?void 0:n.lvl0;return u?u.value&&Q.test(u.value)?u.value.replace(J,\"\"):u.value:e.hierarchy.lvl0}var Y=[\"translations\",\"keyboardShortcuts\"],X=n.forwardRef(function(e,t){var a=e.translations,i=void 0===a?{}:a,o=e.keyboardShortcuts,s=x(e,Y),c=i.buttonText,l=void 0===c?\"Search\":c,d=i.buttonAriaLabel,f=void 0===d?\"Search\":d,p=$(o),h=T(u(null),2),v=h[0],m=h[1];Z({theme:s.theme}),r(function(){\"undefined\"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?m(\"⌘\"):m(K))},[]);var D=T(v===K?[K,\"Control\",\"Ctrl\"]:[\"Meta\",\"Meta\",\"⌘\"],3),y=D[0],g=D[1],F=D[2],E=p[\"Ctrl/Cmd+K\"],b=\"\".concat(g,\"+k\");return n.createElement(\"button\",A({type:\"button\",className:\"DocSearch DocSearch-Button\",\"aria-label\":E?\"\".concat(f,\" (\").concat(b,\")\"):f,\"aria-keyshortcuts\":E?b:void 0},s,{ref:t}),n.createElement(\"span\",{className:\"DocSearch-Button-Container\"},n.createElement(q,null),n.createElement(\"span\",{className:\"DocSearch-Button-Placeholder\"},l)),n.createElement(\"span\",{className:\"DocSearch-Button-Keys\"},null!==v&&E&&n.createElement(n.Fragment,null,n.createElement(ee,{reactsToKey:y},F),n.createElement(ee,{reactsToKey:\"k\"},\"K\"))))});function ee(e){var t=e.reactsToKey,a=e.children,i=T(u(!1),2),o=i[0],s=i[1];return r(function(){if(t)return window.addEventListener(\"keydown\",e),window.addEventListener(\"keyup\",n),function(){window.removeEventListener(\"keydown\",e),window.removeEventListener(\"keyup\",n)};function e(e){e.key===t&&s(!0)}function n(e){e.key!==t&&\"Meta\"!==e.key||s(!1)}},[t]),n.createElement(\"kbd\",{className:o?\"DocSearch-Button-Key DocSearch-Button-Key--pressed\":\"DocSearch-Button-Key\"+(\"Ctrl\"===t?\" DocSearch-Button-Key--ctrl\":\"\")},a)}function te(e,t){var n=void 0;return function(){for(var r=arguments.length,u=new Array(r),a=0;ae.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function ye(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ge(e){for(var t=1;t=3||2===n&&r>=4||1===n&&r>=10);function a(t,n,r){if(u&&void 0!==r){var a=r[0].__autocomplete_algoliaCredentials,i={\"X-Algolia-Application-Id\":a.appId,\"X-Algolia-API-Key\":a.apiKey};e.apply(void 0,[t].concat(ve(n),[{headers:i}]))}else e.apply(void 0,[t].concat(ve(n)))}return{init:function(t,n){e(\"init\",{appId:t,apiKey:n})},setAuthenticatedUserToken:function(t){e(\"setAuthenticatedUserToken\",t)},setUserToken:function(t){e(\"setUserToken\",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"clickedObjectIDsAfterSearch\",Ee(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"clickedObjectIDs\",Ee(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,[\"clickedFilters\"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"convertedObjectIDsAfterSearch\",Ee(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"convertedObjectIDs\",Ee(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,[\"convertedFilters\"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&t.reduce(function(e,t){var n=t.items,r=De(t,pe);return[].concat(ve(e),ve(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r0&&e.apply(void 0,[\"viewedFilters\"].concat(n))}}}function Ae(e){var t=e.items.reduce(function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e},{});return Object.keys(t).map(function(e){return{index:e,items:t[e],algoliaSource:[\"autocomplete\"]}})}function Ce(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function ke(e){return ke=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},ke(e)}function we(e){return function(e){if(Array.isArray(e))return _e(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\"@@iterator\"])return Array.from(e)}(e)||function(e,t){if(!e)return;if(\"string\"==typeof e)return _e(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===n&&e.constructor&&(n=e.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(e);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _e(e,t)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function _e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&Te({onItemsChange:u,items:n,insights:c,state:t}))}},0);return{name:\"aa.algoliaInsightsPlugin\",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive;function u(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:xe(xe({},o?{clickAnalytics:!0}:{}),e?{userToken:Ne(e)}:{}),insights:c}})}s(\"addAlgoliaAgent\",\"insights-plugin\"),u(),s(\"onUserTokenChange\",function(e){u(e)}),s(\"getUserToken\",null,function(e,t){u(t)}),n(function(e){var t=e.item,n=e.state,r=e.event,u=e.source;Ce(t)&&a({state:n,event:r,insights:c,item:t,insightsEvents:[xe({eventName:\"Item Selected\"},ce({item:t,items:u.getItems().filter(Ce)}))]})}),r(function(e){var t=e.item,n=e.source,r=e.state,u=e.event;Ce(t)&&i({state:r,event:u,insights:c,item:t,insightsEvents:[xe({eventName:\"Item Active\"},ce({item:t,items:n.getItems().filter(Ce)}))]})})},onStateChange:function(e){var t=e.state;d({state:t})},__autocomplete_pluginOptions:e}}function je(){var e,t=arguments.length>1?arguments[1]:void 0;return[].concat(we(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),[\"autocomplete-internal\"],we(null!==(e=t.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?[\"autocomplete-automatic\"]:[]))}function Ne(e){return\"number\"==typeof e?e.toString():e}function ze(e,t){var n=t;return{then:function(t,r){return ze(e.then(Me(t,n,e),Me(r,n,e)),n)},catch:function(t){return ze(e.catch(Me(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),ze(e.finally(Me(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach(function(e){e()})},isCanceled:function(){return!0===n.isCanceled}}}function Re(e){return ze(e,{isCanceled:!1,onCancelList:[]})}function Me(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}var Ze,Le=!0;function $e(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var u=(null===t?-1:t)+e;return u<=-1||u>=n?null===r?null:0:u}function qe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ue(e){for(var t=1;t=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,i=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}function We(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?t.wait(Math.max.apply(Math,u)):void 0};function Qe(e){var t=function(e){var t=e.collections.map(function(e){return e.items.length}).reduce(function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e},[]).reduce(function(t,n){return n<=e.activeItemId?t+1:t},0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,u=0,a=0;!1===r;){var i=t.collections[u];if(i===n){r=!0;break}a+=i.items.length,u++}return t.activeItemId-a}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}function Ge(e,t,n){return[e,null==n?void 0:n.sourceId,t].filter(Boolean).join(\"-\").replace(/\\s/g,\"\")}var Ye=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function Xe(e){return e.nativeEvent||e}function et(e){return et=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},et(e)}function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function nt(e,t,n){return(t=function(e){var t=function(e,t){if(\"object\"!==et(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||\"default\");if(\"object\"!==et(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===t?String:Number)(e)}(e,\"string\");return\"symbol\"===et(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rt(e,t,n){var r,u=t.initialState;return{getState:function(){return u},dispatch:function(r,a){var i=function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:\"autocomplete-\".concat(re++),plugins:u,initialState:ft({activeItemId:null,query:\"\",completion:null,collections:[],isOpen:!1,status:\"idle\",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)})},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)})},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)})},getSources:function(n){return Promise.all([].concat(ct(u.map(function(e){return e.getSources})),[e.getSources]).filter(Boolean).map(function(e){return function(e,t){var n=[];return Promise.resolve(e(t)).then(function(e){return Promise.all(e.filter(function(e){return Boolean(e)}).map(function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error(\"[Autocomplete] The `sourceId` \".concat(JSON.stringify(e.sourceId),\" is not unique.\"));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:oe,onResolve:oe};Object.keys(t).forEach(function(e){t[e].__default=!0});var r=Ue(Ue({},t),e);return Promise.resolve(r)}))})}(e,n)})).then(function(e){return ne(e)}).then(function(e){return e.map(function(e){return ft(ft({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach(function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)})},onActive:function(n){e.onActive(n),t.forEach(function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)})},onResolve:function(n){e.onResolve(n),t.forEach(function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)})}})})})},navigator:ft({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,\"_blank\",\"noopener\");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,\"_blank\",\"noopener\")}},e.navigator)})}function vt(e){return vt=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},vt(e)}function mt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Dt(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}var jt,Nt,zt,Rt=null,Mt=(jt=-1,Nt=-1,zt=void 0,function(e){var t=++jt;return Promise.resolve(e).then(function(e){return zt&&t=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function Kt(e){return Kt=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},Kt(e)}var Wt=[\"props\",\"refresh\",\"store\"],Jt=[\"inputElement\",\"formElement\",\"panelElement\"],Qt=[\"inputElement\"],Gt=[\"inputElement\",\"maxLength\"],Yt=[\"source\"],Xt=[\"item\",\"source\"];function en(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function tn(e){for(var t=1;t=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function un(e){var t=e.props,n=e.refresh,r=e.store,u=rn(e,Wt);return{getEnvironmentProps:function(e){var n=e.inputElement,u=e.formElement,a=e.panelElement;function i(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[u,a].some(function(t){return n=t,r=e.target,n===r||n.contains(r);var n,r})&&(r.dispatch(\"blur\",null),t.debug||r.pendingRequests.cancelAll())}return tn({onTouchStart:i,onMouseDown:i,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},rn(e,Jt))},getRootProps:function(e){return tn({role:\"combobox\",\"aria-expanded\":r.getState().isOpen,\"aria-haspopup\":\"listbox\",\"aria-controls\":r.getState().isOpen?r.getState().collections.map(function(e){var n=e.source;return Ge(t.id,\"list\",n)}).join(\" \"):void 0,\"aria-labelledby\":Ge(t.id,\"label\")},e)},getFormProps:function(e){e.inputElement;var a=rn(e,Qt),i=function(a){var i;t.onSubmit(tn({event:a,refresh:n,state:r.getState()},u)),r.dispatch(\"submit\",null),null===(i=e.inputElement)||void 0===i||i.blur()};return tn({action:\"\",noValidate:!0,role:\"search\",onSubmit:function(e){e.preventDefault();var n=Je(t.plugins,r.pendingRequests);void 0!==n?n.then(function(){return i(e)}):i(e)},onReset:function(a){var i;a.preventDefault(),t.onReset(tn({event:a,refresh:n,state:r.getState()},u)),r.dispatch(\"reset\",null),null===(i=e.inputElement)||void 0===i||i.focus()}},a)},getLabelProps:function(e){return tn({htmlFor:Ge(t.id,\"input\"),id:Ge(t.id,\"label\")},e)},getInputProps:function(e){var a;function i(e){(t.openOnFocus||Boolean(r.getState().query))&&Zt(tn({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},u)),r.dispatch(\"focus\",null)}var o=e||{};o.inputElement;var s=o.maxLength,c=void 0===s?512:s,l=rn(o,Gt),d=Qe(r.getState()),f=function(e){return Boolean(e&&e.match(Ye))}((null===(a=t.environment.navigator)||void 0===a?void 0:a.userAgent)||\"\"),p=t.enterKeyHint||(null!=d&&d.itemUrl&&!f?\"go\":\"search\");return tn({\"aria-autocomplete\":\"both\",\"aria-activedescendant\":r.getState().isOpen&&null!==r.getState().activeItemId?Ge(t.id,\"item-\".concat(r.getState().activeItemId),null==d?void 0:d.source):void 0,\"aria-controls\":r.getState().isOpen?r.getState().collections.filter(function(e){return e.items.length>0}).map(function(e){var n=e.source;return Ge(t.id,\"list\",n)}).join(\" \"):void 0,\"aria-labelledby\":Ge(t.id,\"label\"),value:r.getState().completion||r.getState().query,id:Ge(t.id,\"input\"),autoComplete:\"off\",autoCorrect:\"off\",autoCapitalize:\"off\",enterKeyHint:p,spellCheck:\"false\",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:\"search\",onChange:function(e){var a=e.currentTarget.value;t.ignoreCompositionEvents&&Xe(e).isComposing?u.setQuery(a):Zt(tn({event:e,props:t,query:a.slice(0,c),refresh:n,store:r},u))},onCompositionEnd:function(e){Zt(tn({event:e,props:t,query:e.currentTarget.value.slice(0,c),refresh:n,store:r},u))},onKeyDown:function(e){Xe(e).isComposing||function(e){var t=e.event,n=e.props,r=e.refresh,u=e.store,a=Ht(e,$t);if(\"ArrowUp\"===t.key||\"ArrowDown\"===t.key){var i=function(){var e=Qe(u.getState()),t=n.environment.document.getElementById(Ge(n.id,\"item-\".concat(u.getState().activeItemId),null==e?void 0:e.source));t&&(t.scrollIntoViewIfNeeded?t.scrollIntoViewIfNeeded(!1):t.scrollIntoView(!1))},o=function(){var e=Qe(u.getState());if(null!==u.getState().activeItemId&&e){var n=e.item,i=e.itemInputValue,o=e.itemUrl,s=e.source;s.onActive(Ut({event:t,item:n,itemInputValue:i,itemUrl:o,refresh:r,source:s,state:u.getState()},a))}};t.preventDefault(),!1===u.getState().isOpen&&(n.openOnFocus||Boolean(u.getState().query))?Zt(Ut({event:t,props:n,query:u.getState().query,refresh:r,store:u},a)).then(function(){u.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),o(),setTimeout(i,0)}):(u.dispatch(t.key,{}),o(),i())}else if(\"Escape\"===t.key)t.preventDefault(),u.dispatch(t.key,null),u.pendingRequests.cancelAll();else if(\"Tab\"===t.key)u.dispatch(\"blur\",null),u.pendingRequests.cancelAll();else if(\"Enter\"===t.key){if(null===u.getState().activeItemId||u.getState().collections.every(function(e){return 0===e.items.length})){var s=Je(n.plugins,u.pendingRequests);return void(void 0!==s?s.then(u.pendingRequests.cancelAll):n.debug||u.pendingRequests.cancelAll())}t.preventDefault();var c=Qe(u.getState()),l=c.item,d=c.itemInputValue,f=c.itemUrl,p=c.source;if(t.metaKey||t.ctrlKey)void 0!==f&&(p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a)),n.navigator.navigateNewTab({itemUrl:f,item:l,state:u.getState()}));else if(t.shiftKey)void 0!==f&&(p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a)),n.navigator.navigateNewWindow({itemUrl:f,item:l,state:u.getState()}));else if(t.altKey);else{if(void 0!==f)return p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a)),void n.navigator.navigate({itemUrl:f,item:l,state:u.getState()});Zt(Ut({event:t,nextState:{isOpen:!1},props:n,query:d,refresh:r,store:u},a)).then(function(){p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a))})}}}(tn({event:e,props:t,refresh:n,store:r},u))},onFocus:i,onBlur:oe,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},l)},getPanelProps:function(e){return tn({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch(\"mouseleave\",null)}},e)},getListProps:function(e){var n=e||{},r=n.source,u=rn(n,Yt);return tn({role:\"listbox\",\"aria-labelledby\":Ge(t.id,\"label\"),id:Ge(t.id,\"list\",r)},u)},getItemProps:function(e){var a=e.item,i=e.source,o=rn(e,Xt);return tn({id:Ge(t.id,\"item-\".concat(a.__autocomplete_id),i),role:\"option\",\"aria-selected\":r.getState().activeItemId===a.__autocomplete_id,onMouseMove:function(e){if(a.__autocomplete_id!==r.getState().activeItemId){r.dispatch(\"mousemove\",a.__autocomplete_id);var t=Qe(r.getState());if(null!==r.getState().activeItemId&&t){var i=t.item,o=t.itemInputValue,s=t.itemUrl,c=t.source;c.onActive(tn({event:e,item:i,itemInputValue:o,itemUrl:s,refresh:n,source:c,state:r.getState()},u))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var o=i.getItemInputValue({item:a,state:r.getState()}),s=i.getItemUrl({item:a,state:r.getState()});(s?Promise.resolve():Zt(tn({event:e,nextState:{isOpen:!1},props:t,query:o,refresh:n,store:r},u))).then(function(){i.onSelect(tn({event:e,item:a,itemInputValue:o,itemUrl:s,refresh:n,source:i,state:r.getState()},u))})}},o)}}}function an(e){return an=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},an(e)}function on(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function sn(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:\"\",n=\"string\"==typeof e?e:e.source,r={replace:function(e,t){var u=\"string\"==typeof t?t:t.source;return u=u.replace(er.caret,\"$1\"),n=n.replace(e,u),r},getRegex:function(){return new RegExp(n,t)}};return r}var Xn=function(){try{return!!new RegExp(\"(?<=1)(?/,blockquoteSetextReplace:/\\n {0,3}((?:=+|-+) *)(?=\\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \\t]?/gm,listReplaceTabs:/^\\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\\[[ xX]\\] /,listReplaceTask:/^\\[[ xX]\\] +/,anyLine:/\\n.*\\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\\||\\| *$/g,tableRowBlankLine:/\\n[ \\t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\\s|>)/i,endPreScriptTag:/^<\\/(pre|code|kbd|script)(\\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/,unicodeAlphaNumeric:/(?:[0-9A-Za-z\\xAA\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u0660-\\u0669\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07C0-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088F\\u08A0-\\u08C9\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0966-\\u096F\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09E6-\\u09F1\\u09F4-\\u09F9\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A6F\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AE6-\\u0AEF\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B66-\\u0B6F\\u0B71-\\u0B77\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0BE6-\\u0BF2\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5C\\u0C5D\\u0C60\\u0C61\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDC-\\u0CDE\\u0CE0\\u0CE1\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D58-\\u0D61\\u0D66-\\u0D78\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DE6-\\u0DEF\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F20-\\u0F33\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F-\\u1049\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u1090-\\u1099\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1369-\\u137C\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B50-\\u1B59\\u1B83-\\u1BA0\\u1BAE-\\u1BE5\\u1C00-\\u1C23\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C8A\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2070\\u2071\\u2074-\\u2079\\u207F-\\u2089\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2CFD\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u3192-\\u3195\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7DC\\uA7F1-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA830-\\uA835\\uA840-\\uA873\\uA882-\\uA8B3\\uA8D0-\\uA8D9\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA8FE\\uA900-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF-\\uA9D9\\uA9E0-\\uA9E4\\uA9E6-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD07-\\uDD33\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE1-\\uDEFB\\uDF00-\\uDF23\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDDC0-\\uDDF3\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC58-\\uDC76\\uDC79-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD20-\\uDD39\\uDD40-\\uDD59\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE40-\\uDE48\\uDE60-\\uDE7E\\uDE80-\\uDE9F\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDEEB-\\uDEEF\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD23\\uDD30-\\uDD39\\uDD40-\\uDD65\\uDD6F-\\uDD85\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEB0\\uDEB1\\uDEC2-\\uDEC7\\uDF00-\\uDF27\\uDF30-\\uDF45\\uDF51-\\uDF54\\uDF70-\\uDF81\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD804[\\uDC03-\\uDC37\\uDC52-\\uDC6F\\uDC71\\uDC72\\uDC75\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD03-\\uDD26\\uDD36-\\uDD3F\\uDD44\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDD0-\\uDDDA\\uDDDC\\uDDE1-\\uDDF4\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE3F\\uDE40\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDEF0-\\uDEF9\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61\\uDF80-\\uDF89\\uDF8B\\uDF8E\\uDF90-\\uDFB5\\uDFB7\\uDFD1\\uDFD3]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC50-\\uDC59\\uDC5F-\\uDC61\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEAA\\uDEB8\\uDEC0-\\uDEC9\\uDED0-\\uDEE3\\uDF00-\\uDF1A\\uDF30-\\uDF3B\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC2B\\uDCA0-\\uDCF2\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD2F\\uDD3F\\uDD41\\uDD50-\\uDD59\\uDDA0-\\uDDA7\\uDDAA-\\uDDD0\\uDDE1\\uDDE3\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE89\\uDE9D\\uDEB0-\\uDEF8\\uDFC0-\\uDFE0\\uDFF0-\\uDFF9]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC50-\\uDC6C\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46\\uDD50-\\uDD59\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD89\\uDD98\\uDDA0-\\uDDA9\\uDDB0-\\uDDDB\\uDDE0-\\uDDE9\\uDEE0-\\uDEF2\\uDF02\\uDF04-\\uDF10\\uDF12-\\uDF33\\uDF50-\\uDF59\\uDFB0\\uDFC0-\\uDFD4]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD80E\\uD80F\\uD81C-\\uD822\\uD840-\\uD868\\uD86A-\\uD86D\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883\\uD885-\\uD88C][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2F\\uDC41-\\uDC46\\uDC60-\\uDFFF]|\\uD810[\\uDC00-\\uDFFA]|\\uD811[\\uDC00-\\uDE46]|\\uD818[\\uDD00-\\uDD1D\\uDD30-\\uDD39]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDE70-\\uDEBE\\uDEC0-\\uDEC9\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF5B-\\uDF61\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDD40-\\uDD6C\\uDD70-\\uDD79\\uDE40-\\uDE96\\uDEA0-\\uDEB8\\uDEBB-\\uDED3\\uDF00-\\uDF4A\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1\\uDFE3\\uDFF2-\\uDFF6]|\\uD823[\\uDC00-\\uDCD5\\uDCFF-\\uDD1E\\uDD80-\\uDDF2]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD32\\uDD50-\\uDD52\\uDD55\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD833[\\uDCF0-\\uDCF9]|\\uD834[\\uDEC0-\\uDED3\\uDEE0-\\uDEF3\\uDF60-\\uDF78]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD837[\\uDF00-\\uDF1E\\uDF25-\\uDF2A]|\\uD838[\\uDC30-\\uDC6D\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD40-\\uDD49\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB\\uDEF0-\\uDEF9]|\\uD839[\\uDCD0-\\uDCEB\\uDCF0-\\uDCF9\\uDDD0-\\uDDED\\uDDF0-\\uDDFA\\uDEC0-\\uDEDE\\uDEE0-\\uDEE2\\uDEE4\\uDEE5\\uDEE7-\\uDEED\\uDEF0-\\uDEF4\\uDEFE\\uDEFF\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCCF\\uDD00-\\uDD43\\uDD4B\\uDD50-\\uDD59]|\\uD83B[\\uDC71-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDCB4\\uDD01-\\uDD2D\\uDD2F-\\uDD3D\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD00-\\uDD0C]|\\uD83E[\\uDFF0-\\uDFF9]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEAD\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0\\uDFF0-\\uDFFF]|\\uD87B[\\uDC00-\\uDE5D]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A\\uDF50-\\uDFFF]|\\uD88D[\\uDC00-\\uDC79])/,escapeTest:/[&<>\"']/,escapeReplace:/[&<>\"']/g,escapeTestNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/,escapeReplaceNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/g,unescapeTest:/&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/gi,caret:/(^|[^\\[])\\^/g,percentDecode:/%25/g,findPipe:/\\|/g,splitPipe:/ \\|/,slashPipe:/\\\\\\|/g,carriageReturn:/\\r\\n|\\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\\S*/,endingNewline:/\\n$/,listItemRegex:function(e){return new RegExp(\"^( {0,3}\".concat(e,\")((?:[\\t ][^\\\\n]*)?(?:\\\\n|$))\"))},nextBulletRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \\t][^\\\\n]*)?(?:\\\\n|$))\"))},hrRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)\"))},fencesBeginRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}(?:```|~~~)\"))},headingBeginRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}#\"))},htmlBeginRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}<(?:[a-z].*>|!--)\"),\"i\")}},tr=/^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/,nr=/(?:[*+-]|\\d{1,9}[.)])/,rr=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\\n(?!\\s*?\\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,ur=Yn(rr).replace(/bull/g,nr).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/\\|table/g,\"\").getRegex(),ar=Yn(rr).replace(/bull/g,nr).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/table/g,/ {0,3}\\|?(?:[:\\- ]*\\|)+[\\:\\- ]*\\n/).getRegex(),ir=/^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/,or=/(?!\\s*\\])(?:\\\\[\\s\\S]|[^\\[\\]\\\\])+/,sr=Yn(/^ {0,3}\\[(label)\\]: *(?:\\n[ \\t]*)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n[ \\t]*)?| *\\n[ \\t]*)(title))? *(?:\\n+|$)/).replace(\"label\",or).replace(\"title\",/(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/).getRegex(),cr=Yn(/^( {0,3}bull)([ \\t][^\\n]+?)?(?:\\n|$)/).replace(/bull/g,nr).getRegex(),lr=\"address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul\",dr=/|$))/,fr=Yn(\"^ {0,3}(?:<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:[^\\\\n]*\\\\n+|$)|comment[^\\\\n]*(\\\\n+|$)|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)|\\\\n*|$)|\\\\n*|$)|)[\\\\s\\\\S]*?(?:(?:\\\\n[ \\t]*)+\\\\n|$)|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \\t]*)+\\\\n|$)|(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \\t]*)+\\\\n|$))\",\"i\").replace(\"comment\",dr).replace(\"tag\",lr).replace(\"attribute\",/ +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/).getRegex(),pr=Yn(ir).replace(\"hr\",tr).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",lr).getRegex(),hr={blockquote:Yn(/^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/).replace(\"paragraph\",pr).getRegex(),code:/^((?: {4}| {0,3}\\t)[^\\n]+(?:\\n(?:[ \\t]*(?:\\n|$))*)?)+/,def:sr,fences:/^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/,hr:tr,html:fr,lheading:ur,list:cr,newline:/^(?:[ \\t]*(?:\\n|$))+/,paragraph:pr,table:Gn,text:/^[^\\n]+/},vr=Yn(\"^ *([^\\\\n ].*)\\\\n {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)\").replace(\"hr\",tr).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"blockquote\",\" {0,3}>\").replace(\"code\",\"(?: {4}| {0,3}\\t)[^\\\\n]\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",lr).getRegex(),mr=S(S({},hr),{},{lheading:ar,table:vr,paragraph:Yn(ir).replace(\"hr\",tr).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"table\",vr).replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",lr).getRegex()}),Dr=S(S({},hr),{},{html:Yn(\"^ *(?:comment *(?:\\\\n|\\\\s*$)|<(tag)[\\\\s\\\\S]+? *(?:\\\\n{2,}|\\\\s*$)|\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))\").replace(\"comment\",dr).replace(/tag/g,\"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b\").getRegex(),def:/^ *\\[([^\\]]+)\\]: *]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,heading:/^(#{1,6})(.*)(?:\\n+|$)/,fences:Gn,lheading:/^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,paragraph:Yn(ir).replace(\"hr\",tr).replace(\"heading\",\" *#{1,6} *[^\\n]\").replace(\"lheading\",ur).replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"|fences\",\"\").replace(\"|list\",\"\").replace(\"|html\",\"\").replace(\"|tag\",\"\").getRegex()}),yr=/^( {2,}|\\\\)\\n(?!\\s*$)/,gr=/(?:[!-\\/:-@\\[-`\\{-~\\xA1-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2010-\\u2027\\u2030-\\u205E\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u2FFF\\u3001-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/,Fr=/(?:[\\t-\\r -\\/:-@\\[-`\\{-~\\xA0-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u1680\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2000-\\u200A\\u2010-\\u2029\\u202F-\\u205F\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFEFF\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/,Er=/(?:[\\0-\\x08\\x0E-\\x1F0-9A-Za-z\\x7F-\\x9F\\xAA\\xAD\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u037D\\u037F-\\u0383\\u0386\\u0388-\\u03F5\\u03F7-\\u0481\\u0483-\\u0559\\u0560-\\u0588\\u058B\\u058C\\u0590-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7-\\u05F2\\u05F5-\\u0605\\u0610-\\u061A\\u061C\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u070E-\\u07F5\\u07FA-\\u07FD\\u0800-\\u082F\\u083F-\\u085D\\u085F-\\u0887\\u0889-\\u0963\\u0966-\\u096F\\u0971-\\u09F1\\u09F4-\\u09F9\\u09FC\\u09FE-\\u0A75\\u0A77-\\u0AEF\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C76\\u0C78-\\u0C7E\\u0C80-\\u0C83\\u0C85-\\u0D4E\\u0D50-\\u0D78\\u0D7A-\\u0DF3\\u0DF5-\\u0E3E\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E5C-\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F84\\u0F86-\\u0FBD\\u0FC6\\u0FCD\\u0FDB-\\u1049\\u1050-\\u109D\\u10A0-\\u10FA\\u10FC-\\u135F\\u1369-\\u138F\\u139A-\\u13FF\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u169D-\\u16EA\\u16EE-\\u1734\\u1737-\\u17D3\\u17D7\\u17DC-\\u17FF\\u180B-\\u193F\\u1941-\\u1943\\u1946-\\u19DD\\u1A00-\\u1A1D\\u1A20-\\u1A9F\\u1AA7\\u1AAE-\\u1B4D\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BFB\\u1C00-\\u1C3A\\u1C40-\\u1C7D\\u1C80-\\u1CBF\\u1CC8-\\u1CD2\\u1CD4-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF\\u200B-\\u200F\\u202A-\\u202E\\u2060-\\u2079\\u207F-\\u2089\\u208F-\\u209F\\u20C2-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u218C-\\u218F\\u242A-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2B74\\u2B75\\u2C00-\\u2CE4\\u2CEB-\\u2CF8\\u2CFD\\u2D00-\\u2D6F\\u2D71-\\u2DFF\\u2E2F\\u2E5E-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3040-\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E6-\\u31EE\\u31F0-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA672\\uA674-\\uA67D\\uA67F-\\uA6F1\\uA6F8-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uA873\\uA878-\\uA8CD\\uA8D0-\\uA8F7\\uA8FB\\uA8FD-\\uA92D\\uA930-\\uA95E\\uA960-\\uA9C0\\uA9CE-\\uA9DD\\uA9E0-\\uAA5B\\uAA60-\\uAA76\\uAA7A-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAB5A\\uAB5C-\\uAB69\\uAB6C-\\uABEA\\uABEC-\\uD7FF\\uE000-\\uFB28\\uFB2A-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDD0-\\uFDFB\\uFE00-\\uFE0F\\uFE1A-\\uFE2F\\uFE53\\uFE67\\uFE6C-\\uFEFE\\uFF00\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDCFF\\uDD03-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8F\\uDD9D-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDF9E\\uDFA0-\\uDFCF\\uDFD1-\\uDFFF]|\\uD801[\\uDC00-\\uDD6E\\uDD70-\\uDFFF]|\\uD802[\\uDC00-\\uDC56\\uDC58-\\uDC76\\uDC79-\\uDD1E\\uDD20-\\uDD3E\\uDD40-\\uDE4F\\uDE59-\\uDE7E\\uDE80-\\uDEC7\\uDEC9-\\uDEEF\\uDEF7-\\uDF38\\uDF40-\\uDF98\\uDF9D-\\uDFFF]|\\uD803[\\uDC00-\\uDD6D\\uDD6F-\\uDD8D\\uDD90-\\uDEAC\\uDEAE-\\uDECF\\uDED9-\\uDF54\\uDF5A-\\uDF85\\uDF8A-\\uDFFF]|\\uD804[\\uDC00-\\uDC46\\uDC4E-\\uDCBA\\uDCBD\\uDCC2-\\uDD3F\\uDD44-\\uDD73\\uDD76-\\uDDC4\\uDDC9-\\uDDCC\\uDDCE-\\uDDDA\\uDDDC\\uDDE0-\\uDE37\\uDE3E-\\uDEA8\\uDEAA-\\uDFD3\\uDFD6\\uDFD9-\\uDFFF]|\\uD805[\\uDC00-\\uDC4A\\uDC50-\\uDC59\\uDC5C\\uDC5E-\\uDCC5\\uDCC7-\\uDDC0\\uDDD8-\\uDE40\\uDE44-\\uDE5F\\uDE6D-\\uDEB8\\uDEBA-\\uDF3B\\uDF40-\\uDFFF]|\\uD806[\\uDC00-\\uDC3A\\uDC3C-\\uDD43\\uDD47-\\uDDE1\\uDDE3-\\uDE3E\\uDE47-\\uDE99\\uDE9D\\uDEA3-\\uDEFF\\uDF0A-\\uDFE0\\uDFE2-\\uDFFF]|\\uD807[\\uDC00-\\uDC40\\uDC46-\\uDC6F\\uDC72-\\uDEF6\\uDEF9-\\uDF42\\uDF50-\\uDFD4\\uDFF2-\\uDFFE]|[\\uD808\\uD80A\\uD80C-\\uD819\\uD81C-\\uD82E\\uD830-\\uD832\\uD837\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD809[\\uDC00-\\uDC6F\\uDC75-\\uDFFF]|\\uD80B[\\uDC00-\\uDFF0\\uDFF3-\\uDFFF]|\\uD81A[\\uDC00-\\uDE6D\\uDE70-\\uDEF4\\uDEF6-\\uDF36\\uDF40-\\uDF43\\uDF46-\\uDFFF]|\\uD81B[\\uDC00-\\uDD6C\\uDD70-\\uDE96\\uDE9B-\\uDFE1\\uDFE3-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D\\uDC9E\\uDCA0-\\uDFFF]|\\uD833[\\uDCF0-\\uDCF9\\uDCFD-\\uDCFF\\uDEB4-\\uDEB9\\uDED1-\\uDEDF\\uDEF1-\\uDF4F\\uDFC4-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDEB-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE8C-\\uDFFF]|\\uD838[\\uDC00-\\uDD4E\\uDD50-\\uDEFE\\uDF00-\\uDFFF]|\\uD839[\\uDC00-\\uDDFE\\uDE00-\\uDFFF]|\\uD83A[\\uDC00-\\uDD5D\\uDD60-\\uDFFF]|\\uD83B[\\uDC00-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDD2D\\uDD2F-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0C\\uDDAE-\\uDDE5\\uDE03-\\uDE0F\\uDE3C-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDE5F\\uDE66-\\uDEFF]|\\uD83D[\\uDED9-\\uDEDB\\uDEED-\\uDEEF\\uDEFD-\\uDEFF\\uDFDA-\\uDFDF\\uDFEC-\\uDFEF\\uDFF1-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE\\uDCAF\\uDCBC-\\uDCBF\\uDCC2-\\uDCCF\\uDCD9-\\uDCFF\\uDE58-\\uDE5F\\uDE6E\\uDE6F\\uDE7D-\\uDE7F\\uDE8B-\\uDE8D\\uDEC7\\uDEC9-\\uDECC\\uDEDD\\uDEDE\\uDEEB-\\uDEEE\\uDEF9-\\uDEFF\\uDF93\\uDFF0-\\uDFF9\\uDFFB-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])/,br=Yn(/^((?![*_])punctSpace)/,\"u\").replace(/punctSpace/g,Fr).getRegex(),Ar=/(?!~)(?:[!-\\/:-@\\[-`\\{-~\\xA1-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2010-\\u2027\\u2030-\\u205E\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u2FFF\\u3001-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/,Cr=Yn(/link|precode-code|html/,\"g\").replace(\"link\",M(/\\[(?:[^\\[\\]`]|(`+)[^`]+\\1(?!`))*?\\]\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)]|\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)])*\\))*\\)/,{a:1})).replace(\"precode-\",Xn?\"(?]*?>/).getRegex(),kr=/^(?:\\*+(?:((?!\\*)punct)|[^\\s*]))|^_+(?:((?!_)punct)|([^\\s_]))/,wr=Yn(kr,\"u\").replace(/punct/g,gr).getRegex(),_r=Yn(kr,\"u\").replace(/punct/g,Ar).getRegex(),Sr=\"^[^_*]*?__[^_*]*?\\\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\\\*)punct(\\\\*+)(?=[\\\\s]|$)|notPunctSpace(\\\\*+)(?!\\\\*)(?=punctSpace|$)|(?!\\\\*)punctSpace(\\\\*+)(?=notPunctSpace)|[\\\\s](\\\\*+)(?!\\\\*)(?=punct)|(?!\\\\*)punct(\\\\*+)(?!\\\\*)(?=punct)|notPunctSpace(\\\\*+)(?=notPunctSpace)\",xr=Yn(Sr,\"gu\").replace(/notPunctSpace/g,Er).replace(/punctSpace/g,Fr).replace(/punct/g,gr).getRegex(),Br=Yn(Sr,\"gu\").replace(/notPunctSpace/g,/(?:(?:[\\0-\\x08\\x0E-\\x1F0-9A-Za-z\\x7F-\\x9F\\xAA\\xAD\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u037D\\u037F-\\u0383\\u0386\\u0388-\\u03F5\\u03F7-\\u0481\\u0483-\\u0559\\u0560-\\u0588\\u058B\\u058C\\u0590-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7-\\u05F2\\u05F5-\\u0605\\u0610-\\u061A\\u061C\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u070E-\\u07F5\\u07FA-\\u07FD\\u0800-\\u082F\\u083F-\\u085D\\u085F-\\u0887\\u0889-\\u0963\\u0966-\\u096F\\u0971-\\u09F1\\u09F4-\\u09F9\\u09FC\\u09FE-\\u0A75\\u0A77-\\u0AEF\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C76\\u0C78-\\u0C7E\\u0C80-\\u0C83\\u0C85-\\u0D4E\\u0D50-\\u0D78\\u0D7A-\\u0DF3\\u0DF5-\\u0E3E\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E5C-\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F84\\u0F86-\\u0FBD\\u0FC6\\u0FCD\\u0FDB-\\u1049\\u1050-\\u109D\\u10A0-\\u10FA\\u10FC-\\u135F\\u1369-\\u138F\\u139A-\\u13FF\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u169D-\\u16EA\\u16EE-\\u1734\\u1737-\\u17D3\\u17D7\\u17DC-\\u17FF\\u180B-\\u193F\\u1941-\\u1943\\u1946-\\u19DD\\u1A00-\\u1A1D\\u1A20-\\u1A9F\\u1AA7\\u1AAE-\\u1B4D\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BFB\\u1C00-\\u1C3A\\u1C40-\\u1C7D\\u1C80-\\u1CBF\\u1CC8-\\u1CD2\\u1CD4-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF\\u200B-\\u200F\\u202A-\\u202E\\u2060-\\u2079\\u207F-\\u2089\\u208F-\\u209F\\u20C2-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u218C-\\u218F\\u242A-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2B74\\u2B75\\u2C00-\\u2CE4\\u2CEB-\\u2CF8\\u2CFD\\u2D00-\\u2D6F\\u2D71-\\u2DFF\\u2E2F\\u2E5E-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3040-\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E6-\\u31EE\\u31F0-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA672\\uA674-\\uA67D\\uA67F-\\uA6F1\\uA6F8-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uA873\\uA878-\\uA8CD\\uA8D0-\\uA8F7\\uA8FB\\uA8FD-\\uA92D\\uA930-\\uA95E\\uA960-\\uA9C0\\uA9CE-\\uA9DD\\uA9E0-\\uAA5B\\uAA60-\\uAA76\\uAA7A-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAB5A\\uAB5C-\\uAB69\\uAB6C-\\uABEA\\uABEC-\\uD7FF\\uE000-\\uFB28\\uFB2A-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDD0-\\uFDFB\\uFE00-\\uFE0F\\uFE1A-\\uFE2F\\uFE53\\uFE67\\uFE6C-\\uFEFE\\uFF00\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDCFF\\uDD03-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8F\\uDD9D-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDF9E\\uDFA0-\\uDFCF\\uDFD1-\\uDFFF]|\\uD801[\\uDC00-\\uDD6E\\uDD70-\\uDFFF]|\\uD802[\\uDC00-\\uDC56\\uDC58-\\uDC76\\uDC79-\\uDD1E\\uDD20-\\uDD3E\\uDD40-\\uDE4F\\uDE59-\\uDE7E\\uDE80-\\uDEC7\\uDEC9-\\uDEEF\\uDEF7-\\uDF38\\uDF40-\\uDF98\\uDF9D-\\uDFFF]|\\uD803[\\uDC00-\\uDD6D\\uDD6F-\\uDD8D\\uDD90-\\uDEAC\\uDEAE-\\uDECF\\uDED9-\\uDF54\\uDF5A-\\uDF85\\uDF8A-\\uDFFF]|\\uD804[\\uDC00-\\uDC46\\uDC4E-\\uDCBA\\uDCBD\\uDCC2-\\uDD3F\\uDD44-\\uDD73\\uDD76-\\uDDC4\\uDDC9-\\uDDCC\\uDDCE-\\uDDDA\\uDDDC\\uDDE0-\\uDE37\\uDE3E-\\uDEA8\\uDEAA-\\uDFD3\\uDFD6\\uDFD9-\\uDFFF]|\\uD805[\\uDC00-\\uDC4A\\uDC50-\\uDC59\\uDC5C\\uDC5E-\\uDCC5\\uDCC7-\\uDDC0\\uDDD8-\\uDE40\\uDE44-\\uDE5F\\uDE6D-\\uDEB8\\uDEBA-\\uDF3B\\uDF40-\\uDFFF]|\\uD806[\\uDC00-\\uDC3A\\uDC3C-\\uDD43\\uDD47-\\uDDE1\\uDDE3-\\uDE3E\\uDE47-\\uDE99\\uDE9D\\uDEA3-\\uDEFF\\uDF0A-\\uDFE0\\uDFE2-\\uDFFF]|\\uD807[\\uDC00-\\uDC40\\uDC46-\\uDC6F\\uDC72-\\uDEF6\\uDEF9-\\uDF42\\uDF50-\\uDFD4\\uDFF2-\\uDFFE]|[\\uD808\\uD80A\\uD80C-\\uD819\\uD81C-\\uD82E\\uD830-\\uD832\\uD837\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD809[\\uDC00-\\uDC6F\\uDC75-\\uDFFF]|\\uD80B[\\uDC00-\\uDFF0\\uDFF3-\\uDFFF]|\\uD81A[\\uDC00-\\uDE6D\\uDE70-\\uDEF4\\uDEF6-\\uDF36\\uDF40-\\uDF43\\uDF46-\\uDFFF]|\\uD81B[\\uDC00-\\uDD6C\\uDD70-\\uDE96\\uDE9B-\\uDFE1\\uDFE3-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D\\uDC9E\\uDCA0-\\uDFFF]|\\uD833[\\uDCF0-\\uDCF9\\uDCFD-\\uDCFF\\uDEB4-\\uDEB9\\uDED1-\\uDEDF\\uDEF1-\\uDF4F\\uDFC4-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDEB-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE8C-\\uDFFF]|\\uD838[\\uDC00-\\uDD4E\\uDD50-\\uDEFE\\uDF00-\\uDFFF]|\\uD839[\\uDC00-\\uDDFE\\uDE00-\\uDFFF]|\\uD83A[\\uDC00-\\uDD5D\\uDD60-\\uDFFF]|\\uD83B[\\uDC00-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDD2D\\uDD2F-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0C\\uDDAE-\\uDDE5\\uDE03-\\uDE0F\\uDE3C-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDE5F\\uDE66-\\uDEFF]|\\uD83D[\\uDED9-\\uDEDB\\uDEED-\\uDEEF\\uDEFD-\\uDEFF\\uDFDA-\\uDFDF\\uDFEC-\\uDFEF\\uDFF1-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE\\uDCAF\\uDCBC-\\uDCBF\\uDCC2-\\uDCCF\\uDCD9-\\uDCFF\\uDE58-\\uDE5F\\uDE6E\\uDE6F\\uDE7D-\\uDE7F\\uDE8B-\\uDE8D\\uDEC7\\uDEC9-\\uDECC\\uDEDD\\uDEDE\\uDEEB-\\uDEEE\\uDEF9-\\uDEFF\\uDF93\\uDFF0-\\uDFF9\\uDFFB-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])|~)/).replace(/punctSpace/g,/(?!~)(?:[\\t-\\r -\\/:-@\\[-`\\{-~\\xA0-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u1680\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2000-\\u200A\\u2010-\\u2029\\u202F-\\u205F\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFEFF\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/).replace(/punct/g,Ar).getRegex(),Ir=Yn(\"^[^_*]*?\\\\*\\\\*[^_*]*?_[^_*]*?(?=\\\\*\\\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)\",\"gu\").replace(/notPunctSpace/g,Er).replace(/punctSpace/g,Fr).replace(/punct/g,gr).getRegex(),Or=Yn(/\\\\(punct)/,\"gu\").replace(/punct/g,gr).getRegex(),Tr=Yn(/^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/).replace(\"scheme\",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(\"email\",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Pr=Yn(dr).replace(\"(?:--\\x3e|$)\",\"--\\x3e\").getRegex(),jr=Yn(\"^comment|^|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>|^<\\\\?[\\\\s\\\\S]*?\\\\?>|^|^\").replace(\"comment\",Pr).replace(\"attribute\",/\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/).getRegex(),Nr=/(?:\\[(?:\\\\[\\s\\S]|[^\\[\\]\\\\])*\\]|\\\\[\\s\\S]|`+[^`]*?`+(?!`)|[^\\[\\]\\\\`])*?/,zr=Yn(/^!?\\[(label)\\]\\(\\s*(href)(?:(?:[ \\t]*(?:\\n[ \\t]*)?)(title))?\\s*\\)/).replace(\"label\",Nr).replace(\"href\",/<(?:\\\\.|[^\\n<>\\\\])+>|[^ \\t\\n\\x00-\\x1f]*/).replace(\"title\",/\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/).getRegex(),Rr=Yn(/^!?\\[(label)\\]\\[(ref)\\]/).replace(\"label\",Nr).replace(\"ref\",or).getRegex(),Mr=Yn(/^!?\\[(ref)\\](?:\\[\\])?/).replace(\"ref\",or).getRegex(),Zr=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Lr={_backpedal:Gn,anyPunctuation:Or,autolink:Tr,blockSkip:Cr,br:yr,code:/^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,del:Gn,emStrongLDelim:wr,emStrongRDelimAst:xr,emStrongRDelimUnd:Ir,escape:/^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,link:zr,nolink:Mr,punctuation:br,reflink:Rr,reflinkSearch:Yn(\"reflink|nolink(?!\\\\()\",\"g\").replace(\"reflink\",Rr).replace(\"nolink\",Mr).getRegex(),tag:jr,text:/^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\\":\">\",'\"':\""\",\"'\":\"'\"},Wr=function(e){return Kr[e]};function Jr(e,t){if(t){if(er.escapeTest.test(e))return e.replace(er.escapeReplace,Wr)}else if(er.escapeTestNoEncode.test(e))return e.replace(er.escapeReplaceNoEncode,Wr);return e}function Qr(e){try{e=encodeURI(e).replace(er.percentDecode,\"%\")}catch(e){return null}return e}function Gr(e,t){var n,r=e.replace(er.findPipe,function(e,t,n){for(var r=!1,u=t;--u>=0&&\"\\\\\"===n[u];)r=!r;return r?\"|\":\" |\"}).split(er.splitPipe),u=0;if(r[0].trim()||r.shift(),r.length>0&&!(null!==(n=r.at(-1))&&void 0!==n&&n.trim())&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length0)return{type:\"space\",raw:t[0]}}},{key:\"code\",value:function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(this.rules.other.codeRemoveIndent,\"\");return{type:\"code\",raw:t[0],codeBlockStyle:\"indented\",text:this.options.pedantic?n:Yr(n,\"\\n\")}}}},{key:\"fences\",value:function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=function(e,t,n){var r=e.match(n.other.indentCodeCompensation);if(null===r)return t;var u=r[1];return t.split(\"\\n\").map(function(e){var t=e.match(n.other.beginningSpace);return null===t?e:T(t,1)[0].length>=u.length?e.slice(u.length):e}).join(\"\\n\")}(n,t[3]||\"\",this.rules);return{type:\"code\",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,\"$1\"):t[2],text:r}}}},{key:\"heading\",value:function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(this.rules.other.endingHash.test(n)){var r=Yr(n,\"#\");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:\"heading\",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}},{key:\"hr\",value:function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:\"hr\",raw:Yr(t[0],\"\\n\")}}},{key:\"blockquote\",value:function(e){var t=this.rules.block.blockquote.exec(e);if(t){for(var n=Yr(t[0],\"\\n\").split(\"\\n\"),r=\"\",u=\"\",a=[];n.length>0;){var i=!1,o=[],s=void 0;for(s=0;s1,a={type:\"list\",raw:\"\",ordered:u,start:u?+r.slice(0,-1):\"\",loose:!1,items:[]};r=u?\"\\\\d{1,9}\\\\\".concat(r.slice(-1)):\"\\\\\".concat(r),this.options.pedantic&&(r=u?r:\"[*+-]\");for(var i=this.rules.other.listItemRegex(r),o=!1;e;){var s=!1,c=\"\",l=\"\";if(!(n=i.exec(e))||this.rules.block.hr.test(e))break;c=n[0],e=e.substring(c.length);var d=n[2].split(\"\\n\",1)[0].replace(this.rules.other.listReplaceTabs,function(e){return\" \".repeat(3*e.length)}),f=e.split(\"\\n\",1)[0],p=!d.trim(),h=0;if(this.options.pedantic?(h=2,l=d.trimStart()):p?h=n[1].length+1:(h=(h=n[2].search(this.rules.other.nonSpaceChar))>4?1:h,l=d.slice(h),h+=n[1].length),p&&this.rules.other.blankLine.test(f)&&(c+=f+\"\\n\",e=e.substring(f.length+1),s=!0),!s)for(var v=this.rules.other.nextBulletRegex(h),m=this.rules.other.hrRegex(h),D=this.rules.other.fencesBeginRegex(h),y=this.rules.other.headingBeginRegex(h),g=this.rules.other.htmlBeginRegex(h);e;){var F=e.split(\"\\n\",1)[0],E=void 0;if(f=F,this.options.pedantic?E=f=f.replace(this.rules.other.listReplaceNesting,\" \"):E=f.replace(this.rules.other.tabCharGlobal,\" \"),D.test(f)||y.test(f)||g.test(f)||v.test(f)||m.test(f))break;if(E.search(this.rules.other.nonSpaceChar)>=h||!f.trim())l+=\"\\n\"+E.slice(h);else{if(p||d.replace(this.rules.other.tabCharGlobal,\" \").search(this.rules.other.nonSpaceChar)>=4||D.test(d)||y.test(d)||m.test(d))break;l+=\"\\n\"+f}!p&&!f.trim()&&(p=!0),c+=F+\"\\n\",e=e.substring(F.length+1),d=E.slice(h)}a.loose||(o?a.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0));var b=null,A=void 0;this.options.gfm&&((b=this.rules.other.listIsTask.exec(l))&&(A=\"[ ] \"!==b[0],l=l.replace(this.rules.other.listReplaceTask,\"\"))),a.items.push({type:\"list_item\",raw:c,task:!!b,checked:A,loose:!1,text:l,tokens:[]}),a.raw+=c}var C=a.items.at(-1);if(!C)return;C.raw=C.raw.trimEnd(),C.text=C.text.trimEnd(),a.raw=a.raw.trimEnd();for(var k=0;k0&&w.some(function(e){return t.rules.other.anyLine.test(e.raw)});a.loose=_}if(a.loose)for(var S=0;S0?-2:-1}(t[2],\"()\");if(-2===u)return;if(u>-1){var a=(0===t[0].indexOf(\"!\")?5:4)+t[1].length+u;t[2]=t[2].substring(0,u),t[0]=t[0].substring(0,a).trim(),t[3]=\"\"}}var i=t[2],o=\"\";if(this.options.pedantic){var s=this.rules.other.pedanticHrefTitle.exec(i);s&&(i=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):\"\";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(i=this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?i.slice(1):i.slice(1,-1)),Xr(t,{href:i&&i.replace(this.rules.inline.anyPunctuation,\"$1\"),title:o&&o.replace(this.rules.inline.anyPunctuation,\"$1\")},t[0],this.lexer,this.rules)}}},{key:\"reflink\",value:function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,\" \").toLowerCase()];if(!r){var u=n[0].charAt(0);return{type:\"text\",raw:u,text:u}}return Xr(n,r,n[0],this.lexer,this.rules)}}},{key:\"emStrong\",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!r[1]&&!r[2]||!n||this.rules.inline.punctuation.exec(n))){var u,a,i=P(r[0]).length-1,o=i,s=0,c=\"*\"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+i);null!=(r=c.exec(t));)if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(a=P(u).length,r[3]||r[4])o+=a;else if(!((r[5]||r[6])&&i%3)||(i+a)%3){if(!((o-=a)>0)){a=Math.min(a,a+o+s);var l=P(r[0])[0].length,d=e.slice(0,i+r.index+l+a);if(Math.min(i,a)%2){var f=d.slice(1,-1);return{type:\"em\",raw:d,text:f,tokens:this.lexer.inlineTokens(f)}}var p=d.slice(2,-2);return{type:\"strong\",raw:d,text:p,tokens:this.lexer.inlineTokens(p)}}}else s+=a}}},{key:\"codespan\",value:function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(this.rules.other.newLineCharGlobal,\" \"),r=this.rules.other.nonSpaceChar.test(n),u=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&u&&(n=n.substring(1,n.length-1)),{type:\"codespan\",raw:t[0],text:n}}}},{key:\"br\",value:function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:\"br\",raw:t[0]}}},{key:\"del\",value:function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:\"del\",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}},{key:\"autolink\",value:function(e){var t,n,r=this.rules.inline.autolink.exec(e);if(r)return\"@\"===r[2]?n=\"mailto:\"+(t=r[1]):n=t=r[1],{type:\"link\",raw:r[0],text:t,href:n,tokens:[{type:\"text\",raw:t,text:t}]}}},{key:\"url\",value:function(e){var t;if(t=this.rules.inline.url.exec(e)){var n,r;if(\"@\"===t[2])r=\"mailto:\"+(n=t[0]);else{var u;do{var a,i;u=t[0],t[0]=null!==(a=null===(i=this.rules.inline._backpedal.exec(t[0]))||void 0===i?void 0:i[0])&&void 0!==a?a:\"\"}while(u!==t[0]);n=t[0],r=\"www.\"===t[1]?\"http://\"+t[0]:t[0]}return{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}},{key:\"inlineText\",value:function(e){var t=this.rules.inline.text.exec(e);if(t){var n=this.lexer.state.inRawBlock;return{type:\"text\",raw:t[0],text:t[0],escaped:n}}}}])}(),tu=function(){function e(t){D(this,e),b(this,\"tokens\",void 0),b(this,\"options\",void 0),b(this,\"state\",void 0),b(this,\"tokenizer\",void 0),b(this,\"inlineQueue\",void 0),this.tokens=[],this.tokens.links=Object.create(null),this.options=t||Jn,this.options.tokenizer=this.options.tokenizer||new eu,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var n={other:er,block:Vr.normal,inline:Hr.normal};this.options.pedantic?(n.block=Vr.pedantic,n.inline=Hr.pedantic):this.options.gfm&&(n.block=Vr.gfm,this.options.breaks?n.inline=Hr.breaks:n.inline=Hr.gfm),this.tokenizer.rules=n}return F(e,[{key:\"lex\",value:function(e){e=e.replace(er.carriageReturn,\"\\n\"),this.blockTokens(e,this.tokens);for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:[],u=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=function(){var t,a,i;if(null!==(t=n.options.extensions)&&void 0!==t&&null!==(t=t.block)&&void 0!==t&&t.some(function(t){return!!(i=t.call({lexer:n},e,r))&&(e=e.substring(i.raw.length),r.push(i),!0)}))return 0;if(i=n.tokenizer.space(e)){e=e.substring(i.raw.length);var o=r.at(-1);return 1===i.raw.length&&void 0!==o?o.raw+=\"\\n\":r.push(i),0}if(i=n.tokenizer.code(e)){e=e.substring(i.raw.length);var s=r.at(-1);return\"paragraph\"===(null==s?void 0:s.type)||\"text\"===(null==s?void 0:s.type)?(s.raw+=(s.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,s.text+=\"\\n\"+i.text,n.inlineQueue.at(-1).src=s.text):r.push(i),0}if(i=n.tokenizer.fences(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.heading(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.hr(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.blockquote(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.list(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.html(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.def(e)){e=e.substring(i.raw.length);var c=r.at(-1);return\"paragraph\"===(null==c?void 0:c.type)||\"text\"===(null==c?void 0:c.type)?(c.raw+=(c.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,c.text+=\"\\n\"+i.raw,n.inlineQueue.at(-1).src=c.text):n.tokens.links[i.tag]||(n.tokens.links[i.tag]={href:i.href,title:i.title},r.push(i)),0}if(i=n.tokenizer.table(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.lheading(e))return e=e.substring(i.raw.length),r.push(i),0;var l=e;if(null!==(a=n.options.extensions)&&void 0!==a&&a.startBlock){var d,f=1/0,p=e.slice(1);n.options.extensions.startBlock.forEach(function(e){\"number\"==typeof(d=e.call({lexer:n},p))&&d>=0&&(f=Math.min(f,d))}),f<1/0&&f>=0&&(l=e.substring(0,f+1))}if(n.state.top&&(i=n.tokenizer.paragraph(l))){var h=r.at(-1);return u&&\"paragraph\"===(null==h?void 0:h.type)?(h.raw+=(h.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,h.text+=\"\\n\"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=h.text):r.push(i),u=l.length!==e.length,e=e.substring(i.raw.length),0}if(i=n.tokenizer.text(e)){e=e.substring(i.raw.length);var v=r.at(-1);return\"text\"===(null==v?void 0:v.type)?(v.raw+=(v.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,v.text+=\"\\n\"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=v.text):r.push(i),0}if(e){var m=\"Infinite loop on byte: \"+e.charCodeAt(0);if(n.options.silent)return console.error(m),1;throw new Error(m)}};for(this.options.pedantic&&(e=e.replace(er.tabCharGlobal,\" \").replace(er.spaceLine,\"\"));e&&(0===(t=a())||1!==t););return this.state.top=!0,r}},{key:\"inline\",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return this.inlineQueue.push({src:e,tokens:t}),t}},{key:\"inlineTokens\",value:function(e){var t,n,r,u=this,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=e,o=null;if(this.tokens.links){var s=Object.keys(this.tokens.links);if(s.length>0)for(;null!=(o=this.tokenizer.rules.inline.reflinkSearch.exec(i));)s.includes(o[0].slice(o[0].lastIndexOf(\"[\")+1,-1))&&(i=i.slice(0,o.index)+\"[\"+\"a\".repeat(o[0].length-2)+\"]\"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(o=this.tokenizer.rules.inline.anyPunctuation.exec(i));)i=i.slice(0,o.index)+\"++\"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;null!=(o=this.tokenizer.rules.inline.blockSkip.exec(i));)r=o[2]?o[2].length:0,i=i.slice(0,o.index+r)+\"[\"+\"a\".repeat(o[0].length-r-2)+\"]\"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);i=null!==(t=null===(n=this.options.hooks)||void 0===n||null===(n=n.emStrongMask)||void 0===n?void 0:n.call({lexer:this},i))&&void 0!==t?t:i;for(var c,l=!1,d=\"\",f=function(){var t,n,r;if(l||(d=\"\"),l=!1,null!==(t=u.options.extensions)&&void 0!==t&&null!==(t=t.inline)&&void 0!==t&&t.some(function(t){return!!(r=t.call({lexer:u},e,a))&&(e=e.substring(r.raw.length),a.push(r),!0)}))return 0;if(r=u.tokenizer.escape(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.tag(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.link(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.reflink(e,u.tokens.links)){e=e.substring(r.raw.length);var o=a.at(-1);return\"text\"===r.type&&\"text\"===(null==o?void 0:o.type)?(o.raw+=r.raw,o.text+=r.text):a.push(r),0}if(r=u.tokenizer.emStrong(e,i,d))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.codespan(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.br(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.del(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.autolink(e))return e=e.substring(r.raw.length),a.push(r),0;if(!u.state.inLink&&(r=u.tokenizer.url(e)))return e=e.substring(r.raw.length),a.push(r),0;var s=e;if(null!==(n=u.options.extensions)&&void 0!==n&&n.startInline){var c,f=1/0,p=e.slice(1);u.options.extensions.startInline.forEach(function(e){\"number\"==typeof(c=e.call({lexer:u},p))&&c>=0&&(f=Math.min(f,c))}),f<1/0&&f>=0&&(s=e.substring(0,f+1))}if(r=u.tokenizer.inlineText(s)){e=e.substring(r.raw.length),\"_\"!==r.raw.slice(-1)&&(d=r.raw.slice(-1)),l=!0;var h=a.at(-1);return\"text\"===(null==h?void 0:h.type)?(h.raw+=r.raw,h.text+=r.text):a.push(r),0}if(e){var v=\"Infinite loop on byte: \"+e.charCodeAt(0);if(u.options.silent)return console.error(v),1;throw new Error(v)}};e&&(0===(c=f())||1!==c););return a}}],[{key:\"rules\",get:function(){return{block:Vr,inline:Hr}}},{key:\"lex\",value:function(t,n){return new e(n).lex(t)}},{key:\"lexInline\",value:function(t,n){return new e(n).inlineTokens(t)}}])}(),nu=function(){return F(function e(t){D(this,e),b(this,\"options\",void 0),b(this,\"parser\",void 0),this.options=t||Jn},[{key:\"space\",value:function(e){return\"\"}},{key:\"code\",value:function(e){var t,n=e.text,r=e.lang,u=e.escaped,a=null===(t=(r||\"\").match(er.notSpaceStart))||void 0===t?void 0:t[0],i=n.replace(er.endingNewline,\"\")+\"\\n\";return a?'
    '+(u?i:Jr(i,!0))+\"
    \\n\":\"
    \"+(u?i:Jr(i,!0))+\"
    \\n\"}},{key:\"blockquote\",value:function(e){var t=e.tokens;return\"
    \\n\".concat(this.parser.parse(t),\"
    \\n\")}},{key:\"html\",value:function(e){return e.text}},{key:\"def\",value:function(e){return\"\"}},{key:\"heading\",value:function(e){var t=e.tokens,n=e.depth;return\"\").concat(this.parser.parseInline(t),\"\\n\")}},{key:\"hr\",value:function(e){return\"
    \\n\"}},{key:\"list\",value:function(e){for(var t=e.ordered,n=e.start,r=\"\",u=0;u\\n\"+r+\"\\n\"}},{key:\"listitem\",value:function(e){var t=\"\";if(e.task){var n,r=this.checkbox({checked:!!e.checked});e.loose?\"paragraph\"===(null===(n=e.tokens[0])||void 0===n?void 0:n.type)?(e.tokens[0].text=r+\" \"+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&\"text\"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=r+\" \"+Jr(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:\"text\",raw:r+\" \",text:r+\" \",escaped:!0}):t+=r+\" \"}return t+=this.parser.parse(e.tokens,!!e.loose),\"
  • \".concat(t,\"
  • \\n\")}},{key:\"checkbox\",value:function(e){return\"'}},{key:\"paragraph\",value:function(e){var t=e.tokens;return\"

    \".concat(this.parser.parseInline(t),\"

    \\n\")}},{key:\"table\",value:function(e){for(var t=\"\",n=\"\",r=0;r\".concat(u,\"\")),\"\\n\\n\"+t+\"\\n\"+u+\"
    \\n\"}},{key:\"tablerow\",value:function(e){var t=e.text;return\"\\n\".concat(t,\"\\n\")}},{key:\"tablecell\",value:function(e){var t=this.parser.parseInline(e.tokens),n=e.header?\"th\":\"td\";return(e.align?\"<\".concat(n,' align=\"').concat(e.align,'\">'):\"<\".concat(n,\">\"))+t+\"\\n\")}},{key:\"strong\",value:function(e){var t=e.tokens;return\"\".concat(this.parser.parseInline(t),\"\")}},{key:\"em\",value:function(e){var t=e.tokens;return\"\".concat(this.parser.parseInline(t),\"\")}},{key:\"codespan\",value:function(e){var t=e.text;return\"\".concat(Jr(t,!0),\"\")}},{key:\"br\",value:function(e){return\"
    \"}},{key:\"del\",value:function(e){var t=e.tokens;return\"\".concat(this.parser.parseInline(t),\"\")}},{key:\"link\",value:function(e){var t=e.href,n=e.title,r=e.tokens,u=this.parser.parseInline(r),a=Qr(t);if(null===a)return u;var i='
    \"+u+\"\"}},{key:\"image\",value:function(e){var t=e.href,n=e.title,r=e.text,u=e.tokens;u&&(r=this.parser.parseInline(u,this.parser.textRenderer));var a=Qr(t);if(null===a)return Jr(r);var i='\"').concat(r,'\"');return\"}},{key:\"text\",value:function(e){return\"tokens\"in e&&e.tokens?this.parser.parseInline(e.tokens):\"escaped\"in e&&e.escaped?e.text:Jr(e.text)}}])}(),ru=function(){return F(function e(){D(this,e)},[{key:\"strong\",value:function(e){return e.text}},{key:\"em\",value:function(e){return e.text}},{key:\"codespan\",value:function(e){return e.text}},{key:\"del\",value:function(e){return e.text}},{key:\"html\",value:function(e){return e.text}},{key:\"text\",value:function(e){return e.text}},{key:\"link\",value:function(e){return\"\"+e.text}},{key:\"image\",value:function(e){return\"\"+e.text}},{key:\"br\",value:function(){return\"\"}}])}(),uu=function(){function e(t){D(this,e),b(this,\"options\",void 0),b(this,\"renderer\",void 0),b(this,\"textRenderer\",void 0),this.options=t||Jn,this.options.renderer=this.options.renderer||new nu,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new ru}return F(e,[{key:\"parse\",value:function(e){for(var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=\"\",r=0;r1&&void 0!==arguments[1]?arguments[1]:this.renderer,n=\"\",r=0;r\"u\"||null===n)return i(new Error(\"marked(): input parameter is undefined or null\"));if(\"string\"!=typeof n)return i(new Error(\"marked(): input parameter is of type \"+Object.prototype.toString.call(n)+\", string expected\"));if(a.hooks&&(a.hooks.options=a,a.hooks.block=e),a.async)return v(B().m(function r(){var u,i,o,s,c,l,d,f,p,h,v;return B().w(function(r){for(;;)switch(r.n){case 0:if(!a.hooks){r.n=2;break}return r.n=1,a.hooks.preprocess(n);case 1:c=r.v,r.n=3;break;case 2:c=n;case 3:if(u=c,!a.hooks){r.n=5;break}return r.n=4,a.hooks.provideLexer();case 4:l=r.v,r.n=6;break;case 5:l=e?tu.lex:tu.lexInline;case 6:return d=l,r.n=7,d(u,a);case 7:if(i=r.v,!a.hooks){r.n=9;break}return r.n=8,a.hooks.processAllTokens(i);case 8:f=r.v,r.n=10;break;case 9:f=i;case 10:if(o=f,!a.walkTokens){r.n=11;break}return r.n=11,Promise.all(t.walkTokens(o,a.walkTokens));case 11:if(!a.hooks){r.n=13;break}return r.n=12,a.hooks.provideParser();case 12:p=r.v,r.n=14;break;case 13:p=e?uu.parse:uu.parseInline;case 14:return h=p,r.n=15,h(o,a);case 15:if(s=r.v,!a.hooks){r.n=17;break}return r.n=16,a.hooks.postprocess(s);case 16:v=r.v,r.n=18;break;case 17:v=s;case 18:return r.a(2,v)}},r)}))().catch(i);try{a.hooks&&(n=a.hooks.preprocess(n));var o=(a.hooks?a.hooks.provideLexer():e?tu.lex:tu.lexInline)(n,a);a.hooks&&(o=a.hooks.processAllTokens(o)),a.walkTokens&&t.walkTokens(o,a.walkTokens);var s=(a.hooks?a.hooks.provideParser():e?uu.parse:uu.parseInline)(o,a);return a.hooks&&(s=a.hooks.postprocess(s)),s}catch(e){return i(e)}}}},{key:\"onError\",value:function(e,t){return function(n){if(n.message+=\"\\nPlease report this to https://github.com/markedjs/marked.\",e){var r=\"

    An error occurred:

    \"+Jr(n.message+\"\",!0)+\"
    \";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}}])}(),ou=new iu;function su(e,t){return ou.parse(e,t)}function cu(e){return e.replace(/&/g,\"&\").replace(//g,\">\").replace(/\"/g,\""\").replace(/'/g,\"'\")}su.options=su.setOptions=function(e){return ou.setOptions(e),su.defaults=ou.defaults,Qn(su.defaults),su},su.getDefaults=Wn,su.defaults=Jn,su.use=function(){return ou.use.apply(ou,arguments),su.defaults=ou.defaults,Qn(su.defaults),su},su.walkTokens=function(e,t){return ou.walkTokens(e,t)},su.parseInline=ou.parseInline,su.Parser=uu,su.parser=uu.parse,su.Renderer=nu,su.TextRenderer=ru,su.Lexer=tu,su.lexer=tu.lex,su.Tokenizer=eu,su.Hooks=au,su.parse=su,su.options,su.setOptions,su.use,su.walkTokens,su.parseInline,uu.parse,tu.lex;var lu=new su.Renderer;lu.code=function(e){var t=e.text,n=e.lang,r=void 0===n?\"\":n,u=e.escaped,a=r?\"language-\".concat(r):\"\",i=u?t:cu(t),o=encodeURIComponent(t);return'\\n
    \\n \\n
    ').concat(i,\"
    \\n
    \\n \")},lu.link=function(e){var t=e.href,n=e.title,r=e.text,u=n?' title=\"'.concat(cu(n),'\"'):\"\",a=t?cu(t):\"\",i=cu(r);return'').concat(i,\"\")};var du=i(function(e){var t=e.content,u=e.copyButtonText,a=e.copyButtonCopiedText,i=e.isStreaming,c=o(function(){return su.parse(t,{gfm:!0,breaks:!0,renderer:lu})},[t]),l=s(null);return r(function(){var e=l.current;if(e)return Array.from(e.querySelectorAll(\".DocSearch-CodeSnippet-CopyButton\")).forEach(function(e){var t=e.querySelector(\".DocSearch-CodeSnippet-CopyButton-Label\");t&&(t.textContent=u),e.classList.remove(\"DocSearch-CodeSnippet-CopyButton--copied\")}),e.addEventListener(\"click\",t),function(){e.removeEventListener(\"click\",t)};function t(e){var t,n=e.target.closest(\".DocSearch-CodeSnippet-CopyButton\");if(n){var r=null!==(t=n.getAttribute(\"data-code\"))&&void 0!==t?t:\"\";navigator.clipboard.writeText(decodeURIComponent(r)).catch(function(){});var i=n.querySelector(\".DocSearch-CodeSnippet-CopyButton-Label\");if(i){n.classList.add(\"DocSearch-CodeSnippet-CopyButton--copied\");var o=u;i.textContent=a,setTimeout(function(){n.classList.remove(\"DocSearch-CodeSnippet-CopyButton--copied\"),i.textContent=o},1500)}}}},[c,u,a]),n.createElement(\"div\",{ref:l,className:\"DocSearch-Markdown-Content \".concat(i?\"DocSearch-Markdown-Content--streaming\":\"\"),dangerouslySetInnerHTML:{__html:c}})});function fu(e){var t=e.part,r=e.translations,u=e.onSearchQueryClick,a=r.searchingText,i=r.preToolCallText,o=r.toolCallResultText;switch(t.state){case\"input-streaming\":return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool Tool--PartialCall shimmer\"},n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}),n.createElement(\"span\",null,a));case\"input-available\":return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool Tool--Call shimmer\"},n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}),n.createElement(\"span\",null,i,\" \",'\"'.concat(t.input.query||\"\",'\" ...')));case\"output-available\":var s,c=\"tool-searchIndex\"===t.type?t.output.query:t.input.query,l=\"tool-searchIndex\"===t.type?null===(s=t.output.hits)||void 0===s?void 0:s.length:t.output.nbHits;return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool Tool--Result\"},n.createElement(q,null),n.createElement(\"span\",null,o,\" \",u?n.createElement(\"span\",{role:\"button\",tabIndex:0,className:\"DocSearch-AskAiScreen-MessageContent-Tool-Query\",onKeyDown:function(e){\"Enter\"!==e.key&&\" \"!==e.key||(e.preventDefault(),u(c||\"\"))},onClick:function(){return u(c||\"\")}},\" \",'\"',c||\"\",'\"'):n.createElement(\"span\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool-Query\"},' \"',c||\"\",'\"'),\" \",\"found \",l||0,\" results\"));default:return null}}function pu(e){var t=e.replace(/<[^>]*>/g,\"\");return t.replace(/&/g,\"&\").replace(//g,\">\").replace(/\"/g,\""\").replace(/'/g,\"'\")}du.displayName=\"MemoizedMarkdown\";var hu=function(e,t){var n=t[0].parts.find(function(e){return\"text\"===e.type}),r=null!=n&&n.text?pu(n.text):\"\";return{query:e,objectID:r,messages:t,type:\"askAI\",anchor:\"stored\",content:null,hierarchy:{lvl0:\"askAI\",lvl1:r,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},url:\"\",url_without_anchor:\"\"}},vu=function(e){return null==e?void 0:e.parts.find(function(e){return\"text\"===e.type})};function mu(e){var t;return e&&(null===(t=e.message)||void 0===t?void 0:t.includes(\"AI-217\"))||!1}var Du=[\"translations\"];function yu(e){var t=e.disclaimerText;return n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-Disclaimer\"},t)}function gu(e){var t,r,u,a=e.exchange,i=e.askAiError,s=e.isLastExchange,c=e.loadingStatus,l=e.onSearchQueryClick,d=e.translations,f=e.conversations,p=e.onFeedback,h=e.agentStudio,v=a.userMessage,m=a.assistantMessage,D=d.stoppedStreamingText,y=void 0===D?\"You stopped this response\":D,g=d.errorTitleText,F=void 0===g?\"Chat error\":g,b=d.preToolCallText,A=void 0===b?\"Searching...\":b,C=d.afterToolCallText,k=void 0===C?\"Searched for\":C,w=d.duringToolCallText,_=void 0===w?\"Searching...\":w,S=mu(i),x=o(function(){return vu(m)},[m]),B=o(function(){return vu(v)},[v]),I=n.useMemo(function(){return e=m,t=[],n=new Set,e?(e.parts.forEach(function(e){if(\"text\"===e.type&&0!==e.text.length){var r,u=e.text.replace(/```[\\s\\S]*?```/g,\"\").replace(/`[^`]*`/g,\"\"),a=E(u.matchAll(/\\[([^\\]]*)\\]\\(([^)]+)\\)/g));try{for(a.s();!(r=a.n()).done;){var i=r.value,o=i[1].trim(),s=i[2];n.has(s)||(n.add(s),t.push({url:s,title:o||void 0}))}}catch(e){a.e(e)}finally{a.f()}var c,l=E(u.matchAll(/(?\"{}|\\\\^`[\\]]+/g));try{for(l.s();!(c=l.n()).done;){var d=c.value[0].replace(/[.,;:!?]+$/,\"\");n.has(d)||(n.add(d),t.push({url:d}))}}catch(e){l.e(e)}finally{l.f()}}}),t):[];var e,t,n},[m]),O=n.useMemo(function(){return function(e){for(var t=[],n=0;n0&&u.push(c),a++}u.length>1?t.push({type:\"aggregated-tool-call\",queries:u}):1===u.length&&t.push(r),n=a-1}else t.push(r)}return t}((null==m?void 0:m.parts)||[])},[m]),T=(null===(t=v.metadata)||void 0===t?void 0:t.stopped)||(null==m||null===(r=m.metadata)||void 0===r?void 0:r.stopped),P=!T&&(!s||s&&\"ready\"===c&&Boolean(m)),j=[\"submitted\",\"streaming\"].includes(c)&&s&&!O.some(function(e){return\"step-start\"!==e.type});return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Response-Container\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Response\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--user\"},n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-Query\"},null!==(u=null==B?void 0:B.text)&&void 0!==u?u:\"\")),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--assistant\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent\"},\"error\"===c&&i&&s&&!S&&n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error\"},n.createElement(On,null),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Error-Content\"},n.createElement(\"h4\",{className:\"DocSearch-AskAiScreen-Error-Title\"},F),n.createElement(du,{content:i.message,copyButtonText:\"\",copyButtonCopiedText:\"\",isStreaming:!1}))),j&&n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Reasoning\"},n.createElement(\"span\",{className:\"shimmer\"},d.thinkingText||\"Thinking...\")),O.map(function(e,t){var r=t;return\"string\"==typeof e?n.createElement(du,{key:r,content:e,copyButtonText:d.copyButtonText||\"Copy\",copyButtonCopiedText:d.copyButtonCopiedText||\"Copied!\",isStreaming:\"streaming\"===c}):\"aggregated-tool-call\"===e.type?n.createElement(Kn,{key:r,queries:e.queries,translations:d,onSearchQueryClick:l}):\"reasoning\"===e.type&&\"streaming\"===e.state?n.createElement(\"div\",{key:r,className:\"DocSearch-AskAiScreen-MessageContent-Reasoning shimmer\"},n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}),n.createElement(\"span\",{className:\"shimmer\"},\"Reasoning...\")):\"text\"===e.type?n.createElement(du,{key:r,content:e.text,copyButtonText:d.copyButtonText||\"Copy\",copyButtonCopiedText:d.copyButtonCopiedText||\"Copied!\",isStreaming:\"streaming\"===e.state}):\"tool-searchIndex\"===e.type||\"tool-algolia_search_index\"===e.type?n.createElement(fu,{key:r,translations:{preToolCallText:A,searchingText:_,toolCallResultText:k},part:e,onSearchQueryClick:l}):null})),T&&n.createElement(\"p\",{className:\"DocSearck-AskAiScreen-MessageContent-Stopped\"},y)),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Answer-Footer\"},n.createElement(Fu,{id:(null==v?void 0:v.id)||a.id,showActions:P,latestAssistantMessageContent:(null==x?void 0:x.text)||null,translations:d,conversations:f,agentStudio:h,onFeedback:p}))),I.length>0?n.createElement(Eu,{urlsToDisplay:I,relatedSourcesText:d.relatedSourcesText}):null)}function Fu(e){var t=e.id,r=e.showActions,u=e.latestAssistantMessageContent,a=e.translations,i=e.conversations,o=e.onFeedback,s=e.agentStudio,c=n.useMemo(function(){var e,n,r=null===(e=i.getOne)||void 0===e?void 0:e.call(i,t);return null!==(n=null==r?void 0:r.feedback)&&void 0!==n?n:null},[i,t]),l=T(n.useState(c),2),d=l[0],f=l[1],p=T(n.useState(!1),2),h=p[0],m=p[1],D=T(n.useState(null),2),y=D[0],g=D[1],F=function(){var e=v(B().m(function e(n){var r;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!h){e.n=1;break}return e.a(2);case 1:return g(null),m(!0),e.p=2,e.n=3,null==o?void 0:o(t,\"like\"===n?1:0);case 3:f(n),e.n=5;break;case 4:e.p=4,r=e.v,g(r);case 5:return e.p=5,m(!1),e.f(5);case 6:return e.a(2)}},e,null,[[2,4,5,6]])}));return function(t){return e.apply(this,arguments)}}(),E=a.likeButtonTitle,b=void 0===E?\"Like\":E,A=a.dislikeButtonTitle,C=void 0===A?\"Dislike\":A,k=a.thanksForFeedbackText,w=void 0===k?\"Thanks for your feedback!\":k;return r&&u?n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Actions\"},!s&&(null===d?n.createElement(n.Fragment,null,h?n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}):n.createElement(n.Fragment,null,n.createElement(ku,{title:b,onClick:function(){return F(\"like\")}}),n.createElement(wu,{title:C,onClick:function(){return F(\"dislike\")}})),y&&n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-FeedbackText\"},y.message||\"An error occured\")):n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-FeedbackText DocSearch-AskAiScreen-FeedbackText--visible\"},w)),n.createElement(Cu,{translations:a,onClick:function(){return navigator.clipboard.writeText(u)}})):null}function Eu(e){var t=e.urlsToDisplay,r=e.relatedSourcesText;return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-RelatedSources\"},n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-RelatedSources-Title\"},r||\"Related sources\"),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-RelatedSources-List\"},t.length>0&&t.map(function(e){return n.createElement(\"a\",{key:e.url,href:e.url,className:\"DocSearch-AskAiScreen-RelatedSources-Item-Link\",target:\"_blank\",rel:\"noopener noreferrer\"},n.createElement(Au,null),n.createElement(\"span\",null,e.title||e.url))})))}function bu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,Du),a=r.disclaimerText,i=void 0===a?\"Answers are generated with AI which can make mistakes. Verify responses.\":a,s=r.threadDepthExceededMessage,c=void 0===s?\"This conversation is now closed to keep responses accurate.\":s,l=r.startNewConversationButtonText,d=void 0===l?\"Start a new conversation\":l,f=u.messages,p=u.askAiError,h=u.status,v=o(function(){return\"error\"===h&&mu(p)},[h,p]),m=o(function(){for(var e=[],t=0;t0&&(e[e.length-1].assistantMessage||e.pop());return e},[f,v]),D=function(e){u.onAskAiToggle(!1),u.setQuery(e)},y=v&&f.some(function(e){return\"assistant\"===e.role});return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen DocSearch-AskAiScreen-Container\"},y&&n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error DocSearch-AskAiScreen-Error--ThreadDepth\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Error-Content\"},n.createElement(\"p\",null,c,\" \",n.createElement(\"button\",{type:\"button\",className:\"DocSearch-ThreadDepthError-Link\",onClick:u.onNewConversation},d),\" \",\"to continue.\"))),n.createElement(yu,{disclaimerText:i}),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Body\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-ExchangesList\"},m.slice().reverse().map(function(e,t){return n.createElement(gu,{key:e.id,exchange:e,askAiError:u.askAiError,isLastExchange:0===t,loadingStatus:u.status,translations:r,conversations:u.conversations,agentStudio:u.agentStudio,onSearchQueryClick:D,onFeedback:u.onFeedback})}))))}function Au(){return n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\"},n.createElement(\"line\",{x1:\"4\",x2:\"20\",y1:\"9\",y2:\"9\"}),n.createElement(\"line\",{x1:\"4\",x2:\"20\",y1:\"15\",y2:\"15\"}),n.createElement(\"line\",{x1:\"10\",x2:\"8\",y1:\"3\",y2:\"21\"}),n.createElement(\"line\",{x1:\"16\",x2:\"14\",y1:\"3\",y2:\"21\"}))}function Cu(e){var t=e.onClick,a=e.translations,i=a.copyButtonTitle,o=void 0===i?\"Copy\":i,s=a.copyButtonCopiedText,c=void 0===s?\"Copied!\":s,l=T(u(!1),2),d=l[0],f=l[1];r(function(){if(d){var e=setTimeout(function(){f(!1)},1500);return function(){return clearTimeout(e)}}},[d]);return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-CopyButton \".concat(d?\"DocSearch-AskAiScreen-CopyButton--copied\":\"\"),disabled:d,title:d?c:o,onClick:function(){t(),f(!0)}},d?n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-check-icon lucide-check\"},n.createElement(\"path\",{d:\"M20 6 9 17l-5-5\"})):n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-copy-icon lucide-copy\"},n.createElement(\"rect\",{width:\"14\",height:\"14\",x:\"8\",y:\"8\",rx:\"2\",ry:\"2\"}),n.createElement(\"path\",{d:\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"})))}function ku(e){var t=e.title,r=e.onClick;return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-LikeButton\",title:t,onClick:r},n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-thumbs-up-icon lucide-thumbs-up\"},n.createElement(\"path\",{d:\"M7 10v12\"}),n.createElement(\"path\",{d:\"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z\"})))}function wu(e){var t=e.title,r=e.onClick;return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-DislikeButton\",title:t,onClick:r},n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-thumbs-down-icon lucide-thumbs-down\"},n.createElement(\"path\",{d:\"M17 14V2\"}),n.createElement(\"path\",{d:\"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z\"})))}var _u=[\"hit\",\"attribute\",\"tagName\"];function Su(e,t){return t.split(\".\").reduce(function(e,t){return null!=e&&e[t]?e[t]:null},e)}function xu(e){var t=e.hit,n=e.attribute,r=e.tagName,u=void 0===r?\"span\":r,a=x(e,_u);return c(u,S(S({},a),{},{dangerouslySetInnerHTML:{__html:Su(t,\"_snippetResult.\".concat(n,\".value\"))||Su(t,n)}}))}var Bu=[\"item\",\"getItemProps\",\"onItemClick\",\"translations\",\"collection\"];function Iu(e){var t=n.useMemo(function(){return e.title?e.title.replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\").replace(/"/g,'\"').replace(/'/g,\"'\"):null},[e.title]);return e.collection&&0!==e.collection.items.length?\"askAI\"===e.collection.source.sourceId?n.createElement(\"section\",{className:\"DocSearch-AskAi-Section\"},n.createElement(\"ul\",e.getListProps({source:e.collection.source}),n.createElement(Tu,A({item:e.collection.items[0],translations:e.translations},e)))):(e.collection.source.sourceId,n.createElement(\"section\",{className:\"DocSearch-Hits\"},n.createElement(\"div\",{className:\"DocSearch-Hit-source\"},t),n.createElement(\"ul\",e.getListProps({source:e.collection.source}),e.collection.items.map(function(t,r){return n.createElement(Ou,A({key:[e.title,t.objectID].join(\":\"),item:t,index:r},e))})))):null}function Ou(e){var t=e.item,r=e.index,u=e.renderIcon,a=e.renderAction,i=e.getItemProps,o=e.onItemClick,s=e.collection,c=e.hitComponent;return n.createElement(\"li\",A({className:[\"DocSearch-Hit\",t.__docsearch_parent&&\"DocSearch-Hit--Child\"].filter(Boolean).join(\" \")},i({item:t,source:s.source,onClick:function(e){o(t,e)}})),n.createElement(c,{hit:t},n.createElement(\"div\",{className:\"DocSearch-Hit-Container\"},u({item:t,index:r}),t.hierarchy[t.type]&&\"lvl1\"===t.type&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(xu,{className:\"DocSearch-Hit-title\",hit:t,attribute:\"hierarchy.lvl1\"}),t.content&&n.createElement(xu,{className:\"DocSearch-Hit-path\",hit:t,attribute:\"content\"})),\"askAI\"===t.type&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(\"span\",{className:\"DocSearch-Hit-title\"},pu(t.hierarchy.lvl1||\"\"))),t.hierarchy[t.type]&&(\"lvl2\"===t.type||\"lvl3\"===t.type||\"lvl4\"===t.type||\"lvl5\"===t.type||\"lvl6\"===t.type)&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(xu,{className:\"DocSearch-Hit-title\",hit:t,attribute:\"hierarchy.\".concat(t.type)}),n.createElement(xu,{className:\"DocSearch-Hit-path\",hit:t,attribute:\"hierarchy.lvl1\"})),\"content\"===t.type&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(xu,{className:\"DocSearch-Hit-title\",hit:t,attribute:\"content\"}),n.createElement(xu,{className:\"DocSearch-Hit-path\",hit:t,attribute:\"hierarchy.lvl1\"})),a({item:t}))))}function Tu(e){var t=e.item,r=e.getItemProps,u=e.onItemClick,a=e.translations,i=e.collection,o=x(e,Bu),s=a||{},c=s.askAiPlaceholder,l=void 0===c?\"Ask AI: \":c,d=s.noResultsAskAiPlaceholder,f=void 0===d?\"Didn't find it in the docs? Ask AI to help: \":d,p=1===o.state.collections.length?f:l;return n.createElement(\"li\",A({className:\"DocSearch-Hit\"},r({item:t,source:i.source,onClick:function(e){u(t,e)}})),n.createElement(\"div\",{className:\"DocSearch-Hit--AskAI\"},n.createElement(\"div\",{className:\"DocSearch-Hit-AskAIButton DocSearch-Hit-Container\"},n.createElement(\"div\",{className:\" DocSearch-Hit-AskAIButton-icon DocSearch-Hit-icon\"},n.createElement(xn,null)),n.createElement(\"div\",{className:\"DocSearch-Hit-AskAIButton-title\"},n.createElement(\"span\",{className:\"DocSearch-Hit-AskAIButton-title-highlight\"},p),n.createElement(\"mark\",{className:\"DocSearch-Hit-AskAIButton-title-query\"},String(t.query||\"\"))))))}var Pu=[\"onAskAiToggle\"];function ju(e){var t=e.onAskAiToggle,r=x(e,Pu),u=n.useMemo(function(){return r.state.collections[2]},[r.state]);return n.useEffect(function(){u&&0!==u.items.length||t(!0)},[u,t]),n.createElement(\"div\",{className:\"DocSearch-Dropdown-Container DocSearch-Conversation-History\"},n.createElement(Iu,A({},r,{key:u.source.sourceId,title:\"\",translations:r.translations,collection:u,renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(xn,null))},renderAction:function(e){var t=e.item;return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{type:\"button\",className:\"DocSearch-Hit-action-button\",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.conversations.remove(t),r.refresh()}},n.createElement(In,null)))}})))}function Nu(e){var t=e.translations,r=void 0===t?{}:t,u=r.titleText,a=void 0===u?\"Unable to fetch results\":u,i=r.helpText,o=void 0===i?\"You might want to check your network connection.\":i;return n.createElement(\"div\",{className:\"DocSearch-ErrorScreen\"},n.createElement(\"div\",{className:\"DocSearch-Screen-Icon\"},n.createElement(Zn,null)),n.createElement(\"p\",{className:\"DocSearch-Title\"},a),n.createElement(\"p\",{className:\"DocSearch-Help\"},o))}function zu(e){var t=e.translations,r=void 0===t?{}:t,u=e.suggestedQuestions,a=void 0===u?[]:u,i=e.selectSuggestedQuestion,o=r.newConversationTitle,s=void 0===o?\"How can I help you today?\":o,c=r.newConversationDescription,l=void 0===c?\"I search through your documentation to help you find setup guides, feature details and troubleshooting tips, fast.\":c;return n.createElement(\"div\",{className:\"DocSearch-NewConversationScreen\"},n.createElement(\"h3\",{className:\"DocSearch-NewConversationScreen-Title\"},s),n.createElement(\"p\",{className:\"DocSearch-NewConversationScreen-Description\"},l),n.createElement(\"div\",{className:\"DocSearch-NewConversationScreen-SuggestedQuestions\"},a.map(function(e){return n.createElement(\"button\",{key:e.objectID,type:\"button\",className:\"DocSearch-NewConversationScreen-SuggestedQuestion\",onClick:function(){return i(e)}},e.question)})))}var Ru=[\"translations\"];function Mu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,Ru),a=r.noResultsText,i=void 0===a?\"No results found for\":a,o=r.suggestedQueryText,s=void 0===o?\"Try searching for\":o,c=r.reportMissingResultsText,l=void 0===c?\"Believe this query should return results?\":c,d=r.reportMissingResultsLinkText,f=void 0===d?\"Let us know.\":d,p=u.state.context.searchSuggestions;return n.createElement(\"div\",{className:\"DocSearch-NoResults \".concat(u.canHandleAskAi?\"DocSearch-NoResults--withAskAi\":\"\")},n.createElement(\"div\",{className:\"DocSearch-Screen-Icon\"},n.createElement(Ln,null)),n.createElement(\"p\",{className:\"DocSearch-Title\"},i,' \"',n.createElement(\"strong\",null,u.state.query),'\"'),p&&p.length>0&&n.createElement(\"div\",{className:\"DocSearch-NoResults-Prefill-List\"},n.createElement(\"p\",{className:\"DocSearch-Help\"},s,\":\"),n.createElement(\"div\",{className:\"DocSearch-NoResults-Prefill-List-Items\"},p.slice(0,3).reduce(function(e,t){return[].concat(P(e),[n.createElement(\"p\",{key:t},n.createElement(q,{size:16}),n.createElement(\"button\",{className:\"DocSearch-Prefill\",key:t,type:\"button\",onClick:function(){u.setQuery(t.toLowerCase()+\" \"),u.refresh(),u.inputRef.current.focus()}},t))])},[]))),u.getMissingResultsUrl&&n.createElement(\"p\",{className:\"DocSearch-Help\"},\"\".concat(l,\" \"),n.createElement(\"a\",{href:u.getMissingResultsUrl({query:u.state.query}),target:\"_blank\",rel:\"noopener noreferrer\"},f)))}var Zu=[\"translations\"];function Lu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,Zu);return n.createElement(\"div\",{className:\"DocSearch-Dropdown-Container\"},u.state.collections.map(function(e){if(0===e.items.length)return null;var t=G(e.items[0]);return n.createElement(Iu,A({},u,{key:e.source.sourceId,translations:r,title:t,collection:e,renderIcon:function(t){var r,u=t.item,a=t.index;return n.createElement(n.Fragment,null,u.__docsearch_parent&&n.createElement(\"svg\",{className:\"DocSearch-Hit-Tree\",viewBox:\"0 0 24 54\"},n.createElement(\"g\",{stroke:\"currentColor\",fill:\"none\",fillRule:\"evenodd\",strokeLinecap:\"round\",strokeLinejoin:\"round\"},u.__docsearch_parent!==(null===(r=e.items[a+1])||void 0===r?void 0:r.__docsearch_parent)?n.createElement(\"path\",{d:\"M8 6v21M20 27H8.3\"}):n.createElement(\"path\",{d:\"M8 6v42M20 27H8.3\"}))),n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(jn,{type:u.type})))},renderAction:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(Tn,null))}}))}),u.resultsFooterComponent&&n.createElement(\"section\",{className:\"DocSearch-HitsFooter\"},n.createElement(u.resultsFooterComponent,{state:u.state})))}var $u=[\"translations\"];function qu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,$u),a=r.recentSearchesTitle,i=void 0===a?\"Recent\":a,o=r.saveRecentSearchButtonTitle,s=void 0===o?\"Save this search\":o,c=r.removeRecentSearchButtonTitle,l=void 0===c?\"Remove this search from history\":c,d=r.favoriteSearchesTitle,f=void 0===d?\"Favorite\":d,p=r.removeFavoriteSearchButtonTitle,h=void 0===p?\"Remove this search from favorites\":p,v=r.recentConversationsTitle,m=void 0===v?\"Recent conversations\":v,D=r.removeRecentConversationButtonTitle,y=void 0===D?\"Remove this conversation from history\":D;return n.createElement(\"div\",{className:\"DocSearch-Dropdown-Container\"},n.createElement(Iu,A({},u,{title:i,collection:u.state.collections[0],renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(Bn,null))},renderAction:function(e){var t=e.item;return n.createElement(n.Fragment,null,n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:s,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.favoriteSearches.add(t),u.recentSearches.remove(t),u.refresh()}},n.createElement(Rn,null))),n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:l,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.recentSearches.remove(t),u.refresh()}},n.createElement(In,null))))}})),n.createElement(Iu,A({},u,{title:f,collection:u.state.collections[1],renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(Rn,null))},renderAction:function(e){var t=e.item;return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:h,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.favoriteSearches.remove(t),u.refresh()}},n.createElement(In,null)))}})),n.createElement(Iu,A({},u,{title:m,collection:u.state.collections[2],renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(xn,null))},renderAction:function(e){var t=e.item;return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:y,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.conversations.remove(t),u.refresh()}},n.createElement(In,null)))}})))}var Uu=[\"translations\"],Vu=n.memo(function(e){var t,r=e.translations,u=void 0===r?{}:r,a=x(e,Uu);return a.canHandleAskAi&&a.isAskAiActive&&\"conversation-history\"===a.askAiState?n.createElement(ju,a):a.canHandleAskAi&&a.isAskAiActive&&\"new-conversation\"===a.askAiState?n.createElement(zu,{translations:null==u?void 0:u.newConversation,selectSuggestedQuestion:a.selectSuggestedQuestion,suggestedQuestions:a.suggestedQuestions}):a.isAskAiActive&&a.canHandleAskAi?n.createElement(bu,A({},a,{messages:a.messages,status:a.status,askAiError:a.askAiError,translations:null==u?void 0:u.askAiScreen,agentStudio:a.agentStudio})):\"error\"===(null===(t=a.state)||void 0===t?void 0:t.status)?n.createElement(Nu,{translations:null==u?void 0:u.errorScreen}):a.state.query?a.hasCollections||a.canHandleAskAi?n.createElement(n.Fragment,null,n.createElement(Lu,A({},a,{translations:null==u?void 0:u.resultsScreen})),a.canHandleAskAi&&1===a.state.collections.length&&n.createElement(Mu,A({},a,{translations:null==u?void 0:u.noResultsScreen}))):n.createElement(Mu,A({},a,{translations:null==u?void 0:u.noResultsScreen})):n.createElement(qu,A({},a,{hasCollections:a.hasCollections,translations:null==u?void 0:u.startScreen}))},function(e,t){return\"loading\"===t.state.status||\"stalled\"===t.state.status});function Hu(e){var t=e.size,r=void 0===t?20:t,u=e.color,a=void 0===u?\"currentColor\":u;return n.createElement(\"svg\",{width:r,height:r,className:\"DocSearch-Back-Icon\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:a,strokeWidth:\"1.6\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":\"true\"},n.createElement(\"path\",{d:\"m12 19-7-7 7-7\"}),n.createElement(\"path\",{d:\"M19 12H5\"}))}var Ku=[\"children\",\"className\",\"onClick\"],Wu=n.createContext({open:!1,setOpen:function(e){}});function Ju(e){var t=e.children,r=T(n.useState(!1),2),u=r[0],a=r[1],i=n.useRef(null);return n.useEffect(function(){function e(e){var t;null!==(t=i.current)&&void 0!==t&&t.contains(e.target)||a(!1)}return u&&window.addEventListener(\"click\",e),function(){window.removeEventListener(\"click\",e)}},[u]),n.createElement(Wu.Provider,{value:{open:u,setOpen:a}},n.createElement(\"div\",{ref:i,className:\"DocSearch-Menu\"},t))}function Qu(e){var t=e.heading,r=e.shimmer,u=void 0!==r&&r;return n.createElement(\"span\",{className:\"DocSearch-Modal-heading\".concat(u?\" shimmer\":\"\")},t)}Ju.Trigger=function(e){var t=e.children,r=e.className,u=void 0===r?\"\":r,a=e.disabled,i=n.useContext(Wu),o=i.open,s=i.setOpen;return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-Menu-trigger \".concat(u).concat(a?\" disabled\":\"\"),\"aria-disabled\":a,onClick:function(){a||s(!o)}},t)},Ju.Content=function(e){var t=e.children,r=n.useContext(Wu).open;return n.createElement(\"div\",{className:\"DocSearch-Menu-content\".concat(r?\" open\":\"\")},t)},Ju.Item=function(e){var t=e.children,r=e.className,u=void 0===r?\"\":r,a=e.onClick,i=x(e,Ku),o=n.useContext(Wu).setOpen;return n.createElement(\"button\",A({type:\"button\",className:\"DocSearch-Menu-item \".concat(u),onClick:function(e){a&&(a(e),o(!1))}},i),t)};var Gu=[\"translations\",\"askAiState\",\"onAskAiToggle\",\"setAskAiState\"];function Yu(e){var t=e.translations,r=void 0===t?{}:t,u=e.askAiState,a=e.onAskAiToggle,i=e.setAskAiState,o=x(e,Gu),s=r.clearButtonTitle,c=void 0===s?\"Clear\":s,l=r.clearButtonAriaLabel,d=void 0===l?\"Clear the query\":l,f=r.closeButtonText,p=void 0===f?\"Close\":f,h=r.closeButtonAriaLabel,v=void 0===h?\"Close\":h,m=r.searchInputLabel,D=void 0===m?\"Search\":m,y=r.backToKeywordSearchButtonText,g=void 0===y?\"Back to keyword search\":y,F=r.backToKeywordSearchButtonAriaLabel,E=void 0===F?\"Back to keyword search\":F,b=r.placeholderTextAskAiStreaming,C=void 0===b?\"Answering...\":b,k=r.newConversationPlaceholder,w=void 0===k?\"Ask a question\":k,_=r.conversationHistoryTitle,B=void 0===_?\"My conversation history\":_,I=r.startNewConversationText,O=void 0===I?\"Start a new conversation\":I,T=r.viewConversationHistoryText,P=void 0===T?\"Conversation history\":T,j=r.threadDepthErrorPlaceholder,N=void 0===j?\"Conversation limit reached\":j,z=o.getFormProps({inputElement:o.inputRef.current}).onReset;n.useEffect(function(){o.autoFocus&&o.inputRef.current&&o.inputRef.current.focus()},[o.autoFocus,o.inputRef]),n.useEffect(function(){o.isFromSelection&&o.inputRef.current&&o.inputRef.current.select()},[o.isFromSelection,o.inputRef]);var R=n.useMemo(function(){var e=o.state.collections[2];return!!e&&e.items.length>0},[o.state.collections]),M=o.getInputProps({inputElement:o.inputRef.current,autoFocus:o.autoFocus,maxLength:512}),Z=new Set([\"ArrowUp\",\"ArrowDown\",\"Enter\"]),L=M.onKeyDown,$=M.onChange,U=\"streaming\"===o.askAiStatus||\"submitted\"===o.askAiStatus,V=\"stalled\"===o.state.status,H=o.isAskAiActive&&\"conversation-history\"!==u,K=o.isThreadDepthError||!1,W=o.placeholder;\"new-conversation\"===u&&(W=w),K&&o.isAskAiActive&&(W=N);var J=null;U&&(J=C),\"conversation-history\"===u&&(J=B),n.useEffect(function(){\"streaming\"!==o.askAiStatus&&\"submitted\"!==o.askAiStatus&&o.inputRef.current&&o.inputRef.current.focus()},[o.askAiStatus,o.inputRef]);var Q=S(S({},M),{},{enterKeyHint:o.isAskAiActive?\"enter\":\"search\",onKeyDown:function(e){if(o.isAskAiActive&&Z.has(e.key))return\"Enter\"===e.key&&!U&&o.state.query&&o.onAskAgain(o.state.query),e.preventDefault(),void e.stopPropagation();null==L||L(e)},onChange:function(e){if(o.isAskAiActive)return o.setQuery(e.currentTarget.value),e.preventDefault(),void e.stopPropagation();null==$||$(e)},disabled:U||K&&o.isAskAiActive}),G=n.useCallback(function(){if(!K)return\"conversation-history\"===u?(a(!0),void i(\"initial\")):void a(!1);o.onNewConversation()},[u,K,a,i,o]);return n.createElement(n.Fragment,null,n.createElement(\"form\",{className:\"DocSearch-Form\",onSubmit:function(e){e.preventDefault()},onReset:z},o.isAskAiActive?n.createElement(n.Fragment,null,n.createElement(\"button\",{type:\"button\",tabIndex:0,className:\"DocSearch-Action DocSearch-AskAi-Return\",title:g,\"aria-label\":E,onClick:G},n.createElement(Hu,null))):n.createElement(n.Fragment,null,V&&n.createElement(\"div\",{className:\"DocSearch-LoadingIndicator\"},n.createElement(Sn,null)),!V&&n.createElement(\"label\",A({className:\"DocSearch-MagnifierLabel\"},o.getLabelProps()),n.createElement(q,null),n.createElement(\"span\",{className:\"DocSearch-VisuallyHiddenForAccessibility\"},D))),J&&n.createElement(Qu,{heading:J,shimmer:U}),n.createElement(\"input\",A({className:\"DocSearch-Input\",ref:o.inputRef},Q,{placeholder:W,hidden:Boolean(J)})),n.createElement(\"div\",{className:\"DocSearch-Actions\"},n.createElement(\"button\",{className:\"DocSearch-Clear\",type:\"reset\",\"aria-label\":d,hidden:!o.state.query,tabIndex:o.state.query?0:-1,\"aria-hidden\":o.state.query?\"false\":\"true\"},c),o.state.query&&n.createElement(\"div\",{className:\"DocSearch-Divider\"}),U&&n.createElement(n.Fragment,null,n.createElement(\"button\",{type:\"button\",className:\"DocSearch-Action DocSearch-StopStreaming\",onClick:o.onStopAskAiStreaming},n.createElement(Mn,null)),n.createElement(\"div\",{className:\"DocSearch-Divider\"})),H&&n.createElement(n.Fragment,null,n.createElement(Ju,null,n.createElement(Ju.Trigger,{className:\"DocSearch-Action\"},n.createElement($n,null)),n.createElement(Ju.Content,null,n.createElement(Ju.Item,{onClick:o.onNewConversation},n.createElement(Un,null),O),R&&n.createElement(Ju.Item,{onClick:o.onViewConversationHistory},n.createElement(qn,null),P))),n.createElement(\"div\",{className:\"DocSearch-Divider\"})),n.createElement(\"button\",{type:\"button\",title:p,className:\"DocSearch-Action DocSearch-Close\",\"aria-label\":v,onClick:o.onClose},n.createElement(In,null)))))}function Xu(){if(\"undefined\"!=typeof window&&window.localStorage){var e=[];for(var t in window.localStorage)if(t.includes(\"__DOCSEARCH_\")){var n=window.localStorage[t];e.push({key:t,size:n.length+t.length})}e.sort(function(e,t){return t.size-e.size});for(var r=Math.ceil(e.length/2),u=0;u4194304&&Xu()}}function ta(e){return!1===function(){if(\"undefined\"==typeof window||!(\"localStorage\"in window))return!1;var e=\"__TEST_KEY__\";try{return window.localStorage.setItem(e,\"\"),window.localStorage.removeItem(e),!0}catch(e){return!1}}()?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){!function(e,t){try{window.localStorage.setItem(e,JSON.stringify(t))}catch(n){if(n instanceof DOMException&&\"QuotaExceededError\"===n.name)try{Xu(),window.localStorage.setItem(e,JSON.stringify(t))}catch(e){}}}(e,t)},getItem:function(){var t=window.localStorage.getItem(e);if(null===t)return[];try{var n=JSON.parse(t);return Array.isArray(n)?n:[]}catch(t){return window.localStorage.removeItem(e),[]}}}}var na=[\"_highlightResult\",\"_snippetResult\"];function ra(e){var t=e.key,n=e.limit,r=void 0===n?5:n,u=ta(t),a=u.getItem().slice(0,r);return{add:function(e){var t=e;t._highlightResult,t._snippetResult;var n=x(t,na),i=a.findIndex(function(e){return e.objectID===n.objectID});i>-1&&a.splice(i,1),a.unshift(n),a=a.slice(0,r),u.setItem(a)},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getAll:function(){return a}}}function ua(e){var t=e.key,n=e.limit,r=void 0===n?5:n,u=ta(t),a=u.getItem().slice(0,r);return{add:function(e){var t=e.objectID,n=e.query,i=a.findIndex(function(e){return e.objectID===t||e.query===n});i>-1?a[i]=e:(a.unshift(e),a=a.slice(0,r)),u.setItem(a)},addFeedback:function(e,t){var n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(n&&n.messages){var r=n.messages.find(function(t){return t.id===e});r&&(r.feedback=t,u.setItem(a))}},getOne:function(e){var t,n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});return null==n||null===(t=n.messages)||void 0===t?void 0:t.find(function(t){return t.id===e})},getAll:function(){return a},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getConversation:function(e){var t=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(t&&t.messages)return t}}}var aa,ia=\"vercel.ai.error\",oa=Symbol.for(ia),sa=class e extends Error{constructor({name:e,message:t,cause:n}){super(t),this[aa]=!0,this.name=e,this.cause=n}static isInstance(t){return e.hasMarker(t,ia)}static hasMarker(e,t){const n=Symbol.for(t);return null!=e&&\"object\"==typeof e&&n in e&&\"boolean\"==typeof e[n]&&!0===e[n]}};aa=oa;var ca=sa;function la(e){return null==e?\"unknown error\":\"string\"==typeof e?e:e instanceof Error?e.message:JSON.stringify(e)}var da,fa=\"AI_InvalidArgumentError\",pa=`vercel.ai.error.${fa}`,ha=Symbol.for(pa),va=class extends ca{constructor({message:e,cause:t,argument:n}){super({name:fa,message:e,cause:t}),this[da]=!0,this.argument=n}static isInstance(e){return ca.hasMarker(e,pa)}};da=ha;var ma,Da=\"AI_JSONParseError\",ya=`vercel.ai.error.${Da}`,ga=Symbol.for(ya),Fa=class extends ca{constructor({text:e,cause:t}){super({name:Da,message:`JSON parsing failed: Text: ${e}.\\nError message: ${la(t)}`,cause:t}),this[ma]=!0,this.text=e}static isInstance(e){return ca.hasMarker(e,ya)}};ma=ga;var Ea,ba=\"AI_TypeValidationError\",Aa=`vercel.ai.error.${ba}`,Ca=Symbol.for(Aa);Ea=Ca;var ka=class e extends ca{constructor({value:e,cause:t}){super({name:ba,message:`Type validation failed: Value: ${JSON.stringify(e)}.\\nError message: ${la(t)}`,cause:t}),this[Ea]=!0,this.value=e}static isInstance(e){return ca.hasMarker(e,Aa)}static wrap({value:t,cause:n}){return e.isInstance(n)&&n.value===t?n:new e({value:t,cause:n})}},wa=function(){function e(t,n){var r;return D(this,e),(r=m(this,e,[t])).name=\"ParseError\",r.type=n.type,r.field=n.field,r.value=n.value,r.line=n.line,r}return k(e,R(Error)),F(e)}();function _a(e){}function Sa(e){if(\"function\"==typeof e)throw new TypeError(\"`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?\");var t,n=e.onEvent,r=void 0===n?_a:n,u=e.onError,a=void 0===u?_a:u,i=e.onRetry,o=void 0===i?_a:i,s=e.onComment,c=\"\",l=!0,d=\"\",f=\"\";function p(e){if(\"\"===e)return d.length>0&&r({id:t,event:f||void 0,data:d.endsWith(\"\\n\")?d.slice(0,-1):d}),t=void 0,d=\"\",void(f=\"\");if(e.startsWith(\":\"))s&&s(e.slice(e.startsWith(\": \")?2:1));else{var n=e.indexOf(\":\");if(-1===n)h(e,\"\",e);else{var u=e.slice(0,n),a=\" \"===e[n+1]?2:1;h(u,e.slice(n+a),e)}}}function h(e,n,r){switch(e){case\"event\":f=n;break;case\"data\":d=\"\".concat(d).concat(n,\"\\n\");break;case\"id\":t=n.includes(\"\\0\")?void 0:n;break;case\"retry\":/^\\d+$/.test(n)?o(parseInt(n,10)):a(new wa('Invalid `retry` value: \"'.concat(n,'\"'),{type:\"invalid-retry\",value:n,line:r}));break;default:a(new wa('Unknown field \"'.concat(e.length>20?\"\".concat(e.slice(0,20),\"…\"):e,'\"'),{type:\"unknown-field\",field:e,value:n,line:r}))}}return{feed:function(e){var t,n=l?e.replace(/^\\xEF\\xBB\\xBF/,\"\"):e,r=function(e){for(var t=[],n=\"\",r=0;r0&&void 0!==arguments[0]?arguments[0]:{}).consume&&p(c),l=!0,t=void 0,d=\"\",f=\"\",c=\"\"}}}var xa=function(){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=n.onError,u=n.onRetry,a=n.onComment;return D(this,e),m(this,e,[{start:function(e){t=Sa({onEvent:function(t){e.enqueue(t)},onError:function(t){\"terminate\"===r?e.error(t):\"function\"==typeof r&&r(t)},onRetry:u,onComment:a})},transform:function(e){t.feed(e)}}])}return k(e,R(TransformStream)),F(e)}();function Ba(e,t,n){var r;function u(n,r){var u,a,o;for(var s in Object.defineProperty(n,\"_zod\",{value:null!==(u=n._zod)&&void 0!==u?u:{},enumerable:!1}),null!==(a=(o=n._zod).traits)&&void 0!==a||(o.traits=new Set),n._zod.traits.add(e),t(n,r),i.prototype)s in n||Object.defineProperty(n,s,{value:i.prototype[s].bind(n)});n._zod.constr=i,n._zod.def=r}var a=function(e){function t(){return D(this,t),m(this,t,arguments)}return k(t,e),F(t)}(null!==(r=null==n?void 0:n.Parent)&&void 0!==r?r:Object);function i(e){var t,r,i=null!=n&&n.Parent?new a:this;u(i,e),null!==(t=(r=i._zod).deferred)&&void 0!==t||(r.deferred=[]);var o,s=E(i._zod.deferred);try{for(s.s();!(o=s.n()).done;){(0,o.value)()}}catch(e){s.e(e)}finally{s.f()}return i}return Object.defineProperty(a,\"name\",{value:e}),Object.defineProperty(i,\"init\",{value:u}),Object.defineProperty(i,Symbol.hasInstance,{value:function(t){var r;return!!(null!=n&&n.Parent&&t instanceof n.Parent)||(null==t||null===(r=t._zod)||void 0===r||null===(r=r.traits)||void 0===r?void 0:r.has(e))}}),Object.defineProperty(i,\"name\",{value:e}),i}var Ia=function(){function e(){return D(this,e),m(this,e,[\"Encountered Promise during synchronous parse. Use .parseAsync() instead.\"])}return k(e,R(Error)),F(e)}(),Oa=function(){function e(t){var n;return D(this,e),(n=m(this,e,[\"Encountered unidirectional transform during encode: \".concat(t)])).name=\"ZodEncodeError\",n}return k(e,R(Error)),F(e)}(),Ta={};function Pa(e){return Ta}function ja(e){var t=Object.values(e).filter(function(e){return\"number\"==typeof e}),n=Object.entries(e).filter(function(e){var n=T(e,2),r=n[0];return n[1],-1===t.indexOf(+r)}).map(function(e){var t=T(e,2);return t[0],t[1]});return n}function Na(e,t){return\"bigint\"==typeof t?t.toString():t}function za(e){return{get value(){var t=e();return Object.defineProperty(this,\"value\",{value:t}),t}}}function Ra(e){return null==e}function Ma(e){var t=e.startsWith(\"^\")?1:0,n=e.endsWith(\"$\")?e.length-1:e.length;return e.slice(t,n)}var Za=Symbol(\"evaluating\");function La(e,t,n){var r=void 0;Object.defineProperty(e,t,{get:function(){if(r!==Za)return void 0===r&&(r=Za,r=n()),r},set:function(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function $a(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function qa(){for(var e={},t=arguments.length,n=new Array(t),r=0;r1&&void 0!==arguments[1]?arguments[1]:0;if(!0===e.aborted)return!0;for(var n=t;nu&&(t.inclusive?r.minimum=t.value:r.exclusiveMinimum=t.value)}),e._zod.check=function(r){(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:\"too_small\",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),no=Ba(\"$ZodCheckMultipleOf\",function(e,t){Yi.init(e,t),e._zod.onattach.push(function(e){var n,r;null!==(n=(r=e._zod.bag).multipleOf)&&void 0!==n||(r.multipleOf=t.value)}),e._zod.check=function(n){if(N(n.value)!==N(t.value))throw new Error(\"Cannot mix number and bigint in multiple_of check.\");(\"bigint\"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){var n=(e.toString().split(\".\")[1]||\"\").length,r=t.toString(),u=(r.split(\".\")[1]||\"\").length;if(0===u&&/\\d?e-\\d?/.test(r)){var a=r.match(/\\d?e-(\\d?)/);null!=a&&a[1]&&(u=Number.parseInt(a[1]))}var i=n>u?n:u;return Number.parseInt(e.toFixed(i).replace(\".\",\"\"))%Number.parseInt(t.toFixed(i).replace(\".\",\"\"))/Math.pow(10,i)}(n.value,t.value))||n.issues.push({origin:N(n.value),code:\"not_multiple_of\",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),ro=Ba(\"$ZodCheckNumberFormat\",function(e,t){var n;Yi.init(e,t),t.format=t.format||\"float64\";var r=null===(n=t.format)||void 0===n?void 0:n.includes(\"int\"),u=r?\"int\":\"number\",a=T(ei[t.format],2),i=a[0],o=a[1];e._zod.onattach.push(function(e){var n=e._zod.bag;n.format=t.format,n.minimum=i,n.maximum=o,r&&(n.pattern=Hi)}),e._zod.check=function(n){var a=n.value;if(r){if(!Number.isInteger(a))return void n.issues.push({expected:u,format:t.format,code:\"invalid_type\",continue:!1,input:a,inst:e});if(!Number.isSafeInteger(a))return void(a>0?n.issues.push({input:a,code:\"too_big\",maximum:Number.MAX_SAFE_INTEGER,note:\"Integers must be within the safe integer range.\",inst:e,origin:u,continue:!t.abort}):n.issues.push({input:a,code:\"too_small\",minimum:Number.MIN_SAFE_INTEGER,note:\"Integers must be within the safe integer range.\",inst:e,origin:u,continue:!t.abort}))}ao&&n.issues.push({origin:\"number\",input:a,code:\"too_big\",maximum:o,inst:e})}}),uo=Ba(\"$ZodCheckMaxSize\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;r.size>=t.minimum||n.issues.push({origin:ai(r),code:\"too_small\",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),io=Ba(\"$ZodCheckSizeEquals\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.size,n.maximum=t.size,n.size=t.size}),e._zod.check=function(n){var r=n.value,u=r.size;if(u!==t.size){var a=u>t.size;n.issues.push(S(S({origin:ai(r)},a?{code:\"too_big\",maximum:t.size}:{code:\"too_small\",minimum:t.size}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),oo=Ba(\"$ZodCheckMaxLength\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;if(!(r.length>=t.minimum)){var u=ii(r);n.issues.push({origin:u,code:\"too_small\",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}}),co=Ba(\"$ZodCheckLengthEquals\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=function(n){var r=n.value,u=r.length;if(u!==t.length){var a=ii(r),i=u>t.length;n.issues.push(S(S({origin:a},i?{code:\"too_big\",maximum:t.length}:{code:\"too_small\",minimum:t.length}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),lo=Ba(\"$ZodCheckStringFormat\",function(e,t){var n,r,u,a;Yi.init(e,t),e._zod.onattach.push(function(e){var n,r=e._zod.bag;(r.format=t.format,t.pattern)&&(null!==(n=r.patterns)&&void 0!==n||(r.patterns=new Set),r.patterns.add(t.pattern))}),t.pattern?null!==(n=(u=e._zod).check)&&void 0!==n||(u.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push(S(S({origin:\"string\",code:\"invalid_format\",format:t.format,input:n.value},t.pattern?{pattern:t.pattern.toString()}:{}),{},{inst:e,continue:!t.abort}))}):null!==(r=(a=e._zod).check)&&void 0!==r||(a.check=function(){})}),fo=Ba(\"$ZodCheckRegex\",function(e,t){lo.init(e,t),e._zod.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"regex\",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),po=Ba(\"$ZodCheckLowerCase\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Qi),lo.init(e,t)}),ho=Ba(\"$ZodCheckUpperCase\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Gi),lo.init(e,t)}),vo=Ba(\"$ZodCheckIncludes\",function(e,t){Yi.init(e,t);var n=Ga(t.includes),r=new RegExp(\"number\"==typeof t.position?\"^.{\".concat(t.position,\"}\").concat(n):n);t.pattern=r,e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.includes(t.includes,t.position)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"includes\",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),mo=Ba(\"$ZodCheckStartsWith\",function(e,t){var n;Yi.init(e,t);var r=new RegExp(\"^\".concat(Ga(t.prefix),\".*\"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.startsWith(t.prefix)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"starts_with\",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Do=Ba(\"$ZodCheckEndsWith\",function(e,t){var n;Yi.init(e,t);var r=new RegExp(\".*\".concat(Ga(t.suffix),\"$\"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.endsWith(t.suffix)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"ends_with\",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});function yo(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,P(ni(n,e.issues)))}var go=Ba(\"$ZodCheckProperty\",function(e,t){Yi.init(e,t),e._zod.check=function(e){var n=t.schema._zod.run({value:e.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(function(n){return yo(n,e,t.property)});yo(n,e,t.property)}}),Fo=Ba(\"$ZodCheckMimeType\",function(e,t){Yi.init(e,t);var n=new Set(t.mime);e._zod.onattach.push(function(e){e._zod.bag.mime=t.mime}),e._zod.check=function(r){n.has(r.value.type)||r.issues.push({code:\"invalid_value\",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Eo=Ba(\"$ZodCheckOverwrite\",function(e,t){Yi.init(e,t),e._zod.check=function(e){e.value=t.tx(e.value)}}),bo=function(){return F(function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];D(this,e),this.content=[],this.indent=0,this&&(this.args=t)},[{key:\"indented\",value:function(e){this.indent+=1,e(this),this.indent-=1}},{key:\"write\",value:function(e){var t=this;if(\"function\"==typeof e)return e(this,{execution:\"sync\"}),void e(this,{execution:\"async\"});var n,r=e.split(\"\\n\").filter(function(e){return e}),u=Math.min.apply(Math,P(r.map(function(e){return e.length-e.trimStart().length}))),a=r.map(function(e){return e.slice(u)}).map(function(e){return\" \".repeat(2*t.indent)+e}),i=E(a);try{for(i.s();!(n=i.n()).done;){var o=n.value;this.content.push(o)}}catch(e){i.e(e)}finally{i.f()}}},{key:\"compile\",value:function(){var e,t=Function,n=null==this?void 0:this.args,r=P((null!==(e=null==this?void 0:this.content)&&void 0!==e?e:[\"\"]).map(function(e){return\" \".concat(e)}));return y(t,P(n).concat([r.join(\"\\n\")]))}}])}(),Ao={major:4,minor:1,patch:12},Co=Ba(\"$ZodType\",function(e,t){var n,r;null!=e||(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Ao;var u=P(null!==(n=e._zod.def.checks)&&void 0!==n?n:[]);e._zod.traits.has(\"$ZodCheck\")&&u.unshift(e);var a,i=E(u);try{for(i.s();!(a=i.n()).done;){var o,s=E(a.value._zod.onattach);try{for(s.s();!(o=s.n()).done;){(0,o.value)(e)}}catch(e){s.e(e)}finally{s.f()}}}catch(e){i.e(e)}finally{i.f()}if(0===u.length){var c,l;null!==(c=(r=e._zod).deferred)&&void 0!==c||(r.deferred=[]),null===(l=e._zod.deferred)||void 0===l||l.push(function(){e._zod.run=e._zod.parse})}else{var d=function(e,t,n){var r,u,a=ti(e),i=E(t);try{var o=function(){var t=u.value;if(t._zod.def.when){if(!t._zod.def.when(e))return 0}else if(a)return 0;var i=e.issues.length,o=t._zod.check(e);if(o instanceof Promise&&!1===(null==n?void 0:n.async))throw new Ia;if(r||o instanceof Promise)r=(null!=r?r:Promise.resolve()).then(v(B().m(function t(){return B().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,o;case 1:if(e.issues.length!==i){t.n=2;break}return t.a(2);case 2:a||(a=ti(e,i));case 3:return t.a(2)}},t)})));else{if(e.issues.length===i)return 0;a||(a=ti(e,i))}};for(i.s();!(u=i.n()).done;)o()}catch(e){i.e(e)}finally{i.f()}return r?r.then(function(){return e}):e},f=function(t,n,r){if(ti(t))return t.aborted=!0,t;var a=d(n,u,r);if(a instanceof Promise){if(!1===r.async)throw new Ia;return a.then(function(t){return e._zod.parse(t,r)})}return e._zod.parse(a,r)};e._zod.run=function(t,n){if(n.skipChecks)return e._zod.parse(t,n);if(\"backward\"===n.direction){var r=e._zod.parse({value:t.value,issues:[]},S(S({},n),{},{skipChecks:!0}));return r instanceof Promise?r.then(function(e){return f(e,t,n)}):f(r,t,n)}var a=e._zod.parse(t,n);if(a instanceof Promise){if(!1===n.async)throw new Ia;return a.then(function(e){return d(e,u,n)})}return d(a,u,n)}}e[\"~standard\"]={validate:function(t){try{var n,r=hi(e,t);return r.success?{value:r.data}:{issues:null===(n=r.error)||void 0===n?void 0:n.issues}}catch(n){return mi(e,t).then(function(e){var t;return e.success?{value:e.data}:{issues:null===(t=e.error)||void 0===t?void 0:t.issues}})}},vendor:\"zod\",version:1}}),ko=Ba(\"$ZodString\",function(e,t){var n,r,u;Co.init(e,t),e._zod.pattern=null!==(n=P(null!==(r=null==e||null===(u=e._zod.bag)||void 0===u?void 0:u.patterns)&&void 0!==r?r:[]).pop())&&void 0!==n?n:function(e){var t,n,r=e?\"[\\\\s\\\\S]{\".concat(null!==(t=null==e?void 0:e.minimum)&&void 0!==t?t:0,\",\").concat(null!==(n=null==e?void 0:e.maximum)&&void 0!==n?n:\"\",\"}\"):\"[\\\\s\\\\S]*\";return new RegExp(\"^\".concat(r,\"$\"))}(e._zod.bag),e._zod.parse=function(n,r){if(t.coerce)try{n.value=String(n.value)}catch(r){}return\"string\"==typeof n.value||n.issues.push({expected:\"string\",code:\"invalid_type\",input:n.value,inst:e}),n}}),wo=Ba(\"$ZodStringFormat\",function(e,t){lo.init(e,t),ko.init(e,t)}),_o=Ba(\"$ZodGUID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Oi),wo.init(e,t)}),So=Ba(\"$ZodUUID\",function(e,t){var n;if(t.version){var r,u={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===u)throw new Error('Invalid UUID version: \"'.concat(t.version,'\"'));null!==(r=t.pattern)&&void 0!==r||(t.pattern=Ti(u))}else null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ti());wo.init(e,t)}),xo=Ba(\"$ZodEmail\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Pi),wo.init(e,t)}),Bo=Ba(\"$ZodURL\",function(e,t){wo.init(e,t),e._zod.check=function(n){try{var r=n.value.trim(),u=new URL(r);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(u.hostname)||n.issues.push({code:\"invalid_format\",format:\"url\",note:\"Invalid hostname\",pattern:Li.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(u.protocol.endsWith(\":\")?u.protocol.slice(0,-1):u.protocol)||n.issues.push({code:\"invalid_format\",format:\"url\",note:\"Invalid protocol\",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=u.href:n.value=r)}catch(r){n.issues.push({code:\"invalid_format\",format:\"url\",input:n.value,inst:e,continue:!t.abort})}}}),Io=Ba(\"$ZodEmoji\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp(\"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\",\"u\")),wo.init(e,t)}),Oo=Ba(\"$ZodNanoID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Bi),wo.init(e,t)}),To=Ba(\"$ZodCUID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ki),wo.init(e,t)}),Po=Ba(\"$ZodCUID2\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=wi),wo.init(e,t)}),jo=Ba(\"$ZodULID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=_i),wo.init(e,t)}),No=Ba(\"$ZodXID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Si),wo.init(e,t)}),zo=Ba(\"$ZodKSUID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=xi),wo.init(e,t)}),Ro=Ba(\"$ZodISODateTime\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=function(e){var t=Vi({precision:e.precision}),n=[\"Z\"];e.local&&n.push(\"\"),e.offset&&n.push(\"([+-](?:[01]\\\\d|2[0-3]):[0-5]\\\\d)\");var r=\"\".concat(t,\"(?:\").concat(n.join(\"|\"),\")\");return new RegExp(\"^\".concat(qi,\"T(?:\").concat(r,\")$\"))}(t)),wo.init(e,t)}),Mo=Ba(\"$ZodISODate\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ui),wo.init(e,t)}),Zo=Ba(\"$ZodISOTime\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp(\"^\".concat(Vi(t),\"$\"))),wo.init(e,t)}),Lo=Ba(\"$ZodISODuration\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ii),wo.init(e,t)}),$o=Ba(\"$ZodIPv4\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ji),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format=\"ipv4\"})}),qo=Ba(\"$ZodIPv6\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ni),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format=\"ipv6\"}),e._zod.check=function(n){try{new URL(\"http://[\".concat(n.value,\"]\"))}catch(r){n.issues.push({code:\"invalid_format\",format:\"ipv6\",input:n.value,inst:e,continue:!t.abort})}}}),Uo=Ba(\"$ZodCIDRv4\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=zi),wo.init(e,t)}),Vo=Ba(\"$ZodCIDRv6\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ri),wo.init(e,t),e._zod.check=function(n){var r=n.value.split(\"/\");try{if(2!==r.length)throw new Error;var u=T(r,2),a=u[0],i=u[1];if(!i)throw new Error;var o=Number(i);if(\"\".concat(o)!==i)throw new Error;if(o<0||o>128)throw new Error;new URL(\"http://[\".concat(a,\"]\"))}catch(r){n.issues.push({code:\"invalid_format\",format:\"cidrv6\",input:n.value,inst:e,continue:!t.abort})}}});function Ho(e){if(\"\"===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch(e){return!1}}var Ko=Ba(\"$ZodBase64\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Mi),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding=\"base64\"}),e._zod.check=function(n){Ho(n.value)||n.issues.push({code:\"invalid_format\",format:\"base64\",input:n.value,inst:e,continue:!t.abort})}});var Wo=Ba(\"$ZodBase64URL\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Zi),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding=\"base64url\"}),e._zod.check=function(n){(function(e){if(!Zi.test(e))return!1;var t=e.replace(/[-_]/g,function(e){return\"-\"===e?\"+\":\"/\"});return Ho(t.padEnd(4*Math.ceil(t.length/4),\"=\"))})(n.value)||n.issues.push({code:\"invalid_format\",format:\"base64url\",input:n.value,inst:e,continue:!t.abort})}}),Jo=Ba(\"$ZodE164\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=$i),wo.init(e,t)});var Qo=Ba(\"$ZodJWT\",function(e,t){wo.init(e,t),e._zod.check=function(n){(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;try{var n=e.split(\".\");if(3!==n.length)return!1;var r=T(n,1)[0];if(!r)return!1;var u=JSON.parse(atob(r));return!(\"typ\"in u&&\"JWT\"!==(null==u?void 0:u.typ)||!u.alg||t&&(!(\"alg\"in u)||u.alg!==t))}catch(e){return!1}})(n.value,t.alg)||n.issues.push({code:\"invalid_format\",format:\"jwt\",input:n.value,inst:e,continue:!t.abort})}}),Go=Ba(\"$ZodNumber\",function(e,t){var n;Co.init(e,t),e._zod.pattern=null!==(n=e._zod.bag.pattern)&&void 0!==n?n:Ki,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Number(n.value)}catch(e){}var u=n.value;if(\"number\"==typeof u&&!Number.isNaN(u)&&Number.isFinite(u))return n;var a=\"number\"==typeof u?Number.isNaN(u)?\"NaN\":Number.isFinite(u)?void 0:\"Infinity\":void 0;return n.issues.push(S({expected:\"number\",code:\"invalid_type\",input:u,inst:e},a?{received:a}:{})),n}}),Yo=Ba(\"$ZodNumber\",function(e,t){ro.init(e,t),Go.init(e,t)}),Xo=Ba(\"$ZodBoolean\",function(e,t){Co.init(e,t),e._zod.pattern=Wi,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}var u=n.value;return\"boolean\"==typeof u||n.issues.push({expected:\"boolean\",code:\"invalid_type\",input:u,inst:e}),n}}),es=Ba(\"$ZodNull\",function(e,t){Co.init(e,t),e._zod.pattern=Ji,e._zod.values=new Set([null]),e._zod.parse=function(t,n){var r=t.value;return null===r||t.issues.push({expected:\"null\",code:\"invalid_type\",input:r,inst:e}),t}}),ts=Ba(\"$ZodUnknown\",function(e,t){Co.init(e,t),e._zod.parse=function(e){return e}}),ns=Ba(\"$ZodNever\",function(e,t){Co.init(e,t),e._zod.parse=function(t,n){return t.issues.push({expected:\"never\",code:\"invalid_type\",input:t.value,inst:e}),t}});function rs(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,P(ni(n,e.issues)));t.value[n]=e.value}var us=Ba(\"$ZodArray\",function(e,t){Co.init(e,t),e._zod.parse=function(n,r){var u=n.value;if(!Array.isArray(u))return n.issues.push({expected:\"array\",code:\"invalid_type\",input:u,inst:e}),n;n.value=Array(u.length);for(var a=[],i=function(e){var i=u[e],o=t.element._zod.run({value:i,issues:[]},r);o instanceof Promise?a.push(o.then(function(t){return rs(t,n,e)})):rs(o,n,e)},o=0;o ({\\n ...iss,\\n path: iss.path ? [\").concat(p,\", ...iss.path] : [\").concat(p,\"]\\n })));\\n }\\n \\n \\n if (\").concat(f,\".value === undefined) {\\n if (\").concat(p,\" in input) {\\n newResult[\").concat(p,\"] = undefined;\\n }\\n } else {\\n newResult[\").concat(p,\"] = \").concat(f,\".value;\\n }\\n \\n \"))}}catch(e){l.e(e)}finally{l.f()}t.write(\"payload.value = newResult;\"),t.write(\"return payload;\");var h=t.compile();return function(t,n){return h(e,t,n)}}(t.shape)),l=n(l,d),c?os([],f,l,d,r,e):l):u(l,d):(l.issues.push({expected:\"object\",code:\"invalid_type\",input:f,inst:e}),l)}});function ls(e,t,n,r){var u,a=E(e);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(0===i.issues.length)return t.value=i.value,t}}catch(e){a.e(e)}finally{a.f()}var o=e.filter(function(e){return!ti(e)});return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:\"invalid_union\",input:t.value,inst:n,errors:e.map(function(e){return e.issues.map(function(e){return ui(e,r,Pa())})})}),t)}var ds=Ba(\"$ZodUnion\",function(e,t){Co.init(e,t),La(e._zod,\"optin\",function(){return t.options.some(function(e){return\"optional\"===e._zod.optin})?\"optional\":void 0}),La(e._zod,\"optout\",function(){return t.options.some(function(e){return\"optional\"===e._zod.optout})?\"optional\":void 0}),La(e._zod,\"values\",function(){if(t.options.every(function(e){return e._zod.values}))return new Set(t.options.flatMap(function(e){return Array.from(e._zod.values)}))}),La(e._zod,\"pattern\",function(){if(t.options.every(function(e){return e._zod.pattern})){var e=t.options.map(function(e){return e._zod.pattern});return new RegExp(\"^(\".concat(e.map(function(e){return Ma(e.source)}).join(\"|\"),\")$\"))}});var n=1===t.options.length,r=t.options[0]._zod.run;e._zod.parse=function(u,a){if(n)return r(u,a);var i,o=!1,s=[],c=E(t.options);try{for(c.s();!(i=c.n()).done;){var l=i.value._zod.run({value:u.value,issues:[]},a);if(l instanceof Promise)s.push(l),o=!0;else{if(0===l.issues.length)return l;s.push(l)}}}catch(e){c.e(e)}finally{c.f()}return o?Promise.all(s).then(function(t){return ls(t,u,e,a)}):ls(s,u,e,a)}}),fs=Ba(\"$ZodDiscriminatedUnion\",function(e,t){ds.init(e,t);var n=e._zod.parse;La(e._zod,\"propValues\",function(){var e,n={},r=E(t.options);try{for(r.s();!(e=r.n()).done;){var u=e.value,a=u._zod.propValues;if(!a||0===Object.keys(a).length)throw new Error('Invalid discriminated union option at index \"'.concat(t.options.indexOf(u),'\"'));for(var i=0,o=Object.entries(a);i0&&n.issues.push({code:\"unrecognized_keys\",input:u,inst:e,keys:s})}else{n.value={};var f,p=E(Reflect.ownKeys(u));try{var h=function(){var i=f.value;if(\"__proto__\"===i)return 0;var o=t.keyType._zod.run({value:i,issues:[]},r);if(o instanceof Promise)throw new Error(\"Async schemas not supported in object keys currently\");if(o.issues.length)return n.issues.push({code:\"invalid_key\",origin:\"record\",issues:o.issues.map(function(e){return ui(e,r,Pa())}),input:i,path:[i],inst:e}),n.value[o.value]=o.value,0;var s=t.valueType._zod.run({value:u[i],issues:[]},r);if(s instanceof Promise)a.push(s.then(function(e){var t;e.issues.length&&(t=n.issues).push.apply(t,P(ni(i,e.issues)));n.value[o.value]=e.value}));else{var c;if(s.issues.length)(c=n.issues).push.apply(c,P(ni(i,s.issues)));n.value[o.value]=s.value}};for(p.s();!(f=p.n()).done;)h()}catch(e){p.e(e)}finally{p.f()}}return a.length?Promise.all(a).then(function(){return n}):n}}),Ds=Ba(\"$ZodEnum\",function(e,t){Co.init(e,t);var n=ja(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(\"^(\".concat(n.filter(function(e){return Qa.has(N(e))}).map(function(e){return\"string\"==typeof e?Ga(e):e.toString()}).join(\"|\"),\")$\")),e._zod.parse=function(t,u){var a=t.value;return r.has(a)||t.issues.push({code:\"invalid_value\",values:n,input:a,inst:e}),t}}),ys=Ba(\"$ZodLiteral\",function(e,t){if(Co.init(e,t),0===t.values.length)throw new Error(\"Cannot create literal schema with no valid values\");e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(\"^(\".concat(t.values.map(function(e){return\"string\"==typeof e?Ga(e):e?Ga(e.toString()):String(e)}).join(\"|\"),\")$\")),e._zod.parse=function(n,r){var u=n.value;return e._zod.values.has(u)||n.issues.push({code:\"invalid_value\",values:t.values,input:u,inst:e}),n}}),gs=Ba(\"$ZodTransform\",function(e,t){Co.init(e,t),e._zod.parse=function(n,r){if(\"backward\"===r.direction)throw new Oa(e.constructor.name);var u=t.transform(n.value,n);if(r.async)return(u instanceof Promise?u:Promise.resolve(u)).then(function(e){return n.value=e,n});if(u instanceof Promise)throw new Ia;return n.value=u,n}});function Fs(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}var Es=Ba(\"$ZodOptional\",function(e,t){Co.init(e,t),e._zod.optin=\"optional\",e._zod.optout=\"optional\",La(e._zod,\"values\",function(){return t.innerType._zod.values?new Set([].concat(P(t.innerType._zod.values),[void 0])):void 0}),La(e._zod,\"pattern\",function(){var e=t.innerType._zod.pattern;return e?new RegExp(\"^(\".concat(Ma(e.source),\")?$\")):void 0}),e._zod.parse=function(e,n){if(\"optional\"===t.innerType._zod.optin){var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(t){return Fs(t,e.value)}):Fs(r,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}}),bs=Ba(\"$ZodNullable\",function(e,t){Co.init(e,t),La(e._zod,\"optin\",function(){return t.innerType._zod.optin}),La(e._zod,\"optout\",function(){return t.innerType._zod.optout}),La(e._zod,\"pattern\",function(){var e=t.innerType._zod.pattern;return e?new RegExp(\"^(\".concat(Ma(e.source),\"|null)$\")):void 0}),La(e._zod,\"values\",function(){return t.innerType._zod.values?new Set([].concat(P(t.innerType._zod.values),[null])):void 0}),e._zod.parse=function(e,n){return null===e.value?e:t.innerType._zod.run(e,n)}}),As=Ba(\"$ZodDefault\",function(e,t){Co.init(e,t),e._zod.optin=\"optional\",La(e._zod,\"values\",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if(\"backward\"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(e){return Cs(e,t)}):Cs(r,t)}});function Cs(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}var ks=Ba(\"$ZodPrefault\",function(e,t){Co.init(e,t),e._zod.optin=\"optional\",La(e._zod,\"values\",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){return\"backward\"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n)}}),ws=Ba(\"$ZodNonOptional\",function(e,t){Co.init(e,t),La(e._zod,\"values\",function(){var e=t.innerType._zod.values;return e?new Set(P(e).filter(function(e){return void 0!==e})):void 0}),e._zod.parse=function(n,r){var u=t.innerType._zod.run(n,r);return u instanceof Promise?u.then(function(t){return _s(t,e)}):_s(u,e)}});function _s(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:\"invalid_type\",expected:\"nonoptional\",input:e.value,inst:t}),e}var Ss=Ba(\"$ZodCatch\",function(e,t){Co.init(e,t),La(e._zod,\"optin\",function(){return t.innerType._zod.optin}),La(e._zod,\"optout\",function(){return t.innerType._zod.optout}),La(e._zod,\"values\",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if(\"backward\"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(r){return e.value=r.value,r.issues.length&&(e.value=t.catchValue(S(S({},e),{},{error:{issues:r.issues.map(function(e){return ui(e,n,Pa())})},input:e.value})),e.issues=[]),e}):(e.value=r.value,r.issues.length&&(e.value=t.catchValue(S(S({},e),{},{error:{issues:r.issues.map(function(e){return ui(e,n,Pa())})},input:e.value})),e.issues=[]),e)}}),xs=Ba(\"$ZodPipe\",function(e,t){Co.init(e,t),La(e._zod,\"values\",function(){return t.in._zod.values}),La(e._zod,\"optin\",function(){return t.in._zod.optin}),La(e._zod,\"optout\",function(){return t.out._zod.optout}),La(e._zod,\"propValues\",function(){return t.in._zod.propValues}),e._zod.parse=function(e,n){if(\"backward\"===n.direction){var r=t.out._zod.run(e,n);return r instanceof Promise?r.then(function(e){return Bs(e,t.in,n)}):Bs(r,t.in,n)}var u=t.in._zod.run(e,n);return u instanceof Promise?u.then(function(e){return Bs(e,t.out,n)}):Bs(u,t.out,n)}});function Bs(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Is=Ba(\"$ZodReadonly\",function(e,t){Co.init(e,t),La(e._zod,\"propValues\",function(){return t.innerType._zod.propValues}),La(e._zod,\"values\",function(){return t.innerType._zod.values}),La(e._zod,\"optin\",function(){return t.innerType._zod.optin}),La(e._zod,\"optout\",function(){return t.innerType._zod.optout}),e._zod.parse=function(e,n){if(\"backward\"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Os):Os(r)}});function Os(e){return e.value=Object.freeze(e.value),e}var Ts=Ba(\"$ZodLazy\",function(e,t){Co.init(e,t),La(e._zod,\"innerType\",function(){return t.getter()}),La(e._zod,\"pattern\",function(){return e._zod.innerType._zod.pattern}),La(e._zod,\"propValues\",function(){return e._zod.innerType._zod.propValues}),La(e._zod,\"optin\",function(){var t;return null!==(t=e._zod.innerType._zod.optin)&&void 0!==t?t:void 0}),La(e._zod,\"optout\",function(){var t;return null!==(t=e._zod.innerType._zod.optout)&&void 0!==t?t:void 0}),e._zod.parse=function(t,n){return e._zod.innerType._zod.run(t,n)}}),Ps=Ba(\"$ZodCustom\",function(e,t){Yi.init(e,t),Co.init(e,t),e._zod.parse=function(e,t){return e},e._zod.check=function(n){var r=n.value,u=t.fn(r);if(u instanceof Promise)return u.then(function(t){return js(t,n,r,e)});js(u,n,r,e)}});function js(e,t,n,r){if(!e){var u,a={code:\"custom\",input:n,inst:r,path:P(null!==(u=r._zod.def.path)&&void 0!==u?u:[]),continue:!r._zod.def.abort};r._zod.def.params&&(a.params=r._zod.def.params),t.issues.push(oi(a))}}var Ns=function(){return F(function e(){D(this,e),this._map=new WeakMap,this._idmap=new Map},[{key:\"add\",value:function(e){var t=arguments.length<=1?void 0:arguments[1];if(this._map.set(e,t),t&&\"object\"===N(t)&&\"id\"in t){if(this._idmap.has(t.id))throw new Error(\"ID \".concat(t.id,\" already exists in the registry\"));this._idmap.set(t.id,e)}return this}},{key:\"clear\",value:function(){return this._map=new WeakMap,this._idmap=new Map,this}},{key:\"remove\",value:function(e){var t=this._map.get(e);return t&&\"object\"===N(t)&&\"id\"in t&&this._idmap.delete(t.id),this._map.delete(e),this}},{key:\"get\",value:function(e){var t=e._zod.parent;if(t){var n,r=S({},null!==(n=this.get(t))&&void 0!==n?n:{});delete r.id;var u=S(S({},r),this._map.get(e));return Object.keys(u).length?u:void 0}return this._map.get(e)}},{key:\"has\",value:function(e){return this._map.has(e)}}])}();function zs(){return new Ns}var Rs=zs();function Ms(e,t){return new e(S({type:\"string\",format:\"guid\",check:\"string_format\",abort:!1},Xa(t)))}function Zs(e,t){return new eo(S(S({check:\"less_than\"},Xa(t)),{},{value:e,inclusive:!1}))}function Ls(e,t){return new eo(S(S({check:\"less_than\"},Xa(t)),{},{value:e,inclusive:!0}))}function $s(e,t){return new to(S(S({check:\"greater_than\"},Xa(t)),{},{value:e,inclusive:!1}))}function qs(e,t){return new to(S(S({check:\"greater_than\"},Xa(t)),{},{value:e,inclusive:!0}))}function Us(e,t){return new no(S(S({check:\"multiple_of\"},Xa(t)),{},{value:e}))}function Vs(e,t){return new oo(S(S({check:\"max_length\"},Xa(t)),{},{maximum:e}))}function Hs(e,t){return new so(S(S({check:\"min_length\"},Xa(t)),{},{minimum:e}))}function Ks(e,t){return new co(S(S({check:\"length_equals\"},Xa(t)),{},{length:e}))}function Ws(e,t){return new fo(S(S({check:\"string_format\",format:\"regex\"},Xa(t)),{},{pattern:e}))}function Js(e){return new po(S({check:\"string_format\",format:\"lowercase\"},Xa(e)))}function Qs(e){return new ho(S({check:\"string_format\",format:\"uppercase\"},Xa(e)))}function Gs(e,t){return new vo(S(S({check:\"string_format\",format:\"includes\"},Xa(t)),{},{includes:e}))}function Ys(e,t){return new mo(S(S({check:\"string_format\",format:\"starts_with\"},Xa(t)),{},{prefix:e}))}function Xs(e,t){return new Do(S(S({check:\"string_format\",format:\"ends_with\"},Xa(t)),{},{suffix:e}))}function ec(e){return new Eo({check:\"overwrite\",tx:e})}function tc(e){return ec(function(t){return t.normalize(e)})}function nc(){return ec(function(e){return e.trim()})}function rc(){return ec(function(e){return e.toLowerCase()})}function uc(){return ec(function(e){return e.toUpperCase()})}function ac(e){var t=function(e,t){var n=new Yi(S({check:\"custom\"},Xa(t)));return n._zod.check=e,n}(function(n){return n.addIssue=function(e){if(\"string\"==typeof e)n.issues.push(oi(e,n.value,t._zod.def));else{var r,u,a,i,o=e;o.fatal&&(o.continue=!1),null!==(r=o.code)&&void 0!==r||(o.code=\"custom\"),null!==(u=o.input)&&void 0!==u||(o.input=n.value),null!==(a=o.inst)&&void 0!==a||(o.inst=t),null!==(i=o.continue)&&void 0!==i||(o.continue=!t._zod.def.abort),n.issues.push(oi(o))}},e(n.value,n)});return t}var ic=function(){return F(function e(t){var n,r,u,a,i;D(this,e),this.counter=0,this.metadataRegistry=null!==(n=null==t?void 0:t.metadata)&&void 0!==n?n:Rs,this.target=null!==(r=null==t?void 0:t.target)&&void 0!==r?r:\"draft-2020-12\",this.unrepresentable=null!==(u=null==t?void 0:t.unrepresentable)&&void 0!==u?u:\"throw\",this.override=null!==(a=null==t?void 0:t.override)&&void 0!==a?a:function(){},this.io=null!==(i=null==t?void 0:t.io)&&void 0!==i?i:\"output\",this.seen=new Map},[{key:\"process\",value:function(e){var t,n,r,u,a=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{path:[],schemaPath:[]},o=e._zod.def,s=this.seen.get(e);if(s)return s.count++,i.schemaPath.includes(e)&&(s.cycle=i.path),s.schema;var c={schema:{},count:1,cycle:void 0,path:i.path};this.seen.set(e,c);var l=null===(t=(n=e._zod).toJSONSchema)||void 0===t?void 0:t.call(n);if(l)c.schema=l;else{var d=S(S({},i),{},{schemaPath:[].concat(P(i.schemaPath),[e]),path:i.path}),f=e._zod.parent;if(f)c.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{var p=c.schema;switch(o.type){case\"string\":var h=p;h.type=\"string\";var v,m=e._zod.bag,D=m.minimum,y=m.maximum,g=m.format,F=m.patterns,b=m.contentEncoding;if(\"number\"==typeof D&&(h.minLength=D),\"number\"==typeof y&&(h.maxLength=y),g)h.format=null!==(v={guid:\"uuid\",url:\"uri\",datetime:\"date-time\",json_string:\"json-string\",regex:\"\"}[g])&&void 0!==v?v:g,\"\"===h.format&&delete h.format;if(b&&(h.contentEncoding=b),F&&F.size>0){var A=P(F);1===A.length?h.pattern=A[0].source:A.length>1&&(c.schema.allOf=P(A.map(function(e){return S(S({},\"draft-7\"===a.target||\"draft-4\"===a.target||\"openapi-3.0\"===a.target?{type:\"string\"}:{}),{},{pattern:e.source})})))}break;case\"number\":var C=p,k=e._zod.bag,w=k.minimum,_=k.maximum,x=k.format,B=k.multipleOf,I=k.exclusiveMaximum,O=k.exclusiveMinimum;\"string\"==typeof x&&x.includes(\"int\")?C.type=\"integer\":C.type=\"number\",\"number\"==typeof O&&(\"draft-4\"===this.target||\"openapi-3.0\"===this.target?(C.minimum=O,C.exclusiveMinimum=!0):C.exclusiveMinimum=O),\"number\"==typeof w&&(C.minimum=w,\"number\"==typeof O&&\"draft-4\"!==this.target&&(O>=w?delete C.minimum:delete C.exclusiveMinimum)),\"number\"==typeof I&&(\"draft-4\"===this.target||\"openapi-3.0\"===this.target?(C.maximum=I,C.exclusiveMaximum=!0):C.exclusiveMaximum=I),\"number\"==typeof _&&(C.maximum=_,\"number\"==typeof I&&\"draft-4\"!==this.target&&(I<=_?delete C.maximum:delete C.exclusiveMaximum)),\"number\"==typeof B&&(C.multipleOf=B);break;case\"boolean\":p.type=\"boolean\";break;case\"bigint\":if(\"throw\"===this.unrepresentable)throw new Error(\"BigInt cannot be represented in JSON Schema\");break;case\"symbol\":if(\"throw\"===this.unrepresentable)throw new Error(\"Symbols cannot be represented in JSON Schema\");break;case\"null\":\"openapi-3.0\"===this.target?(p.type=\"string\",p.nullable=!0,p.enum=[null]):p.type=\"null\";break;case\"any\":case\"unknown\":break;case\"undefined\":if(\"throw\"===this.unrepresentable)throw new Error(\"Undefined cannot be represented in JSON Schema\");break;case\"void\":if(\"throw\"===this.unrepresentable)throw new Error(\"Void cannot be represented in JSON Schema\");break;case\"never\":p.not={};break;case\"date\":if(\"throw\"===this.unrepresentable)throw new Error(\"Date cannot be represented in JSON Schema\");break;case\"array\":var T=p,j=e._zod.bag,z=j.minimum,R=j.maximum;\"number\"==typeof z&&(T.minItems=z),\"number\"==typeof R&&(T.maxItems=R),T.type=\"array\",T.items=this.process(o.element,S(S({},d),{},{path:[].concat(P(d.path),[\"items\"])}));break;case\"object\":var M,Z=p;Z.type=\"object\",Z.properties={};var L=o.shape;for(var $ in L)Z.properties[$]=this.process(L[$],S(S({},d),{},{path:[].concat(P(d.path),[\"properties\",$])}));var q=new Set(Object.keys(L)),U=new Set(P(q).filter(function(e){var t=o.shape[e]._zod;return\"input\"===a.io?void 0===t.optin:void 0===t.optout}));U.size>0&&(Z.required=Array.from(U)),\"never\"===(null===(M=o.catchall)||void 0===M?void 0:M._zod.def.type)?Z.additionalProperties=!1:o.catchall?o.catchall&&(Z.additionalProperties=this.process(o.catchall,S(S({},d),{},{path:[].concat(P(d.path),[\"additionalProperties\"])}))):\"output\"===this.io&&(Z.additionalProperties=!1);break;case\"union\":var V=p,H=o.options.map(function(e,t){return a.process(e,S(S({},d),{},{path:[].concat(P(d.path),[\"anyOf\",t])}))});V.anyOf=H;break;case\"intersection\":var K=p,W=this.process(o.left,S(S({},d),{},{path:[].concat(P(d.path),[\"allOf\",0])})),J=this.process(o.right,S(S({},d),{},{path:[].concat(P(d.path),[\"allOf\",1])})),Q=function(e){return\"allOf\"in e&&1===Object.keys(e).length},G=[].concat(P(Q(W)?W.allOf:[W]),P(Q(J)?J.allOf:[J]));K.allOf=G;break;case\"tuple\":var Y=p;Y.type=\"array\";var X=\"draft-2020-12\"===this.target?\"prefixItems\":\"items\",ee=\"draft-2020-12\"===this.target||\"openapi-3.0\"===this.target?\"items\":\"additionalItems\",te=o.items.map(function(e,t){return a.process(e,S(S({},d),{},{path:[].concat(P(d.path),[X,t])}))}),ne=o.rest?this.process(o.rest,S(S({},d),{},{path:[].concat(P(d.path),[ee],P(\"openapi-3.0\"===this.target?[o.items.length]:[]))})):null;\"draft-2020-12\"===this.target?(Y.prefixItems=te,ne&&(Y.items=ne)):\"openapi-3.0\"===this.target?(Y.items={anyOf:te},ne&&Y.items.anyOf.push(ne),Y.minItems=te.length,ne||(Y.maxItems=te.length)):(Y.items=te,ne&&(Y.additionalItems=ne));var re=e._zod.bag,ue=re.minimum,ae=re.maximum;\"number\"==typeof ue&&(Y.minItems=ue),\"number\"==typeof ae&&(Y.maxItems=ae);break;case\"record\":var ie=p;ie.type=\"object\",\"draft-7\"!==this.target&&\"draft-2020-12\"!==this.target||(ie.propertyNames=this.process(o.keyType,S(S({},d),{},{path:[].concat(P(d.path),[\"propertyNames\"])}))),ie.additionalProperties=this.process(o.valueType,S(S({},d),{},{path:[].concat(P(d.path),[\"additionalProperties\"])}));break;case\"map\":if(\"throw\"===this.unrepresentable)throw new Error(\"Map cannot be represented in JSON Schema\");break;case\"set\":if(\"throw\"===this.unrepresentable)throw new Error(\"Set cannot be represented in JSON Schema\");break;case\"enum\":var oe=p,se=ja(o.entries);se.every(function(e){return\"number\"==typeof e})&&(oe.type=\"number\"),se.every(function(e){return\"string\"==typeof e})&&(oe.type=\"string\"),oe.enum=se;break;case\"literal\":var ce,le=p,de=[],fe=E(o.values);try{for(fe.s();!(ce=fe.n()).done;){var pe=ce.value;if(void 0===pe){if(\"throw\"===this.unrepresentable)throw new Error(\"Literal `undefined` cannot be represented in JSON Schema\")}else if(\"bigint\"==typeof pe){if(\"throw\"===this.unrepresentable)throw new Error(\"BigInt literals cannot be represented in JSON Schema\");de.push(Number(pe))}else de.push(pe)}}catch(e){fe.e(e)}finally{fe.f()}if(0===de.length);else if(1===de.length){var he=de[0];le.type=null===he?\"null\":N(he),\"draft-4\"===this.target||\"openapi-3.0\"===this.target?le.enum=[he]:le.const=he}else de.every(function(e){return\"number\"==typeof e})&&(le.type=\"number\"),de.every(function(e){return\"string\"==typeof e})&&(le.type=\"string\"),de.every(function(e){return\"boolean\"==typeof e})&&(le.type=\"string\"),de.every(function(e){return null===e})&&(le.type=\"null\"),le.enum=de;break;case\"file\":var ve=p,me={type:\"string\",format:\"binary\",contentEncoding:\"binary\"},De=e._zod.bag,ye=De.minimum,ge=De.maximum,Fe=De.mime;void 0!==ye&&(me.minLength=ye),void 0!==ge&&(me.maxLength=ge),Fe?1===Fe.length?(me.contentMediaType=Fe[0],Object.assign(ve,me)):ve.anyOf=Fe.map(function(e){return S(S({},me),{},{contentMediaType:e})}):Object.assign(ve,me);break;case\"transform\":if(\"throw\"===this.unrepresentable)throw new Error(\"Transforms cannot be represented in JSON Schema\");break;case\"nullable\":var Ee=this.process(o.innerType,d);\"openapi-3.0\"===this.target?(c.ref=o.innerType,p.nullable=!0):p.anyOf=[Ee,{type:\"null\"}];break;case\"nonoptional\":case\"promise\":case\"optional\":this.process(o.innerType,d),c.ref=o.innerType;break;case\"success\":p.type=\"boolean\";break;case\"default\":this.process(o.innerType,d),c.ref=o.innerType,p.default=JSON.parse(JSON.stringify(o.defaultValue));break;case\"prefault\":this.process(o.innerType,d),c.ref=o.innerType,\"input\"===this.io&&(p._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break;case\"catch\":var be;this.process(o.innerType,d),c.ref=o.innerType;try{be=o.catchValue(void 0)}catch(e){throw new Error(\"Dynamic catch values are not supported in JSON Schema\")}p.default=be;break;case\"nan\":if(\"throw\"===this.unrepresentable)throw new Error(\"NaN cannot be represented in JSON Schema\");break;case\"template_literal\":var Ae=p,Ce=e._zod.pattern;if(!Ce)throw new Error(\"Pattern not found in template literal\");Ae.type=\"string\",Ae.pattern=Ce.source;break;case\"pipe\":var ke=\"input\"===this.io?\"transform\"===o.in._zod.def.type?o.out:o.in:o.out;this.process(ke,d),c.ref=ke;break;case\"readonly\":this.process(o.innerType,d),c.ref=o.innerType,p.readOnly=!0;break;case\"lazy\":var we=e._zod.innerType;this.process(we,d),c.ref=we;break;case\"custom\":if(\"throw\"===this.unrepresentable)throw new Error(\"Custom types cannot be represented in JSON Schema\");break;case\"function\":if(\"throw\"===this.unrepresentable)throw new Error(\"Function types cannot be represented in JSON Schema\")}}}var _e=this.metadataRegistry.get(e);return _e&&Object.assign(c.schema,_e),\"input\"===this.io&&oc(e)&&(delete c.schema.examples,delete c.schema.default),\"input\"===this.io&&c.schema._prefault&&(null!==(r=(u=c.schema).default)&&void 0!==r||(u.default=c.schema._prefault)),delete c.schema._prefault,this.seen.get(e).schema}},{key:\"emit\",value:function(e,t){var n,r,u,a,i,o,s=this,c={cycles:null!==(n=null==t?void 0:t.cycles)&&void 0!==n?n:\"ref\",reused:null!==(r=null==t?void 0:t.reused)&&void 0!==r?r:\"inline\",external:null!==(u=null==t?void 0:t.external)&&void 0!==u?u:void 0},l=this.seen.get(e);if(!l)throw new Error(\"Unprocessed schema. This is a bug in Zod.\");var d=function(e){if(!e[1].schema.$ref){var t=e[1],n=function(e){var t,n=\"draft-2020-12\"===s.target?\"$defs\":\"definitions\";if(c.external){var r,u,a,i,o=null===(r=c.external.registry.get(e[0]))||void 0===r?void 0:r.id,d=null!==(u=c.external.uri)&&void 0!==u?u:function(e){return e};if(o)return{ref:d(o)};var f=null!==(a=null!==(i=e[1].defId)&&void 0!==i?i:e[1].schema.id)&&void 0!==a?a:\"schema\".concat(s.counter++);return e[1].defId=f,{defId:f,ref:\"\".concat(d(\"__shared\"),\"#/\").concat(n,\"/\").concat(f)}}if(e[1]===l)return{ref:\"#\"};var p=\"\".concat(\"#\",\"/\").concat(n,\"/\"),h=null!==(t=e[1].schema.id)&&void 0!==t?t:\"__schema\".concat(s.counter++);return{defId:h,ref:p+h}}(e),r=n.ref,u=n.defId;t.def=S({},t.schema),u&&(t.defId=u);var a=t.schema;for(var i in a)delete a[i];a.$ref=r}};if(\"throw\"===c.cycles){var f,p=E(this.seen.entries());try{for(p.s();!(f=p.n()).done;){var h,v=f.value[1];if(v.cycle)throw new Error(\"Cycle detected: \"+\"#/\".concat(null===(h=v.cycle)||void 0===h?void 0:h.join(\"/\"),\"/\")+'\\n\\nSet the `cycles` parameter to `\"ref\"` to resolve cyclical schemas with defs.')}}catch(e){p.e(e)}finally{p.f()}}var m,D=E(this.seen.entries());try{for(D.s();!(m=D.n()).done;){var y,g=m.value,F=g[1];if(e!==g[0]){if(c.external){var b,A=null===(b=c.external.registry.get(g[0]))||void 0===b?void 0:b.id;if(e!==g[0]&&A){d(g);continue}}((null===(y=this.metadataRegistry.get(g[0]))||void 0===y?void 0:y.id)||F.cycle||F.count>1&&\"ref\"===c.reused)&&d(g)}else d(g)}}catch(e){D.e(e)}finally{D.f()}var C,k=function(e,t){var n,r,u=s.seen.get(e),a=null!==(n=u.def)&&void 0!==n?n:u.schema,i=S({},a);if(null!==u.ref){var o=u.ref;if(u.ref=null,o){k(o,t);var c,l=s.seen.get(o).schema;if(!l.$ref||\"draft-7\"!==t.target&&\"draft-4\"!==t.target&&\"openapi-3.0\"!==t.target)Object.assign(a,l),Object.assign(a,i);else a.allOf=null!==(c=a.allOf)&&void 0!==c?c:[],a.allOf.push(l)}u.isParent||s.override({zodSchema:e,jsonSchema:a,path:null!==(r=u.path)&&void 0!==r?r:[]})}},w=E(P(this.seen.entries()).reverse());try{for(w.s();!(C=w.n()).done;){var _=C.value;k(_[0],{target:this.target})}}catch(e){w.e(e)}finally{w.f()}var x={};if(\"draft-2020-12\"===this.target?x.$schema=\"https://json-schema.org/draft/2020-12/schema\":\"draft-7\"===this.target?x.$schema=\"http://json-schema.org/draft-07/schema#\":\"draft-4\"===this.target?x.$schema=\"http://json-schema.org/draft-04/schema#\":\"openapi-3.0\"===this.target||console.warn(\"Invalid target: \".concat(this.target)),null!==(a=c.external)&&void 0!==a&&a.uri){var B,I=null===(B=c.external.registry.get(e))||void 0===B?void 0:B.id;if(!I)throw new Error(\"Schema is missing an `id` property\");x.$id=c.external.uri(I)}Object.assign(x,l.def);var O,T=null!==(i=null===(o=c.external)||void 0===o?void 0:o.defs)&&void 0!==i?i:{},j=E(this.seen.entries());try{for(j.s();!(O=j.n()).done;){var N=O.value[1];N.def&&N.defId&&(T[N.defId]=N.def)}}catch(e){j.e(e)}finally{j.f()}c.external||Object.keys(T).length>0&&(\"draft-2020-12\"===this.target?x.$defs=T:x.definitions=T);try{return JSON.parse(JSON.stringify(x))}catch(e){throw new Error(\"Error converting schema to JSON.\")}}}])}();function oc(e,t){var n=null!=t?t:{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);var r=e._zod.def;switch(r.type){case\"string\":case\"number\":case\"bigint\":case\"boolean\":case\"date\":case\"symbol\":case\"undefined\":case\"null\":case\"any\":case\"unknown\":case\"never\":case\"void\":case\"literal\":case\"enum\":case\"nan\":case\"file\":case\"template_literal\":case\"custom\":case\"success\":case\"catch\":case\"function\":return!1;case\"array\":return oc(r.element,n);case\"object\":for(var u in r.shape)if(oc(r.shape[u],n))return!0;return!1;case\"union\":var a,i=E(r.options);try{for(i.s();!(a=i.n()).done;){if(oc(a.value,n))return!0}}catch(e){i.e(e)}finally{i.f()}return!1;case\"intersection\":return oc(r.left,n)||oc(r.right,n);case\"tuple\":var o,s=E(r.items);try{for(s.s();!(o=s.n()).done;){if(oc(o.value,n))return!0}}catch(e){s.e(e)}finally{s.f()}return!(!r.rest||!oc(r.rest,n));case\"record\":case\"map\":return oc(r.keyType,n)||oc(r.valueType,n);case\"set\":return oc(r.valueType,n);case\"promise\":case\"optional\":case\"nonoptional\":case\"nullable\":case\"readonly\":case\"default\":case\"prefault\":return oc(r.innerType,n);case\"lazy\":return oc(r.getter(),n);case\"transform\":return!0;case\"pipe\":return oc(r.in,n)||oc(r.out,n)}throw new Error(\"Unknown schema type: \".concat(r.type))}var sc=Object.freeze({__proto__:null,endsWith:Xs,gt:$s,gte:qs,includes:Gs,length:Ks,lowercase:Js,lt:Zs,lte:Ls,maxLength:Vs,maxSize:function(e,t){return new uo(S(S({check:\"max_size\"},Xa(t)),{},{maximum:e}))},mime:function(e,t){return new Fo(S({check:\"mime_type\",mime:e},Xa(t)))},minLength:Hs,minSize:function(e,t){return new ao(S(S({check:\"min_size\"},Xa(t)),{},{minimum:e}))},multipleOf:Us,negative:function(e){return Zs(0,e)},nonnegative:function(e){return qs(0,e)},nonpositive:function(e){return Ls(0,e)},normalize:tc,overwrite:ec,positive:function(e){return $s(0,e)},property:function(e,t,n){return new go(S({check:\"property\",property:e,schema:t},Xa(n)))},regex:Ws,size:function(e,t){return new io(S(S({check:\"size_equals\"},Xa(t)),{},{size:e}))},startsWith:Ys,toLowerCase:rc,toUpperCase:uc,trim:nc,uppercase:Qs}),cc=Ba(\"ZodISODateTime\",function(e,t){Ro.init(e,t),Pc.init(e,t)});function lc(e){return function(e,t){return new e(S({type:\"string\",format:\"datetime\",check:\"string_format\",offset:!1,local:!1,precision:null},Xa(t)))}(cc,e)}var dc=Ba(\"ZodISODate\",function(e,t){Mo.init(e,t),Pc.init(e,t)});function fc(e){return function(e,t){return new e(S({type:\"string\",format:\"date\",check:\"string_format\"},Xa(t)))}(dc,e)}var pc=Ba(\"ZodISOTime\",function(e,t){Zo.init(e,t),Pc.init(e,t)});function hc(e){return function(e,t){return new e(S({type:\"string\",format:\"time\",check:\"string_format\",precision:null},Xa(t)))}(pc,e)}var vc=Ba(\"ZodISODuration\",function(e,t){Lo.init(e,t),Pc.init(e,t)});function mc(e){return function(e,t){return new e(S({type:\"string\",format:\"duration\",check:\"string_format\"},Xa(t)))}(vc,e)}var Dc=Ba(\"ZodError\",function(e,t){ci.init(e,t),e.name=\"ZodError\",Object.defineProperties(e,{format:{value:function(t){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},n={_errors:[]},r=function(e){var u,a=E(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(\"invalid_union\"===i.code&&i.errors.length)i.errors.map(function(e){return r({issues:e})});else if(\"invalid_key\"===i.code)r({issues:i.issues});else if(\"invalid_element\"===i.code)r({issues:i.issues});else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},r={},u=[],a=E(e.issues);try{for(a.s();!(t=a.n()).done;){var i=t.value;i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(n(i))):u.push(n(i))}}catch(e){a.e(e)}finally{a.f()}return{formErrors:u,fieldErrors:r}}(e,t)}},addIssue:{value:function(t){e.issues.push(t),e.message=JSON.stringify(e.issues,Na,2)}},addIssues:{value:function(t){var n;(n=e.issues).push.apply(n,P(t)),e.message=JSON.stringify(e.issues,Na,2)}},isEmpty:{get:function(){return 0===e.issues.length}}})},{Parent:Error}),yc=di(Dc),gc=fi(Dc),Fc=pi(Dc),Ec=vi(Dc),bc=Di(Dc),Ac=yi(Dc),Cc=gi(Dc),kc=Fi(Dc),wc=Ei(Dc),_c=bi(Dc),Sc=Ai(Dc),xc=Ci(Dc),Bc=Ba(\"ZodType\",function(e,t){return Co.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,\"_def\",{value:t}),e.check=function(){for(var n,r=arguments.length,u=new Array(r),a=0;a1&&void 0!==arguments[1]?arguments[1]:{};return function(e,t,n){return new e(S({type:\"custom\",check:\"custom\",fn:t},Xa(n)))}($l,e,t)}(t,n))},e.superRefine=function(t){return e.check(ac(t))},e.overwrite=function(t){return e.check(ec(t))},e.optional=function(){return xl(e)},e.nullable=function(){return Il(e)},e.nullish=function(){return xl(Il(e))},e.nonoptional=function(t){return function(e,t){return new Pl(S({type:\"nonoptional\",innerType:e},Xa(t)))}(e,t)},e.array=function(){return pl(e)},e.or=function(t){return yl([e,t])},e.and=function(t){return new Fl({type:\"intersection\",left:e,right:t})},e.transform=function(t){return zl(e,new _l({type:\"transform\",transform:t}))},e.default=function(t){return n=t,new Ol({type:\"default\",innerType:e,get defaultValue(){return\"function\"==typeof n?n():Ja(n)}});var n},e.prefault=function(t){return n=t,new Tl({type:\"prefault\",innerType:e,get defaultValue(){return\"function\"==typeof n?n():Ja(n)}});var n},e.catch=function(t){return new jl({type:\"catch\",innerType:e,catchValue:\"function\"==typeof(n=t)?n:function(){return n}});var n},e.pipe=function(t){return zl(e,t)},e.readonly=function(){return new Rl({type:\"readonly\",innerType:e})},e.describe=function(t){var n=e.clone();return Rs.add(n,{description:t}),n},Object.defineProperty(e,\"description\",{get:function(){var t;return null===(t=Rs.get(e))||void 0===t?void 0:t.description},configurable:!0}),e.meta=function(){if(0===arguments.length)return Rs.get(e);var t=e.clone();return Rs.add(t,arguments.length<=0?void 0:arguments[0]),t},e.isOptional=function(){return e.safeParse(void 0).success},e.isNullable=function(){return e.safeParse(null).success},e}),Ic=Ba(\"_ZodString\",function(e,t){var n,r,u;ko.init(e,t),Bc.init(e,t);var a=e._zod.bag;e.format=null!==(n=a.format)&&void 0!==n?n:null,e.minLength=null!==(r=a.minimum)&&void 0!==r?r:null,e.maxLength=null!==(u=a.maximum)&&void 0!==u?u:null,e.regex=function(){return e.check(Ws.apply(sc,arguments))},e.includes=function(){return e.check(Gs.apply(sc,arguments))},e.startsWith=function(){return e.check(Ys.apply(sc,arguments))},e.endsWith=function(){return e.check(Xs.apply(sc,arguments))},e.min=function(){return e.check(Hs.apply(sc,arguments))},e.max=function(){return e.check(Vs.apply(sc,arguments))},e.length=function(){return e.check(Ks.apply(sc,arguments))},e.nonempty=function(){for(var t=arguments.length,n=new Array(t),r=0;r0)throw new Error(\"Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.\");var r=qa(e._zod.def,{get shape(){var n=S(S({},e._zod.def.shape),t);return $a(this,\"shape\",n),n},checks:[]});return Ya(e,r)}(e,t)},e.safeExtend=function(t){return function(e,t){if(!Wa(t))throw new Error(\"Invalid input to safeExtend: expected a plain object\");var n=S(S({},e._zod.def),{},{get shape(){var n=S(S({},e._zod.def.shape),t);return $a(this,\"shape\",n),n},checks:e._zod.def.checks});return Ya(e,n)}(e,t)},e.merge=function(t){return function(e,t){var n=qa(e._zod.def,{get shape(){var n=S(S({},e._zod.def.shape),t._zod.def.shape);return $a(this,\"shape\",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Ya(e,n)}(e,t)},e.pick=function(t){return function(e,t){var n=e._zod.def;return Ya(e,qa(e._zod.def,{get shape(){var e={};for(var r in t){if(!(r in n.shape))throw new Error('Unrecognized key: \"'.concat(r,'\"'));t[r]&&(e[r]=n.shape[r])}return $a(this,\"shape\",e),e},checks:[]}))}(e,t)},e.omit=function(t){return function(e,t){var n=e._zod.def,r=qa(e._zod.def,{get shape(){var r=S({},e._zod.def.shape);for(var u in t){if(!(u in n.shape))throw new Error('Unrecognized key: \"'.concat(u,'\"'));t[u]&&delete r[u]}return $a(this,\"shape\",r),r},checks:[]});return Ya(e,r)}(e,t)},e.partial=function(){return function(e,t,n){var r=qa(t._zod.def,{get shape(){var r=t._zod.def.shape,u=S({},r);if(n)for(var a in n){if(!(a in r))throw new Error('Unrecognized key: \"'.concat(a,'\"'));n[a]&&(u[a]=new e({type:\"optional\",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:\"optional\",innerType:r[i]});return $a(this,\"shape\",u),u},checks:[]});return Ya(t,r)}(Sl,e,arguments.length<=0?void 0:arguments[0])},e.required=function(){return function(e,t,n){var r=qa(t._zod.def,{get shape(){var r=t._zod.def.shape,u=S({},r);if(n)for(var a in n){if(!(a in u))throw new Error('Unrecognized key: \"'.concat(a,'\"'));n[a]&&(u[a]=new e({type:\"nonoptional\",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:\"nonoptional\",innerType:r[i]});return $a(this,\"shape\",u),u},checks:[]});return Ya(t,r)}(Pl,e,arguments.length<=0?void 0:arguments[0])}});function vl(e,t){var n=S({type:\"object\",shape:null!=e?e:{}},Xa(t));return new hl(n)}function ml(e,t){return new hl(S({type:\"object\",shape:e,catchall:dl()},Xa(t)))}var Dl=Ba(\"ZodUnion\",function(e,t){ds.init(e,t),Bc.init(e,t),e.options=t.options});function yl(e,t){return new Dl(S({type:\"union\",options:e},Xa(t)))}var gl=Ba(\"ZodDiscriminatedUnion\",function(e,t){Dl.init(e,t),fs.init(e,t)});var Fl=Ba(\"ZodIntersection\",function(e,t){ps.init(e,t),Bc.init(e,t)});var El=Ba(\"ZodRecord\",function(e,t){ms.init(e,t),Bc.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function bl(e,t,n){return new El(S({type:\"record\",keyType:e,valueType:t},Xa(n)))}var Al=Ba(\"ZodEnum\",function(e,t){Ds.init(e,t),Bc.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);var n=new Set(Object.keys(t.entries));e.extract=function(e,r){var u,a={},i=E(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error(\"Key \".concat(o,\" not found in enum\"));a[o]=t.entries[o]}}catch(e){i.e(e)}finally{i.f()}return new Al(S(S(S({},t),{},{checks:[]},Xa(r)),{},{entries:a}))},e.exclude=function(e,r){var u,a=S({},t.entries),i=E(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error(\"Key \".concat(o,\" not found in enum\"));delete a[o]}}catch(e){i.e(e)}finally{i.f()}return new Al(S(S(S({},t),{},{checks:[]},Xa(r)),{},{entries:a}))}});function Cl(e,t){var n=Array.isArray(e)?Object.fromEntries(e.map(function(e){return[e,e]})):e;return new Al(S({type:\"enum\",entries:n},Xa(t)))}var kl=Ba(\"ZodLiteral\",function(e,t){ys.init(e,t),Bc.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,\"value\",{get:function(){if(t.values.length>1)throw new Error(\"This schema contains multiple valid literal values. Use `.values` instead.\");return t.values[0]}})});function wl(e,t){return new kl(S({type:\"literal\",values:Array.isArray(e)?e:[e]},Xa(t)))}var _l=Ba(\"ZodTransform\",function(e,t){gs.init(e,t),Bc.init(e,t),e._zod.parse=function(n,r){if(\"backward\"===r.direction)throw new Oa(e.constructor.name);n.addIssue=function(r){if(\"string\"==typeof r)n.issues.push(oi(r,n.value,t));else{var u,a,i,o=r;o.fatal&&(o.continue=!1),null!==(u=o.code)&&void 0!==u||(o.code=\"custom\"),null!==(a=o.input)&&void 0!==a||(o.input=n.value),null!==(i=o.inst)&&void 0!==i||(o.inst=e),n.issues.push(oi(o))}};var u=t.transform(n.value,n);return u instanceof Promise?u.then(function(e){return n.value=e,n}):(n.value=u,n)}});var Sl=Ba(\"ZodOptional\",function(e,t){Es.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function xl(e){return new Sl({type:\"optional\",innerType:e})}var Bl=Ba(\"ZodNullable\",function(e,t){bs.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function Il(e){return new Bl({type:\"nullable\",innerType:e})}var Ol=Ba(\"ZodDefault\",function(e,t){As.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeDefault=e.unwrap});var Tl=Ba(\"ZodPrefault\",function(e,t){ks.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});var Pl=Ba(\"ZodNonOptional\",function(e,t){ws.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});var jl=Ba(\"ZodCatch\",function(e,t){Ss.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeCatch=e.unwrap});var Nl=Ba(\"ZodPipe\",function(e,t){xs.init(e,t),Bc.init(e,t),e.in=t.in,e.out=t.out});function zl(e,t){return new Nl({type:\"pipe\",in:e,out:t})}var Rl=Ba(\"ZodReadonly\",function(e,t){Is.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});var Ml=Ba(\"ZodLazy\",function(e,t){Ts.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.getter()}});var Zl,Ll,$l=Ba(\"ZodCustom\",function(e,t){Ps.init(e,t),Bc.init(e,t)});function ql(e,t){return function(e,t,n){var r,u=Xa(n);return null!==(r=u.abort)&&void 0!==r||(u.abort=!0),new e(S({type:\"custom\",check:\"custom\",fn:t},u))}($l,null!=e?e:function(){return!0},t)}function Ul(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{error:\"Input not instance of \".concat(e.name)},n=new $l(S({type:\"custom\",check:\"custom\",fn:function(t){return t instanceof e},abort:!0},Xa(t)));return n._zod.bag.Class=e,n}!function(e){e.assertEqual=function(e){},e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=function(e){var t,n={},r=E(e);try{for(r.s();!(t=r.n()).done;){var u=t.value;n[u]=u}}catch(e){r.e(e)}finally{r.f()}return n},e.getValidEnumValues=function(t){var n,r=e.objectKeys(t).filter(function(e){return\"number\"!=typeof t[t[e]]}),u={},a=E(r);try{for(a.s();!(n=a.n()).done;){var i=n.value;u[i]=t[i]}}catch(e){a.e(e)}finally{a.f()}return e.objectValues(u)},e.objectValues=function(t){return e.objectKeys(t).map(function(e){return t[e]})},e.objectKeys=\"function\"==typeof Object.keys?function(e){return Object.keys(e)}:function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=function(e,t){var n,r=E(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if(t(u))return u}}catch(e){r.e(e)}finally{r.f()}},e.isInteger=\"function\"==typeof Number.isInteger?function(e){return Number.isInteger(e)}:function(e){return\"number\"==typeof e&&Number.isFinite(e)&&Math.floor(e)===e},e.joinValues=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\" | \";return e.map(function(e){return\"string\"==typeof e?\"'\".concat(e,\"'\"):e}).join(t)},e.jsonStringifyReplacer=function(e,t){return\"bigint\"==typeof t?t.toString():t}}(Zl||(Zl={})),function(e){e.mergeShapes=function(e,t){return S(S({},e),t)}}(Ll||(Ll={}));var Vl=Zl.arrayToEnum([\"string\",\"nan\",\"number\",\"integer\",\"float\",\"boolean\",\"date\",\"bigint\",\"symbol\",\"function\",\"undefined\",\"null\",\"array\",\"object\",\"unknown\",\"promise\",\"void\",\"never\",\"map\",\"set\"]),Hl=function(e){switch(N(e)){case\"undefined\":return Vl.undefined;case\"string\":return Vl.string;case\"number\":return Number.isNaN(e)?Vl.nan:Vl.number;case\"boolean\":return Vl.boolean;case\"function\":return Vl.function;case\"bigint\":return Vl.bigint;case\"symbol\":return Vl.symbol;case\"object\":return Array.isArray(e)?Vl.array:null===e?Vl.null:e.then&&\"function\"==typeof e.then&&e.catch&&\"function\"==typeof e.catch?Vl.promise:\"undefined\"!=typeof Map&&e instanceof Map?Vl.map:\"undefined\"!=typeof Set&&e instanceof Set?Vl.set:\"undefined\"!=typeof Date&&e instanceof Date?Vl.date:Vl.object;default:return Vl.unknown}},Kl=Zl.arrayToEnum([\"invalid_type\",\"invalid_literal\",\"custom\",\"invalid_union\",\"invalid_union_discriminator\",\"invalid_enum_value\",\"unrecognized_keys\",\"invalid_arguments\",\"invalid_return_type\",\"invalid_date\",\"invalid_string\",\"too_small\",\"too_big\",\"invalid_intersection_types\",\"not_multiple_of\",\"not_finite\"]),Wl=function(){function e(t){var n;D(this,e),(n=m(this,e)).issues=[],n.addIssue=function(e){n.issues=[].concat(P(n.issues),[e])},n.addIssues=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];n.issues=[].concat(P(n.issues),P(e))};var r=(this instanceof e?this.constructor:void 0).prototype;return Object.setPrototypeOf?Object.setPrototypeOf(n,r):n.__proto__=r,n.name=\"ZodError\",n.issues=t,n}return k(e,R(Error)),F(e,[{key:\"errors\",get:function(){return this.issues}},{key:\"format\",value:function(e){var t=e||function(e){return e.message},n={_errors:[]},r=function(e){var u,a=E(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(\"invalid_union\"===i.code)i.unionErrors.map(r);else if(\"invalid_return_type\"===i.code)r(i.returnTypeError);else if(\"invalid_arguments\"===i.code)r(i.argumentsError);else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s0&&void 0!==arguments[0]?arguments[0]:function(e){return e.message},n=Object.create(null),r=[],u=E(this.issues);try{for(u.s();!(e=u.n()).done;){var a=e.value;if(a.path.length>0){var i=a.path[0];n[i]=n[i]||[],n[i].push(t(a))}else r.push(t(a))}}catch(e){u.e(e)}finally{u.f()}return{formErrors:r,fieldErrors:n}}},{key:\"formErrors\",get:function(){return this.flatten()}}],[{key:\"assert\",value:function(t){if(!(t instanceof e))throw new Error(\"Not a ZodError: \".concat(t))}}])}();Wl.create=function(e){return new Wl(e)};var Jl=function(e,t){var n;switch(e.code){case Kl.invalid_type:n=e.received===Vl.undefined?\"Required\":\"Expected \".concat(e.expected,\", received \").concat(e.received);break;case Kl.invalid_literal:n=\"Invalid literal value, expected \".concat(JSON.stringify(e.expected,Zl.jsonStringifyReplacer));break;case Kl.unrecognized_keys:n=\"Unrecognized key(s) in object: \".concat(Zl.joinValues(e.keys,\", \"));break;case Kl.invalid_union:n=\"Invalid input\";break;case Kl.invalid_union_discriminator:n=\"Invalid discriminator value. Expected \".concat(Zl.joinValues(e.options));break;case Kl.invalid_enum_value:n=\"Invalid enum value. Expected \".concat(Zl.joinValues(e.options),\", received '\").concat(e.received,\"'\");break;case Kl.invalid_arguments:n=\"Invalid function arguments\";break;case Kl.invalid_return_type:n=\"Invalid function return type\";break;case Kl.invalid_date:n=\"Invalid date\";break;case Kl.invalid_string:\"object\"===N(e.validation)?\"includes\"in e.validation?(n='Invalid input: must include \"'.concat(e.validation.includes,'\"'),\"number\"==typeof e.validation.position&&(n=\"\".concat(n,\" at one or more positions greater than or equal to \").concat(e.validation.position))):\"startsWith\"in e.validation?n='Invalid input: must start with \"'.concat(e.validation.startsWith,'\"'):\"endsWith\"in e.validation?n='Invalid input: must end with \"'.concat(e.validation.endsWith,'\"'):Zl.assertNever(e.validation):n=\"regex\"!==e.validation?\"Invalid \".concat(e.validation):\"Invalid\";break;case Kl.too_small:n=\"array\"===e.type?\"Array must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at least\":\"more than\",\" \").concat(e.minimum,\" element(s)\"):\"string\"===e.type?\"String must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at least\":\"over\",\" \").concat(e.minimum,\" character(s)\"):\"number\"===e.type||\"bigint\"===e.type?\"Number must be \".concat(e.exact?\"exactly equal to \":e.inclusive?\"greater than or equal to \":\"greater than \").concat(e.minimum):\"date\"===e.type?\"Date must be \".concat(e.exact?\"exactly equal to \":e.inclusive?\"greater than or equal to \":\"greater than \").concat(new Date(Number(e.minimum))):\"Invalid input\";break;case Kl.too_big:n=\"array\"===e.type?\"Array must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at most\":\"less than\",\" \").concat(e.maximum,\" element(s)\"):\"string\"===e.type?\"String must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at most\":\"under\",\" \").concat(e.maximum,\" character(s)\"):\"number\"===e.type?\"Number must be \".concat(e.exact?\"exactly\":e.inclusive?\"less than or equal to\":\"less than\",\" \").concat(e.maximum):\"bigint\"===e.type?\"BigInt must be \".concat(e.exact?\"exactly\":e.inclusive?\"less than or equal to\":\"less than\",\" \").concat(e.maximum):\"date\"===e.type?\"Date must be \".concat(e.exact?\"exactly\":e.inclusive?\"smaller than or equal to\":\"smaller than\",\" \").concat(new Date(Number(e.maximum))):\"Invalid input\";break;case Kl.custom:n=\"Invalid input\";break;case Kl.invalid_intersection_types:n=\"Intersection results could not be merged\";break;case Kl.not_multiple_of:n=\"Number must be a multiple of \".concat(e.multipleOf);break;case Kl.not_finite:n=\"Number must be finite\";break;default:n=t.defaultError,Zl.assertNever(e)}return{message:n}},Ql=Jl;function Gl(){return Ql}var Yl=function(e){var t=e.data,n=e.path,r=e.errorMaps,u=e.issueData,a=[].concat(P(n),P(u.path||[])),i=S(S({},u),{},{path:a});if(void 0!==u.message)return S(S({},u),{},{path:a,message:u.message});var o,s=\"\",c=r.filter(function(e){return!!e}).slice().reverse(),l=E(c);try{for(l.s();!(o=l.n()).done;){s=(0,o.value)(i,{data:t,defaultError:s}).message}}catch(e){l.e(e)}finally{l.f()}return S(S({},u),{},{path:a,message:s})};function Xl(e,t){var n=Gl(),r=Yl({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===Jl?void 0:Jl].filter(function(e){return!!e})});e.common.issues.push(r)}var ed,td=function(){function e(){D(this,e),this.value=\"valid\"}return F(e,[{key:\"dirty\",value:function(){\"valid\"===this.value&&(this.value=\"dirty\")}},{key:\"abort\",value:function(){\"aborted\"!==this.value&&(this.value=\"aborted\")}}],[{key:\"mergeArray\",value:function(e,t){var n,r=[],u=E(t);try{for(u.s();!(n=u.n()).done;){var a=n.value;if(\"aborted\"===a.status)return nd;\"dirty\"===a.status&&e.dirty(),r.push(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}},{key:\"mergeObjectAsync\",value:(t=v(B().m(function t(n,r){var u,a,i,o,s,c,l;return B().w(function(t){for(;;)switch(t.p=t.n){case 0:u=[],a=E(r),t.p=1,a.s();case 2:if((i=a.n()).done){t.n=6;break}return o=i.value,t.n=3,o.key;case 3:return s=t.v,t.n=4,o.value;case 4:c=t.v,u.push({key:s,value:c});case 5:t.n=2;break;case 6:t.n=8;break;case 7:t.p=7,l=t.v,a.e(l);case 8:return t.p=8,a.f(),t.f(8);case 9:return t.a(2,e.mergeObjectSync(n,u))}},t,null,[[1,7,8,9]])})),function(e,n){return t.apply(this,arguments)})},{key:\"mergeObjectSync\",value:function(e,t){var n,r={},u=E(t);try{for(u.s();!(n=u.n()).done;){var a=n.value,i=a.key,o=a.value;if(\"aborted\"===i.status)return nd;if(\"aborted\"===o.status)return nd;\"dirty\"===i.status&&e.dirty(),\"dirty\"===o.status&&e.dirty(),\"__proto__\"===i.value||void 0===o.value&&!a.alwaysSet||(r[i.value]=o.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}}]);var t}(),nd=Object.freeze({status:\"aborted\"}),rd=function(e){return{status:\"dirty\",value:e}},ud=function(e){return{status:\"valid\",value:e}},ad=function(e){return\"aborted\"===e.status},id=function(e){return\"dirty\"===e.status},od=function(e){return\"valid\"===e.status},sd=function(e){return\"undefined\"!=typeof Promise&&e instanceof Promise};!function(e){e.errToObj=function(e){return\"string\"==typeof e?{message:e}:e||{}},e.toString=function(e){return\"string\"==typeof e?e:null==e?void 0:e.message}}(ed||(ed={}));var cd=function(){return F(function e(t,n,r,u){D(this,e),this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=u},[{key:\"path\",get:function(){var e,t;this._cachedPath.length||(Array.isArray(this._key)?(e=this._cachedPath).push.apply(e,P(this._path).concat(P(this._key))):(t=this._cachedPath).push.apply(t,P(this._path).concat([this._key])));return this._cachedPath}}])}(),ld=function(e,t){if(od(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error(\"Validation failed but no issues detected.\");return{success:!1,get error(){if(this._error)return this._error;var t=new Wl(e.common.issues);return this._error=t,this._error}}};function dd(e){if(!e)return{};var t=e.errorMap,n=e.invalid_type_error,r=e.required_error,u=e.description;if(t&&(n||r))throw new Error('Can\\'t use \"invalid_type_error\" or \"required_error\" in conjunction with custom error map.');if(t)return{errorMap:t,description:u};return{errorMap:function(t,u){var a,i,o=e.message;return\"invalid_enum_value\"===t.code?{message:null!=o?o:u.defaultError}:void 0===u.data?{message:null!==(i=null!=o?o:r)&&void 0!==i?i:u.defaultError}:\"invalid_type\"!==t.code?{message:u.defaultError}:{message:null!==(a=null!=o?o:n)&&void 0!==a?a:u.defaultError}},description:u}}var fd,pd=function(){return F(function e(t){var n=this;D(this,e),this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this[\"~standard\"]={version:1,vendor:\"zod\",validate:function(e){return n[\"~validate\"](e)}}},[{key:\"description\",get:function(){return this._def.description}},{key:\"_getType\",value:function(e){return Hl(e.data)}},{key:\"_getOrReturnCtx\",value:function(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Hl(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}},{key:\"_processInputParams\",value:function(e){return{status:new td,ctx:{common:e.parent.common,data:e.data,parsedType:Hl(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}},{key:\"_parseSync\",value:function(e){var t=this._parse(e);if(sd(t))throw new Error(\"Synchronous parse encountered promise.\");return t}},{key:\"_parseAsync\",value:function(e){var t=this._parse(e);return Promise.resolve(t)}},{key:\"parse\",value:function(e,t){var n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}},{key:\"safeParse\",value:function(e,t){var n,r={common:{issues:[],async:null!==(n=null==t?void 0:t.async)&&void 0!==n&&n,contextualErrorMap:null==t?void 0:t.errorMap},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Hl(e)},u=this._parseSync({data:e,path:r.path,parent:r});return ld(r,u)}},{key:\"~validate\",value:function(e){var t={common:{issues:[],async:!!this[\"~standard\"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Hl(e)};if(!this[\"~standard\"].async)try{var n=this._parseSync({data:e,path:[],parent:t});return od(n)?{value:n.value}:{issues:t.common.issues}}catch(e){var r;null!=e&&null!==(r=e.message)&&void 0!==r&&null!==(r=r.toLowerCase())&&void 0!==r&&r.includes(\"encountered\")&&(this[\"~standard\"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(function(e){return od(e)?{value:e.value}:{issues:t.common.issues}})}},{key:\"parseAsync\",value:(e=v(B().m(function e(t,n){var r;return B().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.safeParseAsync(t,n);case 1:if(!(r=e.v).success){e.n=2;break}return e.a(2,r.data);case 2:throw r.error;case 3:return e.a(2)}},e,this)})),function(t,n){return e.apply(this,arguments)})},{key:\"safeParseAsync\",value:function(){var e=v(B().m(function e(t,n){var r,u,a;return B().w(function(e){for(;;)switch(e.n){case 0:return r={common:{issues:[],contextualErrorMap:null==n?void 0:n.errorMap,async:!0},path:(null==n?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Hl(t)},u=this._parse({data:t,path:r.path,parent:r}),e.n=1,sd(u)?u:Promise.resolve(u);case 1:return a=e.v,e.a(2,ld(r,a))}},e,this)}));return function(t,n){return e.apply(this,arguments)}}()},{key:\"refine\",value:function(e,t){return this._refinement(function(n,r){var u=e(n),a=function(){return r.addIssue(S({code:Kl.custom},function(e){return\"string\"==typeof t||void 0===t?{message:t}:\"function\"==typeof t?t(e):t}(n)))};return\"undefined\"!=typeof Promise&&u instanceof Promise?u.then(function(e){return!!e||(a(),!1)}):!!u||(a(),!1)})}},{key:\"refinement\",value:function(e,t){return this._refinement(function(n,r){return!!e(n)||(r.addIssue(\"function\"==typeof t?t(n,r):t),!1)})}},{key:\"_refinement\",value:function(e){return new vf({schema:this,typeName:Ef.ZodEffects,effect:{type:\"refinement\",refinement:e}})}},{key:\"superRefine\",value:function(e){return this._refinement(e)}},{key:\"optional\",value:function(){return mf.create(this,this._def)}},{key:\"nullable\",value:function(){return Df.create(this,this._def)}},{key:\"nullish\",value:function(){return this.nullable().optional()}},{key:\"array\",value:function(){return Jd.create(this)}},{key:\"promise\",value:function(){return hf.create(this,this._def)}},{key:\"or\",value:function(e){return Yd.create([this,e],this._def)}},{key:\"and\",value:function(e){return nf.create(this,e,this._def)}},{key:\"transform\",value:function(e){return new vf(S(S({},dd(this._def)),{},{schema:this,typeName:Ef.ZodEffects,effect:{type:\"transform\",transform:e}}))}},{key:\"default\",value:function(e){var t=\"function\"==typeof e?e:function(){return e};return new yf(S(S({},dd(this._def)),{},{innerType:this,defaultValue:t,typeName:Ef.ZodDefault}))}},{key:\"brand\",value:function(){return new bf(S({typeName:Ef.ZodBranded,type:this},dd(this._def)))}},{key:\"catch\",value:function(e){var t=\"function\"==typeof e?e:function(){return e};return new gf(S(S({},dd(this._def)),{},{innerType:this,catchValue:t,typeName:Ef.ZodCatch}))}},{key:\"describe\",value:function(e){return new(0,this.constructor)(S(S({},this._def),{},{description:e}))}},{key:\"pipe\",value:function(e){return Af.create(this,e)}},{key:\"readonly\",value:function(){return Cf.create(this)}},{key:\"isOptional\",value:function(){return this.safeParse(void 0).success}},{key:\"isNullable\",value:function(){return this.safeParse(null).success}}]);var e}(),hd=/^c[^\\s-]{8,}$/i,vd=/^[0-9a-z]+$/,md=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Dd=/^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$/i,yd=/^[a-z0-9_-]{21}$/i,gd=/^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/,Fd=/^[-+]?P(?!$)(?:(?:[-+]?\\d+Y)|(?:[-+]?\\d+[.,]\\d+Y$))?(?:(?:[-+]?\\d+M)|(?:[-+]?\\d+[.,]\\d+M$))?(?:(?:[-+]?\\d+W)|(?:[-+]?\\d+[.,]\\d+W$))?(?:(?:[-+]?\\d+D)|(?:[-+]?\\d+[.,]\\d+D$))?(?:T(?=[\\d+-])(?:(?:[-+]?\\d+H)|(?:[-+]?\\d+[.,]\\d+H$))?(?:(?:[-+]?\\d+M)|(?:[-+]?\\d+[.,]\\d+M$))?(?:[-+]?\\d+(?:[.,]\\d+)?S)?)??$/,Ed=/^(?!\\.)(?!.*\\.\\.)([A-Z0-9_'+\\-\\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\\-]*\\.)+[A-Z]{2,}$/i,bd=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ad=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\/(3[0-2]|[12]?[0-9])$/,Cd=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,kd=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,wd=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,_d=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Sd=\"((\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\\\d|30)|(02)-(0[1-9]|1\\\\d|2[0-8])))\",xd=new RegExp(\"^\".concat(Sd,\"$\"));function Bd(e){var t=\"[0-5]\\\\d\";e.precision?t=\"\".concat(t,\"\\\\.\\\\d{\").concat(e.precision,\"}\"):null==e.precision&&(t=\"\".concat(t,\"(\\\\.\\\\d+)?\"));var n=e.precision?\"+\":\"?\";return\"([01]\\\\d|2[0-3]):[0-5]\\\\d(:\".concat(t,\")\").concat(n)}function Id(e){return new RegExp(\"^\".concat(Bd(e),\"$\"))}function Od(e){var t=\"\".concat(Sd,\"T\").concat(Bd(e)),n=[];return n.push(e.local?\"Z?\":\"Z\"),e.offset&&n.push(\"([+-]\\\\d{2}:?\\\\d{2})\"),t=\"\".concat(t,\"(\").concat(n.join(\"|\"),\")\"),new RegExp(\"^\".concat(t,\"$\"))}function Td(e,t){return!(\"v4\"!==t&&t||!bd.test(e))||!(\"v6\"!==t&&t||!Cd.test(e))}function Pd(e,t){if(!gd.test(e))return!1;try{var n=T(e.split(\".\"),1)[0];if(!n)return!1;var r=n.replace(/-/g,\"+\").replace(/_/g,\"/\").padEnd(n.length+(4-n.length%4)%4,\"=\"),u=JSON.parse(atob(r));return\"object\"===N(u)&&null!==u&&((!(\"typ\"in u)||\"JWT\"===(null==u?void 0:u.typ))&&(!!u.alg&&(!t||u.alg===t)))}catch(e){return!1}}function jd(e,t){return!(\"v4\"!==t&&t||!Ad.test(e))||!(\"v6\"!==t&&t||!kd.test(e))}var Nd=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==Vl.string){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.string,received:t.parsedType}),nd}var n,r=new td,u=void 0,a=E(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(\"min\"===i.kind)e.data.lengthi.value&&(Xl(u=this._getOrReturnCtx(e,u),{code:Kl.too_big,maximum:i.value,type:\"string\",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(\"length\"===i.kind){var o=e.data.length>i.value,s=e.data.lengtht)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:\"maxLength\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valuer?n:r;return Number.parseInt(e.toFixed(u).replace(\".\",\"\"))%Number.parseInt(t.toFixed(u).replace(\".\",\"\"))/Math.pow(10,u)}Nd.create=function(e){var t;return new Nd(S({checks:[],typeName:Ef.ZodString,coerce:null!==(t=null==e?void 0:e.coerce)&&void 0!==t&&t},dd(e)))};var Rd=function(){function e(){var t;return D(this,e),(t=m(this,e,arguments)).min=t.gte,t.max=t.lte,t.step=t.multipleOf,t}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==Vl.number){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.number,received:t.parsedType}),nd}var n,r=void 0,u=new td,a=E(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(\"int\"===i.kind)Zl.isInteger(e.data)||(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.invalid_type,expected:\"integer\",received:\"float\",message:i.message}),u.dirty());else if(\"min\"===i.kind){(i.inclusive?e.datai.value:e.data>=i.value)&&(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.too_big,maximum:i.value,type:\"number\",inclusive:i.inclusive,exact:!1,message:i.message}),u.dirty())}else\"multipleOf\"===i.kind?0!==zd(e.data,i.value)&&(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.not_multiple_of,multipleOf:i.value,message:i.message}),u.dirty()):\"finite\"===i.kind?Number.isFinite(e.data)||(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.not_finite,message:i.message}),u.dirty()):Zl.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:u.value,value:e.data}}},{key:\"gte\",value:function(e,t){return this.setLimit(\"min\",e,!0,ed.toString(t))}},{key:\"gt\",value:function(e,t){return this.setLimit(\"min\",e,!1,ed.toString(t))}},{key:\"lte\",value:function(e,t){return this.setLimit(\"max\",e,!0,ed.toString(t))}},{key:\"lt\",value:function(e,t){return this.setLimit(\"max\",e,!1,ed.toString(t))}},{key:\"setLimit\",value:function(t,n,r,u){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[{kind:t,value:n,inclusive:r,message:ed.toString(u)}])}))}},{key:\"_addCheck\",value:function(t){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[t])}))}},{key:\"int\",value:function(e){return this._addCheck({kind:\"int\",message:ed.toString(e)})}},{key:\"positive\",value:function(e){return this._addCheck({kind:\"min\",value:0,inclusive:!1,message:ed.toString(e)})}},{key:\"negative\",value:function(e){return this._addCheck({kind:\"max\",value:0,inclusive:!1,message:ed.toString(e)})}},{key:\"nonpositive\",value:function(e){return this._addCheck({kind:\"max\",value:0,inclusive:!0,message:ed.toString(e)})}},{key:\"nonnegative\",value:function(e){return this._addCheck({kind:\"min\",value:0,inclusive:!0,message:ed.toString(e)})}},{key:\"multipleOf\",value:function(e,t){return this._addCheck({kind:\"multipleOf\",value:e,message:ed.toString(t)})}},{key:\"finite\",value:function(e){return this._addCheck({kind:\"finite\",message:ed.toString(e)})}},{key:\"safe\",value:function(e){return this._addCheck({kind:\"min\",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ed.toString(e)})._addCheck({kind:\"max\",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ed.toString(e)})}},{key:\"minValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"min\"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:\"maxValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valuen)&&(n=u.value):\"max\"===u.kind&&(null===t||u.valuea.value:e.data>=a.value)&&(Xl(n=this._getOrReturnCtx(e,n),{code:Kl.too_big,type:\"bigint\",maximum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty())}else\"multipleOf\"===a.kind?e.data%a.value!==BigInt(0)&&(Xl(n=this._getOrReturnCtx(e,n),{code:Kl.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):Zl.assertNever(a)}}catch(e){u.e(e)}finally{u.f()}return{status:r.value,value:e.data}}},{key:\"_getInvalidInput\",value:function(e){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.bigint,received:t.parsedType}),nd}},{key:\"gte\",value:function(e,t){return this.setLimit(\"min\",e,!0,ed.toString(t))}},{key:\"gt\",value:function(e,t){return this.setLimit(\"min\",e,!1,ed.toString(t))}},{key:\"lte\",value:function(e,t){return this.setLimit(\"max\",e,!0,ed.toString(t))}},{key:\"lt\",value:function(e,t){return this.setLimit(\"max\",e,!1,ed.toString(t))}},{key:\"setLimit\",value:function(t,n,r,u){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[{kind:t,value:n,inclusive:r,message:ed.toString(u)}])}))}},{key:\"_addCheck\",value:function(t){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[t])}))}},{key:\"positive\",value:function(e){return this._addCheck({kind:\"min\",value:BigInt(0),inclusive:!1,message:ed.toString(e)})}},{key:\"negative\",value:function(e){return this._addCheck({kind:\"max\",value:BigInt(0),inclusive:!1,message:ed.toString(e)})}},{key:\"nonpositive\",value:function(e){return this._addCheck({kind:\"max\",value:BigInt(0),inclusive:!0,message:ed.toString(e)})}},{key:\"nonnegative\",value:function(e){return this._addCheck({kind:\"min\",value:BigInt(0),inclusive:!0,message:ed.toString(e)})}},{key:\"multipleOf\",value:function(e,t){return this._addCheck({kind:\"multipleOf\",value:e,message:ed.toString(t)})}},{key:\"minValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"min\"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:\"maxValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valuei.value&&(Xl(u=this._getOrReturnCtx(e,u),{code:Kl.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:\"date\"}),r.dirty()):Zl.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:r.value,value:new Date(e.data.getTime())}}},{key:\"_addCheck\",value:function(t){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[t])}))}},{key:\"min\",value:function(e,t){return this._addCheck({kind:\"min\",value:e.getTime(),message:ed.toString(t)})}},{key:\"max\",value:function(e,t){return this._addCheck({kind:\"max\",value:e.getTime(),message:ed.toString(t)})}},{key:\"minDate\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"min\"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return null!=t?new Date(t):null}},{key:\"maxDate\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valueu.exactLength.value,i=n.data.lengthu.maxLength.value&&(Xl(n,{code:Kl.too_big,maximum:u.maxLength.value,type:\"array\",inclusive:!0,exact:!1,message:u.maxLength.message}),r.dirty()),n.common.async)return Promise.all(P(n.data).map(function(e,t){return u.type._parseAsync(new cd(n,e,n.path,t))})).then(function(e){return td.mergeArray(r,e)});var o=P(n.data).map(function(e,t){return u.type._parseSync(new cd(n,e,n.path,t))});return td.mergeArray(r,o)}},{key:\"element\",get:function(){return this._def.type}},{key:\"min\",value:function(t,n){return new e(S(S({},this._def),{},{minLength:{value:t,message:ed.toString(n)}}))}},{key:\"max\",value:function(t,n){return new e(S(S({},this._def),{},{maxLength:{value:t,message:ed.toString(n)}}))}},{key:\"length\",value:function(t,n){return new e(S(S({},this._def),{},{exactLength:{value:t,message:ed.toString(n)}}))}},{key:\"nonempty\",value:function(e){return this.min(1,e)}}])}();function Qd(e){if(e instanceof Gd){var t={};for(var n in e.shape){var r=e.shape[n];t[n]=mf.create(Qd(r))}return new Gd(S(S({},e._def),{},{shape:function(){return t}}))}return e instanceof Jd?new Jd(S(S({},e._def),{},{type:Qd(e.element)})):e instanceof mf?mf.create(Qd(e.unwrap())):e instanceof Df?Df.create(Qd(e.unwrap())):e instanceof rf?rf.create(e.items.map(function(e){return Qd(e)})):e}Jd.create=function(e,t){return new Jd(S({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Ef.ZodArray},dd(t)))};var Gd=function(){function e(){var t;return D(this,e),(t=m(this,e,arguments))._cached=null,t.nonstrict=t.passthrough,t.augment=t.extend,t}return k(e,pd),F(e,[{key:\"_getCached\",value:function(){if(null!==this._cached)return this._cached;var e=this._def.shape(),t=Zl.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}},{key:\"_parse\",value:function(e){if(this._getType(e)!==Vl.object){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.object,received:t.parsedType}),nd}var n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._getCached(),i=a.shape,o=a.keys,s=[];if(!(this._def.catchall instanceof Kd&&\"strip\"===this._def.unknownKeys))for(var c in u.data)o.includes(c)||s.push(c);var l,d=[],f=E(o);try{for(f.s();!(l=f.n()).done;){var p=l.value,h=i[p],m=u.data[p];d.push({key:{status:\"valid\",value:p},value:h._parse(new cd(u,m,u.path,p)),alwaysSet:p in u.data})}}catch(e){f.e(e)}finally{f.f()}if(this._def.catchall instanceof Kd){var D=this._def.unknownKeys;if(\"passthrough\"===D){var y,g=E(s);try{for(g.s();!(y=g.n()).done;){var F=y.value;d.push({key:{status:\"valid\",value:F},value:{status:\"valid\",value:u.data[F]}})}}catch(e){g.e(e)}finally{g.f()}}else if(\"strict\"===D)s.length>0&&(Xl(u,{code:Kl.unrecognized_keys,keys:s}),r.dirty());else if(\"strip\"!==D)throw new Error(\"Internal ZodObject error: invalid unknownKeys value.\")}else{var b,A=this._def.catchall,C=E(s);try{for(C.s();!(b=C.n()).done;){var k=b.value,w=u.data[k];d.push({key:{status:\"valid\",value:k},value:A._parse(new cd(u,w,u.path,k)),alwaysSet:k in u.data})}}catch(e){C.e(e)}finally{C.f()}}return u.common.async?Promise.resolve().then(v(B().m(function e(){var t,n,r,u,a,i,o;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:t=[],n=E(d),e.p=1,n.s();case 2:if((r=n.n()).done){e.n=6;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:i=e.v,t.push({key:a,value:i,alwaysSet:u.alwaysSet});case 5:e.n=2;break;case 6:e.n=8;break;case 7:e.p=7,o=e.v,n.e(o);case 8:return e.p=8,n.f(),e.f(8);case 9:return e.a(2,t)}},e,null,[[1,7,8,9]])}))).then(function(e){return td.mergeObjectSync(r,e)}):td.mergeObjectSync(r,d)}},{key:\"shape\",get:function(){return this._def.shape()}},{key:\"strict\",value:function(t){var n=this;return ed.errToObj,new e(S(S({},this._def),{},{unknownKeys:\"strict\"},void 0!==t?{errorMap:function(e,r){var u,a,i,o,s=null!==(u=null===(a=(i=n._def).errorMap)||void 0===a?void 0:a.call(i,e,r).message)&&void 0!==u?u:r.defaultError;return\"unrecognized_keys\"===e.code?{message:null!==(o=ed.errToObj(t).message)&&void 0!==o?o:s}:{message:s}}}:{}))}},{key:\"strip\",value:function(){return new e(S(S({},this._def),{},{unknownKeys:\"strip\"}))}},{key:\"passthrough\",value:function(){return new e(S(S({},this._def),{},{unknownKeys:\"passthrough\"}))}},{key:\"extend\",value:function(t){var n=this;return new e(S(S({},this._def),{},{shape:function(){return S(S({},n._def.shape()),t)}}))}},{key:\"merge\",value:function(t){var n=this;return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:function(){return S(S({},n._def.shape()),t._def.shape())},typeName:Ef.ZodObject})}},{key:\"setKey\",value:function(e,t){return this.augment(b({},e,t))}},{key:\"catchall\",value:function(t){return new e(S(S({},this._def),{},{catchall:t}))}},{key:\"pick\",value:function(t){var n,r={},u=E(Zl.objectKeys(t));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]&&this.shape[a]&&(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"omit\",value:function(t){var n,r={},u=E(Zl.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]||(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"deepPartial\",value:function(){return Qd(this)}},{key:\"partial\",value:function(t){var n,r={},u=E(Zl.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value,i=this.shape[a];t&&!t[a]?r[a]=i:r[a]=i.optional()}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"required\",value:function(t){var n,r={},u=E(Zl.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;if(t&&!t[a])r[a]=this.shape[a];else{for(var i=this.shape[a];i instanceof mf;)i=i._def.innerType;r[a]=i}}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"keyof\",value:function(){return df(Zl.objectKeys(this.shape))}}])}();Gd.create=function(e,t){return new Gd(S({shape:function(){return e},unknownKeys:\"strip\",catchall:Kd.create(),typeName:Ef.ZodObject},dd(t)))},Gd.strictCreate=function(e,t){return new Gd(S({shape:function(){return e},unknownKeys:\"strict\",catchall:Kd.create(),typeName:Ef.ZodObject},dd(t)))},Gd.lazycreate=function(e,t){return new Gd(S({shape:e,unknownKeys:\"strip\",catchall:Kd.create(),typeName:Ef.ZodObject},dd(t)))};var Yd=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx,n=this._def.options;if(t.common.async)return Promise.all(n.map(function(){var e=v(B().m(function e(n){var r,u,a;return B().w(function(e){for(;;)switch(e.n){case 0:return r=S(S({},t),{},{common:S(S({},t.common),{},{issues:[]}),parent:null}),e.n=1,n._parseAsync({data:t.data,path:t.path,parent:r});case 1:return u=e.v,a=r,e.a(2,{result:u,ctx:a})}},e)}));return function(t){return e.apply(this,arguments)}}())).then(function(e){var n,r=E(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if(\"valid\"===u.result.status)return u.result}}catch(e){r.e(e)}finally{r.f()}var a,i=E(e);try{for(i.s();!(a=i.n()).done;){var o,s=a.value;if(\"dirty\"===s.result.status)return(o=t.common.issues).push.apply(o,P(s.ctx.common.issues)),s.result}}catch(e){i.e(e)}finally{i.f()}var c=e.map(function(e){return new Wl(e.ctx.common.issues)});return Xl(t,{code:Kl.invalid_union,unionErrors:c}),nd});var r,u,a=void 0,i=[],o=E(n);try{for(o.s();!(r=o.n()).done;){var s=r.value,c=S(S({},t),{},{common:S(S({},t.common),{},{issues:[]}),parent:null}),l=s._parseSync({data:t.data,path:t.path,parent:c});if(\"valid\"===l.status)return l;\"dirty\"!==l.status||a||(a={result:l,ctx:c}),c.common.issues.length&&i.push(c.common.issues)}}catch(e){o.e(e)}finally{o.f()}if(a)return(u=t.common.issues).push.apply(u,P(a.ctx.common.issues)),a.result;var d=i.map(function(e){return new Wl(e)});return Xl(t,{code:Kl.invalid_union,unionErrors:d}),nd}},{key:\"options\",get:function(){return this._def.options}}])}();Yd.create=function(e,t){return new Yd(S({options:e,typeName:Ef.ZodUnion},dd(t)))};var Xd=function(e){return e instanceof cf?Xd(e.schema):e instanceof vf?Xd(e.innerType()):e instanceof lf?[e.value]:e instanceof ff?e.options:e instanceof pf?Zl.objectValues(e.enum):e instanceof yf?Xd(e._def.innerType):e instanceof qd?[void 0]:e instanceof Ud?[null]:e instanceof mf?[void 0].concat(P(Xd(e.unwrap()))):e instanceof Df?[null].concat(P(Xd(e.unwrap()))):e instanceof bf||e instanceof Cf?Xd(e.unwrap()):e instanceof gf?Xd(e._def.innerType):[]},ef=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==Vl.object)return Xl(t,{code:Kl.invalid_type,expected:Vl.object,received:t.parsedType}),nd;var n=this.discriminator,r=t.data[n],u=this.optionsMap.get(r);return u?t.common.async?u._parseAsync({data:t.data,path:t.path,parent:t}):u._parseSync({data:t.data,path:t.path,parent:t}):(Xl(t,{code:Kl.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),nd)}},{key:\"discriminator\",get:function(){return this._def.discriminator}},{key:\"options\",get:function(){return this._def.options}},{key:\"optionsMap\",get:function(){return this._def.optionsMap}}],[{key:\"create\",value:function(t,n,r){var u,a=new Map,i=E(n);try{for(i.s();!(u=i.n()).done;){var o=u.value,s=Xd(o.shape[t]);if(!s.length)throw new Error(\"A discriminator value for key `\".concat(t,\"` could not be extracted from all schema options\"));var c,l=E(s);try{for(l.s();!(c=l.n()).done;){var d=c.value;if(a.has(d))throw new Error(\"Discriminator property \".concat(String(t),\" has duplicate value \").concat(String(d)));a.set(d,o)}}catch(e){l.e(e)}finally{l.f()}}}catch(e){i.e(e)}finally{i.f()}return new e(S({typeName:Ef.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:a},dd(r)))}}])}();function tf(e,t){var n=Hl(e),r=Hl(t);if(e===t)return{valid:!0,data:e};if(n===Vl.object&&r===Vl.object){var u,a=Zl.objectKeys(t),i=Zl.objectKeys(e).filter(function(e){return-1!==a.indexOf(e)}),o=S(S({},e),t),s=E(i);try{for(s.s();!(u=s.n()).done;){var c=u.value,l=tf(e[c],t[c]);if(!l.valid)return{valid:!1};o[c]=l.data}}catch(e){s.e(e)}finally{s.f()}return{valid:!0,data:o}}if(n===Vl.array&&r===Vl.array){if(e.length!==t.length)return{valid:!1};for(var d=[],f=0;fthis._def.items.length&&(Xl(u,{code:Kl.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:\"array\"}),r.dirty());var a=P(u.data).map(function(e,n){var r=t._def.items[n]||t._def.rest;return r?r._parse(new cd(u,e,u.path,n)):null}).filter(function(e){return!!e});return u.common.async?Promise.all(a).then(function(e){return td.mergeArray(r,e)}):td.mergeArray(r,a)}},{key:\"items\",get:function(){return this._def.items}},{key:\"rest\",value:function(t){return new e(S(S({},this._def),{},{rest:t}))}}])}();rf.create=function(e,t){if(!Array.isArray(e))throw new Error(\"You must pass an array of schemas to z.tuple([ ... ])\");return new rf(S({items:e,typeName:Ef.ZodTuple,rest:null},dd(t)))};var uf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"keySchema\",get:function(){return this._def.keyType}},{key:\"valueSchema\",get:function(){return this._def.valueType}},{key:\"_parse\",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==Vl.object)return Xl(r,{code:Kl.invalid_type,expected:Vl.object,received:r.parsedType}),nd;var u=[],a=this._def.keyType,i=this._def.valueType;for(var o in r.data)u.push({key:a._parse(new cd(r,o,r.path,o)),value:i._parse(new cd(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?td.mergeObjectAsync(n,u):td.mergeObjectSync(n,u)}},{key:\"element\",get:function(){return this._def.valueType}}],[{key:\"create\",value:function(t,n,r){return new e(n instanceof pd?S({keyType:t,valueType:n,typeName:Ef.ZodRecord},dd(r)):S({keyType:Nd.create(),valueType:t,typeName:Ef.ZodRecord},dd(n)))}}])}(),af=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"keySchema\",get:function(){return this._def.keyType}},{key:\"valueSchema\",get:function(){return this._def.valueType}},{key:\"_parse\",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==Vl.map)return Xl(r,{code:Kl.invalid_type,expected:Vl.map,received:r.parsedType}),nd;var u=this._def.keyType,a=this._def.valueType,i=P(r.data.entries()).map(function(e,t){var n=T(e,2),i=n[0],o=n[1];return{key:u._parse(new cd(r,i,r.path,[t,\"key\"])),value:a._parse(new cd(r,o,r.path,[t,\"value\"]))}});if(r.common.async){var o=new Map;return Promise.resolve().then(v(B().m(function e(){var t,r,u,a,s,c;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:t=E(i),e.p=1,t.s();case 2:if((r=t.n()).done){e.n=7;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:if(s=e.v,\"aborted\"!==a.status&&\"aborted\"!==s.status){e.n=5;break}return e.a(2,nd);case 5:\"dirty\"!==a.status&&\"dirty\"!==s.status||n.dirty(),o.set(a.value,s.value);case 6:e.n=2;break;case 7:e.n=9;break;case 8:e.p=8,c=e.v,t.e(c);case 9:return e.p=9,t.f(),e.f(9);case 10:return e.a(2,{status:n.value,value:o})}},e,null,[[1,8,9,10]])})))}var s,c=new Map,l=E(i);try{for(l.s();!(s=l.n()).done;){var d=s.value,f=d.key,p=d.value;if(\"aborted\"===f.status||\"aborted\"===p.status)return nd;\"dirty\"!==f.status&&\"dirty\"!==p.status||n.dirty(),c.set(f.value,p.value)}}catch(e){l.e(e)}finally{l.f()}return{status:n.value,value:c}}}])}();af.create=function(e,t,n){return new af(S({valueType:t,keyType:e,typeName:Ef.ZodMap},dd(n)))};var of=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==Vl.set)return Xl(r,{code:Kl.invalid_type,expected:Vl.set,received:r.parsedType}),nd;var u=this._def;null!==u.minSize&&r.data.sizeu.maxSize.value&&(Xl(r,{code:Kl.too_big,maximum:u.maxSize.value,type:\"set\",inclusive:!0,exact:!1,message:u.maxSize.message}),n.dirty());var a=this._def.valueType;function i(e){var t,r=new Set,u=E(e);try{for(u.s();!(t=u.n()).done;){var a=t.value;if(\"aborted\"===a.status)return nd;\"dirty\"===a.status&&n.dirty(),r.add(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:n.value,value:r}}var o=P(r.data.values()).map(function(e,t){return a._parse(new cd(r,e,r.path,t))});return r.common.async?Promise.all(o).then(function(e){return i(e)}):i(o)}},{key:\"min\",value:function(t,n){return new e(S(S({},this._def),{},{minSize:{value:t,message:ed.toString(n)}}))}},{key:\"max\",value:function(t,n){return new e(S(S({},this._def),{},{maxSize:{value:t,message:ed.toString(n)}}))}},{key:\"size\",value:function(e,t){return this.min(e,t).max(e,t)}},{key:\"nonempty\",value:function(e){return this.min(1,e)}}])}();of.create=function(e,t){return new of(S({valueType:e,minSize:null,maxSize:null,typeName:Ef.ZodSet},dd(t)))};var sf=function(){function e(){var t;return D(this,e),(t=m(this,e,arguments)).validate=t.implement,t}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==Vl.function)return Xl(t,{code:Kl.invalid_type,expected:Vl.function,received:t.parsedType}),nd;function n(e,n){return Yl({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Gl(),Jl].filter(function(e){return!!e}),issueData:{code:Kl.invalid_arguments,argumentsError:n}})}function r(e,n){return Yl({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Gl(),Jl].filter(function(e){return!!e}),issueData:{code:Kl.invalid_return_type,returnTypeError:n}})}var u={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof hf){var i=this;return ud(v(B().m(function e(){var t,o,s,c,l,d,f,p=arguments;return B().w(function(e){for(;;)switch(e.n){case 0:for(t=p.length,o=new Array(t),s=0;s1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(t,S(S({},this._def),n))}},{key:\"exclude\",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(this.options.filter(function(e){return!t.includes(e)}),S(S({},this._def),n))}}])}();ff.create=df;var pf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=Zl.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==Vl.string&&n.parsedType!==Vl.number){var r=Zl.objectValues(t);return Xl(n,{expected:Zl.joinValues(r),received:n.parsedType,code:Kl.invalid_type}),nd}if(this._cache||(this._cache=new Set(Zl.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){var u=Zl.objectValues(t);return Xl(n,{received:n.data,code:Kl.invalid_enum_value,options:u}),nd}return ud(e.data)}},{key:\"enum\",get:function(){return this._def.values}}])}();pf.create=function(e,t){return new pf(S({values:e,typeName:Ef.ZodNativeEnum},dd(t)))};var hf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"unwrap\",value:function(){return this._def.type}},{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e).ctx;if(n.parsedType!==Vl.promise&&!1===n.common.async)return Xl(n,{code:Kl.invalid_type,expected:Vl.promise,received:n.parsedType}),nd;var r=n.parsedType===Vl.promise?n.data:Promise.resolve(n.data);return ud(r.then(function(e){return t._def.type.parseAsync(e,{path:n.path,errorMap:n.common.contextualErrorMap})}))}}])}();hf.create=function(e,t){return new hf(S({type:e,typeName:Ef.ZodPromise},dd(t)))};var vf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"innerType\",value:function(){return this._def.schema}},{key:\"sourceType\",value:function(){return this._def.schema._def.typeName===Ef.ZodEffects?this._def.schema.sourceType():this._def.schema}},{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._def.effect||null,i={addIssue:function(e){Xl(u,e),e.fatal?r.abort():r.dirty()},get path(){return u.path}};if(i.addIssue=i.addIssue.bind(i),\"preprocess\"===a.type){var o=a.transform(u.data,i);if(u.common.async)return Promise.resolve(o).then(function(){var e=v(B().m(function e(n){var a;return B().w(function(e){for(;;)switch(e.n){case 0:if(\"aborted\"!==r.value){e.n=1;break}return e.a(2,nd);case 1:return e.n=2,t._def.schema._parseAsync({data:n,path:u.path,parent:u});case 2:if(\"aborted\"!==(a=e.v).status){e.n=3;break}return e.a(2,nd);case 3:if(\"dirty\"!==a.status){e.n=4;break}return e.a(2,rd(a.value));case 4:if(\"dirty\"!==r.value){e.n=5;break}return e.a(2,rd(a.value));case 5:return e.a(2,a)}},e)}));return function(t){return e.apply(this,arguments)}}());if(\"aborted\"===r.value)return nd;var s=this._def.schema._parseSync({data:o,path:u.path,parent:u});return\"aborted\"===s.status?nd:\"dirty\"===s.status||\"dirty\"===r.value?rd(s.value):s}if(\"refinement\"===a.type){var c=function(e){var t=a.refinement(e,i);if(u.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error(\"Async refinement encountered during synchronous parse operation. Use .parseAsync instead.\");return e};if(!1===u.common.async){var l=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});return\"aborted\"===l.status?nd:(\"dirty\"===l.status&&r.dirty(),c(l.value),{status:r.value,value:l.value})}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return\"aborted\"===e.status?nd:(\"dirty\"===e.status&&r.dirty(),c(e.value).then(function(){return{status:r.value,value:e.value}}))})}if(\"transform\"===a.type){if(!1===u.common.async){var d=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});if(!od(d))return nd;var f=a.transform(d.value,i);if(f instanceof Promise)throw new Error(\"Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.\");return{status:r.value,value:f}}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return od(e)?Promise.resolve(a.transform(e.value,i)).then(function(e){return{status:r.value,value:e}}):nd})}Zl.assertNever(a)}}])}();vf.create=function(e,t,n){return new vf(S({schema:e,typeName:Ef.ZodEffects,effect:t},dd(n)))},vf.createWithPreprocess=function(e,t,n){return new vf(S({schema:t,effect:{type:\"preprocess\",transform:e},typeName:Ef.ZodEffects},dd(n)))};var mf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){return this._getType(e)===Vl.undefined?ud(void 0):this._def.innerType._parse(e)}},{key:\"unwrap\",value:function(){return this._def.innerType}}])}();mf.create=function(e,t){return new mf(S({innerType:e,typeName:Ef.ZodOptional},dd(t)))};var Df=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){return this._getType(e)===Vl.null?ud(null):this._def.innerType._parse(e)}},{key:\"unwrap\",value:function(){return this._def.innerType}}])}();Df.create=function(e,t){return new Df(S({innerType:e,typeName:Ef.ZodNullable},dd(t)))};var yf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return t.parsedType===Vl.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}},{key:\"removeDefault\",value:function(){return this._def.innerType}}])}();yf.create=function(e,t){return new yf(S({innerType:e,typeName:Ef.ZodDefault,defaultValue:\"function\"==typeof t.default?t.default:function(){return t.default}},dd(t)))};var gf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e).ctx,r=S(S({},n),{},{common:S(S({},n.common),{},{issues:[]})}),u=this._def.innerType._parse({data:r.data,path:r.path,parent:S({},r)});return sd(u)?u.then(function(e){return{status:\"valid\",value:\"valid\"===e.status?e.value:t._def.catchValue({get error(){return new Wl(r.common.issues)},input:r.data})}}):{status:\"valid\",value:\"valid\"===u.status?u.value:this._def.catchValue({get error(){return new Wl(r.common.issues)},input:r.data})}}},{key:\"removeCatch\",value:function(){return this._def.innerType}}])}();gf.create=function(e,t){return new gf(S({innerType:e,typeName:Ef.ZodCatch,catchValue:\"function\"==typeof t.catch?t.catch:function(){return t.catch}},dd(t)))};var Ff=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){if(this._getType(e)!==Vl.nan){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.nan,received:t.parsedType}),nd}return{status:\"valid\",value:e.data}}}])}();Ff.create=function(e){return new Ff(S({typeName:Ef.ZodNaN},dd(e)))};var Ef,bf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}},{key:\"unwrap\",value:function(){return this._def.type}}])}(),Af=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx;if(u.common.async){var a=function(){var e=v(B().m(function e(){var n;return B().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,t._def.in._parseAsync({data:u.data,path:u.path,parent:u});case 1:if(\"aborted\"!==(n=e.v).status){e.n=2;break}return e.a(2,nd);case 2:if(\"dirty\"!==n.status){e.n=3;break}return r.dirty(),e.a(2,rd(n.value));case 3:return e.a(2,t._def.out._parseAsync({data:n.value,path:u.path,parent:u}));case 4:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();return a()}var i=this._def.in._parseSync({data:u.data,path:u.path,parent:u});return\"aborted\"===i.status?nd:\"dirty\"===i.status?(r.dirty(),{status:\"dirty\",value:i.value}):this._def.out._parseSync({data:i.value,path:u.path,parent:u})}}],[{key:\"create\",value:function(t,n){return new e({in:t,out:n,typeName:Ef.ZodPipeline})}}])}(),Cf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._def.innerType._parse(e),n=function(e){return od(e)&&(e.value=Object.freeze(e.value)),e};return sd(t)?t.then(function(e){return n(e)}):n(t)}},{key:\"unwrap\",value:function(){return this._def.innerType}}])}();Cf.create=function(e,t){return new Cf(S({innerType:e,typeName:Ef.ZodReadonly},dd(t)))},Gd.lazycreate,function(e){e.ZodString=\"ZodString\",e.ZodNumber=\"ZodNumber\",e.ZodNaN=\"ZodNaN\",e.ZodBigInt=\"ZodBigInt\",e.ZodBoolean=\"ZodBoolean\",e.ZodDate=\"ZodDate\",e.ZodSymbol=\"ZodSymbol\",e.ZodUndefined=\"ZodUndefined\",e.ZodNull=\"ZodNull\",e.ZodAny=\"ZodAny\",e.ZodUnknown=\"ZodUnknown\",e.ZodNever=\"ZodNever\",e.ZodVoid=\"ZodVoid\",e.ZodArray=\"ZodArray\",e.ZodObject=\"ZodObject\",e.ZodUnion=\"ZodUnion\",e.ZodDiscriminatedUnion=\"ZodDiscriminatedUnion\",e.ZodIntersection=\"ZodIntersection\",e.ZodTuple=\"ZodTuple\",e.ZodRecord=\"ZodRecord\",e.ZodMap=\"ZodMap\",e.ZodSet=\"ZodSet\",e.ZodFunction=\"ZodFunction\",e.ZodLazy=\"ZodLazy\",e.ZodLiteral=\"ZodLiteral\",e.ZodEnum=\"ZodEnum\",e.ZodEffects=\"ZodEffects\",e.ZodNativeEnum=\"ZodNativeEnum\",e.ZodOptional=\"ZodOptional\",e.ZodNullable=\"ZodNullable\",e.ZodDefault=\"ZodDefault\",e.ZodCatch=\"ZodCatch\",e.ZodPromise=\"ZodPromise\",e.ZodBranded=\"ZodBranded\",e.ZodPipeline=\"ZodPipeline\",e.ZodReadonly=\"ZodReadonly\"}(Ef||(Ef={})),Nd.create,Rd.create,Ff.create,Md.create,Zd.create,Ld.create,$d.create,qd.create,Ud.create,Vd.create,Hd.create,Kd.create,Wd.create,Jd.create,Gd.create,Gd.strictCreate,Yd.create,ef.create,nf.create,rf.create,uf.create,af.create,of.create,sf.create,cf.create,lf.create,ff.create,pf.create,hf.create,vf.create,mf.create,Df.create,vf.createWithPreprocess,Af.create;var kf=({prefix:e,size:t=16,alphabet:n=\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\",separator:r=\"-\"}={})=>{const u=()=>{const e=n.length,r=new Array(t);for(let u=0;u`${e}${r}${u()}`},wf=kf();function _f(e=globalThis){var t,n,r;return e.window?\"runtime/browser\":(null==(t=e.navigator)?void 0:t.userAgent)?`runtime/${e.navigator.userAgent.toLowerCase()}`:(null==(r=null==(n=e.process)?void 0:n.versions)?void 0:r.node)?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?\"runtime/vercel-edge\":\"runtime/unknown\"}function Sf(e){if(null==e)return{};const t={};if(e instanceof Headers)e.forEach((e,n)=>{t[n.toLowerCase()]=e});else{Array.isArray(e)||(e=Object.entries(e));for(const[n,r]of e)null!=r&&(t[n.toLowerCase()]=r)}return t}function xf(e,...t){const n=new Headers(Sf(e)),r=n.get(\"user-agent\")||\"\";return n.set(\"user-agent\",[r,...t].filter(Boolean).join(\" \")),Object.fromEntries(n.entries())}var Bf=/\"__proto__\"\\s*:/,If=/\"constructor\"\\s*:/;function Of(e){const t=JSON.parse(e);return null===t||\"object\"!=typeof t||!1===Bf.test(e)&&!1===If.test(e)?t:function(e){let t=[e];for(;t.length;){const e=t;t=[];for(const n of e){if(Object.prototype.hasOwnProperty.call(n,\"__proto__\"))throw new SyntaxError(\"Object contains forbidden prototype property\");if(Object.prototype.hasOwnProperty.call(n,\"constructor\")&&Object.prototype.hasOwnProperty.call(n.constructor,\"prototype\"))throw new SyntaxError(\"Object contains forbidden prototype property\");for(const e in n){const r=n[e];r&&\"object\"==typeof r&&t.push(r)}}}return e}(t)}var Tf=Symbol.for(\"vercel.ai.validator\");function Pf(e){return function(e){return\"object\"==typeof e&&null!==e&&Tf in e&&!0===e[Tf]&&\"validate\"in e}(e)?e:\"function\"==typeof e?e():(t=e,n=async e=>{const n=await t[\"~standard\"].validate(e);return null==n.issues?{success:!0,value:n.value}:{success:!1,error:new ka({value:e,cause:n.issues})}},{[Tf]:!0,validate:n});var t,n}async function jf({value:e,schema:t}){const n=await Nf({value:e,schema:t});if(!n.success)throw ka.wrap({value:e,cause:n.error});return n.value}async function Nf({value:e,schema:t}){const n=Pf(t);try{if(null==n.validate)return{success:!0,value:e,rawValue:e};const t=await n.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:ka.wrap({value:e,cause:t.error}),rawValue:e}}catch(t){return{success:!1,error:ka.wrap({value:e,cause:t}),rawValue:e}}}async function zf({text:e,schema:t}){try{const n=function(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(t){return Of(e)}try{return Of(e)}finally{Error.stackTraceLimit=t}}(e);return null==t?{success:!0,value:n,rawValue:n}:await Nf({value:n,schema:t})}catch(t){return{success:!1,error:Fa.isInstance(t)?t:new Fa({text:e,cause:t}),rawValue:void 0}}}async function Rf(e){return\"function\"==typeof e&&(e=e()),Promise.resolve(e)}var Mf=(e,t)=>{let n=0;for(;nqf(e,t,n))};switch(r){case\"string\":case\"format:date-time\":return{type:\"string\",format:\"date-time\"};case\"format:date\":return{type:\"string\",format:\"date\"};case\"integer\":return Uf(e)}}var Uf=e=>{const t={type:\"integer\",format:\"unix-time\"};for(const n of e.checks)switch(n.kind){case\"min\":t.minimum=n.value;break;case\"max\":t.maximum=n.value}return t};var Vf=void 0,Hf=/^[cC][^\\s-]{8,}$/,Kf=/^[0-9a-z]+$/,Wf=/^[0-9A-HJKMNP-TV-Z]{26}$/,Jf=/^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_'+\\-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$/,Qf=()=>(void 0===Vf&&(Vf=RegExp(\"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\",\"u\")),Vf),Gf=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\/(3[0-2]|[12]?[0-9])$/,Yf=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Xf=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ep=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,tp=/^[a-zA-Z0-9_-]{21}$/,np=/^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/;function rp(e,t){const n={type:\"string\"};if(e.checks)for(const r of e.checks)switch(r.kind){case\"min\":n.minLength=\"number\"==typeof n.minLength?Math.max(n.minLength,r.value):r.value;break;case\"max\":n.maxLength=\"number\"==typeof n.maxLength?Math.min(n.maxLength,r.value):r.value;break;case\"email\":switch(t.emailStrategy){case\"format:email\":ip(n,\"email\",r.message,t);break;case\"format:idn-email\":ip(n,\"idn-email\",r.message,t);break;case\"pattern:zod\":op(n,Jf,r.message,t)}break;case\"url\":ip(n,\"uri\",r.message,t);break;case\"uuid\":ip(n,\"uuid\",r.message,t);break;case\"regex\":op(n,r.regex,r.message,t);break;case\"cuid\":op(n,Hf,r.message,t);break;case\"cuid2\":op(n,Kf,r.message,t);break;case\"startsWith\":op(n,RegExp(`^${up(r.value,t)}`),r.message,t);break;case\"endsWith\":op(n,RegExp(`${up(r.value,t)}$`),r.message,t);break;case\"datetime\":ip(n,\"date-time\",r.message,t);break;case\"date\":ip(n,\"date\",r.message,t);break;case\"time\":ip(n,\"time\",r.message,t);break;case\"duration\":ip(n,\"duration\",r.message,t);break;case\"length\":n.minLength=\"number\"==typeof n.minLength?Math.max(n.minLength,r.value):r.value,n.maxLength=\"number\"==typeof n.maxLength?Math.min(n.maxLength,r.value):r.value;break;case\"includes\":op(n,RegExp(up(r.value,t)),r.message,t);break;case\"ip\":\"v6\"!==r.version&&ip(n,\"ipv4\",r.message,t),\"v4\"!==r.version&&ip(n,\"ipv6\",r.message,t);break;case\"base64url\":op(n,ep,r.message,t);break;case\"jwt\":op(n,np,r.message,t);break;case\"cidr\":\"v6\"!==r.version&&op(n,Gf,r.message,t),\"v4\"!==r.version&&op(n,Yf,r.message,t);break;case\"emoji\":op(n,Qf(),r.message,t);break;case\"ulid\":op(n,Wf,r.message,t);break;case\"base64\":switch(t.base64Strategy){case\"format:binary\":ip(n,\"binary\",r.message,t);break;case\"contentEncoding:base64\":n.contentEncoding=\"base64\";break;case\"pattern:zod\":op(n,Xf,r.message,t)}break;case\"nanoid\":op(n,tp,r.message,t)}return n}function up(e,t){return\"escape\"===t.patternStrategy?function(e){let t=\"\";for(let n=0;ne.format))?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...n&&r.errorMessages&&{errorMessage:{format:n}}})):e.format=t}function op(e,t,n,r){var u;e.pattern||(null==(u=e.allOf)?void 0:u.some(e=>e.pattern))?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:sp(t,r),...n&&r.errorMessages&&{errorMessage:{pattern:n}}})):e.pattern=sp(t,r)}function sp(e,t){var n;if(!t.applyRegexFlags||!e.flags)return e.source;const r=e.flags.includes(\"i\"),u=e.flags.includes(\"m\"),a=e.flags.includes(\"s\"),i=r?e.source.toLowerCase():e.source;let o=\"\",s=!1,c=!1,l=!1;for(let e=0;e{const n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((e,n)=>vp(e._def,{...t,currentPath:[...t.currentPath,\"anyOf\",`${n}`]})).filter(e=>!!e&&(!t.strictUnions||\"object\"==typeof e&&Object.keys(e).length>0));return n.length?{anyOf:n}:void 0};function fp(e,t){const n={type:\"object\",properties:{}},r=[],u=e.shape();for(const e in u){let a=u[e];if(void 0===a||void 0===a._def)continue;const i=pp(a),o=vp(a._def,{...t,currentPath:[...t.currentPath,\"properties\",e],propertyPath:[...t.currentPath,\"properties\",e]});void 0!==o&&(n.properties[e]=o,i||r.push(e))}r.length&&(n.required=r);const a=function(e,t){if(\"ZodNever\"!==e.catchall._def.typeName)return vp(e.catchall._def,{...t,currentPath:[...t.currentPath,\"additionalProperties\"]});switch(e.unknownKeys){case\"passthrough\":return t.allowedAdditionalProperties;case\"strict\":return t.rejectedAdditionalProperties;case\"strip\":return\"strict\"===t.removeAdditionalStrategy?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}(e,t);return void 0!==a&&(n.additionalProperties=a),n}function pp(e){try{return e.isOptional()}catch(e){return!0}}var hp=(e,t,n)=>{switch(t){case Ef.ZodString:return rp(e,n);case Ef.ZodNumber:return function(e){const t={type:\"number\"};if(!e.checks)return t;for(const n of e.checks)switch(n.kind){case\"int\":t.type=\"integer\";break;case\"min\":n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case\"max\":n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case\"multipleOf\":t.multipleOf=n.value}return t}(e);case Ef.ZodObject:return fp(e,n);case Ef.ZodBigInt:return function(e){const t={type:\"integer\",format:\"int64\"};if(!e.checks)return t;for(const n of e.checks)switch(n.kind){case\"min\":n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case\"max\":n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case\"multipleOf\":t.multipleOf=n.value}return t}(e);case Ef.ZodBoolean:return{type:\"boolean\"};case Ef.ZodDate:return qf(e,n);case Ef.ZodUndefined:return{not:{}};case Ef.ZodNull:return{type:\"null\"};case Ef.ZodArray:return function(e,t){var n,r,u;const a={type:\"array\"};return(null==(n=e.type)?void 0:n._def)&&(null==(u=null==(r=e.type)?void 0:r._def)?void 0:u.typeName)!==Ef.ZodAny&&(a.items=vp(e.type._def,{...t,currentPath:[...t.currentPath,\"items\"]})),e.minLength&&(a.minItems=e.minLength.value),e.maxLength&&(a.maxItems=e.maxLength.value),e.exactLength&&(a.minItems=e.exactLength.value,a.maxItems=e.exactLength.value),a}(e,n);case Ef.ZodUnion:case Ef.ZodDiscriminatedUnion:return function(e,t){const n=e.options instanceof Map?Array.from(e.options.values()):e.options;if(n.every(e=>e._def.typeName in lp&&(!e._def.checks||!e._def.checks.length))){const e=n.reduce((e,t)=>{const n=lp[t._def.typeName];return n&&!e.includes(n)?[...e,n]:e},[]);return{type:e.length>1?e:e[0]}}if(n.every(e=>\"ZodLiteral\"===e._def.typeName&&!e.description)){const e=n.reduce((e,t)=>{const n=typeof t._def.value;switch(n){case\"string\":case\"number\":case\"boolean\":return[...e,n];case\"bigint\":return[...e,\"integer\"];case\"object\":if(null===t._def.value)return[...e,\"null\"];default:return e}},[]);if(e.length===n.length){const t=e.filter((e,t,n)=>n.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:n.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(n.every(e=>\"ZodEnum\"===e._def.typeName))return{type:\"string\",enum:n.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return dp(e,t)}(e,n);case Ef.ZodIntersection:return function(e,t){const n=[vp(e.left._def,{...t,currentPath:[...t.currentPath,\"allOf\",\"0\"]}),vp(e.right._def,{...t,currentPath:[...t.currentPath,\"allOf\",\"1\"]})].filter(e=>!!e),r=[];return n.forEach(e=>{if(\"type\"in(t=e)&&\"string\"===t.type||!(\"allOf\"in t)){let t=e;if(\"additionalProperties\"in e&&!1===e.additionalProperties){const{additionalProperties:n,...r}=e;t=r}r.push(t)}else r.push(...e.allOf);var t}),r.length?{allOf:r}:void 0}(e,n);case Ef.ZodTuple:return function(e,t){return e.rest?{type:\"array\",minItems:e.items.length,items:e.items.map((e,n)=>vp(e._def,{...t,currentPath:[...t.currentPath,\"items\",`${n}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[]),additionalItems:vp(e.rest._def,{...t,currentPath:[...t.currentPath,\"additionalItems\"]})}:{type:\"array\",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,n)=>vp(e._def,{...t,currentPath:[...t.currentPath,\"items\",`${n}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[])}}(e,n);case Ef.ZodRecord:return cp(e,n);case Ef.ZodLiteral:return function(e){const t=typeof e.value;return\"bigint\"!==t&&\"number\"!==t&&\"boolean\"!==t&&\"string\"!==t?{type:Array.isArray(e.value)?\"array\":\"object\"}:{type:\"bigint\"===t?\"integer\":t,const:e.value}}(e);case Ef.ZodEnum:return function(e){return{type:\"string\",enum:Array.from(e.values)}}(e);case Ef.ZodNativeEnum:return function(e){const t=e.values,n=Object.keys(e.values).filter(e=>\"number\"!=typeof t[t[e]]).map(e=>t[e]),r=Array.from(new Set(n.map(e=>typeof e)));return{type:1===r.length?\"string\"===r[0]?\"string\":\"number\":[\"string\",\"number\"],enum:n}}(e);case Ef.ZodNullable:return function(e,t){if([\"ZodString\",\"ZodNumber\",\"ZodBigInt\",\"ZodBoolean\",\"ZodNull\"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[lp[e.innerType._def.typeName],\"null\"]};const n=vp(e.innerType._def,{...t,currentPath:[...t.currentPath,\"anyOf\",\"0\"]});return n&&{anyOf:[n,{type:\"null\"}]}}(e,n);case Ef.ZodOptional:return((e,t)=>{var n;if(t.currentPath.toString()===(null==(n=t.propertyPath)?void 0:n.toString()))return vp(e.innerType._def,t);const r=vp(e.innerType._def,{...t,currentPath:[...t.currentPath,\"anyOf\",\"1\"]});return r?{anyOf:[{not:{}},r]}:{}})(e,n);case Ef.ZodMap:return function(e,t){return\"record\"===t.mapStrategy?cp(e,t):{type:\"array\",maxItems:125,items:{type:\"array\",items:[vp(e.keyType._def,{...t,currentPath:[...t.currentPath,\"items\",\"items\",\"0\"]})||{},vp(e.valueType._def,{...t,currentPath:[...t.currentPath,\"items\",\"items\",\"1\"]})||{}],minItems:2,maxItems:2}}}(e,n);case Ef.ZodSet:return function(e,t){const n={type:\"array\",uniqueItems:!0,items:vp(e.valueType._def,{...t,currentPath:[...t.currentPath,\"items\"]})};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}(e,n);case Ef.ZodLazy:return()=>e.getter()._def;case Ef.ZodPromise:return function(e,t){return vp(e.type._def,t)}(e,n);case Ef.ZodNaN:case Ef.ZodNever:return{not:{}};case Ef.ZodEffects:return function(e,t){return\"input\"===t.effectStrategy?vp(e.schema._def,t):{}}(e,n);case Ef.ZodAny:case Ef.ZodUnknown:return{};case Ef.ZodDefault:return function(e,t){return{...vp(e.innerType._def,t),default:e.defaultValue()}}(e,n);case Ef.ZodBranded:return $f(e,n);case Ef.ZodReadonly:case Ef.ZodCatch:return((e,t)=>vp(e.innerType._def,t))(e,n);case Ef.ZodPipeline:return((e,t)=>{if(\"input\"===t.pipeStrategy)return vp(e.in._def,t);if(\"output\"===t.pipeStrategy)return vp(e.out._def,t);const n=vp(e.in._def,{...t,currentPath:[...t.currentPath,\"allOf\",\"0\"]});return{allOf:[n,vp(e.out._def,{...t,currentPath:[...t.currentPath,\"allOf\",n?\"1\":\"0\"]})].filter(e=>void 0!==e)}})(e,n);case Ef.ZodFunction:case Ef.ZodVoid:case Ef.ZodSymbol:default:return}};function vp(e,t,n=!1){var r;const u=t.seen.get(e);if(t.override){const a=null==(r=t.override)?void 0:r.call(t,e,t,u,n);if(a!==Zf)return a}if(u&&!n){const e=mp(u,t);if(void 0!==e)return e}const a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);const i=hp(e,e.typeName,t),o=\"function\"==typeof i?vp(i(),t):i;if(o&&Dp(e,t,o),t.postProcess){const n=t.postProcess(o,e,t);return a.jsonSchema=o,n}return a.jsonSchema=o,o}var mp=(e,t)=>{switch(t.$refStrategy){case\"root\":return{$ref:e.path.join(\"/\")};case\"relative\":return{$ref:Mf(t.currentPath,e.path)};case\"none\":case\"seen\":return e.path.lengtht.currentPath[n]===e)?(console.warn(`Recursive reference detected at ${t.currentPath.join(\"/\")}! Defaulting to any`),{}):\"seen\"===t.$refStrategy?{}:void 0}},Dp=(e,t,n)=>(e.description&&(n.description=e.description),n),yp=e=>{const t=(e=>\"string\"==typeof e?{...Lf,name:e}:{...Lf,...e})(e),n=void 0!==t.name?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([e,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,e],jsonSchema:void 0}]))}},gp=(e,t)=>{var n;const r=yp(t);let u=\"object\"==typeof t&&t.definitions?Object.entries(t.definitions).reduce((e,[t,n])=>{var u;return{...e,[t]:null!=(u=vp(n._def,{...r,currentPath:[...r.basePath,r.definitionPath,t]},!0))?u:{}}},{}):void 0;const a=\"string\"==typeof t?t:\"title\"===(null==t?void 0:t.nameStrategy)||null==t?void 0:t.name,i=null!=(n=vp(e._def,void 0===a?r:{...r,currentPath:[...r.basePath,r.definitionPath,a]},!1))?n:{},o=\"object\"==typeof t&&void 0!==t.name&&\"title\"===t.nameStrategy?t.name:void 0;void 0!==o&&(i.title=o);const s=void 0===a?u?{...i,[r.definitionPath]:u}:i:{$ref:[...\"relative\"===r.$refStrategy?[]:r.basePath,r.definitionPath,a].join(\"/\"),[r.definitionPath]:{...u,[a]:i}};return s.$schema=\"http://json-schema.org/draft-07/schema#\",s};function Fp(e,t){const n=null!=void 0&&undefined;return Ap(()=>function(e,t){if(e instanceof Ns){var n,r=new ic(t),u={},a=E(e._idmap.entries());try{for(a.s();!(n=a.n()).done;){var i=T(n.value,2),o=(i[0],i[1]);r.process(o)}}catch(e){a.e(e)}finally{a.f()}var s,c={},l={registry:e,uri:null==t?void 0:t.uri,defs:u},d=E(e._idmap.entries());try{for(d.s();!(s=d.n()).done;){var f=T(s.value,2),p=f[0],h=f[1];c[p]=r.emit(h,S(S({},t),{},{external:l}))}}catch(e){d.e(e)}finally{d.f()}if(Object.keys(u).length>0){var v=\"draft-2020-12\"===r.target?\"$defs\":\"definitions\";c.__shared=b({},v,u)}return{schemas:c}}var m=new ic(t);return m.process(e),m.emit(e,t)}(e,{target:\"draft-7\",io:\"output\",reused:n?\"ref\":\"inline\"}),{validate:async t=>{const n=await Ec(e,t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Ep(e,t){return function(e){return\"_zod\"in e}(e)?Fp(e):function(e){const t=!1;return Ap(()=>gp(e,{$refStrategy:t?\"root\":\"none\"}),{validate:async t=>{const n=await e.safeParseAsync(t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}(e)}var bp=Symbol.for(\"vercel.ai.schema\");function Ap(e,{validate:t}={}){return{[bp]:!0,_type:void 0,[Tf]:!0,get jsonSchema(){return\"function\"==typeof e&&(e=e()),e},validate:t}}function Cp(e){return null==e?Ap({properties:{},additionalProperties:!1}):\"object\"==typeof(t=e)&&null!==t&&bp in t&&!0===t[bp]&&\"jsonSchema\"in t&&\"validate\"in t?e:\"function\"==typeof e?e():Ep(e);var t}function kp(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}var wp,_p=Object.defineProperty,Sp=\"AI_NoObjectGeneratedError\",xp=`vercel.ai.error.${Sp}`,Bp=Symbol.for(xp),Ip=class extends ca{constructor({message:e=\"No object generated.\",cause:t,text:n,response:r,usage:u,finishReason:a}){super({name:Sp,message:e,cause:t}),this[wp]=!0,this.text=n,this.response=r,this.usage=u,this.finishReason=a}static isInstance(e){return ca.hasMarker(e,xp)}};wp=Bp;var Op,Tp,Pp,jp=\"5.0.93\",Np=yl([Tc(),Ul(Uint8Array),Ul(ArrayBuffer),ql(e=>{var t,n;return null!=(n=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&n},{message:\"Must be a Buffer\"})]),zp=new Ml({type:\"lazy\",getter:()=>yl([ol(),Tc(),tl(),al(),bl(Tc(),zp),pl(zp)])}),Rp=bl(Tc(),bl(Tc(),zp)),Mp=vl({type:wl(\"text\"),text:Tc(),providerOptions:Rp.optional()}),Zp=vl({type:wl(\"image\"),image:yl([Np,Ul(URL)]),mediaType:Tc().optional(),providerOptions:Rp.optional()}),Lp=vl({type:wl(\"file\"),data:yl([Np,Ul(URL)]),filename:Tc().optional(),mediaType:Tc(),providerOptions:Rp.optional()}),$p=vl({type:wl(\"reasoning\"),text:Tc(),providerOptions:Rp.optional()}),qp=vl({type:wl(\"tool-call\"),toolCallId:Tc(),toolName:Tc(),input:cl(),providerOptions:Rp.optional(),providerExecuted:al().optional()}),Up=(Op=\"type\",Tp=[vl({type:wl(\"text\"),value:Tc()}),vl({type:wl(\"json\"),value:zp}),vl({type:wl(\"error-text\"),value:Tc()}),vl({type:wl(\"error-json\"),value:zp}),vl({type:wl(\"content\"),value:pl(yl([vl({type:wl(\"text\"),text:Tc()}),vl({type:wl(\"media\"),data:Tc(),mediaType:Tc()})]))})],new gl(S({type:\"union\",options:Tp,discriminator:Op},Xa(Pp)))),Vp=vl({type:wl(\"tool-result\"),toolCallId:Tc(),toolName:Tc(),output:Up,providerOptions:Rp.optional()}),Hp=vl({role:wl(\"system\"),content:Tc(),providerOptions:Rp.optional()}),Kp=vl({role:wl(\"user\"),content:yl([Tc(),pl(yl([Mp,Zp,Lp]))]),providerOptions:Rp.optional()}),Wp=vl({role:wl(\"assistant\"),content:yl([Tc(),pl(yl([Mp,Lp,$p,qp,Vp]))]),providerOptions:Rp.optional()});yl([Hp,Kp,Wp,vl({role:wl(\"tool\"),content:pl(Vp),providerOptions:Rp.optional()})]),kf({prefix:\"aitxt\",size:24}),TransformStream;var Jp=function(e){let t;return()=>(null==t&&(t=e()),t)}(()=>Ep(yl([ml({type:wl(\"text-start\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"text-delta\"),id:Tc(),delta:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"text-end\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"error\"),errorText:Tc()}),ml({type:wl(\"tool-input-start\"),toolCallId:Tc(),toolName:Tc(),providerExecuted:al().optional(),dynamic:al().optional()}),ml({type:wl(\"tool-input-delta\"),toolCallId:Tc(),inputTextDelta:Tc()}),ml({type:wl(\"tool-input-available\"),toolCallId:Tc(),toolName:Tc(),input:cl(),providerExecuted:al().optional(),providerMetadata:Rp.optional(),dynamic:al().optional()}),ml({type:wl(\"tool-input-error\"),toolCallId:Tc(),toolName:Tc(),input:cl(),providerExecuted:al().optional(),providerMetadata:Rp.optional(),dynamic:al().optional(),errorText:Tc()}),ml({type:wl(\"tool-output-available\"),toolCallId:Tc(),output:cl(),providerExecuted:al().optional(),dynamic:al().optional(),preliminary:al().optional()}),ml({type:wl(\"tool-output-error\"),toolCallId:Tc(),errorText:Tc(),providerExecuted:al().optional(),dynamic:al().optional()}),ml({type:wl(\"reasoning-start\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"reasoning-delta\"),id:Tc(),delta:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"reasoning-end\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"source-url\"),sourceId:Tc(),url:Tc(),title:Tc().optional(),providerMetadata:Rp.optional()}),ml({type:wl(\"source-document\"),sourceId:Tc(),mediaType:Tc(),title:Tc(),filename:Tc().optional(),providerMetadata:Rp.optional()}),ml({type:wl(\"file\"),url:Tc(),mediaType:Tc(),providerMetadata:Rp.optional()}),ml({type:ql(e=>\"string\"==typeof e&&e.startsWith(\"data-\"),{message:'Type must start with \"data-\"'}),id:Tc().optional(),data:cl(),transient:al().optional()}),ml({type:wl(\"start-step\")}),ml({type:wl(\"finish-step\")}),ml({type:wl(\"start\"),messageId:Tc().optional(),messageMetadata:cl().optional()}),ml({type:wl(\"finish\"),finishReason:Cl([\"stop\",\"length\",\"content-filter\",\"tool-calls\",\"error\",\"other\",\"unknown\"]).optional(),messageMetadata:cl().optional()}),ml({type:wl(\"abort\")}),ml({type:wl(\"message-metadata\"),messageMetadata:cl()})])));function Qp(e,t){if(void 0===e&&void 0===t)return;if(void 0===e)return t;if(void 0===t)return e;const n={...e};for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const u=t[r];if(void 0===u)continue;const a=r in e?e[r]:void 0,i=!(null===u||\"object\"!=typeof u||Array.isArray(u)||u instanceof Date||u instanceof RegExp),o=!(null==a||\"object\"!=typeof a||Array.isArray(a)||a instanceof Date||a instanceof RegExp);n[r]=i&&o?Qp(a,u):u}return n}function Gp(e){const t=[\"ROOT\"];let n=-1,r=null;function u(e,u,a){switch(e){case'\"':n=u,t.pop(),t.push(a),t.push(\"INSIDE_STRING\");break;case\"f\":case\"t\":case\"n\":n=u,r=u,t.pop(),t.push(a),t.push(\"INSIDE_LITERAL\");break;case\"-\":t.pop(),t.push(a),t.push(\"INSIDE_NUMBER\");break;case\"0\":case\"1\":case\"2\":case\"3\":case\"4\":case\"5\":case\"6\":case\"7\":case\"8\":case\"9\":n=u,t.pop(),t.push(a),t.push(\"INSIDE_NUMBER\");break;case\"{\":n=u,t.pop(),t.push(a),t.push(\"INSIDE_OBJECT_START\");break;case\"[\":n=u,t.pop(),t.push(a),t.push(\"INSIDE_ARRAY_START\")}}function a(e,r){switch(e){case\",\":t.pop(),t.push(\"INSIDE_OBJECT_AFTER_COMMA\");break;case\"}\":n=r,t.pop()}}function i(e,r){switch(e){case\",\":t.pop(),t.push(\"INSIDE_ARRAY_AFTER_COMMA\");break;case\"]\":n=r,t.pop()}}for(let o=0;o=0;n--){switch(t[n]){case\"INSIDE_STRING\":o+='\"';break;case\"INSIDE_OBJECT_KEY\":case\"INSIDE_OBJECT_AFTER_KEY\":case\"INSIDE_OBJECT_AFTER_COMMA\":case\"INSIDE_OBJECT_START\":case\"INSIDE_OBJECT_BEFORE_VALUE\":case\"INSIDE_OBJECT_AFTER_VALUE\":o+=\"}\";break;case\"INSIDE_ARRAY_START\":case\"INSIDE_ARRAY_AFTER_COMMA\":case\"INSIDE_ARRAY_AFTER_VALUE\":o+=\"]\";break;case\"INSIDE_LITERAL\":{const t=e.substring(r,e.length);\"true\".startsWith(t)?o+=\"true\".slice(t.length):\"false\".startsWith(t)?o+=\"false\".slice(t.length):\"null\".startsWith(t)&&(o+=\"null\".slice(t.length))}}}return o}async function Yp(e){if(void 0===e)return{value:void 0,state:\"undefined-input\"};let t=await zf({text:e});return t.success?{value:t.value,state:\"successful-parse\"}:(t=await zf({text:Gp(e)}),t.success?{value:t.value,state:\"repaired-parse\"}:{value:void 0,state:\"failed-parse\"})}function Xp(e){return e.type.startsWith(\"tool-\")}function eh(e){return Xp(e)||function(e){return\"dynamic-tool\"===e.type}(e)}function th(e){return e.type.split(\"-\").slice(1).join(\"-\")}function nh({lastMessage:e,messageId:t}){return{message:\"assistant\"===(null==e?void 0:e.role)?e:{id:t,metadata:void 0,role:\"assistant\",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function rh({stream:e,messageMetadataSchema:t,dataPartSchemas:n,runUpdateMessageJob:r,onError:u,onToolCall:a,onData:i}){return e.pipeThrough(new TransformStream({async transform(e,o){await r(async({state:r,write:s})=>{var c,l,d,f;function p(e){const t=r.message.parts.filter(Xp).find(t=>t.toolCallId===e);if(null==t)throw new Error(\"tool-output-error must be preceded by a tool-input-available\");return t}function h(e){const t=r.message.parts.filter(e=>\"dynamic-tool\"===e.type).find(t=>t.toolCallId===e);if(null==t)throw new Error(\"tool-output-error must be preceded by a tool-input-available\");return t}function v(e){var t;const n=r.message.parts.find(t=>Xp(t)&&t.toolCallId===e.toolCallId),u=e,a=n;null!=n?(n.state=e.state,a.input=u.input,a.output=u.output,a.errorText=u.errorText,a.rawInput=u.rawInput,a.preliminary=u.preliminary,a.providerExecuted=null!=(t=u.providerExecuted)?t:n.providerExecuted,null!=u.providerMetadata&&\"input-available\"===n.state&&(n.callProviderMetadata=u.providerMetadata)):r.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,input:u.input,output:u.output,rawInput:u.rawInput,errorText:u.errorText,providerExecuted:u.providerExecuted,preliminary:u.preliminary,...null!=u.providerMetadata?{callProviderMetadata:u.providerMetadata}:{}})}function m(e){var t,n;const u=r.message.parts.find(t=>\"dynamic-tool\"===t.type&&t.toolCallId===e.toolCallId),a=e,i=u;null!=u?(u.state=e.state,i.toolName=e.toolName,i.input=a.input,i.output=a.output,i.errorText=a.errorText,i.rawInput=null!=(t=a.rawInput)?t:i.rawInput,i.preliminary=a.preliminary,i.providerExecuted=null!=(n=a.providerExecuted)?n:u.providerExecuted,null!=a.providerMetadata&&\"input-available\"===u.state&&(u.callProviderMetadata=a.providerMetadata)):r.message.parts.push({type:\"dynamic-tool\",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:a.input,output:a.output,errorText:a.errorText,preliminary:a.preliminary,providerExecuted:a.providerExecuted,...null!=a.providerMetadata?{callProviderMetadata:a.providerMetadata}:{}})}async function D(e){if(null!=e){const n=null!=r.message.metadata?Qp(r.message.metadata,e):e;null!=t&&await jf({value:n,schema:t}),r.message.metadata=n}}switch(e.type){case\"text-start\":{const t={type:\"text\",text:\"\",providerMetadata:e.providerMetadata,state:\"streaming\"};r.activeTextParts[e.id]=t,r.message.parts.push(t),s();break}case\"text-delta\":{const t=r.activeTextParts[e.id];t.text+=e.delta,t.providerMetadata=null!=(c=e.providerMetadata)?c:t.providerMetadata,s();break}case\"text-end\":{const t=r.activeTextParts[e.id];t.state=\"done\",t.providerMetadata=null!=(l=e.providerMetadata)?l:t.providerMetadata,delete r.activeTextParts[e.id],s();break}case\"reasoning-start\":{const t={type:\"reasoning\",text:\"\",providerMetadata:e.providerMetadata,state:\"streaming\"};r.activeReasoningParts[e.id]=t,r.message.parts.push(t),s();break}case\"reasoning-delta\":{const t=r.activeReasoningParts[e.id];t.text+=e.delta,t.providerMetadata=null!=(d=e.providerMetadata)?d:t.providerMetadata,s();break}case\"reasoning-end\":{const t=r.activeReasoningParts[e.id];t.providerMetadata=null!=(f=e.providerMetadata)?f:t.providerMetadata,t.state=\"done\",delete r.activeReasoningParts[e.id],s();break}case\"file\":r.message.parts.push({type:\"file\",mediaType:e.mediaType,url:e.url}),s();break;case\"source-url\":r.message.parts.push({type:\"source-url\",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),s();break;case\"source-document\":r.message.parts.push({type:\"source-document\",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),s();break;case\"tool-input-start\":{const t=r.message.parts.filter(Xp);r.partialToolCalls[e.toolCallId]={text:\"\",toolName:e.toolName,index:t.length,dynamic:e.dynamic},e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-streaming\",input:void 0,providerExecuted:e.providerExecuted}):v({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-streaming\",input:void 0,providerExecuted:e.providerExecuted}),s();break}case\"tool-input-delta\":{const t=r.partialToolCalls[e.toolCallId];t.text+=e.inputTextDelta;const{value:n}=await Yp(t.text);t.dynamic?m({toolCallId:e.toolCallId,toolName:t.toolName,state:\"input-streaming\",input:n}):v({toolCallId:e.toolCallId,toolName:t.toolName,state:\"input-streaming\",input:n}),s();break}case\"tool-input-available\":e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-available\",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):v({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-available\",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),s(),a&&!e.providerExecuted&&await a({toolCall:e});break;case\"tool-input-error\":e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:\"output-error\",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):v({toolCallId:e.toolCallId,toolName:e.toolName,state:\"output-error\",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),s();break;case\"tool-output-available\":if(e.dynamic){const t=h(e.toolCallId);m({toolCallId:e.toolCallId,toolName:t.toolName,state:\"output-available\",input:t.input,output:e.output,preliminary:e.preliminary})}else{const t=p(e.toolCallId);v({toolCallId:e.toolCallId,toolName:th(t),state:\"output-available\",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary})}s();break;case\"tool-output-error\":if(e.dynamic){const t=h(e.toolCallId);m({toolCallId:e.toolCallId,toolName:t.toolName,state:\"output-error\",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted})}else{const t=p(e.toolCallId);v({toolCallId:e.toolCallId,toolName:th(t),state:\"output-error\",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted})}s();break;case\"start-step\":r.message.parts.push({type:\"step-start\"});break;case\"finish-step\":r.activeTextParts={},r.activeReasoningParts={};break;case\"start\":null!=e.messageId&&(r.message.id=e.messageId),await D(e.messageMetadata),null==e.messageId&&null==e.messageMetadata||s();break;case\"finish\":null!=e.finishReason&&(r.finishReason=e.finishReason),await D(e.messageMetadata),null!=e.messageMetadata&&s();break;case\"message-metadata\":await D(e.messageMetadata),null!=e.messageMetadata&&s();break;case\"error\":null==u||u(new Error(e.errorText));break;default:if(function(e){return e.type.startsWith(\"data-\")}(e)){null!=(null==n?void 0:n[e.type])&&await jf({value:e.data,schema:n[e.type]});const t=e;if(t.transient){null==i||i(t);break}const u=null!=t.id?r.message.parts.find(e=>t.type===e.type&&t.id===e.id):void 0;null!=u?u.data=t.data:r.message.parts.push(t),null==i||i(t),s()}}o.enqueue(e)})}}))}kf({prefix:\"aitxt\",size:24}),kf({prefix:\"aiobj\",size:24});var uh=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,n)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){n(e)}}),this.processQueue()})}};kf({prefix:\"aiobj\",size:24});((e,t)=>{for(var n in t)_p(e,n,{get:t[n],enumerable:!0})})({},{object:()=>ih,text:()=>ah});var ah=()=>({type:\"text\",responseFormat:{type:\"text\"},parsePartial:async({text:e})=>({partial:e}),parseOutput:async({text:e})=>e}),ih=({schema:e})=>{const t=Cp(e);return{type:\"object\",responseFormat:{type:\"json\",schema:t.jsonSchema},async parsePartial({text:e}){const t=await Yp(e);switch(t.state){case\"failed-parse\":case\"undefined-input\":return;case\"repaired-parse\":case\"successful-parse\":return{partial:t.value};default:{const e=t.state;throw new Error(`Unsupported parse state: ${e}`)}}},async parseOutput({text:e},n){const r=await zf({text:e});if(!r.success)throw new Ip({message:\"No object generated: could not parse the response.\",cause:r.error,text:e,response:n.response,usage:n.usage,finishReason:n.finishReason});const u=await Nf({value:r.value,schema:t});if(!u.success)throw new Ip({message:\"No object generated: response did not match schema.\",cause:u.error,text:e,response:n.response,usage:n.usage,finishReason:n.finishReason});return u.value}}};var oh,sh,ch=class{constructor({api:e=\"/api/chat\",credentials:t,headers:n,body:r,fetch:u,prepareSendMessagesRequest:a,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=n,this.body=r,this.fetch=u,this.prepareSendMessagesRequest=a,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var n,r,u,a,i;const o=await Rf(this.body),s=await Rf(this.headers),c=await Rf(this.credentials),l={...Sf(s),...Sf(t.headers)},d=await(null==(n=this.prepareSendMessagesRequest)?void 0:n.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...o,...t.body},headers:l,credentials:c,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),f=null!=(r=null==d?void 0:d.api)?r:this.api,p=void 0!==(null==d?void 0:d.headers)?Sf(d.headers):l,h=void 0!==(null==d?void 0:d.body)?d.body:{...o,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},v=null!=(u=null==d?void 0:d.credentials)?u:c,m=null!=(a=this.fetch)?a:globalThis.fetch,D=await m(f,{method:\"POST\",headers:xf({\"Content-Type\":\"application/json\",...p},`ai-sdk/${jp}`,_f()),body:JSON.stringify(h),credentials:v,signal:e});if(!D.ok)throw new Error(null!=(i=await D.text())?i:\"Failed to fetch the chat response.\");if(!D.body)throw new Error(\"The response body is empty.\");return this.processResponseStream(D.body)}async reconnectToStream(e){var t,n,r,u,a;const i=await Rf(this.body),o=await Rf(this.headers),s=await Rf(this.credentials),c={...Sf(o),...Sf(e.headers)},l=await(null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...i,...e.body},headers:c,credentials:s,requestMetadata:e.metadata})),d=null!=(n=null==l?void 0:l.api)?n:`${this.api}/${e.chatId}/stream`,f=void 0!==(null==l?void 0:l.headers)?Sf(l.headers):c,p=null!=(r=null==l?void 0:l.credentials)?r:s,h=null!=(u=this.fetch)?u:globalThis.fetch,v=await h(d,{method:\"GET\",headers:xf(f,`ai-sdk/${jp}`,_f()),credentials:p});if(204===v.status)return null;if(!v.ok)throw new Error(null!=(a=await v.text())?a:\"Failed to fetch the chat response.\");if(!v.body)throw new Error(\"The response body is empty.\");return this.processResponseStream(v.body)}},lh=class extends ch{constructor(e={}){super(e)}processResponseStream(e){return function({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new xa).pipeThrough(new TransformStream({async transform({data:e},n){\"[DONE]\"!==e&&n.enqueue(await zf({text:e,schema:t}))}}))}({stream:e,schema:Jp}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},dh=class{constructor({generateId:e=wf,id:t=e(),transport:n=new lh,messageMetadataSchema:r,dataPartSchemas:u,state:a,onError:i,onToolCall:o,onFinish:s,onData:c,sendAutomaticallyWhen:l}){this.activeResponse=void 0,this.jobExecutor=new uh,this.sendMessage=async(e,t)=>{var n,r,u,a;if(null==e)return void await this.makeRequest({trigger:\"submit-message\",messageId:null==(n=this.lastMessage)?void 0:n.id,...t});let i;if(\"text\"in e||\"files\"in e){const t=Array.isArray(e.files)?e.files:await async function(e){if(null==e)return[];if(!(globalThis.FileList&&e instanceof globalThis.FileList))throw new Error(\"FileList is not supported in the current environment\");return Promise.all(Array.from(e).map(async e=>{const{name:t,type:n}=e;return{type:\"file\",mediaType:n,filename:t,url:await new Promise((t,n)=>{const r=new FileReader;r.onload=e=>{var n;t(null==(n=e.target)?void 0:n.result)},r.onerror=e=>n(e),r.readAsDataURL(e)})}}))}(e.files);i={parts:[...t,...\"text\"in e&&null!=e.text?[{type:\"text\",text:e.text}]:[]]}}else i=e;if(null!=e.messageId){const t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw new Error(`message with id ${e.messageId} not found`);if(\"user\"!==this.state.messages[t].role)throw new Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{...i,id:e.messageId,role:null!=(r=i.role)?r:\"user\",metadata:e.metadata})}else this.state.pushMessage({...i,id:null!=(u=i.id)?u:this.generateId(),role:null!=(a=i.role)?a:\"user\",metadata:e.metadata});await this.makeRequest({trigger:\"submit-message\",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{const n=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===n)throw new Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,\"assistant\"===this.messages[n].role?n:n+1),await this.makeRequest({trigger:\"regenerate-message\",messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:\"resume-stream\",...e})},this.clearError=()=>{\"error\"===this.status&&(this.state.error=void 0,this.setStatus({status:\"ready\"}))},this.addToolOutput=async({state:e=\"output-available\",tool:t,toolCallId:n,output:r,errorText:u})=>this.jobExecutor.run(async()=>{var t,a;const i=this.state.messages,o=i[i.length-1];this.state.replaceMessage(i.length-1,{...o,parts:o.parts.map(t=>eh(t)&&t.toolCallId===n?{...t,state:e,output:r,errorText:u}:t)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(t=>eh(t)&&t.toolCallId===n?{...t,state:e,output:r,errorText:u}:t)),\"streaming\"!==this.status&&\"submitted\"!==this.status&&(null==(t=this.sendAutomaticallyWhen)?void 0:t.call(this,{messages:this.state.messages}))&&this.makeRequest({trigger:\"submit-message\",messageId:null==(a=this.lastMessage)?void 0:a.id})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var e;\"streaming\"!==this.status&&\"submitted\"!==this.status||(null==(e=this.activeResponse)?void 0:e.abortController)&&this.activeResponse.abortController.abort()},this.id=t,this.transport=n,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=u,this.state=a,this.onError=i,this.onToolCall=o,this.onFinish=s,this.onData=c,this.sendAutomaticallyWhen=l}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async makeRequest({trigger:e,metadata:t,headers:n,body:r,messageId:u}){var a,i,o,s;this.setStatus({status:\"submitted\",error:void 0});const c=this.lastMessage;let l=!1,d=!1,f=!1;try{const a={state:nh({lastMessage:this.state.snapshot(c),messageId:this.generateId()}),abortController:new AbortController};let i;if(a.abortController.signal.addEventListener(\"abort\",()=>{l=!0}),this.activeResponse=a,\"resume-stream\"===e){const e=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:n,body:r});if(null==e)return void this.setStatus({status:\"ready\"});i=e}else i=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:a.abortController.signal,metadata:t,headers:n,body:r,trigger:e,messageId:u});const o=e=>this.jobExecutor.run(()=>e({state:a.state,write:()=>{var e;this.setStatus({status:\"streaming\"});a.state.message.id===(null==(e=this.lastMessage)?void 0:e.id)?this.state.replaceMessage(this.state.messages.length-1,a.state.message):this.state.pushMessage(a.state.message)}}));await async function({stream:e,onError:t}){const n=e.getReader();try{for(;;){const{done:e}=await n.read();if(e)break}}catch(e){null==t||t(e)}finally{n.releaseLock()}}({stream:rh({stream:i,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:o,onError:e=>{throw e}}),onError:e=>{throw e}}),this.setStatus({status:\"ready\"})}catch(e){if(l||\"AbortError\"===e.name)return l=!0,this.setStatus({status:\"ready\"}),null;f=!0,e instanceof TypeError&&(e.message.toLowerCase().includes(\"fetch\")||e.message.toLowerCase().includes(\"network\"))&&(d=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:\"error\",error:e})}finally{try{null==(i=this.onFinish)||i.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:l,isDisconnect:d,isError:f,finishReason:null==(a=this.activeResponse)?void 0:a.state.finishReason})}catch(e){console.error(e)}this.activeResponse=void 0}(null==(o=this.sendAutomaticallyWhen)?void 0:o.call(this,{messages:this.state.messages}))&&!f&&await this.makeRequest({trigger:\"submit-message\",messageId:null==(s=this.lastMessage)?void 0:s.id,metadata:t,headers:n,body:r})}};function fh({messages:e}){const t=e[e.length-1];if(!t)return!1;if(\"assistant\"!==t.role)return!1;const n=t.parts.reduce((e,t,n)=>\"step-start\"===t.type?n:e,-1),r=t.parts.slice(n+1).filter(eh).filter(e=>!e.providerExecuted);return r.length>0&&r.every(e=>\"output-available\"===e.state||\"output-error\"===e.state)}function ph(){if(sh)return oh;return sh=1,oh=function(e,t){if(\"function\"!=typeof e)throw new TypeError(\"Expected the first argument to be a `function`, got `\".concat(N(e),\"`.\"));var n,r=0;return function(){for(var u=this,a=arguments.length,i=new Array(a),o=0;o{if(!t.has(e))throw TypeError(\"Cannot \"+n)},kh=(e,t,n)=>(Ch(e,t,\"read from private field\"),n?n.call(e):t.get(e)),wh=(e,t,n)=>{if(t.has(e))throw TypeError(\"Cannot add the same private member more than once\");t instanceof WeakSet?t.add(e):t.set(e,n)},_h=(e,t,n,r)=>(Ch(e,t,\"write to private field\"),t.set(e,n),n);var Sh,xh=class{constructor(e=[]){wh(this,hh,void 0),wh(this,vh,\"ready\"),wh(this,mh,void 0),wh(this,Dh,new Set),wh(this,yh,new Set),wh(this,gh,new Set),this.pushMessage=e=>{_h(this,hh,kh(this,hh).concat(e)),kh(this,Fh).call(this)},this.popMessage=()=>{_h(this,hh,kh(this,hh).slice(0,-1)),kh(this,Fh).call(this)},this.replaceMessage=(e,t)=>{_h(this,hh,[...kh(this,hh).slice(0,e),this.snapshot(t),...kh(this,hh).slice(e+1)]),kh(this,Fh).call(this)},this.snapshot=e=>structuredClone(e),this[\"~registerMessagesCallback\"]=(e,t)=>{const n=t?(r=e,null!=(u=t)?Ah(r,u):r):e;var r,u;return kh(this,Dh).add(n),()=>{kh(this,Dh).delete(n)}},this[\"~registerStatusCallback\"]=e=>(kh(this,yh).add(e),()=>{kh(this,yh).delete(e)}),this[\"~registerErrorCallback\"]=e=>(kh(this,gh).add(e),()=>{kh(this,gh).delete(e)}),wh(this,Fh,()=>{kh(this,Dh).forEach(e=>e())}),wh(this,Eh,()=>{kh(this,yh).forEach(e=>e())}),wh(this,bh,()=>{kh(this,gh).forEach(e=>e())}),_h(this,hh,e)}get status(){return kh(this,vh)}set status(e){_h(this,vh,e),kh(this,Eh).call(this)}get error(){return kh(this,mh)}set error(e){_h(this,mh,e),kh(this,bh).call(this)}get messages(){return kh(this,hh)}set messages(e){_h(this,hh,[...e]),kh(this,Fh).call(this)}};hh=new WeakMap,vh=new WeakMap,mh=new WeakMap,Dh=new WeakMap,yh=new WeakMap,gh=new WeakMap,Fh=new WeakMap,Eh=new WeakMap,bh=new WeakMap;var Bh=class extends dh{constructor({messages:e,...t}){const n=new xh(e);super({...t,state:n}),wh(this,Sh,void 0),this[\"~registerMessagesCallback\"]=(e,t)=>kh(this,Sh)[\"~registerMessagesCallback\"](e,t),this[\"~registerStatusCallback\"]=e=>kh(this,Sh)[\"~registerStatusCallback\"](e),this[\"~registerErrorCallback\"]=e=>kh(this,Sh)[\"~registerErrorCallback\"](e),_h(this,Sh,n)}};Sh=new WeakMap;var Ih=\"askai_token\",Oh=function(e){if(!e)return!0;try{var t=function(e){var t=T(e.split(\".\"),1)[0];return JSON.parse(atob(t))}(e),n=t.exp;return Date.now()/1e3>n-30}catch(e){return!0}},Th=null,Ph=function(){var e=v(B().m(function e(t){var n,r,u,a,i,o;return B().w(function(e){for(;;)switch(e.n){case 0:if(n=t.assistantId,r=t.abortSignal,u=t.useStagingEnv,a=void 0!==u&&u,i=sessionStorage.getItem(Ih),Oh(i)){e.n=1;break}return e.a(2,i);case 1:return o=a?An:bn,Th||(Th=fetch(\"\".concat(o,\"/token\"),{method:\"POST\",headers:{\"x-algolia-assistant-id\":n,\"content-type\":\"application/json\"},signal:r}).then(function(e){return e.json()}).then(function(e){var t=e.token,n=e.success,r=e.message;if(!n&&r)throw new Error(r);return sessionStorage.setItem(Ih,t),t}).finally(function(){return Th=null})),e.a(2,Th)}},e)}));return function(t){return e.apply(this,arguments)}}(),jh=function(){var e=v(B().m(function e(t){var n,r,u,a,i,o,s,c,l,d;return B().w(function(e){for(;;)switch(e.n){case 0:return n=t.assistantId,r=t.thumbs,u=t.messageId,a=t.appId,i=t.abortSignal,o=t.useStagingEnv,s=void 0!==o&&o,(c=new Headers).set(\"x-algolia-assistant-id\",n),c.set(\"content-type\",\"application/json\"),e.n=1,Ph({assistantId:n,abortSignal:i,useStagingEnv:s});case 1:return l=e.v,c.set(\"authorization\",\"TOKEN \".concat(l)),d=s?An:bn,e.a(2,fetch(\"\".concat(d,\"/feedback\"),{method:\"POST\",body:JSON.stringify({appId:a,messageId:u,thumbs:r}),headers:c}))}},e)}));return function(t){return e.apply(this,arguments)}}(),Nh=[\"assistantId\",\"apiKey\",\"appId\",\"indexName\",\"useStagingEnv\"],zh=function(e){var t=e.assistantId,n=e.apiKey,u=e.appId,a=e.indexName,i=e.useStagingEnv,c=void 0!==i&&i,f=x(e,Nh),p=s(new AbortController),h=o(function(){return f.agentStudio?function(e){var t=e.appId,n=e.apiKey,r=e.assistantId,u=e.searchParameters;return new lh({api:\"https://\".concat(t,\".algolia.net/agent-studio/1/agents/\").concat(r,\"/completions?stream=true&compatibilityMode=ai-sdk-5\"),headers:{\"x-algolia-application-id\":t,\"x-algolia-api-key\":n},body:u?{algolia:{searchParameters:u}}:{}})}({apiKey:n,appId:u,assistantId:null!=t?t:\"\",searchParameters:f.searchParameters}):function(e){var t,n=e.assistantId,r=e.apiKey,u=e.indexName,a=e.searchParameters,i=e.appId,o=e.abortController,s=e.useStagingEnv;return new lh({api:s?An:bn,headers:(t=v(B().m(function e(){var t;return B().w(function(e){for(;;)switch(e.n){case 0:if(n){e.n=1;break}throw new Error(\"Ask AI assistant ID is required\");case 1:return e.n=2,Ph({assistantId:n,abortSignal:o.signal,useStagingEnv:s});case 2:return t=e.v,e.a(2,S(S({},t?{authorization:\"TOKEN \".concat(t)}:{}),{},{\"X-Algolia-API-Key\":r,\"X-Algolia-Application-Id\":i,\"X-Algolia-Index-Name\":u,\"X-Algolia-Assistant-Id\":n||\"\",\"X-AI-SDK-Version\":\"v5\"}))}},e)})),function(){return t.apply(this,arguments)}),body:a?{searchParameters:a}:{}})}({assistantId:null!=t?t:\"\",apiKey:n,appId:u,indexName:a,searchParameters:f.searchParameters,abortController:p.current,useStagingEnv:c})},[n,u,t,a,c,f]),m=function({experimental_throttle:e,resume:t=!1,...n}={}){const u=s(\"chat\"in n?n.chat:new Bh(n));(\"chat\"in n&&n.chat!==u.current||\"id\"in n&&u.current.id!==n.id)&&(u.current=\"chat\"in n?n.chat:new Bh(n));const a=\"id\"in n?n.id:null,i=l(t=>u.current[\"~registerMessagesCallback\"](t,e),[e,a]),o=d(i,()=>u.current.messages,()=>u.current.messages),c=d(u.current[\"~registerStatusCallback\"],()=>u.current.status,()=>u.current.status),f=d(u.current[\"~registerErrorCallback\"],()=>u.current.error,()=>u.current.error),p=l(e=>{\"function\"==typeof e&&(e=e(u.current.messages)),u.current.messages=e},[u]);return r(()=>{t&&u.current.resumeStream()},[t,u]),{id:u.current.id,messages:o,setMessages:p,sendMessage:u.current.sendMessage,regenerate:u.current.regenerate,clearError:u.current.clearError,stop:u.current.stop,error:f,resumeStream:u.current.resumeStream,status:c,addToolResult:u.current.addToolOutput,addToolOutput:u.current.addToolOutput}}({sendAutomaticallyWhen:fh,transport:h}),D=m.messages,y=m.sendMessage,g=m.status,F=m.setMessages,E=m.error,b=m.stop,A=s(ua({key:\"__DOCSEARCH_ASKAI_CONVERSATIONS__\".concat(a),limit:10})).current,C=l(function(){var e=v(B().m(function e(n,r){var a;return B().w(function(e){for(;;)switch(e.n){case 0:if(t){e.n=1;break}return e.a(2);case 1:return e.n=2,jh({assistantId:t,thumbs:r,messageId:n,appId:u,abortSignal:p.current.signal,useStagingEnv:c});case 2:if(!(e.v.status>=300)){e.n=3;break}throw new Error(\"Failed, try again later.\");case 3:null===(a=A.addFeedback)||void 0===a||a.call(A,n,1===r?\"like\":\"dislike\");case 4:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[t,u,A,c]),k=function(){var e=v(B().m(function e(){return B().w(function(e){for(;;)switch(e.n){case 0:return p.current.abort(),e.n=1,b();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),w=o(function(){for(var e=[],t=0;t0){var u=r.detail[0],a=u.msg,i=u.loc.at(-1);t=\"\".concat(a,\": \").concat(i)}}else t=n.message}catch(e){}return new Error(t)}(E):E},[E,f.agentStudio]);return{messages:D,sendMessage:y,status:g,setMessages:F,askAiError:I,stopAskAiStreaming:k,isStreaming:_,exchanges:w,conversations:A,sendFeedback:C}};function Rh(e){var t,n=\"algolia-client-js-\".concat(e.key);function r(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function u(){return JSON.parse(r().getItem(n)||\"{}\")}function a(e){r().setItem(n,JSON.stringify(e))}return{get:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){var n,r,i;return n=e.timeToLive?1e3*e.timeToLive:null,r=u(),a(i=Object.fromEntries(Object.entries(r).filter(function(e){return void 0!==T(e,2)[1].timestamp}))),n&&a(Object.fromEntries(Object.entries(i).filter(function(e){var t=T(e,2)[1],r=(new Date).getTime();return!(t.timestamp+n2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then(function(e){return Promise.all([e,n.miss(e)])}).then(function(e){return T(e,1)[0]})},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(e,r,u).catch(function(){return Mh({caches:t}).get(e,r,u)})},set:function(e,r){return n.set(e,r).catch(function(){return Mh({caches:t}).set(e,r)})},delete:function(e){return n.delete(e).catch(function(){return Mh({caches:t}).delete(e)})},clear:function(){return n.clear().catch(function(){return Mh({caches:t}).clear()})}}}function Zh(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(n,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);var i=r();return i.then(function(e){return u.miss(e)}).then(function(){return i})},set:function(n,r){return t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Lh(e){var t=e.algoliaAgents,n=e.client,r=e.version,u=function(e){var t={value:\"Algolia for JavaScript (\".concat(e,\")\"),add:function(e){var n=\"; \".concat(e.segment).concat(void 0!==e.version?\" (\".concat(e.version,\")\"):\"\");return-1===t.value.indexOf(n)&&(t.value=\"\".concat(t.value).concat(n)),t}};return t}(r).add({segment:n,version:r});return t.forEach(function(e){return u.add(e)}),u}var $h=12e4;function qh(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"up\",n=Date.now();return S(S({},e),{},{status:t,lastUpdate:n,isUp:function(){return\"up\"===t||Date.now()-n>$h},isTimedOut:function(){return\"timed out\"===t&&Date.now()-n<=$h}})}var Uh=function(){function e(t,n){var r;return D(this,e),b(r=m(this,e,[t]),\"name\",\"AlgoliaError\"),n&&(r.name=n),r}return k(e,R(Error)),F(e)}(),Vh=function(){function e(t,n,r){var u;return D(this,e),b(u=m(this,e,[t,r]),\"stackTrace\",void 0),u.stackTrace=n,u}return k(e,Uh),F(e)}(),Hh=function(){function e(t){return D(this,e),m(this,e,[\"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\",t,\"RetryError\"])}return k(e,Vh),F(e)}(),Kh=function(){function e(t,n,r){var u,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"ApiError\";return D(this,e),b(u=m(this,e,[t,r,a]),\"status\",void 0),u.status=n,u}return k(e,Vh),F(e)}(),Wh=function(){function e(t,n){var r;return D(this,e),b(r=m(this,e,[t,\"DeserializationError\"]),\"response\",void 0),r.response=n,r}return k(e,Uh),F(e)}(),Jh=function(){function e(t,n,r,u){var a;return D(this,e),b(a=m(this,e,[t,n,u,\"DetailedApiError\"]),\"error\",void 0),a.error=r,a}return k(e,Kh),F(e)}();function Qh(e,t,n){var r,u=(r=n,Object.keys(r).filter(function(e){return void 0!==r[e]}).sort().map(function(e){return\"\".concat(e,\"=\").concat(encodeURIComponent(\"[object Array]\"===Object.prototype.toString.call(r[e])?r[e].join(\",\"):r[e]).replace(/\\+/g,\"%20\"))}).join(\"&\")),a=\"\".concat(e.protocol,\"://\").concat(e.url).concat(e.port?\":\".concat(e.port):\"\",\"/\").concat(\"/\"===t.charAt(0)?t.substring(1):t);return u.length&&(a+=\"?\".concat(u)),a}function Gh(e,t){if(\"GET\"!==e.method&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:S(S({},e.data),t.data);return JSON.stringify(n)}}function Yh(e,t,n){var r=S(S(S({Accept:\"application/json\"},e),t),n),u={};return Object.keys(r).forEach(function(e){var t=r[e];u[e.toLowerCase()]=t}),u}function Xh(e){try{return JSON.parse(e.content)}catch(t){throw new Wh(t.message,e)}}function ev(e,t){var n=e.content,r=e.status;try{var u=JSON.parse(n);return\"error\"in u?new Jh(u.message,r,u.error,t):new Kh(u.message,r,t)}catch(e){}return new Kh(n,r,t)}function tv(e){var t=e.isTimedOut,n=e.status;return t||function(e){var t=e.isTimedOut,n=e.status;return!t&&0===~~n}({isTimedOut:t,status:n})||2!=~~(n/100)&&4!=~~(n/100)}function nv(e){return 2==~~(e.status/100)}function rv(e){return e.map(function(e){return uv(e)})}function uv(e){var t=e.request.headers[\"x-algolia-api-key\"]?{\"x-algolia-api-key\":\"*****\"}:{};return S(S({},e),{},{request:S(S({},e.request),{},{headers:S(S({},e.request.headers),t)})})}var av=[\"appId\",\"apiKey\",\"authMode\",\"algoliaAgents\"],iv=[\"params\"],ov=\"5.43.0\";function sv(e){return[{url:\"\".concat(e,\"-dsn.algolia.net\"),accept:\"read\",protocol:\"https\"},{url:\"\".concat(e,\".algolia.net\"),accept:\"write\",protocol:\"https\"}].concat(function(e){for(var t=e,n=e.length-1;n>0;n--){var r=Math.floor(Math.random()*(n+1)),u=e[n];t[n]=e[r],t[r]=u}return t}([{url:\"\".concat(e,\"-1.algolianet.com\"),accept:\"readWrite\",protocol:\"https\"},{url:\"\".concat(e,\"-2.algolianet.com\"),accept:\"readWrite\",protocol:\"https\"},{url:\"\".concat(e,\"-3.algolianet.com\"),accept:\"readWrite\",protocol:\"https\"}]))}function cv(e){var t=e.appId,n=e.apiKey,r=e.authMode,u=e.algoliaAgents,a=x(e,av),i=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"WithinHeaders\",r={\"x-algolia-api-key\":t,\"x-algolia-application-id\":e};return{headers:function(){return\"WithinHeaders\"===n?r:{}},queryParameters:function(){return\"WithinQueryParameters\"===n?r:{}}}}(t,n,r),o=function(e){var t=e.hosts,n=e.hostsCache,r=e.baseHeaders,u=e.logger,a=e.baseQueryParameters,i=e.algoliaAgent,o=e.timeouts,s=e.requester,c=e.requestsCache,l=e.responsesCache;function d(e){return f.apply(this,arguments)}function f(){return(f=v(B().m(function e(t){var r,u,a,i,o;return B().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Promise.all(t.map(function(e){return n.get(e,function(){return Promise.resolve(qh(e))})}));case 1:return r=e.v,u=r.filter(function(e){return e.isUp()}),a=r.filter(function(e){return e.isTimedOut()}),i=[].concat(P(u),P(a)),o=i.length>0?i:t,e.a(2,{hosts:o,getTimeout:function(e,t){return(0===a.length&&0===e?1:a.length+3+e)*t}})}},e)}))).apply(this,arguments)}function p(e,t){return h.apply(this,arguments)}function h(){return h=v(B().m(function e(c,l){var f,p,h,m,D,y,g,F,E,b,A,C,k,w=arguments;return B().w(function(e){for(;;)switch(e.n){case 0:if(f=!(w.length>2&&void 0!==w[2])||w[2],p=[],h=Gh(c,l),m=Yh(r,c.headers,l.headers),D=\"GET\"===c.method?S(S({},c.data),l.data):{},y=S(S(S({},a),c.queryParameters),D),i.value&&(y[\"x-algolia-agent\"]=i.value),l&&l.queryParameters)for(g=0,F=Object.keys(l.queryParameters);g1&&void 0!==arguments[1]?arguments[1]:{},n=e.useReadTransporter||\"GET\"===e.method;if(!n)return p(e,t,n);var u=function(){return p(e,t)};if(!0!==(t.cacheable||e.cacheable))return u();var i={request:e,requestOptions:t,transporter:{queryParameters:a,headers:r}};return l.get(i,function(){return c.get(i,function(){return c.set(i,u()).then(function(e){return Promise.all([c.delete(i),e])},function(e){return Promise.all([c.delete(i),Promise.reject(e)])}).then(function(e){var t=T(e,2);return t[0],t[1]})})},{miss:function(e){return l.set(i,e)}})},requestsCache:c,responsesCache:l}}(S(S({hosts:sv(t)},a),{},{algoliaAgent:Lh({algoliaAgents:u,client:\"Lite\",version:ov}),baseHeaders:S(S({\"content-type\":\"text/plain\"},i.headers()),a.baseHeaders),baseQueryParameters:S(S({},i.queryParameters()),a.baseQueryParameters)}));return{transporter:o,appId:t,apiKey:n,clearCache:function(){return Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(function(){})},get _ua(){return o.algoliaAgent.value},addAlgoliaAgent:function(e,t){o.algoliaAgent.add({segment:e,version:t})},setClientApiKey:function(e){var t=e.apiKey;r&&\"WithinHeaders\"!==r?o.baseQueryParameters[\"x-algolia-api-key\"]=t:o.baseHeaders[\"x-algolia-api-key\"]=t},searchForHits:function(e,t){return this.search(e,t)},searchForFacets:function(e,t){return this.search(e,t)},customPost:function(e,t){var n=e.path,r=e.parameters,u=e.body;if(!n)throw new Error(\"Parameter `path` is required when calling `customPost`.\");var a={method:\"POST\",path:\"/{path}\".replace(\"{path}\",n),queryParameters:r||{},headers:{},data:u||{}};return o.request(a,t)},getRecommendations:function(e,t){e&&Array.isArray(e)&&(e={requests:e});if(!e)throw new Error(\"Parameter `getRecommendationsParams` is required when calling `getRecommendations`.\");if(!e.requests)throw new Error(\"Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.\");var n={method:\"POST\",path:\"/1/indexes/*/recommendations\",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(n,t)},search:function(e,t){if(e&&Array.isArray(e)){var n={requests:e.map(function(e){var t=e.params,n=x(e,iv);return\"facet\"===n.type?S(S(S({},n),t),{},{type:\"facet\"}):S(S(S({},n),t),{},{facet:void 0,maxFacetHits:void 0,facetQuery:void 0})})};e=n}if(!e)throw new Error(\"Parameter `searchMethodParams` is required when calling `search`.\");if(!e.requests)throw new Error(\"Parameter `searchMethodParams.requests` is required when calling `search`.\");var r={method:\"POST\",path:\"/1/indexes/*/queries\",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(r,t)}}}var lv=\"4.5.4\";function dv(e,t,r){var u=n.useMemo(function(){var n=function(e,t,n){if(!e||\"string\"!=typeof e)throw new Error(\"`appId` is missing.\");if(!t||\"string\"!=typeof t)throw new Error(\"`apiKey` is missing.\");return cv(S({appId:e,apiKey:t,timeouts:{connect:1e3,read:2e3,write:3e4},logger:{debug:function(e,t){return Promise.resolve()},info:function(e,t){return Promise.resolve()},error:function(e,t){return Promise.resolve()}},requester:{send:function(e){return new Promise(function(t){var n=new XMLHttpRequest;n.open(e.method,e.url,!0),Object.keys(e.headers).forEach(function(t){return n.setRequestHeader(t,e.headers[t])});var r,u=function(e,r){return setTimeout(function(){n.abort(),t({status:0,content:r,isTimedOut:!0})},e)},a=u(e.connectTimeout,\"Connection timeout\");n.onreadystatechange=function(){n.readyState>n.OPENED&&void 0===r&&(clearTimeout(a),r=u(e.responseTimeout,\"Socket timeout\"))},n.onerror=function(){0===n.status&&(clearTimeout(a),clearTimeout(r),t({content:n.responseText||\"Network request failed\",status:n.status,isTimedOut:!1}))},n.onload=function(){clearTimeout(a),clearTimeout(r),t({content:n.responseText,status:n.status,isTimedOut:!1})},n.send(e.data)})}},algoliaAgents:[{segment:\"Browser\"}],authMode:\"WithinQueryParameters\",responsesCache:Zh(),requestsCache:Zh({serializable:!1}),hostsCache:Mh({caches:[Rh({key:\"\".concat(ov,\"-\").concat(e)}),Zh()]})},n))}(e,t);return n.addAlgoliaAgent(\"docsearch\",lv),!1===/docsearch.js \\(.*\\)/.test(n.transporter.algoliaAgent.value)&&n.addAlgoliaAgent(\"docsearch-react\",lv),r(n)},[e,t,r]);return u}var fv=[\"appId\",\"apiKey\",\"askAi\",\"maxResultsPerGroup\",\"theme\",\"onClose\",\"transformItems\",\"hitComponent\",\"resultsFooterComponent\",\"navigator\",\"initialScrollY\",\"transformSearchClient\",\"disableUserPersonalization\",\"initialQuery\",\"translations\",\"getMissingResultsUrl\",\"insights\",\"onAskAiToggle\",\"interceptAskAiEvent\",\"isAskAiActive\",\"recentSearchesLimit\",\"recentSearchesWithFavoritesLimit\",\"indices\",\"indexName\",\"searchParameters\",\"isHybridModeSupported\"],pv=[\"footer\",\"searchBox\"],hv=function(){var e=v(B().m(function e(t){var n,r,u,a,i,o,s,c,l,d,f,p,h,v,m,D,y,g,F;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=t.query,r=t.state,u=t.setContext,a=t.setStatus,i=t.searchClient,o=t.indexes,s=t.snippetLength,c=t.insights,l=t.appId,d=t.apiKey,f=t.maxResultsPerGroup,p=t.transformItems,h=void 0===p?V:p,v=t.saveRecentSearch,m=t.onClose,D=c,e.p=1,e.n=2,i.search({requests:o.map(function(e){var t,r,u,a,i,o,c,l=\"string\"==typeof e?e:e.name,d=\"string\"==typeof e?{}:e.searchParameters;return S({query:n,indexName:l,attributesToRetrieve:null!==(t=null==d?void 0:d.attributesToRetrieve)&&void 0!==t?t:[\"hierarchy.lvl0\",\"hierarchy.lvl1\",\"hierarchy.lvl2\",\"hierarchy.lvl3\",\"hierarchy.lvl4\",\"hierarchy.lvl5\",\"hierarchy.lvl6\",\"content\",\"type\",\"url\"],attributesToSnippet:null!==(r=null==d?void 0:d.attributesToSnippet)&&void 0!==r?r:[\"hierarchy.lvl1:\".concat(s.current),\"hierarchy.lvl2:\".concat(s.current),\"hierarchy.lvl3:\".concat(s.current),\"hierarchy.lvl4:\".concat(s.current),\"hierarchy.lvl5:\".concat(s.current),\"hierarchy.lvl6:\".concat(s.current),\"content:\".concat(s.current)],snippetEllipsisText:null!==(u=null==d?void 0:d.snippetEllipsisText)&&void 0!==u?u:\"…\",highlightPreTag:null!==(a=null==d?void 0:d.highlightPreTag)&&void 0!==a?a:\"\",highlightPostTag:null!==(i=null==d?void 0:d.highlightPostTag)&&void 0!==i?i:\"\",hitsPerPage:null!==(o=null==d?void 0:d.hitsPerPage)&&void 0!==o?o:20,clickAnalytics:null!==(c=null==d?void 0:d.clickAnalytics)&&void 0!==c?c:D},null!=d?d:{})})});case 2:return y=e.v,g=y.results,e.a(2,g.flatMap(function(e){var t,n=e,a=n.hits,i=n.nbHits,o=U(h(a),function(e){return G(e)},f);r.context.searchSuggestions.length0&&re.forEach(function(e){je.push(\"string\"==typeof e?{name:e}:e)}),je.length<1)throw new Error(\"Must supply either `indexName` or `indices` for DocSearch to work\");var Ne=je[0].name,ze=n.useRef(ua({key:\"__DOCSEARCH_ASKAI_CONVERSATIONS__\".concat((null==we?void 0:we.indexName)||Ne),limit:10})).current,Re=n.useRef(ra({key:\"__DOCSEARCH_FAVORITE_SEARCHES__\".concat(Ne),limit:10})).current,Me=n.useRef(ra({key:\"__DOCSEARCH_RECENT_SEARCHES__\".concat(Ne),limit:0===Re.getAll().length?X:te})).current,Ze=T(n.useState(!1),2),Le=Ze[0],$e=Ze[1],qe=zh({assistantId:_e,apiKey:(null==we?void 0:we.apiKey)||c,appId:(null==we?void 0:we.appId)||s,indexName:(null==we?void 0:we.indexName)||Ne,searchParameters:Se,useStagingEnv:xe,agentStudio:Pe}),Ue=qe.messages,Ve=qe.status,He=qe.setMessages,Ke=qe.sendMessage,We=qe.stopAskAiStreaming,Je=qe.askAiError,Qe=qe.sendFeedback,Ge=n.useRef(Ve);n.useEffect(function(){if(!j){if(\"streaming\"===Ge.current&&\"ready\"===Ve){Le&&Ue.at(-1)&&(Ue.at(-1).metadata={stopped:!0});var e,t=E(Ue[0].parts);try{for(t.s();!(e=t.n()).done;){var n=e.value;\"text\"===n.type&&ze.add(hu(n.text,Ue))}}catch(e){t.e(e)}finally{t.f()}}Ge.current=Ve}},[Ve,Ue,ze,j,Le]);var Ye=n.useMemo(function(){return\"error\"===Ve&&mu(Je)},[Ve,Je]),Xe=n.useCallback(function(e){var t=e.hierarchy,n=[\"lvl6\",\"lvl5\",\"lvl4\",\"lvl3\",\"lvl2\",\"lvl1\",\"lvl0\"].find(function(e){return t[e]});return S(S({},e),{},{type:n||\"lvl0\",content:null})},[]),et=n.useCallback(function(e){if(!j){var t=\"content\"===e.type?e.__docsearch_parent||Xe(e):e;t&&-1===Re.getAll().findIndex(function(e){return e.objectID===t.objectID})&&Me.add(t)}},[Re,Me,j,Xe]),tt=n.useCallback(function(e){if(pe.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,n={eventName:\"Item Selected\",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};pe.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(n)}},[pe.context.algoliaInsightsPlugin]),nt=n.useRef(void 0),rt=n.useCallback(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;if(e){var r={query:t,suggestedQuestionId:null==n?void 0:n.objectID};if(null!=J&&J(r))return void(nt.current&&nt.current.setQuery(\"\"))}if(e&&\"new-conversation\"===Ie&&Oe(\"initial\"),K(e,{query:t,suggestedQuestionId:null==n?void 0:n.objectID}),!oe){$e(!1);var u={};if(n&&(u.body={suggestedQuestionId:n.objectID}),Ke({role:\"user\",parts:[{type:\"text\",text:t}]},u),Fe.current){var a=Fe.current;\"function\"==typeof a.scrollTo?a.scrollTo({top:0,behavior:\"smooth\"}):a.scrollTop=0}nt.current&&nt.current.setQuery(\"\")}},[K,J,Ke,Ie,Oe,oe]),ut=n.useCallback(function(){var e=v(B().m(function e(t,n){return B().w(function(e){for(;;)switch(e.n){case 0:if(_e&&s){e.n=1;break}return e.a(2);case 1:return e.n=2,Qe(t,n);case 2:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[_e,s,Qe]);nt.current||(nt.current=En({id:\"docsearch\",defaultActiveItemId:0,openOnFocus:!0,initialState:{query:Ce,context:{searchSuggestions:[]}},insights:Boolean(U),navigator:C,onStateChange:function(e){he(e.state)},getSources:function(e){var t=e.query,n=e.state,r=e.setContext,u=e.setStatus;if(!t){var a=function(e){var t=e.recentSearches,n=e.favoriteSearches,r=e.saveRecentSearch,u=e.onClose;return e.disableUserPersonalization?[]:[{sourceId:\"recentSearches\",onSelect:function(e){var t=e.item,n=e.event;r(t),H(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return t.getAll()}},{sourceId:\"favoriteSearches\",onSelect:function(e){var t=e.item,n=e.event;r(t),H(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return n.getAll()}}]}({recentSearches:Me,favoriteSearches:Re,saveRecentSearch:et,onClose:h,disableUserPersonalization:j,canHandleAskAi:ve}),i=ve?[{sourceId:\"recentConversations\",getItems:function(){return j?[]:ze.getAll()},onSelect:function(e){var t=e.item;t.messages&&(He(t.messages),K(!0))}}]:[];return[].concat(P(a),i)}var o={context:n.context},l=hv({query:t,state:o,setContext:r,setStatus:u,searchClient:ke,indexes:je,snippetLength:be,insights:Boolean(U),appId:s,apiKey:c,maxResultsPerGroup:d,transformItems:D,saveRecentSearch:et,onClose:h}),f=ve?[{sourceId:\"askAI\",getItems:function(){return[{type:\"askAI\",query:t,url_without_anchor:\"\",objectID:\"ask-ai-button\",content:null,url:\"\",anchor:null,hierarchy:{lvl0:\"Ask AI\",lvl1:t,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},_highlightResult:{},_snippetResult:{},__docsearch_parent:null}]},onSelect:function(e){var t=e.item;\"askAI\"===t.type&&t.query&&rt(!0,t.query)}}]:[];return l.then(function(e){return[].concat(f,P(e))})}}));var at,it,ot=nt.current,st=ot.getEnvironmentProps,ct=ot.getRootProps,lt=ot.refresh;!function(e){var t=e.getEnvironmentProps,r=e.panelElement,u=e.formElement,a=e.inputElement;n.useEffect(function(){if(r&&u&&a){var e=t({panelElement:r,formElement:u,inputElement:a}),n=e.onTouchStart,i=e.onTouchMove;return window.addEventListener(\"touchstart\",n),window.addEventListener(\"touchmove\",i),function(){window.removeEventListener(\"touchstart\",n),window.removeEventListener(\"touchmove\",i)}}},[t,r,u,a])}({getEnvironmentProps:st,panelElement:Fe.current,formElement:ge.current,inputElement:Ee.current}),at={container:De.current},it=at.container,n.useEffect(function(){if(it){var e=it.querySelectorAll(\"a[href]:not([disabled]), button:not([disabled]), input:not([disabled])\"),t=e[0],n=e[e.length-1];return it.addEventListener(\"keydown\",r),function(){it.removeEventListener(\"keydown\",r)}}function r(e){\"Tab\"===e.key&&(e.shiftKey?document.activeElement===t&&(e.preventDefault(),n.focus()):document.activeElement===n&&(e.preventDefault(),t.focus()))}},[it]),Z({theme:f}),n.useEffect(function(){return document.body.classList.add(\"DocSearch--active\"),function(){var e,t;document.body.classList.remove(\"DocSearch--active\"),null===(e=(t=window).scrollTo)||void 0===e||e.call(t,0,w)}},[]),n.useEffect(function(){ea()},[]),n.useLayoutEffect(function(){var e=window.innerWidth-document.body.clientWidth;return document.body.style.marginInlineEnd=\"\".concat(e,\"px\"),function(){document.body.style.marginInlineEnd=\"0px\"}},[]),n.useEffect(function(){window.matchMedia(\"(max-width: 768px)\").matches&&(be.current=5)},[]),n.useEffect(function(){var e;Fe.current&&!G&&(\"function\"==typeof(e=Fe.current).scrollTo?e.scrollTo({top:0,behavior:\"smooth\"}):e.scrollTop=0)},[pe.query,G]),n.useEffect(function(){Ce.length>0&&(lt(),Ee.current&&Ee.current.focus())},[Ce,lt]),n.useEffect(function(){function e(){if(ye.current){var e=.01*window.innerHeight;ye.current.style.setProperty(\"--docsearch-vh\",\"\".concat(e,\"px\"))}}return e(),window.addEventListener(\"resize\",e),function(){window.removeEventListener(\"resize\",e)}},[]),n.useEffect(function(){G||(ot.refresh(),He([]))},[G,ot,He]),n.useEffect(function(){Oe(\"initial\")},[G,Oe]);var dt=function(){var e=v(B().m(function e(){return B().w(function(e){for(;;)switch(e.n){case 0:return $e(!0),e.n=1,We();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),ft=function(){He([]),Oe(\"new-conversation\")},pt=!0,ht=pe.collections.some(function(e){return e.items.length>0});return\"idle\"!==pe.status||!1!==ht||0!==pe.query.length||G||(pt=!1),n.createElement(\"div\",A({ref:De},ct({\"aria-expanded\":!0}),{className:[\"DocSearch\",\"DocSearch-Container\",\"stalled\"===pe.status&&\"DocSearch-Container--Stalled\",\"error\"===pe.status&&\"DocSearch-Container--Errored\"].filter(Boolean).join(\" \"),role:\"button\",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&h()}}),n.createElement(\"div\",{className:\"DocSearch-Modal\",ref:ye},n.createElement(\"header\",{className:\"DocSearch-SearchBar\",ref:ge},n.createElement(Yu,A({},ot,{state:pe,placeholder:me||\"Search docs\",autoFocus:0===Ce.length,inputRef:Ee,isFromSelection:Boolean(Ce)&&Ce===Ae,translations:le,isAskAiActive:G,askAiStatus:Ve,askAiError:Je,askAiState:Ie,setAskAiState:Oe,isThreadDepthError:Ye&&\"new-conversation\"!==Ie,onClose:h,onAskAiToggle:K,onAskAgain:function(e){rt(!0,e)},onStopAskAiStreaming:dt,onNewConversation:ft,onViewConversationHistory:function(){Oe(\"conversation-history\")}}))),pt&&n.createElement(\"div\",{className:\"DocSearch-Dropdown\",ref:Fe},n.createElement(Vu,A({},ot,{indexName:Ne,state:pe,hitComponent:g,resultsFooterComponent:b,disableUserPersonalization:j,recentSearches:Me,favoriteSearches:Re,conversations:ze,inputRef:Ee,translations:de,getMissingResultsUrl:$,isAskAiActive:G,canHandleAskAi:ve,messages:Ue,askAiError:Je,status:Ve,hasCollections:ht,askAiState:Ie,selectAskAiQuestion:rt,suggestedQuestions:Te,selectSuggestedQuestion:function(e){rt(!0,e.question,e)},agentStudio:Pe,onAskAiToggle:K,onNewConversation:ft,onItemClick:function(e,t){if(\"askAI\"===e.type&&e.query){if(\"stored\"===e.anchor&&\"messages\"in e){He(e.messages);var n={query:e.query,messageId:e.messages[0].id};if(null!=J&&J(n))return nt.current&&nt.current.setQuery(\"\"),void t.preventDefault();K(!0,n)}else rt(!0,e.query);return Oe(\"initial\"),void t.preventDefault()}tt(e),et(e),H(t)||h()},onFeedback:ut}))),n.createElement(\"footer\",{className:\"DocSearch-Footer\"},n.createElement(wn,{translations:ce,isAskAiActive:G}))))}var mv=n.forwardRef(function(e,r){return n.createElement(t,A({},e,{ref:r}),n.createElement(Dv,e))});function Dv(t){var r,u,a,i=e(),o=i.searchButtonRef,s=i.keyboardShortcuts,c=i.isModalActive,l=i.isAskAiActive,d=i.initialQuery,p=i.onAskAiToggle,h=i.openModal,v=i.closeModal;return n.createElement(n.Fragment,null,n.createElement(X,{keyboardShortcuts:s,ref:o,translations:null===(r=t.translations)||void 0===r?void 0:r.button,onClick:h}),c&&f(n.createElement(vv,A({},t,{initialScrollY:window.scrollY,initialQuery:d,translations:null==t||null===(u=t.translations)||void 0===u?void 0:u.modal,isAskAiActive:l,onAskAiToggle:p,onClose:v})),null!==(a=t.portalContainer)&&void 0!==a?a:document.body))}function yv(e){var t=e.isOpen,r=e.onOpen,u=e.onClose,a=e.isAskAiActive,i=e.onAskAiToggle,o=$(e.keyboardShortcuts);n.useEffect(function(){function e(e){var n;if(t&&\"Escape\"===e.code&&a)i(!1);else{var s=o[\"Ctrl/Cmd+K\"]&&\"k\"===(null===(n=e.key)||void 0===n?void 0:n.toLowerCase())&&(e.metaKey||e.ctrlKey),c=o[\"/\"]&&\"/\"===e.key;(\"Escape\"===e.code&&t||s||!function(e){var t=e.composedPath()[0],n=t.tagName;return t.isContentEditable||\"INPUT\"===n||\"SELECT\"===n||\"TEXTAREA\"===n}(e)&&c&&!t)&&(e.preventDefault(),t?u():document.body.classList.contains(\"DocSearch--active\")||r())}}return window.addEventListener(\"keydown\",e),function(){window.removeEventListener(\"keydown\",e)}},[t,r,u,a,i,o])}export{mv as DocSearch,X as DocSearchButton,Dv as DocSearchInner,vv as DocSearchModal,yv as useDocSearchKeyboardEvents,lv as version};\n","var n=function(t,s,r,e){var u;s[0]=0;for(var h=1;h=5&&((e||!n&&5===r)&&(h.push(r,0,e,s),r=6),n&&(h.push(r,n,0,s),r=6)),e=\"\"},a=0;a\"===t?(r=1,e=\"\"):e=t+e[0]:u?t===u?u=\"\":e+=t:'\"'===t||\"'\"===t?u=t:\">\"===t?(p(),r=1):r&&(\"=\"===t?(r=5,s=e,e=\"\"):\"/\"===t&&(r<5||\">\"===n[a][l+1])?(p(),3===r&&(h=h[0]),r=h,(h=h[0]).push(2,0,r),r=0):\" \"===t||\"\\t\"===t||\"\\n\"===t||\"\\r\"===t?(p(),r=2):e+=t),3===r&&\"!--\"===e&&(r=4,h=h[0])}return p(),h}(s)),r),arguments,[])).length>1?r:r[0]}\n","import type { DocSearchRef, InitialAskAiMessage } from '@docsearch/core';\nimport type { DocSearchProps as DocSearchComponentProps } from '@docsearch/react';\nimport { DocSearch, version as docSearchVersion } from '@docsearch/react';\nimport htm from 'htm';\nimport type { JSX } from 'preact';\nimport { createElement, render, isValidElement, unmountComponentAtNode, createRef } from 'preact/compat';\n\n/**\n * Instance returned by docsearch() for programmatic control.\n */\nexport interface DocSearchInstance {\n /** Returns true once the component is mounted and ready. */\n readonly isReady: boolean;\n /** Returns true if the modal is currently open. */\n readonly isOpen: boolean;\n /** Opens the search modal. */\n open(): void;\n /** Closes the search modal. */\n close(): void;\n /** Opens Ask AI mode (modal). */\n openAskAi(initialMessage?: InitialAskAiMessage): void;\n /** Unmounts the DocSearch component and cleans up. */\n destroy(): void;\n}\n\n/**\n * Lifecycle callbacks for the DocSearch instance.\n */\nexport interface DocSearchCallbacks {\n /** Called once DocSearch is mounted and ready for interaction. */\n onReady?: () => void;\n /** Called when the modal opens. */\n onOpen?: () => void;\n /** Called when the modal closes. */\n onClose?: () => void;\n interceptAskAiEvent?: (initialMessage: InitialAskAiMessage) => boolean | void;\n}\n\nexport type DocSearchProps = DocSearchCallbacks &\n Omit & {\n container: HTMLElement | string;\n environment?: typeof window;\n };\n\nfunction getHTMLElement(value: HTMLElement | string, env: typeof window | undefined): HTMLElement {\n if (typeof value !== 'string') return value;\n if (!env) throw new Error('Cannot resolve a selector without a browser environment.');\n const el = env.document.querySelector(value);\n if (!el) throw new Error(`Container selector did not match any element: \"${value}\"`);\n return el;\n}\n\n// Tiny `html` helper bound to Preact createElement\nconst html = htm.bind(createElement) as unknown as (strings: TemplateStringsArray, ...values: unknown[]) => JSX.Element;\n\nexport type TemplateHelpers = Record & { html: typeof html };\n\nfunction createTemplateFunction

    , R = JSX.Element | string | (() => JSX.Element)>(\n original: ((props: P, helpers?: TemplateHelpers) => R) | undefined,\n): ((props: P) => JSX.Element) | undefined {\n if (!original) return undefined;\n return (props: P) => {\n const out = original(props, { html });\n\n // Element, return as is\n if (isValidElement(out)) return out;\n\n // Component function, call with same props\n if (typeof out === 'function') return out(props);\n\n // String, render as plain text to avoid XSS\n if (typeof out === 'string') return createElement('span', null, out);\n\n // Fallback\n return out as JSX.Element;\n };\n}\n\nexport function docsearch(allProps: DocSearchProps): DocSearchInstance {\n const { container, environment, transformSearchClient, hitComponent, resultsFooterComponent, ...rest } = allProps;\n const containerEl = getHTMLElement(container, environment || (typeof window !== 'undefined' ? window : undefined));\n const ref = createRef();\n let isReady = false;\n\n const props = {\n ...rest,\n ref,\n hitComponent: createTemplateFunction(hitComponent),\n resultsFooterComponent: createTemplateFunction(resultsFooterComponent),\n transformSearchClient: (searchClient: any): any => {\n if (searchClient?.addAlgoliaAgent) {\n searchClient.addAlgoliaAgent('docsearch.js', docSearchVersion);\n }\n return typeof transformSearchClient === 'function' ? transformSearchClient(searchClient) : searchClient;\n },\n } satisfies DocSearchComponentProps & { ref: typeof ref };\n\n render(createElement(DocSearch, props), containerEl);\n\n // Mark as ready after render completes\n isReady = true;\n\n return {\n open(): void {\n ref.current?.open();\n },\n close(): void {\n ref.current?.close();\n },\n openAskAi(initialMessage?: InitialAskAiMessage): void {\n ref.current?.openAskAi(initialMessage);\n },\n get isReady(): boolean {\n return isReady;\n },\n get isOpen(): boolean {\n return ref.current?.isOpen ?? false;\n },\n destroy(): void {\n unmountComponentAtNode(containerEl);\n isReady = false;\n },\n };\n}\n"],"names":["n","l","t","i","r","f","e","o","c","s","a","h","p","v","Array","isArray","y","slice","w","Object","assign","d","parentNode","remove","_","u","arguments","length","children","call","g","type","props","key","ref","__k","__","__b","__e","__c","constructor","undefined","__v","__i","__u","vnode","b","current","k","m","this","context","__g","M","S","$","push","debounceRendering","queueMicrotask","x","sort","shift","__P","q","__n","namespaceURI","ownerDocument","P","C","String","I","D","j","B","A","nextSibling","insertBefore","nodeType","H","some","L","setProperty","O","style","cssText","replace","toLowerCase","__l","addEventListener","removeEventListener","removeAttribute","setAttribute","T","event","F","__z","prototype","render","contextType","value","E","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","componentDidUpdate","__r","getChildContext","getSnapshotBeforeUpdate","V","then","data","indexOf","N","localName","createTextNode","createElementNS","is","__m","childNodes","attributes","name","__html","innerHTML","content","z","diffed","forEach","map","unmount","componentWillUnmount","document","documentElement","firstChild","J","getDerivedStateFromError","setState","componentDidCatch","forceUpdate","__H","__N","__f","filter","every","concat","useDebugValue","requestAnimationFrame","clearTimeout","cancelAnimationFrame","setTimeout","R","displayName","isReactComponent","isPureReactComponent","Symbol","for","bind","count","only","toArray","U","appendChild","W","containerInfo","__R","__a","__O","pop","createElement","fallback","Z","Y","G","test","textContent","defineProperty","configurable","get","set","writable","Q","X","nn","cancelBubble","en","defaultPrevented","persist","isPropagationStopped","isDefaultPrevented","nativeEvent","tn","rn","enumerable","class","un","multiple","selected","defaultValue","className","defaultProps","$$typeof","on","ln","cn","ReactCurrentDispatcher","readContext","useCallback","useContext","useDeferredValue","useEffect","useId","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","useReducer","useRef","useState","useSyncExternalStore","useTransition","sn","hn","En","startTransition","version","Children","hydrate","unmountComponentAtNode","createPortal","createContext","Set","add","delete","Provider","Consumer","createFactory","cloneElement","apply","createRef","Fragment","isValidElement","isElement","isFragment","isMemo","startsWith","findDOMNode","Component","PureComponent","memo","forwardRef","flushSync","unstable_batchedUpdates","StrictMode","Suspense","lazy","default","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","_typeof","toPrimitive","TypeError","keys","getOwnPropertySymbols","getOwnPropertyDescriptor","getOwnPropertyDescriptors","defineProperties","iterator","next","done","return","toString","from","isOpen","isAskAiActive","onAskAiToggle","onClose","onOpen","keyboardShortcuts","code","metaKey","ctrlKey","composedPath","tagName","isContentEditable","preventDefault","body","classList","contains","window","theme","onReady","onSidepanelOpen","onSidepanelClose","hasOwnProperty","propertyIsEnumerable","initialQuery","matchMedia","matches","includes","has","K","focus","open","close","openAskAi","openSidepanel","isReady","isSidepanelOpen","isSidepanelSupported","dataset","onInput","searchButtonRef","docsearchState","setDocsearchState","openModal","closeModal","isModalActive","initialAskAiMessage","registerView","isHybridModeSupported","Promise","resolve","ReferenceError","Reflect","construct","setPrototypeOf","getPrototypeOf","__proto__","create","Boolean","valueOf","toStringTag","_invoke","Map","Function","RegExp","WeakMap","reduce","exec","groups","indices","join","size","color","width","height","viewBox","cx","cy","stroke","fill","strokeWidth","strokeLinecap","strokeLinejoin","button","altKey","shiftKey","source","__docsearch_parent","_highlightResult","hierarchy","lvl0","translations","buttonText","buttonAriaLabel","navigator","platform","ee","reactsToKey","te","ne","re","ue","collections","items","ae","ie","oe","se","segment","ce","item","index","__autocomplete_indexName","positions","findIndex","objectID","queryID","__autocomplete_queryID","algoliaSource","de","fe","pe","he","ve","me","De","ye","ge","Fe","Ee","objectIDs","be","le","split","Number","__autocomplete_algoliaCredentials","appId","apiKey","headers","init","setAuthenticatedUserToken","setUserToken","clickedObjectIDsAfterSearch","clickedObjectIDs","clickedFilters","convertedObjectIDsAfterSearch","convertedObjectIDs","convertedFilters","viewedObjectIDs","payload","viewedFilters","Ae","Ce","ke","we","_e","Se","xe","Be","Ie","Oe","Te","onItemsChange","insights","insightsEvents","eventName","Pe","je","onSelect","onActive","__autocomplete_clickAnalytics","insightsClient","insightsInitParams","AlgoliaAnalyticsObject","queue","async","src","onerror","console","error","partial","subscribe","setContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","userToken","Ne","getItems","onStateChange","__autocomplete_pluginOptions","__automaticInsights","ze","Me","catch","finally","onCancelList","cancel","isCanceled","Re","Ze","Le","$e","qe","Ue","Ve","He","We","Je","Ke","awaitSubmit","wait","Math","max","Qe","activeItemId","collection","itemInputValue","getItemInputValue","itemUrl","getItemUrl","Ge","sourceId","Ye","Xe","et","tt","nt","ut","at","it","ot","st","lt","dt","ft","pt","ht","plugins","debug","openOnFocus","enterKeyHint","ignoreCompositionEvents","placeholder","autoFocus","defaultActiveItemId","stallThreshold","environment","shouldPanelOpen","reshape","sources","id","initialState","query","completion","status","onSubmit","onReset","getSources","all","ct","Error","JSON","stringify","setIsOpen","onResolve","__default","navigate","location","navigateNewTab","navigateNewWindow","vt","mt","Dt","yt","gt","Ft","Et","bt","At","Ct","kt","execute","_t","searchClient","requesterId","requests","find","xt","Bt","It","Ot","Tt","jt","Nt","zt","Rt","Mt","Zt","nextState","refresh","store","Pt","setCollections","setQuery","setActiveItemId","setStatus","getState","pendingRequests","queries","params","transformResponse","wt","_automaticInsights","results","hits","facetHits","label","highlighted","St","sourcesBySourceId","values","Lt","$t","qt","Ut","Vt","Kt","Wt","Jt","Qt","Gt","Yt","Xt","getEnvironmentProps","inputElement","formElement","panelElement","isEmpty","target","dispatch","cancelAll","onTouchStart","onMouseDown","onTouchMove","activeElement","blur","getRootProps","role","getFormProps","action","noValidate","getLabelProps","htmlFor","getInputProps","maxLength","match","userAgent","autoComplete","autoCorrect","autoCapitalize","spellCheck","onChange","currentTarget","isComposing","onCompositionEnd","onKeyDown","Ht","getElementById","scrollIntoViewIfNeeded","scrollIntoView","nextActiveItemId","onFocus","onBlur","onClick","getPanelProps","onMouseLeave","getListProps","getItemProps","__autocomplete_id","onMouseMove","an","options","__autocomplete_metadata","userAgents","ua","dn","fn","pn","vn","mn","Dn","yn","gn","Fn","prevState","race","rt","Event","metadata","querySelector","bn","An","Cn","poweredByText","href","hostname","rel","xmlns","rx","ry","kn","ariaLabel","wn","selectText","selectKeyAriaLabel","submitQuestionText","navigateText","navigateUpKeyAriaLabel","navigateDownKeyAriaLabel","closeText","backToSearchText","closeKeyAriaLabel","points","_n","hit","url","Sn","strokeOpacity","fillRule","transform","attributeName","to","dur","repeatCount","xn","Bn","In","On","Tn","Pn","jn","zn","Nn","x1","x2","y1","y2","Rn","Mn","clipRule","Zn","Ln","$n","qn","Un","Vn","Hn","before","separator","lastSeparator","after","Kn","onSearchQueryClick","aggregatedToolCallNode","aggregatedToolCallText","tabIndex","Jn","breaks","extensions","gfm","hooks","pedantic","renderer","silent","tokenizer","walkTokens","Qn","Gn","Yn","er","caret","getRegex","Xn","codeRemoveIndent","outputLinkReplace","indentCodeCompensation","beginningSpace","endingHash","startingSpaceChar","endingSpaceChar","nonSpaceChar","newLineCharGlobal","tabCharGlobal","multipleSpaceGlobal","blankLine","doubleBlankLine","blockquoteStart","blockquoteSetextReplace","blockquoteSetextReplace2","listReplaceTabs","listReplaceNesting","listIsTask","listReplaceTask","anyLine","hrefBrackets","tableDelimiter","tableAlignChars","tableRowBlankLine","tableAlignRight","tableAlignCenter","tableAlignLeft","startATag","endATag","startPreScriptTag","endPreScriptTag","startAngleBracket","endAngleBracket","pedanticHrefTitle","unicodeAlphaNumeric","escapeTest","escapeReplace","escapeTestNoEncode","escapeReplaceNoEncode","unescapeTest","percentDecode","findPipe","splitPipe","slashPipe","carriageReturn","spaceLine","notSpaceStart","endingNewline","listItemRegex","nextBulletRegex","min","hrRegex","fencesBeginRegex","headingBeginRegex","htmlBeginRegex","tr","nr","rr","ur","ar","ir","or","sr","cr","lr","dr","fr","pr","hr","blockquote","def","fences","heading","html","lheading","list","newline","paragraph","table","text","vr","mr","Dr","yr","gr","Fr","Er","br","Ar","Cr","kr","wr","_r","Sr","xr","Br","Ir","Or","Tr","Pr","jr","Nr","zr","Rr","Mr","Zr","Lr","_backpedal","anyPunctuation","autolink","blockSkip","del","emStrongLDelim","emStrongRDelimAst","emStrongRDelimUnd","escape","link","nolink","punctuation","reflink","reflinkSearch","tag","$r","qr","Ur","Vr","normal","Hr","Kr","Wr","Jr","Qr","encodeURI","Gr","trim","splice","Yr","charAt","Xr","title","other","inLink","raw","tokens","inlineTokens","eu","rules","block","codeBlockStyle","lang","inline","depth","lexer","top","blockTokens","substring","ordered","start","loose","repeat","trimStart","search","task","checked","trimEnd","pre","header","align","rows","inRawBlock","lastIndex","escaped","tu","links","inlineQueue","space","endsWith","startBlock","charCodeAt","lastIndexOf","emStrongMask","emStrong","codespan","startInline","inlineText","lex","nu","parser","parse","parseInline","listitem","checkbox","unshift","tablecell","tablerow","textRenderer","ru","uu","renderers","image","strong","em","au","lexInline","iu","setOptions","parseMarkdown","use","defaults","childTokens","flat","level","passThroughHooks","passThroughHooksRespectAsync","onError","preprocess","provideLexer","processAllTokens","provideParser","postprocess","message","reject","ou","su","cu","getDefaults","Parser","Renderer","TextRenderer","Lexer","Tokenizer","Hooks","lu","encodeURIComponent","du","copyButtonText","copyButtonCopiedText","isStreaming","querySelectorAll","closest","getAttribute","clipboard","writeText","decodeURIComponent","dangerouslySetInnerHTML","fu","part","searchingText","preToolCallText","toolCallResultText","input","output","nbHits","pu","hu","parts","messages","anchor","lvl1","lvl2","lvl3","lvl4","lvl5","lvl6","url_without_anchor","vu","mu","Du","yu","disclaimerText","gu","exchange","askAiError","isLastExchange","loadingStatus","conversations","onFeedback","agentStudio","userMessage","assistantMessage","stoppedStreamingText","errorTitleText","afterToolCallText","duringToolCallText","matchAll","stopped","thinkingText","Fu","showActions","latestAssistantMessageContent","Eu","urlsToDisplay","relatedSourcesText","getOne","feedback","likeButtonTitle","dislikeButtonTitle","thanksForFeedbackText","ku","wu","Cu","Au","bu","threadDepthExceededMessage","startNewConversationButtonText","onNewConversation","reverse","copyButtonTitle","disabled","_u","Su","xu","attribute","Bu","Iu","Tu","Ou","renderIcon","renderAction","onItemClick","hitComponent","askAiPlaceholder","noResultsAskAiPlaceholder","Pu","ju","stopPropagation","Nu","titleText","helpText","zu","suggestedQuestions","selectSuggestedQuestion","newConversationTitle","newConversationDescription","question","Ru","Mu","noResultsText","suggestedQueryText","reportMissingResultsText","reportMissingResultsLinkText","searchSuggestions","canHandleAskAi","inputRef","getMissingResultsUrl","Zu","Lu","resultsFooterComponent","$u","qu","recentSearchesTitle","saveRecentSearchButtonTitle","removeRecentSearchButtonTitle","favoriteSearchesTitle","removeFavoriteSearchButtonTitle","recentConversationsTitle","removeRecentConversationButtonTitle","favoriteSearches","recentSearches","Uu","Vu","askAiState","newConversation","askAiScreen","errorScreen","hasCollections","resultsScreen","noResultsScreen","startScreen","Hu","Ku","Wu","setOpen","Ju","Qu","shimmer","Trigger","Content","Item","Gu","Yu","setAskAiState","clearButtonTitle","clearButtonAriaLabel","closeButtonText","closeButtonAriaLabel","searchInputLabel","backToKeywordSearchButtonText","backToKeywordSearchButtonAriaLabel","placeholderTextAskAiStreaming","newConversationPlaceholder","conversationHistoryTitle","startNewConversationText","viewConversationHistoryText","threadDepthErrorPlaceholder","isFromSelection","select","askAiStatus","isThreadDepthError","onAskAgain","hidden","onStopAskAiStreaming","onViewConversationHistory","Xu","localStorage","ceil","removeItem","ta","setItem","getItem","DOMException","na","ra","limit","_snippetResult","getAll","addFeedback","getConversation","aa","ia","oa","sa","_ref","_this","cause","_classCallCheck","_callSuper","_inherits","_wrapNativeSuper","_createClass","isInstance","hasMarker","ca","la","da","fa","pa","ha","va","_ref2","_this2","argument","ma","Da","ya","ga","Fa","_ref3","_this3","Ea","ba","Aa","Ca","ka","_ref4","_this4","wrap","_ref5","wa","field","line","_a","xa","onRetry","onComment","onEvent","parseInt","feed","reset","consume","Sa","enqueue","TransformStream","Ba","_zod","traits","constr","Parent","deferred","hasInstance","Ia","Oa","Ta","Pa","ja","entries","Na","za","Ra","Ma","Za","La","$a","qa","Ua","Va","captureStackTrace","Ha","Ka","Wa","Ja","Qa","Ga","Ya","parent","Xa","ei","safeint","MIN_SAFE_INTEGER","MAX_SAFE_INTEGER","int32","uint32","float32","float64","MAX_VALUE","ti","aborted","issues","continue","ni","path","ri","ui","inst","customError","localeError","reportInput","ai","File","ii","oi","si","ci","li","di","run","Err","callee","fi","pi","success","hi","vi","mi","ki","wi","_i","Si","xi","Bi","Ii","Oi","Ti","Pi","ji","Ni","zi","Ri","Mi","Zi","Li","$i","qi","Ui","Vi","precision","Hi","Ki","Wi","Ji","Qi","Gi","Yi","onattach","Xi","number","bigint","object","eo","bag","inclusive","maximum","exclusiveMaximum","POSITIVE_INFINITY","check","origin","abort","minimum","exclusiveMinimum","NEGATIVE_INFINITY","no","multipleOf","BigInt","toFixed","pow","divisor","ro","format","pattern","isInteger","expected","isSafeInteger","note","uo","when","ao","io","exact","oo","so","co","lo","patterns","fo","po","ho","vo","position","mo","prefix","Do","suffix","yo","go","schema","property","Fo","mime","Eo","tx","bo","indent","args","execution","Ao","major","minor","patch","Co","checks","skipChecks","direction","validate","vendor","ko","coerce","wo","_o","So","v1","v2","v3","v4","v5","v6","v7","v8","xo","Bo","URL","protocol","normalize","Io","Oo","To","Po","jo","No","zo","Ro","local","offset","Mo","Zo","Lo","$o","qo","Uo","Vo","Ho","atob","Ko","contentEncoding","Wo","padEnd","Jo","Qo","typ","alg","Go","isNaN","isFinite","received","Yo","Xo","es","ts","ns","rs","us","element","as","shape","optin","optout","keySet","numKeys","optionalKeys","os","catchall","ss","cs","jitless","write","compile","ls","errors","ds","flatMap","fs","propValues","discriminator","unionFallback","ps","left","right","vs","hs","valid","Date","mergeErrorPath","ms","keyType","valueType","ownKeys","Ds","ys","gs","Fs","Es","innerType","bs","As","Cs","ks","ws","_s","Ss","catchValue","xs","in","out","Bs","Is","Os","freeze","Ts","getter","Ps","js","Ns","_map","_idmap","Rs","Ms","Zs","Ls","$s","qs","Us","Vs","Hs","Ks","Ws","Js","Qs","Gs","Ys","Xs","ec","tc","nc","rc","uc","toUpperCase","ic","counter","metadataRegistry","unrepresentable","override","seen","schemaPath","cycle","toJSONSchema","process","isParent","minLength","guid","datetime","json_string","regex","allOf","nullable","enum","not","minItems","maxItems","properties","required","additionalProperties","anyOf","rest","prefixItems","additionalItems","propertyNames","const","contentMediaType","_prefault","readOnly","oc","examples","cycles","reused","external","$ref","registry","uri","defId","zodSchema","jsonSchema","$schema","warn","$id","defs","$defs","definitions","sc","gte","lowercase","lte","maxSize","minSize","negative","nonnegative","nonpositive","overwrite","positive","uppercase","cc","Pc","dc","pc","vc","Dc","_errors","flatten","formErrors","fieldErrors","addIssue","addIssues","yc","gc","Fc","Ec","bc","Di","Ac","yi","Cc","gi","kc","Fi","wc","Ei","_c","bi","Sc","Ai","xc","Ci","Bc","clone","brand","register","safeParse","parseAsync","safeParseAsync","spa","encode","decode","encodeAsync","decodeAsync","safeEncode","safeDecode","safeEncodeAsync","safeDecodeAsync","refine","$l","superRefine","fatal","ac","optional","xl","Il","nullish","nonoptional","Pl","array","pl","yl","and","Fl","zl","_l","Ol","prefault","Tl","jl","pipe","readonly","Rl","describe","description","meta","isOptional","isNullable","Ic","nonempty","Oc","email","jc","Rc","jwt","Xc","emoji","Mc","Nc","uuid","zc","uuidv4","uuidv6","uuidv7","nanoid","Zc","cuid","Lc","cuid2","$c","ulid","qc","base64","Qc","base64url","Gc","xid","Uc","ksuid","Vc","ipv4","Hc","ipv6","Kc","cidrv4","Wc","cidrv6","Jc","e164","Yc","lc","date","fc","time","hc","duration","mc","Tc","el","int","rl","safe","step","finite","minValue","maxValue","isInt","tl","nl","ul","al","il","ol","sl","cl","ll","dl","fl","unwrap","hl","keyof","Cl","passthrough","strict","strip","extend","safeExtend","merge","pick","omit","Sl","vl","ml","Dl","gl","El","bl","Al","extract","exclude","fromEntries","kl","wl","Bl","removeDefault","removeCatch","Nl","Zl","Ll","Ml","ql","Ul","Class","assertEqual","assertIs","assertNever","arrayToEnum","getValidEnumValues","objectKeys","objectValues","floor","joinValues","jsonStringifyReplacer","mergeShapes","Vl","Hl","string","nan","boolean","function","symbol","null","promise","unknown","Kl","Wl","unionErrors","returnTypeError","argumentsError","Jl","invalid_type","invalid_literal","unrecognized_keys","invalid_union","invalid_union_discriminator","invalid_enum_value","invalid_arguments","invalid_return_type","invalid_date","invalid_string","validation","too_small","too_big","custom","invalid_intersection_types","not_multiple_of","not_finite","defaultError","Ql","Gl","Yl","errorMaps","issueData","Xl","common","contextualErrorMap","schemaErrorMap","ed","td","nd","dirty","mergeObjectSync","alwaysSet","rd","ud","ad","od","sd","errToObj","cd","_cachedPath","_path","_key","ld","_error","dd","errorMap","invalid_type_error","required_error","fd","pd","_def","refinement","parsedType","ctx","_parse","_parseSync","_parseAsync","_refinement","vf","typeName","Ef","ZodEffects","effect","mf","Df","Jd","hf","Yd","nf","yf","ZodDefault","bf","ZodBranded","gf","ZodCatch","Af","Cf","hd","vd","md","Dd","yd","gd","Fd","Ed","bd","Ad","Cd","kd","wd","_d","Sd","xd","Bd","Id","Od","Td","Pd","jd","Nd","_getType","_getOrReturnCtx","kind","_addCheck","zd","ZodString","Rd","setLimit","ZodNumber","Md","_getInvalidInput","ZodBigInt","Zd","ZodBoolean","Ld","getTime","ZodDate","$d","ZodSymbol","qd","ZodUndefined","Ud","ZodNull","Vd","_any","ZodAny","Hd","_unknown","ZodUnknown","Kd","never","ZodNever","Wd","void","ZodVoid","_processInputParams","exactLength","mergeArray","Qd","Gd","rf","ZodArray","_cached","nonstrict","augment","_getCached","unknownKeys","ZodObject","df","strictCreate","lazycreate","result","ZodUnion","Xd","cf","lf","ff","pf","ef","optionsMap","ZodDiscriminatedUnion","tf","ZodIntersection","ZodTuple","uf","mergeObjectAsync","ZodRecord","af","ZodMap","of","ZodSet","sf","implement","returns","ZodFunction","ZodLazy","ZodEnum","ZodLiteral","_cache","ZodNativeEnum","ZodPromise","sourceType","createWithPreprocess","ZodOptional","ZodNullable","Ff","ZodNaN","ZodPipeline","ZodReadonly","kf","_ref6","_ref6$size","_ref6$alphabet","alphabet","_ref6$separator","random","wf","_f","globalThis","versions","node","EdgeRuntime","Sf","Headers","_step","_iterator","_createForOfIteratorHelper","_step$value","_slicedToArray","err","xf","_len","Bf","If","Of","_step2","_iterator2","SyntaxError","Tf","Pf","_ref7","_asyncToGenerator","_regenerator","_callee","_context","_x","_defineProperty","jf","_x2","_jf","_callee26","_ref9","_context26","Nf","_x3","_Nf","_callee27","_ref0","_t41","_t42","_context27","rawValue","zf","_x4","_zf","_callee28","_ref1","_t43","_t44","_context28","stackTraceLimit","Rf","_x5","_Rf","_callee29","_context29","Mf","_toConsumableArray","Zf","Lf","$refStrategy","basePath","effectStrategy","pipeStrategy","dateStrategy","mapStrategy","removeAdditionalStrategy","allowedAdditionalProperties","rejectedAdditionalProperties","definitionPath","strictUnions","errorMessages","patternStrategy","applyRegexFlags","emailStrategy","base64Strategy","nameStrategy","$f","vp","qf","Uf","_step3","_iterator3","Vf","Hf","Kf","Wf","Jf","Qf","Gf","Yf","Xf","ep","tp","np","rp","_step4","_iterator4","ip","op","up","ap","_objectSpread","errorMessage","sp","flags","currentPath","cp","_rp","_objectWithoutProperties","_excluded","_$f","_excluded2","lp","pp","hp","_step5","_iterator5","propertyPath","fp","_step6","_iterator6","dp","_excluded3","uniqueItems","mp","Dp","postProcess","gp","_ref10","_ref11","yp","_ref12","_ref13","Ep","Ap","emit","__shared","schemas","_validate","_callee2","_context2","_x6","Fp","_validate2","_callee3","_context3","_x7","bp","_defineAccessor","wp","_p","Sp","xp","Bp","Ip","_ref17","_this5","_ref17$message","response","usage","finishReason","jp","Np","Uint8Array","ArrayBuffer","Buffer","isBuffer","zp","Rp","Mp","providerOptions","Zp","mediaType","Lp","filename","$p","qp","toolCallId","toolName","providerExecuted","Up","Pp","Vp","Hp","Kp","Wp","Jp","providerMetadata","delta","errorText","dynamic","inputTextDelta","preliminary","transient","messageId","messageMetadata","Qp","Gp","Yp","_x8","_Yp","_callee30","_t45","_context30","Xp","eh","th","nh","_ref18","lastMessage","activeTextParts","activeReasoningParts","partialToolCalls","rh","_ref19","stream","messageMetadataSchema","dataPartSchemas","runUpdateMessageJob","onToolCall","onData","pipeThrough","_callee6","_context6","_ref21","_callee5","_ref20","_D","_t5","_t6","_t7","_t8","_t9","_t0","_t1","_t10","_yield$Yp","_n13","_t11","_t12","_t13","_t14","_t15","_u5","_t17","_context5","_callee4","_n14","_context4","_x0","rawInput","callProviderMetadata","toolCall","_x9","uh","isProcessing","_processQueue","_callee7","_context7","_run","_callee9","_this6","_context9","_callee8","_t20","_context8","processQueue","_x1","ih","ah","oh","sh","responseFormat","parsePartial","_parsePartial","_callee0","_ref23","_context0","_x10","parseOutput","_parseOutput","_callee1","_ref24","_context1","_x11","_ref25","Cp","_ref26","_callee10","_e15","_t21","_context10","_ref27","_callee11","_context11","ch","_ref28","_ref28$api","api","credentials","fetch","prepareSendMessagesRequest","prepareReconnectToStreamRequest","_sendMessages","_callee12","_ref29","_t22","_t24","_context12","abortSignal","_excluded4","chatId","requestMetadata","trigger","method","signal","ok","processResponseStream","_x12","_reconnectToStream","_callee13","_t26","_t28","_context13","_x13","lh","_ref30","TextDecoderStream","_ref31","_callee14","_t31","_context14","_callee15","_context15","dh","_ref32","_this7","_ref32$generateId","generateId","_ref32$id","_ref32$transport","transport","onFinish","sendAutomaticallyWhen","activeResponse","jobExecutor","sendMessage","_ref33","_callee18","_t36","_t37","_context18","makeRequest","files","_ref34","_callee17","_context17","FileList","_ref35","_callee16","_t33","_t34","_t35","_context16","FileReader","onload","readAsDataURL","_x17","_x16","replaceMessage","pushMessage","_x14","_x15","regenerate","_callee19","_ref37","_args19","_context19","_excluded5","resumeStream","_callee20","_args20","_context20","clearError","addToolOutput","_ref40","_callee22","_ref39","_ref39$state","_context22","tool","_callee21","_context21","_x18","addToolResult","stop","_callee23","_context23","abortController","_ref43","_makeRequest","_callee25","_ref44","_a5","_i4","_e16","_o5","_t39","_this8","_context25","snapshot","AbortController","reconnectToStream","sendMessages","_ref46","_callee24","_ref45","_t38","_context24","getReader","read","releaseLock","_x20","isAbort","isDisconnect","isError","_x19","fh","_ref47","hh","vh","mh","Dh","yh","gh","Fh","Eh","bh","Sh","Ah","__esModule","kp","now","Ch","kh","wh","WeakSet","_h","xh","_this9","popMessage","structuredClone","Bh","_ref48","_this0","_excluded6","_assertThisInitialized","Ih","Oh","exp","Th","Ph","assistantId","useStagingEnv","sessionStorage","json","token","jh","thumbs","Nh","Rh","miss","timeToLive","timestamp","clear","Mh","caches","Zh","serializable","Lh","algoliaAgents","client","$h","qh","lastUpdate","isUp","isTimedOut","Uh","Vh","stackTrace","Hh","Kh","Wh","Jh","Qh","port","Gh","Yh","Accept","Xh","ev","tv","nv","rv","uv","request","av","iv","ov","sv","accept","lv","dv","authMode","queryParameters","hosts","hostsCache","baseHeaders","logger","baseQueryParameters","algoliaAgent","timeouts","requester","requestsCache","responsesCache","getTimeout","connectTimeout","connect","responseTimeout","host","triesLeft","send","info","useReadTransporter","cacheable","requestOptions","transporter","clearCache","_ua","addAlgoliaAgent","setClientApiKey","searchForHits","searchForFacets","customPost","parameters","getRecommendations","facet","maxFacetHits","facetQuery","cv","XMLHttpRequest","setRequestHeader","onreadystatechange","readyState","OPENED","responseText","fv","pv","hv","indexes","snippetLength","maxResultsPerGroup","transformItems","saveRecentSearch","searchParameters","indexName","attributesToRetrieve","attributesToSnippet","snippetEllipsisText","highlightPreTag","highlightPostTag","hitsPerPage","vv","askAi","initialScrollY","transformSearchClient","disableUserPersonalization","interceptAskAiEvent","recentSearchesLimit","recentSearchesWithFavoritesLimit","footer","searchBox","placeholderText","placeholderTextAskAi","getSelection","suggestedQuestionsEnabled","filters","algolia","authorization","_ref49","experimental_throttle","_ref49$resume","resume","_excluded7","chat","setMessages","detail","msg","loc","stopAskAiStreaming","exchanges","sendFeedback","zh","suggestedQuestionId","scrollTo","behavior","scrollTop","container","innerWidth","clientWidth","marginInlineEnd","innerHeight","selectAskAiQuestion","mv","Dv","scrollY","modal","portalContainer","createTemplateFunction","original","docsearch","allProps","containerEl","env","getHTMLElement","docSearchVersion","DocSearch","_ref$current","_ref$current2","initialMessage","_ref$current3","_ref$current$isOpen","_ref$current4","destroy"],"mappings":"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","x_google_ignoreList":[0,1,2,5]} \ No newline at end of file diff --git a/node_modules/@docsearch/js/dist/umd/index.js b/node_modules/@docsearch/js/dist/umd/index.js deleted file mode 100644 index 4193848..0000000 --- a/node_modules/@docsearch/js/dist/umd/index.js +++ /dev/null @@ -1,7 +0,0 @@ -/*! @docsearch/js 4.5.4 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).docsearch=t()}(this,function(){"use strict";function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}function c(e,t,n){return(t=E(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},l(e)}function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&y(e,t)}function d(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(d=function(){return!!e})()}function p(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function h(e){for(var t=1;t3?(u=h===r)&&(s=a[(o=a[4])?5:(o=3,3)],a[4]=a[5]=e):a[0]<=p&&((u=n<2&&pr||r>h)&&(a[4]=n,a[5]=r,d.n=h,o=0))}if(u||n>1)return i;throw f=!0,r}return function(u,l,h){if(c>1)throw TypeError("Generator is already running");for(f&&1===l&&p(l,h),o=l,s=h;(t=o<2?e:s)||!f;){a||(o?o<3?(o>1&&(d.n=-1),p(o,s)):d.n=s:d.v=s);try{if(c=2,a){if(o||(u="next"),t=a[u]){if(!(t=t.call(a,s)))throw TypeError("iterator result is not an object");if(!t.done)return t;s=t.value,o<2&&(o=0)}else 1===o&&(t=a.return)&&t.call(a),o<2&&(s=TypeError("The iterator does not provide a '"+u+"' method"),o=1);a=e}else if((t=(f=d.n<0)?s:n.call(r,d))!==i)break}catch(t){a=e,o=1,s=t}finally{c=1}}return{value:t,done:f}}}(n,u,a),!0),c}var i={};function o(){}function s(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(D(t={},r,function(){return this}),t),f=c.prototype=o.prototype=Object.create(l);function d(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,D(e,u,"GeneratorFunction")),e.prototype=Object.create(f),e}return s.prototype=c,D(f,"constructor",c),D(c,"constructor",s),s.displayName="GeneratorFunction",D(c,u,"GeneratorFunction"),D(f),D(f,u,"Generator"),D(f,r,function(){return this}),D(f,"toString",function(){return"[object Generator]"}),(m=function(){return{w:a,m:d}})()}function D(e,t,n,r){var u=Object.defineProperty;try{u({},"",{})}catch(e){u=0}D=function(e,t,n,r){function a(t,n){D(e,t,function(e){return this._invoke(t,n,e)})}t?u?u(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(a("next",0),a("throw",1),a("return",2))},D(e,t,n,r)}function y(e,t){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},y(e,t)}function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,u,a,i,o=[],s=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t);else for(;!(s=(r=a.call(n)).done)&&(o.push(r.value),o.length!==t);s=!0);}catch(e){c=!0,u=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw u}}return o}}(e,t)||b(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function F(t){return function(t){if(Array.isArray(t))return e(t)}(t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||b(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function _(e){return _="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_(e)}function b(t,n){if(t){if("string"==typeof t)return e(t,n);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?e(t,n):void 0}}function C(e){var t="function"==typeof Map?new Map:void 0;return C=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return function(e,t,n){if(d())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var u=new(e.bind.apply(e,r));return n&&y(u,n.prototype),u}(e,arguments,l(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),y(n,e)},C(e)}var k,A,w,S,x,O,B,I,T,P,j,N={},z=[],R=Array.isArray,M=z.slice,Z=Object.assign;function L(e){e&&e.parentNode&&e.remove()}function $(e,t,n){var r,u,a,i={};for(a in t)"key"==a?r=t[a]:"ref"==a&&"function"!=typeof e?u=t[a]:i[a]=t[a];return arguments.length>2&&(i.children=arguments.length>3?M.call(arguments,2):n),q(e,i,r,u,null)}function q(e,t,n,r,u){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==u?++A:u,__i:-1,__u:0};return null==u&&null!=k.vnode&&k.vnode(a),a}function U(){return{current:null}}function H(e){return e.children}function V(e,t){this.props=e,this.context=t,this.__g=0}function W(e,t){if(null==t)return e.__?W(e.__,e.__i+1):null;for(var n;ts&&w.sort(O),e=w.shift(),s=w.length,8&e.__g&&(n=void 0,u=(r=(t=e).__v).__e,a=[],i=[],(o=t.__P)&&((n=Z({},r)).__v=r.__v+1,k.vnode&&k.vnode(n),ue(o,n,r,t.__n,o.namespaceURI,32&r.__u?[u]:null,a,null==u?W(r):u,!!(32&r.__u),i,o.ownerDocument),n.__v=r.__v,n.__.__k[n.__i]=n,ie(a,n,i),n.__e!=u&&K(n)));x=0}function G(e,t,n,r,u,a,i,o,s,c,l,f){var d,p,h,v,m,D,y,g=r&&r.__k||z,F=t.length;for(s=function(e,t,n,r,u){var a,i,o,s,c,l=n.length,f=l,d=0;for(e.__k=new Array(u),a=0;a0?q(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i).__=e,i.__b=e.__b+1,o=null,-1!=(c=i.__i=ee(i,n,s,f))&&(f--,(o=n[c])&&(o.__u|=2)),null==o||null==o.__v?(-1==c&&(u>l?d--:us?d--:d++,i.__u|=4))):e.__k[a]=null;if(f)for(a=0;a(l?1:0))for(u=n-1,a=n+1;u>=0||a=0?u--:a++])&&!(2&c.__u)&&o==c.key&&s==c.type)return i;return-1}function te(e,t,n){"-"==t[0]?e.setProperty(t,null==n?"":n):e[t]=null==n?"":n}function ne(e,t,n,r,u){var a;e:if("style"==t)if("string"==typeof n)e.style.cssText=n;else{if("string"==typeof r&&(e.style.cssText=r=""),r)for(t in r)n&&t in n||te(e.style,t,"");if(n)for(t in n)r&&n[t]==r[t]||te(e.style,t,n[t])}else if("o"==t[0]&&"n"==t[1])a=t!=(t=t.replace(B,"$1")),(t=t.slice(2))[0].toLowerCase()!=t[0]&&(t=t.toLowerCase()),e.__l||(e.__l={}),e.__l[t+a]=n,n?r?n.l=r.l:(n.l=I,e.addEventListener(t,a?P:T,a)):e.removeEventListener(t,a?P:T,a);else{if("http://www.w3.org/2000/svg"==u)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 e)try{e[t]=null==n?"":n;break e}catch(e){}"function"==typeof n||(null==n||!1===n&&"-"!=t[4]?e.removeAttribute(t):e.setAttribute(t,"popover"==t&&1==n?"":n))}}function re(e){return function(t){if(this.__l){var n=this.__l[t.type+e];if(null==t.u)t.u=I++;else if(t.u0&&t.__c.__z.push(B),S++,a[O]=null):8==B.nodeType&&"/$s"==B.data?(--S>0&&t.__c.__z.push(B),x=0===S,o=a[O],a[O]=null):S>0&&(t.__c.__z.push(B),a[O]=null));if(!x){for(;o&&8==o.nodeType&&o.nextSibling;)o=o.nextSibling;a[a.indexOf(o)]=null,t.__c.__z=[o]}t.__e=o}else{for(I=a.length;I--;)L(a[I]);ae(t)}else t.__e=n.__e,t.__k=n.__k,e.then||ae(t);k.__e(e,t,n)}else o=t.__e=function(e,t,n,r,u,a,i,o,s,c){var l,f,d,p,h,v,m,D,y=n.props,g=t.props,F=t.type;if("svg"==F?u="http://www.w3.org/2000/svg":"math"==F?u="http://www.w3.org/1998/Math/MathML":u||(u="http://www.w3.org/1999/xhtml"),null!=a)for(l=0;l0?e:R(e)?e.map(oe):Z({},e)}function se(e,t,n){try{if("function"==typeof e){var r="function"==typeof e.__u;r&&e.__u(),r&&null==t||(e.__u=e(t))}else e.current=t}catch(e){k.__e(e,n)}}function ce(e,t,n){var r,u;if(k.unmount&&k.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||se(r,null,t)),null!=(r=e.__c)){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){k.__e(e,t)}r.__P=null}if(r=e.__k)for(u=0;u2&&(i.children=arguments.length>3?M.call(arguments,2):n),q(e.type,i,r||e.key,u||e.ref,null)}k={__e:function(e,t,n,r){for(var u,a,i;t=t.__;)if((u=t.__c)&&!(1&u.__g)){u.__g|=4;try{if((a=u.constructor)&&null!=a.getDerivedStateFromError&&(u.setState(a.getDerivedStateFromError(e)),i=8&u.__g),null!=u.componentDidCatch&&(u.componentDidCatch(e,r||{}),i=8&u.__g),i)return void(u.__g|=2)}catch(t){e=t}}throw x=0,e}},A=0,V.prototype.setState=function(e,t){var n;n=null!=this.__s&&this.__s!=this.state?this.__s:this.__s=Z({},this.state),"function"==typeof e&&(e=e(Z({},n),this.props)),e&&Z(n,e),null!=e&&this.__v&&(t&&this._sb.push(t),J(this))},V.prototype.forceUpdate=function(e){this.__v&&(this.__g|=4,e&&this.__h.push(e),J(this))},V.prototype.render=H,w=[],x=0,O=function(e,t){return e.__v.__b-t.__v.__b},B=/(PointerCapture)$|Capture$/i,I=0,T=re(!1),P=re(!0),j=0;var pe,he,ve,me,De=Object.is,ye=0,ge=[],Fe=k,Ee=Fe.__b,_e=Fe.__r,be=Fe.diffed,Ce=Fe.__c,ke=Fe.unmount,Ae=Fe.__;function we(e,t){Fe.__h&&Fe.__h(he,e,ye||t),ye=0;var n=he.__H||(he.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function Se(e){return ye=1,xe(He,e)}function xe(e,t,n){var r=we(pe++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):He(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);De(t,n)||(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=he,!he.__f)){var u=function(e,t,n){if(!r.__c.__H)return!0;var u=r.__c.__H.__.filter(function(e){return!!e.__c});if(u.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var i=r.__c.props!==e;return u.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,De(t,e.__[0])||(i=!0)}}),a&&a.call(this,e,t,n)||i};he.__f=!0;var a=he.shouldComponentUpdate,i=he.componentWillUpdate;he.componentWillUpdate=function(e,t,n){if(4&this.__g){var r=a;a=void 0,u(e,t,n),a=r}i&&i.call(this,e,t,n)},he.shouldComponentUpdate=u}return r.__N||r.__}function Oe(e,t){var n=we(pe++,3);!Fe.__s&&Ue(n.__H,t)&&(n.__=e,n.u=t,he.__H.__h.push(n))}function Be(e,t){var n=we(pe++,4);!Fe.__s&&Ue(n.__H,t)&&(n.__=e,n.u=t,he.__h.push(n))}function Ie(e){return ye=5,Pe(function(){return{current:e}},[])}function Te(e,t,n){ye=6,Be(function(){if("function"==typeof e){var n=e(t());return function(){e(null),n&&"function"==typeof n&&n()}}if(e)return e.current=t(),function(){return e.current=null}},null==n?n:n.concat(e))}function Pe(e,t){var n=we(pe++,7);return Ue(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function je(e,t){return ye=8,Pe(function(){return e},t)}function Ne(e){var t=he.context[e.__c],n=we(pe++,9);return n.c=e,t?(null==n.__&&(n.__=!0,t.sub(he)),t.props.value):e.__}function ze(e,t){Fe.useDebugValue&&Fe.useDebugValue(t?t(e):e)}function Re(){var e=we(pe++,11);if(!e.__){for(var t=he.__v;null!==t&&!t.__m&&null!==t.__;)t=t.__;var n=t.__m||(t.__m=[0,0]);e.__="P"+n[0]+"-"+n[1]++}return e.__}function Me(){for(var e;e=ge.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach($e),e.__H.__h.forEach(qe),e.__H.__h=[]}catch(t){e.__H.__h=[],Fe.__e(t,e.__v)}}Fe.__b=function(e){he=null,Ee&&Ee(e)},Fe.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),Ae&&Ae(e,t)},Fe.__r=function(e){_e&&_e(e),pe=0;var t=(he=e.__c).__H;t&&(ve===he?(t.__h=[],he.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.forEach($e),t.__h.forEach(qe),t.__h=[],pe=0)),ve=he},Fe.diffed=function(e){be&&be(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(1!==ge.push(t)&&me===Fe.requestAnimationFrame||((me=Fe.requestAnimationFrame)||Le)(Me)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0})),ve=he=null},Fe.__c=function(e,t){t.some(function(e){try{e.__h.forEach($e),e.__h=e.__h.filter(function(e){return!e.__||qe(e)})}catch(n){t.some(function(e){e.__h&&(e.__h=[])}),t=[],Fe.__e(n,e.__v)}}),Ce&&Ce(e,t)},Fe.unmount=function(e){ke&&ke(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{$e(e)}catch(e){t=e}}),n.__H=void 0,t&&Fe.__e(t,n.__v))};var Ze="function"==typeof requestAnimationFrame;function Le(e){var t,n=function(){clearTimeout(r),Ze&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);Ze&&(t=requestAnimationFrame(n))}function $e(e){var t=he,n=e.__c;"function"==typeof n&&(e.__c=void 0,n()),he=t}function qe(e){var t=he;e.__c=e.__(),he=t}function Ue(e,t){return!e||e.length!==t.length||t.some(function(t,n){return!De(t,e[n])})}function He(e,t){return"function"==typeof t?t(e):t}function Ve(e,t){var n=t(),r=Se({t:{__:n,u:t}}),u=r[0].t,a=r[1];return Be(function(){u.__=n,u.u=t,We(u)&&a({t:u})},[e,n,t]),Oe(function(){return We(u)&&a({t:u}),e(function(){We(u)&&a({t:u})})},[e]),n}function We(e){var t=e.u,n=e.__;try{var r=t();return!Object.is(n,r)}catch(e){return!0}}function Ke(e){e()}function Je(e){return e}function Qe(){return[!1,Ke]}var Ge=Be,Ye=Object.assign;function Xe(e,t){for(var n in e)if("__source"!==n&&!(n in t))return!0;for(var r in t)if("__source"!==r&&e[r]!==t[r])return!0;return!1}var et=/^(-|f[lo].*[^se]$|g.{5,}[^ps]$|z|o[pr]|(W.{5})?[lL]i.*(t|mp)$|an|(bo|s).{4}Im|sca|m.{6}[ds]|ta|c.*[st]$|wido|ini)/;function tt(e,t){this.props=e,this.context=t}function nt(e,t){function n(e){var n=this.props.ref,r=n==e.ref;return!r&&n&&(n.call?n(null):n.current=null),t?!t(this.props,e)||!r:Xe(this.props,e)}function r(t){return this.shouldComponentUpdate=n,$(e,t)}return r.displayName="Memo("+(e.displayName||e.name)+")",r.prototype.isReactComponent=!0,r.type=e,r}(tt.prototype=new V).isPureReactComponent=!0,tt.prototype.shouldComponentUpdate=function(e,t){return Xe(this.props,e)||Xe(this.state,t)};var rt=Symbol.for("react.forward_ref");var ut=function(e,t,n){return null==e?null:X(X(e).map(t.bind(n)))},at={map:ut,forEach:ut,count:function(e){return e?X(e).length:0},only:function(e){var t=X(e);if(1!==t.length)throw"Children.only";return t[0]},toArray:X},it=k.__e;k.__e=function(e,t,n,r){if(e.then)for(var u,a=t;a=a.__;)if((u=a.__c)&&u.__c)return null==t.__e&&(t.__e=n.__e,t.__k=n.__k),u.__c(e,t);it(e,t,n,r)};var ot=k.unmount;function st(e,t,n){return e&&(e.__c&&e.__c.__H&&(e.__c.__H.__.forEach(function(e){"function"==typeof e.__c&&e.__c()}),e.__c.__H=null),null!=(e=Ye({},e)).__c&&(e.__c.__P===n&&(e.__c.__P=t),e.__c.__g|=4,e.__c=null),e.__k=e.__k&&e.__k.map(function(e){return st(e,t,n)})),e}function ct(e,t,n){return e&&n&&("string"==typeof e.type&&(e.__u|=1),e.__v=null,e.__k=e.__k&&e.__k.map(function(e){return ct(e,t,n)}),e.__c&&e.__c.__P===t&&(e.__e&&n.appendChild(e.__e),e.__c.__g|=4,e.__c.__P=n)),e}function lt(){this.__u=0,this.o=null,this.__b=null}function ft(e){return this.getChildContext=function(){return e.context},e.children}function dt(e){var t=this,n=e.i;if(t.componentWillUnmount=function(){fe(null,t.l),t.l=null,t.i=null},t.i&&t.i!==n&&t.componentWillUnmount(),!t.l){for(var r=t.__v;null!==r&&!r.__m&&null!==r.__;)r=r.__;t.i=n,t.l={nodeType:1,parentNode:n,childNodes:[],__k:{__m:r.__m},ownerDocument:n.ownerDocument,insertBefore:function(e,n){this.childNodes.push(e),t.i.insertBefore(e,n)}}}fe($(ft,{context:t.context},e.__v),t.l)}function pt(e,t){var n=$(dt,{__v:e,i:t});return n.containerInfo=t,n}k.unmount=function(e){var t=e.__c;t&&t.__R&&t.__R(),ot&&ot(e)},(lt.prototype=new V).__c=function(e,t){var n=t.__c,r=this;null==r.o&&(r.o=[]),r.o.push(n);var u=!1,a=function(){u||(u=!0,n.__R=null,i())};n.__R=a;var i=function(){if(! --r.__u){if(r.state.__a){var e=r.state.__a;r.__v.__k[0]=ct(e,e.__c.__P,e.__c.__O)}var t;for(r.setState({__a:r.__b=null});t=r.o.pop();)t.forceUpdate()}};r.__u++||32&t.__u||r.setState({__a:r.__b=r.__v.__k[0]}),e.then(a,a)},lt.prototype.componentWillUnmount=function(){this.o=[]},lt.prototype.render=function(e,t){if(this.__b){if(this.__v.__k){var n=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=st(this.__b,n,r.__O=r.__P)}this.__b=null}return[$(H,null,t.__a?null:e.children),t.__a&&$(H,null,e.fallback)]};var ht=Symbol.for("react.element"),vt=/^(?: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]/,mt=/[A-Z0-9]/g,Dt="undefined"!=typeof document,yt=function(e){return/fil|che|rad/.test(e)};function gt(e,t,n){return null==t.__k&&(t.textContent=""),fe(e,t),"function"==typeof n&&n(),e?e.__c:null}V.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(e){Object.defineProperty(V.prototype,e,{configurable:!0,get:function(){return this["UNSAFE_"+e]},set:function(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:t})}})});var Ft=k.event;function Et(){}function _t(){return this.cancelBubble}function bt(){return this.defaultPrevented}k.event=function(e){return Ft&&(e=Ft(e)),e.persist=Et,e.isPropagationStopped=_t,e.isDefaultPrevented=bt,e.nativeEvent=e};var Ct,kt={enumerable:!1,configurable:!0,get:function(){return this.class}},At=k.vnode;k.vnode=function(e){if("string"==typeof e.type)!function(e){var t=e.props,n=e.type,r={},u=-1===n.indexOf("-");for(var a in t){var i=t[a];if(!("value"===a&&"defaultValue"in t&&null==i||Dt&&"children"===a&&"noscript"===n||"class"===a||"className"===a)){if("style"===a&&"object"==typeof i)for(var o in i)"number"!=typeof i[o]||et.test(o)||(i[o]+="px");else if("defaultValue"===a&&"value"in t&&null==t.value)a="value";else if("download"===a&&!0===i)i="";else if("translate"===a&&"no"===i)i=!1;else if("o"===a[0]&&"n"===a[1]){var s=a.toLowerCase();"ondoubleclick"===s?a="ondblclick":"onchange"!==s||"input"!==n&&"textarea"!==n||yt(t.type)?"onfocus"===s?a="onfocusin":"onblur"===s&&(a="onfocusout"):s=a="oninput","oninput"===s&&r[a=s]&&(a="oninputCapture")}else u&&vt.test(a)?a=a.replace(mt,"-$&").toLowerCase():null===i&&(i=void 0);r[a]=i}}"select"==n&&r.multiple&&Array.isArray(r.value)&&(r.value=X(t.children).forEach(function(e){e.props.selected=-1!=r.value.indexOf(e.props.value)})),"select"==n&&null!=r.defaultValue&&(r.value=X(t.children).forEach(function(e){e.props.selected=r.multiple?-1!=r.defaultValue.indexOf(e.props.value):r.defaultValue==e.props.value})),t.class&&!t.className?(r.class=t.class,Object.defineProperty(r,"className",kt)):(t.className&&!t.class||t.class&&t.className)&&(r.class=r.className=t.className),e.props=r}(e);else if("function"==typeof e.type&&("ref"in e.props&&"prototype"in e.type&&e.type.prototype.render&&(e.ref=e.props.ref,delete e.props.ref),e.type.defaultProps)){var t=Ye({},e.props);for(var n in e.type.defaultProps)void 0===t[n]&&(t[n]=e.type.defaultProps[n]);e.props=t}e.$$typeof=ht,At&&At(e)};var wt=k.__r;k.__r=function(e){wt&&wt(e),Ct=e.__c};var St=k.diffed;k.diffed=function(e){St&&St(e);var t=e.props,n=e.__e;null!=n&&"textarea"===e.type&&"value"in t&&t.value!==n.value&&(n.value=null==t.value?"":t.value),Ct=null};var xt={ReactCurrentDispatcher:{current:{readContext:function(e){return Ct.__n[e.__c].props.value},useCallback:je,useContext:Ne,useDebugValue:ze,useDeferredValue:Je,useEffect:Oe,useId:Re,useImperativeHandle:Te,useInsertionEffect:Ge,useLayoutEffect:Be,useMemo:Pe,useReducer:xe,useRef:Ie,useState:Se,useSyncExternalStore:Ve,useTransition:Qe}}};function Ot(e){return!!e&&e.$$typeof===ht}function Bt(e){return!!e.__k&&(fe(null,e),!0)}var It={useState:Se,useId:Re,useReducer:xe,useEffect:Oe,useLayoutEffect:Be,useInsertionEffect:Ge,useTransition:Qe,useDeferredValue:Je,useSyncExternalStore:Ve,startTransition:Ke,useRef:Ie,useImperativeHandle:Te,useMemo:Pe,useCallback:je,useContext:Ne,useDebugValue:ze,version:"18.3.1",Children:at,render:gt,hydrate:function(e,t,n){return function(e,t){e.__u|=32,fe(e,t)}(e,t),"function"==typeof n&&n(),e?e.__c:null},unmountComponentAtNode:Bt,createPortal:pt,createElement:$,createContext:function(e){function t(e){var n,r;return this.getChildContext||(n=new Set,(r={})[t.__c]=this,this.getChildContext=function(){return r},this.componentWillUnmount=function(){n=null},this.shouldComponentUpdate=function(e){this.props.value!=e.value&&n.forEach(function(e){e.__g|=4,J(e)})},this.sub=function(e){n.add(e);var t=e.componentWillUnmount;e.componentWillUnmount=function(){n&&n.delete(e),t&&t.call(e)}}),e.children}return t.__c="__cC"+j++,t.__=e,t.Provider=t.__l=(t.Consumer=function(e,t){return e.children(t)}).contextType=t,t},createFactory:function(e){return $.bind(null,e)},cloneElement:function(e){return Ot(e)?de.apply(null,arguments):e},createRef:U,Fragment:H,isValidElement:Ot,isElement:Ot,isFragment:function(e){return Ot(e)&&e.type===H},isMemo:function(e){return!!e&&!!e.displayName&&("string"==typeof e.displayName||e.displayName instanceof String)&&e.displayName.startsWith("Memo(")},findDOMNode:function(e){return e&&(e.__v&&e.__v.__e||1===e.nodeType&&e)||null},Component:V,PureComponent:tt,memo:nt,forwardRef:function(e){function t(t){var n=Ye({},t);return delete n.ref,e(n,t.ref||null)}return t.$$typeof=rt,t.render=e,t.prototype.isReactComponent=!0,t.displayName="ForwardRef("+(e.displayName||e.name)+")",t},flushSync:function(e,t){return e(t)},unstable_batchedUpdates:function(e,t){return e(t)},StrictMode:H,Suspense:lt,lazy:function(e){var t,n,r;function u(u){if(t||(t=e()).then(function(e){n=e.default||e},function(e){r=e}),r)throw r;if(!n)throw t;return $(n,u)}return u.displayName="Lazy",u},__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:xt};function Tt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.length)&&(t=e.length);for(var n=0,r=Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}function on(e,t,n){return(t=Fn(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function sn(){return sn=Object.assign?Object.assign.bind():function(e){for(var t=1;t3?(u=h===r)&&(s=a[(o=a[4])?5:(o=3,3)],a[4]=a[5]=e):a[0]<=p&&((u=n<2&&pr||r>h)&&(a[4]=n,a[5]=r,d.n=h,o=0))}if(u||n>1)return i;throw f=!0,r}return function(u,l,h){if(c>1)throw TypeError("Generator is already running");for(f&&1===l&&p(l,h),o=l,s=h;(t=o<2?e:s)||!f;){a||(o?o<3?(o>1&&(d.n=-1),p(o,s)):d.n=s:d.v=s);try{if(c=2,a){if(o||(u="next"),t=a[u]){if(!(t=t.call(a,s)))throw TypeError("iterator result is not an object");if(!t.done)return t;s=t.value,o<2&&(o=0)}else 1===o&&(t=a.return)&&t.call(a),o<2&&(s=TypeError("The iterator does not provide a '"+u+"' method"),o=1);a=e}else if((t=(f=d.n<0)?s:n.call(r,d))!==i)break}catch(t){a=e,o=1,s=t}finally{c=1}}return{value:t,done:f}}}(n,u,a),!0),c}var i={};function o(){}function s(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(mn(t={},r,function(){return this}),t),f=c.prototype=o.prototype=Object.create(l);function d(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,mn(e,u,"GeneratorFunction")),e.prototype=Object.create(f),e}return s.prototype=c,mn(f,"constructor",c),mn(c,"constructor",s),s.displayName="GeneratorFunction",mn(c,u,"GeneratorFunction"),mn(f),mn(f,u,"Generator"),mn(f,r,function(){return this}),mn(f,"toString",function(){return"[object Generator]"}),(vn=function(){return{w:a,m:d}})()}function mn(e,t,n,r){var u=Object.defineProperty;try{u({},"",{})}catch(e){u=0}mn=function(e,t,n,r){function a(t,n){mn(e,t,function(e){return this._invoke(t,n,e)})}t?u?u(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(a("next",0),a("throw",1),a("return",2))},mn(e,t,n,r)}function Dn(e,t){return Dn=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Dn(e,t)}function yn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,u,a,i,o=[],s=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=a.call(n)).done)&&(o.push(r.value),o.length!==t);s=!0);}catch(e){c=!0,u=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw u}}return o}}(e,t)||_n(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function gn(e){return function(e){if(Array.isArray(e))return Gt(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_n(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Fn(e){var t=function(e){if("object"!=_(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=_(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==_(t)?t:t+""}function En(e){return En="function"==typeof Symbol&&"symbol"==_(Symbol.iterator)?function(e){return _(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":_(e)},En(e)}function _n(e,t){if(e){if("string"==typeof e)return Gt(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Gt(e,t):void 0}}function bn(e){var t="function"==typeof Map?new Map:void 0;return bn=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return nn(e,arguments,cn(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Dn(n,e)},bn(e)}function Cn(){Cn=function(e,t){return new n(e,void 0,t)};var e=RegExp.prototype,t=new WeakMap;function n(e,r,u){var a=RegExp(e,r);return t.set(a,u||t.get(e)),Dn(a,n.prototype)}function r(e,n){var r=t.get(n);return Object.keys(r).reduce(function(t,n){var u=r[n];if("number"==typeof u)t[n]=e[u];else{for(var a=0;void 0===e[u[a]]&&a+1]+)(>|$)/g,function(e,t,n){if(""===n)return e;var r=a[t];return Array.isArray(r)?"$"+r.join("$"):"number"==typeof r?"$"+r:""}))}if("function"==typeof u){var i=this;return e[Symbol.replace].call(this,n,function(){var e=arguments;return"object"!=_(e[e.length-1])&&(e=[].slice.call(e)).push(r(e,i)),u.apply(this,e)})}return e[Symbol.replace].call(this,n,u)},Cn.apply(this,arguments)}var kn=function(e){var t=e.theme;Oe(function(){if(t){var e=document.documentElement.dataset.theme;if(t!==e)return document.documentElement.dataset.theme=t,function(){void 0===e?delete document.documentElement.dataset.theme:document.documentElement.dataset.theme=e}}},[t])},An={"Ctrl/Cmd+K":!0,"/":!0};function wn(e){var t=e.size,n=void 0===t?20:t,r=e.color,u=void 0===r?"currentColor":r;return It.createElement("svg",{width:n,height:n,className:"DocSearch-Search-Icon",viewBox:"0 0 24 24","aria-hidden":"true"},It.createElement("circle",{cx:"11",cy:"11",r:"8",stroke:u,fill:"none",strokeWidth:"1.4"}),It.createElement("path",{d:"m21 21-4.3-4.3",stroke:u,fill:"none",strokeLinecap:"round",strokeLinejoin:"round"}))}function Sn(e,t,n){return e.reduce(function(e,r){var u=t(r);return e.hasOwnProperty(u)||(e[u]=[]),e[u].length<(n||5)&&e[u].push(r),e},{})}function xn(e){return e}function On(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}var Bn="Ctrl";function In(){}var Tn=/(|<\/mark>)/g,Pn=RegExp(Tn.source);function jn(e){var t,n,r=e;if(!r.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var u=r.__docsearch_parent?null===(t=r.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(n=e._highlightResult)||void 0===n||null===(n=n.hierarchy)||void 0===n?void 0:n.lvl0;return u?u.value&&Pn.test(u.value)?u.value.replace(Tn,""):u.value:e.hierarchy.lvl0}var Nn=["translations","keyboardShortcuts"],zn=It.forwardRef(function(e,t){var n=e.translations,r=void 0===n?{}:n,u=e.keyboardShortcuts,a=hn(e,Nn),i=r.buttonText,o=void 0===i?"Search":i,s=r.buttonAriaLabel,c=void 0===s?"Search":s,l=function(e){return pn(pn({},An),e)}(u),f=yn(Se(null),2),d=f[0],p=f[1];kn({theme:a.theme}),Oe(function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?p("⌘"):p(Bn))},[]);var h=yn(d===Bn?[Bn,"Control","Ctrl"]:["Meta","Meta","⌘"],3),v=h[0],m=h[1],D=h[2],y=l["Ctrl/Cmd+K"],g="".concat(m,"+k");return It.createElement("button",sn({type:"button",className:"DocSearch DocSearch-Button","aria-label":y?"".concat(c," (").concat(g,")"):c,"aria-keyshortcuts":y?g:void 0},a,{ref:t}),It.createElement("span",{className:"DocSearch-Button-Container"},It.createElement(wn,null),It.createElement("span",{className:"DocSearch-Button-Placeholder"},o)),It.createElement("span",{className:"DocSearch-Button-Keys"},null!==d&&y&&It.createElement(It.Fragment,null,It.createElement(Rn,{reactsToKey:v},D),It.createElement(Rn,{reactsToKey:"k"},"K"))))});function Rn(e){var t=e.reactsToKey,n=e.children,r=yn(Se(!1),2),u=r[0],a=r[1];return Oe(function(){if(t)return window.addEventListener("keydown",e),window.addEventListener("keyup",n),function(){window.removeEventListener("keydown",e),window.removeEventListener("keyup",n)};function e(e){e.key===t&&a(!0)}function n(e){e.key!==t&&"Meta"!==e.key||a(!1)}},[t]),It.createElement("kbd",{className:u?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"+("Ctrl"===t?" DocSearch-Button-Key--ctrl":"")},n)}function Mn(e,t){var n=void 0;return function(){for(var r=arguments.length,u=new Array(r),a=0;ae.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function tr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function nr(e){for(var t=1;t=3||2===n&&r>=4||1===n&&r>=10);function a(t,n,r){if(u&&void 0!==r){var a=r[0].__autocomplete_algoliaCredentials,i={"X-Algolia-Application-Id":a.appId,"X-Algolia-API-Key":a.apiKey};e.apply(void 0,[t].concat(Yn(n),[{headers:i}]))}else e.apply(void 0,[t].concat(Yn(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setAuthenticatedUserToken:function(t){e("setAuthenticatedUserToken",t)},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a("clickedObjectIDsAfterSearch",ur(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a("clickedObjectIDs",ur(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a("convertedObjectIDsAfterSearch",ur(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a("convertedObjectIDs",ur(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&t.reduce(function(e,t){var n=t.items,r=er(t,Qn);return[].concat(Yn(e),Yn(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function ir(e){var t=e.items.reduce(function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e},{});return Object.keys(t).map(function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}})}function or(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function sr(e){return sr="function"==typeof Symbol&&"symbol"==_(Symbol.iterator)?function(e){return _(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":_(e)},sr(e)}function cr(e){return function(e){if(Array.isArray(e))return lr(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return lr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?lr(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function lr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&mr({onItemsChange:u,items:n,insights:c,state:t}))}},0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive;function u(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:dr(dr({},o?{clickAnalytics:!0}:{}),e?{userToken:gr(e)}:{}),insights:c}})}s("addAlgoliaAgent","insights-plugin"),u(),s("onUserTokenChange",function(e){u(e)}),s("getUserToken",null,function(e,t){u(t)}),n(function(e){var t=e.item,n=e.state,r=e.event,u=e.source;or(t)&&a({state:n,event:r,insights:c,item:t,insightsEvents:[dr({eventName:"Item Selected"},Wn({item:t,items:u.getItems().filter(or)}))]})}),r(function(e){var t=e.item,n=e.source,r=e.state,u=e.event;or(t)&&i({state:r,event:u,insights:c,item:t,insightsEvents:[dr({eventName:"Item Active"},Wn({item:t,items:n.getItems().filter(or)}))]})})},onStateChange:function(e){var t=e.state;f({state:t})},__autocomplete_pluginOptions:e}}function yr(){var e,t=arguments.length>1?arguments[1]:void 0;return[].concat(cr(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),["autocomplete-internal"],cr(null!==(e=t.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}function gr(e){return"number"==typeof e?e.toString():e}function Fr(e,t){var n=t;return{then:function(t,r){return Fr(e.then(_r(t,n,e),_r(r,n,e)),n)},catch:function(t){return Fr(e.catch(_r(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),Fr(e.finally(_r(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach(function(e){e()})},isCanceled:function(){return!0===n.isCanceled}}}function Er(e){return Fr(e,{isCanceled:!1,onCancelList:[]})}function _r(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}var br,Cr=!0;function kr(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var u=(null===t?-1:t)+e;return u<=-1||u>=n?null===r?null:0:u}function Ar(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function wr(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,i=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}(e);try{for(a.s();!(n=a.n()).done;){var i,o,s,c=null===(i=n.value.__autocomplete_pluginOptions)||void 0===i||null===(o=(s=i).awaitSubmit)||void 0===o?void 0:o.call(s);if("number"==typeof c)u.push(c);else if(!0===c){r=!0;break}}}catch(e){a.e(e)}finally{a.f()}return r?t.wait():u.length>0?t.wait(Math.max.apply(Math,u)):void 0};function Ir(e){var t=function(e){var t=e.collections.map(function(e){return e.items.length}).reduce(function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e},[]).reduce(function(t,n){return n<=e.activeItemId?t+1:t},0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,u=0,a=0;!1===r;){var i=t.collections[u];if(i===n){r=!0;break}a+=i.items.length,u++}return t.activeItemId-a}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}function Tr(e,t,n){return[e,null==n?void 0:n.sourceId,t].filter(Boolean).join("-").replace(/\s/g,"")}var Pr=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function jr(e){return e.nativeEvent||e}function Nr(e){return Nr="function"==typeof Symbol&&"symbol"==_(Symbol.iterator)?function(e){return _(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":_(e)},Nr(e)}function zr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Rr(e,t,n){return(t=function(e){var t=function(e){if("object"!==Nr(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==Nr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Nr(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Mr(e){return Mr="function"==typeof Symbol&&"symbol"==_(Symbol.iterator)?function(e){return _(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":_(e)},Mr(e)}function Zr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lr(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:"autocomplete-".concat(Ln++),plugins:u,initialState:Vr({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)})},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)})},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)})},getSources:function(n){return Promise.all([].concat(function(e){return function(e){if(Array.isArray(e))return Ur(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Ur(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ur(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(u.map(function(e){return e.getSources})),[e.getSources]).filter(Boolean).map(function(e){return function(e,t){var n=[];return Promise.resolve(e(t)).then(function(e){return Promise.all(e.filter(function(e){return Boolean(e)}).map(function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:Hn,onResolve:Hn};Object.keys(t).forEach(function(e){t[e].__default=!0});var r=wr(wr({},t),e);return Promise.resolve(r)}))})}(e,n)})).then(function(e){return Zn(e)}).then(function(e){return e.map(function(e){return Vr(Vr({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach(function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)})},onActive:function(n){e.onActive(n),t.forEach(function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)})},onResolve:function(n){e.onResolve(n),t.forEach(function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)})}})})})},navigator:Vr({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,"_blank","noopener");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,"_blank","noopener")}},e.navigator)})}function Jr(e){return Jr="function"==typeof Symbol&&"symbol"==_(Symbol.iterator)?function(e){return _(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":_(e)},Jr(e)}function Qr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gr(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}(e,su);vu&&u.environment.clearTimeout(vu);var c=s.setCollections,l=s.setIsOpen,f=s.setQuery,d=s.setActiveItemId,p=s.setStatus,h=s.setContext;if(f(a),d(u.defaultActiveItemId),!a&&!1===u.openOnFocus){var v,m=o.getState().collections.map(function(e){return lu(lu({},e),{},{items:[]})});p("idle"),c(m),l(null!==(v=r.isOpen)&&void 0!==v?v:u.shouldPanelOpen({state:o.getState()}));var D=Er(mu(m).then(function(){return Promise.resolve()}));return o.pendingRequests.add(D)}p("loading"),vu=u.environment.setTimeout(function(){p("stalled")},u.stallThreshold);var y=Er(mu(u.getSources(lu({query:a,refresh:i,state:o.getState()},s)).then(function(e){return Promise.all(e.map(function(e){return Promise.resolve(e.getItems(lu({query:a,refresh:i,state:o.getState()},s))).then(function(t){return function(e,t,n){if(u=e,Boolean(null==u?void 0:u.execute)){var r="algolia"===e.requesterId?Object.assign.apply(Object,[{}].concat(ru(Object.keys(n.context).map(function(e){var t;return null===(t=n.context[e])||void 0===t?void 0:t.__algoliaSearchParameters})))):{};return tu(tu({},e),{},{requests:e.queries.map(function(n){return{query:"algolia"===e.requesterId?tu(tu({},n),{},{params:tu(tu({},r),n.params)}):n,sourceId:t,transformResponse:e.transformResponse}})})}var u;return{items:e,sourceId:t}}(t,e.sourceId,o.getState())})})).then(iu).then(function(t){var n,r=t.some(function(e){return function(e){return!Array.isArray(e)&&Boolean(null==e?void 0:e._automaticInsights)}(e.items)});return r&&h({algoliaInsightsPlugin:lu(lu({},(null===(n=o.getState().context)||void 0===n?void 0:n.algoliaInsightsPlugin)||{}),{},{__automaticInsights:r})}),function(e,t,n){return t.map(function(t){var r,u=e.filter(function(e){return e.sourceId===t.sourceId}),a=u.map(function(e){return e.items}),i=u[0].transformResponse,o=i?i({results:r=a,hits:r.map(function(e){return e.hits}).filter(Boolean),facetHits:r.map(function(e){var t;return null===(t=e.facetHits)||void 0===t?void 0:t.map(function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}})}).filter(Boolean)}):a;return t.onResolve({source:t,results:a,items:o,state:n.getState()}),o.every(Boolean),'The `getItems` function from source "'.concat(t.sourceId,'" must return an array of items but returned ').concat(JSON.stringify(void 0),".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"),{source:t,items:o}})}(t,e,o)}).then(function(e){return function(e){var t=e.props,n=e.state,r=e.collections.reduce(function(e,t){return Gr(Gr({},e),{},Yr({},t.source.sourceId,Gr(Gr({},t.source),{},{getItems:function(){return Zn(t.items)}})))},{}),u=t.plugins.reduce(function(e,t){return t.reshape?t.reshape(e):e},{sourcesBySourceId:r,state:n}).sourcesBySourceId;return Zn(t.reshape({sourcesBySourceId:u,sources:Object.values(u),state:n})).filter(Boolean).map(function(e){return{source:e,items:e.getItems()}})}({collections:e,props:u,state:o.getState()})})}))).then(function(e){var n;p("idle"),c(e);var f=u.shouldPanelOpen({state:o.getState()});l(null!==(n=r.isOpen)&&void 0!==n?n:u.openOnFocus&&!a&&f||f);var d=Ir(o.getState());if(null!==o.getState().activeItemId&&d){var h=d.item,v=d.itemInputValue,m=d.itemUrl,D=d.source;D.onActive(lu({event:t,item:h,itemInputValue:v,itemUrl:m,refresh:i,source:D,state:o.getState()},s))}}).finally(function(){p("idle"),vu&&u.environment.clearTimeout(vu)});return o.pendingRequests.add(y)}function yu(e){return yu="function"==typeof Symbol&&"symbol"==_(Symbol.iterator)?function(e){return _(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":_(e)},yu(e)}var gu=["event","props","refresh","store"];function Fu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Eu(e){for(var t=1;t=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function Pu(e){var t=e.props,n=e.refresh,r=e.store,u=Tu(e,Cu);return{getEnvironmentProps:function(e){var n=e.inputElement,u=e.formElement,a=e.panelElement;function i(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[u,a].some(function(t){return(n=t)===(r=e.target)||n.contains(r);var n,r})&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())}return Bu({onTouchStart:i,onMouseDown:i,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},Tu(e,ku))},getRootProps:function(e){return Bu({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-controls":r.getState().isOpen?r.getState().collections.map(function(e){var n=e.source;return Tr(t.id,"list",n)}).join(" "):void 0,"aria-labelledby":Tr(t.id,"label")},e)},getFormProps:function(e){e.inputElement;var a=Tu(e,Au),i=function(a){var i;t.onSubmit(Bu({event:a,refresh:n,state:r.getState()},u)),r.dispatch("submit",null),null===(i=e.inputElement)||void 0===i||i.blur()};return Bu({action:"",noValidate:!0,role:"search",onSubmit:function(e){e.preventDefault();var n=Br(t.plugins,r.pendingRequests);void 0!==n?n.then(function(){return i(e)}):i(e)},onReset:function(a){var i;a.preventDefault(),t.onReset(Bu({event:a,refresh:n,state:r.getState()},u)),r.dispatch("reset",null),null===(i=e.inputElement)||void 0===i||i.focus()}},a)},getLabelProps:function(e){return Bu({htmlFor:Tr(t.id,"input"),id:Tr(t.id,"label")},e)},getInputProps:function(e){var a;function i(e){(t.openOnFocus||Boolean(r.getState().query))&&Du(Bu({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},u)),r.dispatch("focus",null)}var o=e||{};o.inputElement;var s=o.maxLength,c=void 0===s?512:s,l=Tu(o,wu),f=Ir(r.getState()),d=function(e){return Boolean(e&&e.match(Pr))}((null===(a=t.environment.navigator)||void 0===a?void 0:a.userAgent)||""),p=t.enterKeyHint||(null!=f&&f.itemUrl&&!d?"go":"search");return Bu({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&null!==r.getState().activeItemId?Tr(t.id,"item-".concat(r.getState().activeItemId),null==f?void 0:f.source):void 0,"aria-controls":r.getState().isOpen?r.getState().collections.filter(function(e){return e.items.length>0}).map(function(e){var n=e.source;return Tr(t.id,"list",n)}).join(" "):void 0,"aria-labelledby":Tr(t.id,"label"),value:r.getState().completion||r.getState().query,id:Tr(t.id,"input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:p,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:"search",onChange:function(e){var a=e.currentTarget.value;t.ignoreCompositionEvents&&jr(e).isComposing?u.setQuery(a):Du(Bu({event:e,props:t,query:a.slice(0,c),refresh:n,store:r},u))},onCompositionEnd:function(e){Du(Bu({event:e,props:t,query:e.currentTarget.value.slice(0,c),refresh:n,store:r},u))},onKeyDown:function(e){jr(e).isComposing||function(e){var t=e.event,n=e.props,r=e.refresh,u=e.store,a=function(e,t){if(null==e)return{};var n,r,u=function(e,t){if(null==e)return{};var n,r,u={},a=Object.keys(e);for(r=0;r=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}(e,gu);if("ArrowUp"===t.key||"ArrowDown"===t.key){var i=function(){var e=Ir(u.getState()),t=n.environment.document.getElementById(Tr(n.id,"item-".concat(u.getState().activeItemId),null==e?void 0:e.source));t&&(t.scrollIntoViewIfNeeded?t.scrollIntoViewIfNeeded(!1):t.scrollIntoView(!1))},o=function(){var e=Ir(u.getState());if(null!==u.getState().activeItemId&&e){var n=e.item,i=e.itemInputValue,o=e.itemUrl,s=e.source;s.onActive(Eu({event:t,item:n,itemInputValue:i,itemUrl:o,refresh:r,source:s,state:u.getState()},a))}};t.preventDefault(),!1===u.getState().isOpen&&(n.openOnFocus||Boolean(u.getState().query))?Du(Eu({event:t,props:n,query:u.getState().query,refresh:r,store:u},a)).then(function(){u.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),o(),setTimeout(i,0)}):(u.dispatch(t.key,{}),o(),i())}else if("Escape"===t.key)t.preventDefault(),u.dispatch(t.key,null),u.pendingRequests.cancelAll();else if("Tab"===t.key)u.dispatch("blur",null),u.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===u.getState().activeItemId||u.getState().collections.every(function(e){return 0===e.items.length})){var s=Br(n.plugins,u.pendingRequests);return void(void 0!==s?s.then(u.pendingRequests.cancelAll):n.debug||u.pendingRequests.cancelAll())}t.preventDefault();var c=Ir(u.getState()),l=c.item,f=c.itemInputValue,d=c.itemUrl,p=c.source;if(t.metaKey||t.ctrlKey)void 0!==d&&(p.onSelect(Eu({event:t,item:l,itemInputValue:f,itemUrl:d,refresh:r,source:p,state:u.getState()},a)),n.navigator.navigateNewTab({itemUrl:d,item:l,state:u.getState()}));else if(t.shiftKey)void 0!==d&&(p.onSelect(Eu({event:t,item:l,itemInputValue:f,itemUrl:d,refresh:r,source:p,state:u.getState()},a)),n.navigator.navigateNewWindow({itemUrl:d,item:l,state:u.getState()}));else if(t.altKey);else{if(void 0!==d)return p.onSelect(Eu({event:t,item:l,itemInputValue:f,itemUrl:d,refresh:r,source:p,state:u.getState()},a)),void n.navigator.navigate({itemUrl:d,item:l,state:u.getState()});Du(Eu({event:t,nextState:{isOpen:!1},props:n,query:f,refresh:r,store:u},a)).then(function(){p.onSelect(Eu({event:t,item:l,itemInputValue:f,itemUrl:d,refresh:r,source:p,state:u.getState()},a))})}}}(Bu({event:e,props:t,refresh:n,store:r},u))},onFocus:i,onBlur:Hn,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},l)},getPanelProps:function(e){return Bu({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},e)},getListProps:function(e){var n=e||{},r=n.source,u=Tu(n,Su);return Bu({role:"listbox","aria-labelledby":Tr(t.id,"label"),id:Tr(t.id,"list",r)},u)},getItemProps:function(e){var a=e.item,i=e.source,o=Tu(e,xu);return Bu({id:Tr(t.id,"item-".concat(a.__autocomplete_id),i),role:"option","aria-selected":r.getState().activeItemId===a.__autocomplete_id,onMouseMove:function(e){if(a.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",a.__autocomplete_id);var t=Ir(r.getState());if(null!==r.getState().activeItemId&&t){var i=t.item,o=t.itemInputValue,s=t.itemUrl,c=t.source;c.onActive(Bu({event:e,item:i,itemInputValue:o,itemUrl:s,refresh:n,source:c,state:r.getState()},u))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var o=i.getItemInputValue({item:a,state:r.getState()}),s=i.getItemUrl({item:a,state:r.getState()});(s?Promise.resolve():Du(Bu({event:e,nextState:{isOpen:!1},props:t,query:o,refresh:n,store:r},u))).then(function(){i.onSelect(Bu({event:e,item:a,itemInputValue:o,itemUrl:s,refresh:n,source:i,state:r.getState()},u))})}},o)}}}function ju(e){return ju="function"==typeof Symbol&&"symbol"==_(Symbol.iterator)?function(e){return _(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":_(e)},ju(e)}function Nu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function zu(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:"",n="string"==typeof e?e:e.source,r={replace:function(e,t){var u="string"==typeof t?t:t.source;return u=u.replace(Sa.caret,"$1"),n=n.replace(e,u),r},getRegex:function(){return new RegExp(n,t)}};return r}var wa=function(){try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088F\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5C\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDC-\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7DC\uA7F1-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD40-\uDD59\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDD40-\uDD65\uDD6F-\uDD85\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC7\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDF70-\uDF81\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDED0-\uDEE3\uDF00-\uDF1A\uDF30-\uDF3B\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0\uDFF0-\uDFF9]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDDB0-\uDDDB\uDDE0-\uDDE9\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDF50-\uDF59\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD822\uD840-\uD868\uD86A-\uD86D\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD88C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D\uDD30-\uDD39]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDD70-\uDD79\uDE40-\uDE96\uDEA0-\uDEB8\uDEBB-\uDED3\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3\uDFF2-\uDFF6]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD1E\uDD80-\uDDF2]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD833[\uDCF0-\uDCF9]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD839[\uDCD0-\uDCEB\uDCF0-\uDCF9\uDDD0-\uDDED\uDDF0-\uDDFA\uDEC0-\uDEDE\uDEE0-\uDEE2\uDEE4\uDEE5\uDEE7-\uDEED\uDEF0-\uDEF4\uDEFE\uDEFF\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEAD\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD88D[\uDC00-\uDC79])/,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:function(e){return new RegExp("^( {0,3}".concat(e,")((?:[\t ][^\\n]*)?(?:\\n|$))"))},nextBulletRegex:function(e){return new RegExp("^ {0,".concat(Math.min(3,e-1),"}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))"))},hrRegex:function(e){return new RegExp("^ {0,".concat(Math.min(3,e-1),"}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)"))},fencesBeginRegex:function(e){return new RegExp("^ {0,".concat(Math.min(3,e-1),"}(?:```|~~~)"))},headingBeginRegex:function(e){return new RegExp("^ {0,".concat(Math.min(3,e-1),"}#"))},htmlBeginRegex:function(e){return new RegExp("^ {0,".concat(Math.min(3,e-1),"}<(?:[a-z].*>|!--)"),"i")}},xa=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Oa=/(?:[*+-]|\d{1,9}[.)])/,Ba=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Ia=Aa(Ba).replace(/bull/g,Oa).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Ta=Aa(Ba).replace(/bull/g,Oa).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Pa=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,ja=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Na=Aa(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",ja).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),za=Aa(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Oa).getRegex(),Ra="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Ma=/|$))/,Za=Aa("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",Ma).replace("tag",Ra).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),La=Aa(Pa).replace("hr",xa).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ra).getRegex(),$a={blockquote:Aa(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",La).getRegex(),code:/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,def:Na,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:xa,html:Za,lheading:Ia,list:za,newline:/^(?:[ \t]*(?:\n|$))+/,paragraph:La,table:ka,text:/^[^\n]+/},qa=Aa("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",xa).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ra).getRegex(),Ua=pn(pn({},$a),{},{lheading:Ta,table:qa,paragraph:Aa(Pa).replace("hr",xa).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",qa).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ra).getRegex()}),Ha=pn(pn({},$a),{},{html:Aa("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",Ma).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:ka,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Aa(Pa).replace("hr",xa).replace("heading"," *#{1,6} *[^\n]").replace("lheading",Ia).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),Va=/^( {2,}|\\)\n(?!\s*$)/,Wa=/(?:[!-\/:-@\[-`\{-~\xA1-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2010-\u2027\u2030-\u205E\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3001-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/,Ka=/(?:[\t-\r -\/:-@\[-`\{-~\xA0-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u1680\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2000-\u200A\u2010-\u2029\u202F-\u205F\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFEFF\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/,Ja=/(?:[\0-\x08\x0E-\x1F0-9A-Za-z\x7F-\x9F\xAA\xAD\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376-\u037D\u037F-\u0383\u0386\u0388-\u03F5\u03F7-\u0481\u0483-\u0559\u0560-\u0588\u058B\u058C\u0590-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7-\u05F2\u05F5-\u0605\u0610-\u061A\u061C\u0620-\u0669\u066E-\u06D3\u06D5-\u06DD\u06DF-\u06E8\u06EA-\u06FC\u06FF\u070E-\u07F5\u07FA-\u07FD\u0800-\u082F\u083F-\u085D\u085F-\u0887\u0889-\u0963\u0966-\u096F\u0971-\u09F1\u09F4-\u09F9\u09FC\u09FE-\u0A75\u0A77-\u0AEF\u0AF2-\u0B6F\u0B71-\u0BF2\u0BFB-\u0C76\u0C78-\u0C7E\u0C80-\u0C83\u0C85-\u0D4E\u0D50-\u0D78\u0D7A-\u0DF3\u0DF5-\u0E3E\u0E40-\u0E4E\u0E50-\u0E59\u0E5C-\u0F00\u0F18\u0F19\u0F20-\u0F33\u0F35\u0F37\u0F39\u0F3E-\u0F84\u0F86-\u0FBD\u0FC6\u0FCD\u0FDB-\u1049\u1050-\u109D\u10A0-\u10FA\u10FC-\u135F\u1369-\u138F\u139A-\u13FF\u1401-\u166C\u166F-\u167F\u1681-\u169A\u169D-\u16EA\u16EE-\u1734\u1737-\u17D3\u17D7\u17DC-\u17FF\u180B-\u193F\u1941-\u1943\u1946-\u19DD\u1A00-\u1A1D\u1A20-\u1A9F\u1AA7\u1AAE-\u1B4D\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BFB\u1C00-\u1C3A\u1C40-\u1C7D\u1C80-\u1CBF\u1CC8-\u1CD2\u1CD4-\u1FBC\u1FBE\u1FC2-\u1FCC\u1FD0-\u1FDC\u1FE0-\u1FEC\u1FF0-\u1FFC\u1FFF\u200B-\u200F\u202A-\u202E\u2060-\u2079\u207F-\u2089\u208F-\u209F\u20C2-\u20FF\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u218C-\u218F\u242A-\u243F\u244B-\u249B\u24EA-\u24FF\u2776-\u2793\u2B74\u2B75\u2C00-\u2CE4\u2CEB-\u2CF8\u2CFD\u2D00-\u2D6F\u2D71-\u2DFF\u2E2F\u2E5E-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3040-\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u318F\u3192-\u3195\u31A0-\u31BF\u31E6-\u31EE\u31F0-\u31FF\u321F-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48F\uA4C7-\uA4FD\uA500-\uA60C\uA610-\uA672\uA674-\uA67D\uA67F-\uA6F1\uA6F8-\uA6FF\uA717-\uA71F\uA722-\uA788\uA78B-\uA827\uA82C-\uA835\uA83A-\uA873\uA878-\uA8CD\uA8D0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA95E\uA960-\uA9C0\uA9CE-\uA9DD\uA9E0-\uAA5B\uAA60-\uAA76\uAA7A-\uAADD\uAAE0-\uAAEF\uAAF2-\uAB5A\uAB5C-\uAB69\uAB6C-\uABEA\uABEC-\uD7FF\uE000-\uFB28\uFB2A-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDD0-\uFDFB\uFE00-\uFE0F\uFE1A-\uFE2F\uFE53\uFE67\uFE6C-\uFEFE\uFF00\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFDF\uFFE7\uFFEF-\uFFFB\uFFFE\uFFFF]|\uD800[\uDC00-\uDCFF\uDD03-\uDD36\uDD40-\uDD78\uDD8A\uDD8B\uDD8F\uDD9D-\uDD9F\uDDA1-\uDDCF\uDDFD-\uDF9E\uDFA0-\uDFCF\uDFD1-\uDFFF]|\uD801[\uDC00-\uDD6E\uDD70-\uDFFF]|\uD802[\uDC00-\uDC56\uDC58-\uDC76\uDC79-\uDD1E\uDD20-\uDD3E\uDD40-\uDE4F\uDE59-\uDE7E\uDE80-\uDEC7\uDEC9-\uDEEF\uDEF7-\uDF38\uDF40-\uDF98\uDF9D-\uDFFF]|\uD803[\uDC00-\uDD6D\uDD6F-\uDD8D\uDD90-\uDEAC\uDEAE-\uDECF\uDED9-\uDF54\uDF5A-\uDF85\uDF8A-\uDFFF]|\uD804[\uDC00-\uDC46\uDC4E-\uDCBA\uDCBD\uDCC2-\uDD3F\uDD44-\uDD73\uDD76-\uDDC4\uDDC9-\uDDCC\uDDCE-\uDDDA\uDDDC\uDDE0-\uDE37\uDE3E-\uDEA8\uDEAA-\uDFD3\uDFD6\uDFD9-\uDFFF]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5C\uDC5E-\uDCC5\uDCC7-\uDDC0\uDDD8-\uDE40\uDE44-\uDE5F\uDE6D-\uDEB8\uDEBA-\uDF3B\uDF40-\uDFFF]|\uD806[\uDC00-\uDC3A\uDC3C-\uDD43\uDD47-\uDDE1\uDDE3-\uDE3E\uDE47-\uDE99\uDE9D\uDEA3-\uDEFF\uDF0A-\uDFE0\uDFE2-\uDFFF]|\uD807[\uDC00-\uDC40\uDC46-\uDC6F\uDC72-\uDEF6\uDEF9-\uDF42\uDF50-\uDFD4\uDFF2-\uDFFE]|[\uD808\uD80A\uD80C-\uD819\uD81C-\uD82E\uD830-\uD832\uD837\uD83F-\uDBFF][\uDC00-\uDFFF]|\uD809[\uDC00-\uDC6F\uDC75-\uDFFF]|\uD80B[\uDC00-\uDFF0\uDFF3-\uDFFF]|\uD81A[\uDC00-\uDE6D\uDE70-\uDEF4\uDEF6-\uDF36\uDF40-\uDF43\uDF46-\uDFFF]|\uD81B[\uDC00-\uDD6C\uDD70-\uDE96\uDE9B-\uDFE1\uDFE3-\uDFFF]|\uD82F[\uDC00-\uDC9B\uDC9D\uDC9E\uDCA0-\uDFFF]|\uD833[\uDCF0-\uDCF9\uDCFD-\uDCFF\uDEB4-\uDEB9\uDED1-\uDEDF\uDEF1-\uDF4F\uDFC4-\uDFFF]|\uD834[\uDCF6-\uDCFF\uDD27\uDD28\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDDEB-\uDDFF\uDE42-\uDE44\uDE46-\uDEFF\uDF57-\uDFFF]|\uD835[\uDC00-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE8C-\uDFFF]|\uD838[\uDC00-\uDD4E\uDD50-\uDEFE\uDF00-\uDFFF]|\uD839[\uDC00-\uDDFE\uDE00-\uDFFF]|\uD83A[\uDC00-\uDD5D\uDD60-\uDFFF]|\uD83B[\uDC00-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDD2D\uDD2F-\uDEEF\uDEF2-\uDFFF]|\uD83C[\uDC2C-\uDC2F\uDC94-\uDC9F\uDCAF\uDCB0\uDCC0\uDCD0\uDCF6-\uDD0C\uDDAE-\uDDE5\uDE03-\uDE0F\uDE3C-\uDE3F\uDE49-\uDE4F\uDE52-\uDE5F\uDE66-\uDEFF]|\uD83D[\uDED9-\uDEDB\uDEED-\uDEEF\uDEFD-\uDEFF\uDFDA-\uDFDF\uDFEC-\uDFEF\uDFF1-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE\uDCAF\uDCBC-\uDCBF\uDCC2-\uDCCF\uDCD9-\uDCFF\uDE58-\uDE5F\uDE6E\uDE6F\uDE7D-\uDE7F\uDE8B-\uDE8D\uDEC7\uDEC9-\uDECC\uDEDD\uDEDE\uDEEB-\uDEEE\uDEF9-\uDEFF\uDF93\uDFF0-\uDFF9\uDFFB-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/,Qa=Aa(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Ka).getRegex(),Ga=/(?!~)(?:[!-\/:-@\[-`\{-~\xA1-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2010-\u2027\u2030-\u205E\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3001-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/,Ya=Aa(/link|precode-code|html/,"g").replace("link",Cn(/\[(?:[^\[\]`]|(`+)[^`]+\1(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/,{a:1})).replace("precode-",wa?"(?]*?>/).getRegex(),Xa=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,ei=Aa(Xa,"u").replace(/punct/g,Wa).getRegex(),ti=Aa(Xa,"u").replace(/punct/g,Ga).getRegex(),ni="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",ri=Aa(ni,"gu").replace(/notPunctSpace/g,Ja).replace(/punctSpace/g,Ka).replace(/punct/g,Wa).getRegex(),ui=Aa(ni,"gu").replace(/notPunctSpace/g,/(?:(?:[\0-\x08\x0E-\x1F0-9A-Za-z\x7F-\x9F\xAA\xAD\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376-\u037D\u037F-\u0383\u0386\u0388-\u03F5\u03F7-\u0481\u0483-\u0559\u0560-\u0588\u058B\u058C\u0590-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7-\u05F2\u05F5-\u0605\u0610-\u061A\u061C\u0620-\u0669\u066E-\u06D3\u06D5-\u06DD\u06DF-\u06E8\u06EA-\u06FC\u06FF\u070E-\u07F5\u07FA-\u07FD\u0800-\u082F\u083F-\u085D\u085F-\u0887\u0889-\u0963\u0966-\u096F\u0971-\u09F1\u09F4-\u09F9\u09FC\u09FE-\u0A75\u0A77-\u0AEF\u0AF2-\u0B6F\u0B71-\u0BF2\u0BFB-\u0C76\u0C78-\u0C7E\u0C80-\u0C83\u0C85-\u0D4E\u0D50-\u0D78\u0D7A-\u0DF3\u0DF5-\u0E3E\u0E40-\u0E4E\u0E50-\u0E59\u0E5C-\u0F00\u0F18\u0F19\u0F20-\u0F33\u0F35\u0F37\u0F39\u0F3E-\u0F84\u0F86-\u0FBD\u0FC6\u0FCD\u0FDB-\u1049\u1050-\u109D\u10A0-\u10FA\u10FC-\u135F\u1369-\u138F\u139A-\u13FF\u1401-\u166C\u166F-\u167F\u1681-\u169A\u169D-\u16EA\u16EE-\u1734\u1737-\u17D3\u17D7\u17DC-\u17FF\u180B-\u193F\u1941-\u1943\u1946-\u19DD\u1A00-\u1A1D\u1A20-\u1A9F\u1AA7\u1AAE-\u1B4D\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BFB\u1C00-\u1C3A\u1C40-\u1C7D\u1C80-\u1CBF\u1CC8-\u1CD2\u1CD4-\u1FBC\u1FBE\u1FC2-\u1FCC\u1FD0-\u1FDC\u1FE0-\u1FEC\u1FF0-\u1FFC\u1FFF\u200B-\u200F\u202A-\u202E\u2060-\u2079\u207F-\u2089\u208F-\u209F\u20C2-\u20FF\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u218C-\u218F\u242A-\u243F\u244B-\u249B\u24EA-\u24FF\u2776-\u2793\u2B74\u2B75\u2C00-\u2CE4\u2CEB-\u2CF8\u2CFD\u2D00-\u2D6F\u2D71-\u2DFF\u2E2F\u2E5E-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3040-\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u318F\u3192-\u3195\u31A0-\u31BF\u31E6-\u31EE\u31F0-\u31FF\u321F-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48F\uA4C7-\uA4FD\uA500-\uA60C\uA610-\uA672\uA674-\uA67D\uA67F-\uA6F1\uA6F8-\uA6FF\uA717-\uA71F\uA722-\uA788\uA78B-\uA827\uA82C-\uA835\uA83A-\uA873\uA878-\uA8CD\uA8D0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA95E\uA960-\uA9C0\uA9CE-\uA9DD\uA9E0-\uAA5B\uAA60-\uAA76\uAA7A-\uAADD\uAAE0-\uAAEF\uAAF2-\uAB5A\uAB5C-\uAB69\uAB6C-\uABEA\uABEC-\uD7FF\uE000-\uFB28\uFB2A-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDD0-\uFDFB\uFE00-\uFE0F\uFE1A-\uFE2F\uFE53\uFE67\uFE6C-\uFEFE\uFF00\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFDF\uFFE7\uFFEF-\uFFFB\uFFFE\uFFFF]|\uD800[\uDC00-\uDCFF\uDD03-\uDD36\uDD40-\uDD78\uDD8A\uDD8B\uDD8F\uDD9D-\uDD9F\uDDA1-\uDDCF\uDDFD-\uDF9E\uDFA0-\uDFCF\uDFD1-\uDFFF]|\uD801[\uDC00-\uDD6E\uDD70-\uDFFF]|\uD802[\uDC00-\uDC56\uDC58-\uDC76\uDC79-\uDD1E\uDD20-\uDD3E\uDD40-\uDE4F\uDE59-\uDE7E\uDE80-\uDEC7\uDEC9-\uDEEF\uDEF7-\uDF38\uDF40-\uDF98\uDF9D-\uDFFF]|\uD803[\uDC00-\uDD6D\uDD6F-\uDD8D\uDD90-\uDEAC\uDEAE-\uDECF\uDED9-\uDF54\uDF5A-\uDF85\uDF8A-\uDFFF]|\uD804[\uDC00-\uDC46\uDC4E-\uDCBA\uDCBD\uDCC2-\uDD3F\uDD44-\uDD73\uDD76-\uDDC4\uDDC9-\uDDCC\uDDCE-\uDDDA\uDDDC\uDDE0-\uDE37\uDE3E-\uDEA8\uDEAA-\uDFD3\uDFD6\uDFD9-\uDFFF]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5C\uDC5E-\uDCC5\uDCC7-\uDDC0\uDDD8-\uDE40\uDE44-\uDE5F\uDE6D-\uDEB8\uDEBA-\uDF3B\uDF40-\uDFFF]|\uD806[\uDC00-\uDC3A\uDC3C-\uDD43\uDD47-\uDDE1\uDDE3-\uDE3E\uDE47-\uDE99\uDE9D\uDEA3-\uDEFF\uDF0A-\uDFE0\uDFE2-\uDFFF]|\uD807[\uDC00-\uDC40\uDC46-\uDC6F\uDC72-\uDEF6\uDEF9-\uDF42\uDF50-\uDFD4\uDFF2-\uDFFE]|[\uD808\uD80A\uD80C-\uD819\uD81C-\uD82E\uD830-\uD832\uD837\uD83F-\uDBFF][\uDC00-\uDFFF]|\uD809[\uDC00-\uDC6F\uDC75-\uDFFF]|\uD80B[\uDC00-\uDFF0\uDFF3-\uDFFF]|\uD81A[\uDC00-\uDE6D\uDE70-\uDEF4\uDEF6-\uDF36\uDF40-\uDF43\uDF46-\uDFFF]|\uD81B[\uDC00-\uDD6C\uDD70-\uDE96\uDE9B-\uDFE1\uDFE3-\uDFFF]|\uD82F[\uDC00-\uDC9B\uDC9D\uDC9E\uDCA0-\uDFFF]|\uD833[\uDCF0-\uDCF9\uDCFD-\uDCFF\uDEB4-\uDEB9\uDED1-\uDEDF\uDEF1-\uDF4F\uDFC4-\uDFFF]|\uD834[\uDCF6-\uDCFF\uDD27\uDD28\uDD65-\uDD69\uDD6D-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDDEB-\uDDFF\uDE42-\uDE44\uDE46-\uDEFF\uDF57-\uDFFF]|\uD835[\uDC00-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE8C-\uDFFF]|\uD838[\uDC00-\uDD4E\uDD50-\uDEFE\uDF00-\uDFFF]|\uD839[\uDC00-\uDDFE\uDE00-\uDFFF]|\uD83A[\uDC00-\uDD5D\uDD60-\uDFFF]|\uD83B[\uDC00-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDD2D\uDD2F-\uDEEF\uDEF2-\uDFFF]|\uD83C[\uDC2C-\uDC2F\uDC94-\uDC9F\uDCAF\uDCB0\uDCC0\uDCD0\uDCF6-\uDD0C\uDDAE-\uDDE5\uDE03-\uDE0F\uDE3C-\uDE3F\uDE49-\uDE4F\uDE52-\uDE5F\uDE66-\uDEFF]|\uD83D[\uDED9-\uDEDB\uDEED-\uDEEF\uDEFD-\uDEFF\uDFDA-\uDFDF\uDFEC-\uDFEF\uDFF1-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE\uDCAF\uDCBC-\uDCBF\uDCC2-\uDCCF\uDCD9-\uDCFF\uDE58-\uDE5F\uDE6E\uDE6F\uDE7D-\uDE7F\uDE8B-\uDE8D\uDEC7\uDEC9-\uDECC\uDEDD\uDEDE\uDEEB-\uDEEE\uDEF9-\uDEFF\uDF93\uDFF0-\uDFF9\uDFFB-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])|~)/).replace(/punctSpace/g,/(?!~)(?:[\t-\r -\/:-@\[-`\{-~\xA0-\xA9\xAB\xAC\xAE-\xB1\xB4\xB6-\xB8\xBB\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u037E\u0384\u0385\u0387\u03F6\u0482\u055A-\u055F\u0589\u058A\u058D-\u058F\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0606-\u060F\u061B\u061D-\u061F\u066A-\u066D\u06D4\u06DE\u06E9\u06FD\u06FE\u0700-\u070D\u07F6-\u07F9\u07FE\u07FF\u0830-\u083E\u085E\u0888\u0964\u0965\u0970\u09F2\u09F3\u09FA\u09FB\u09FD\u0A76\u0AF0\u0AF1\u0B70\u0BF3-\u0BFA\u0C77\u0C7F\u0C84\u0D4F\u0D79\u0DF4\u0E3F\u0E4F\u0E5A\u0E5B\u0F01-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F85\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u104A-\u104F\u109E\u109F\u10FB\u1360-\u1368\u1390-\u1399\u1400\u166D\u166E\u1680\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DB\u1800-\u180A\u1940\u1944\u1945\u19DE-\u19FF\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2000-\u200A\u2010-\u2029\u202F-\u205F\u207A-\u207E\u208A-\u208E\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2775\u2794-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u303F\u309B\u309C\u30A0\u30FB\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAA77-\uAA79\uAADE\uAADF\uAAF0\uAAF1\uAB5B\uAB6A\uAB6B\uABEB\uFB29\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFEFF\uFF01-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD00-\uDD02\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDC77\uDC78\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEC8\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDD8E\uDD8F\uDEAD\uDED0-\uDED8\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3F]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFD5-\uDFF1\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3F\uDF44\uDF45]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F[\uDC9C\uDC9F]|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE8B]|\uD838[\uDD4F\uDEFF]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA])/).replace(/punct/g,Ga).getRegex(),ai=Aa("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Ja).replace(/punctSpace/g,Ka).replace(/punct/g,Wa).getRegex(),ii=Aa(/\\(punct)/,"gu").replace(/punct/g,Wa).getRegex(),oi=Aa(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),si=Aa(Ma).replace("(?:--\x3e|$)","--\x3e").getRegex(),ci=Aa("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",si).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),li=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,fi=Aa(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",li).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),di=Aa(/^!?\[(label)\]\[(ref)\]/).replace("label",li).replace("ref",ja).getRegex(),pi=Aa(/^!?\[(ref)\](?:\[\])?/).replace("ref",ja).getRegex(),hi=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,vi={_backpedal:ka,anyPunctuation:ii,autolink:oi,blockSkip:Ya,br:Va,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:ka,emStrongLDelim:ei,emStrongRDelimAst:ri,emStrongRDelimUnd:ai,escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,link:fi,nolink:pi,punctuation:Qa,reflink:di,reflinkSearch:Aa("reflink|nolink(?!\\()","g").replace("reflink",di).replace("nolink",pi).getRegex(),tag:ci,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},_i=function(e){return Ei[e]};function bi(e,t){if(t){if(Sa.escapeTest.test(e))return e.replace(Sa.escapeReplace,_i)}else if(Sa.escapeTestNoEncode.test(e))return e.replace(Sa.escapeReplaceNoEncode,_i);return e}function Ci(e){try{e=encodeURI(e).replace(Sa.percentDecode,"%")}catch(e){return null}return e}function ki(e,t){var n,r=e.replace(Sa.findPipe,function(e,t,n){for(var r=!1,u=t;--u>=0&&"\\"===n[u];)r=!r;return r?"|":" |"}).split(Sa.splitPipe),u=0;if(r[0].trim()||r.shift(),r.length>0&&!(null!==(n=r.at(-1))&&void 0!==n&&n.trim())&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length0)return{type:"space",raw:t[0]}}},{key:"code",value:function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:Ai(n,"\n")}}}},{key:"fences",value:function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=function(e,t,n){var r=e.match(n.other.indentCodeCompensation);if(null===r)return t;var u=r[1];return t.split("\n").map(function(e){var t=e.match(n.other.beginningSpace);return null===t?e:yn(t,1)[0].length>=u.length?e.slice(u.length):e}).join("\n")}(n,t[3]||"",this.rules);return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:r}}}},{key:"heading",value:function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(this.rules.other.endingHash.test(n)){var r=Ai(n,"#");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}},{key:"hr",value:function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:Ai(t[0],"\n")}}},{key:"blockquote",value:function(e){var t=this.rules.block.blockquote.exec(e);if(t){for(var n=Ai(t[0],"\n").split("\n"),r="",u="",a=[];n.length>0;){var i=!1,o=[],s=void 0;for(s=0;s1,a={type:"list",raw:"",ordered:u,start:u?+r.slice(0,-1):"",loose:!1,items:[]};r=u?"\\d{1,9}\\".concat(r.slice(-1)):"\\".concat(r),this.options.pedantic&&(r=u?r:"[*+-]");for(var i=this.rules.other.listItemRegex(r),o=!1;e;){var s=!1,c="",l="";if(!(n=i.exec(e))||this.rules.block.hr.test(e))break;c=n[0],e=e.substring(c.length);var f=n[2].split("\n",1)[0].replace(this.rules.other.listReplaceTabs,function(e){return" ".repeat(3*e.length)}),d=e.split("\n",1)[0],p=!f.trim(),h=0;if(this.options.pedantic?(h=2,l=f.trimStart()):p?h=n[1].length+1:(h=(h=n[2].search(this.rules.other.nonSpaceChar))>4?1:h,l=f.slice(h),h+=n[1].length),p&&this.rules.other.blankLine.test(d)&&(c+=d+"\n",e=e.substring(d.length+1),s=!0),!s)for(var v=this.rules.other.nextBulletRegex(h),m=this.rules.other.hrRegex(h),D=this.rules.other.fencesBeginRegex(h),y=this.rules.other.headingBeginRegex(h),g=this.rules.other.htmlBeginRegex(h);e;){var F=e.split("\n",1)[0],E=void 0;if(d=F,E=this.options.pedantic?d=d.replace(this.rules.other.listReplaceNesting," "):d.replace(this.rules.other.tabCharGlobal," "),D.test(d)||y.test(d)||g.test(d)||v.test(d)||m.test(d))break;if(E.search(this.rules.other.nonSpaceChar)>=h||!d.trim())l+="\n"+E.slice(h);else{if(p||f.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||D.test(f)||y.test(f)||m.test(f))break;l+="\n"+d}!p&&!d.trim()&&(p=!0),c+=F+"\n",e=e.substring(F.length+1),f=E.slice(h)}a.loose||(o?a.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0));var _=null,b=void 0;this.options.gfm&&(_=this.rules.other.listIsTask.exec(l))&&(b="[ ] "!==_[0],l=l.replace(this.rules.other.listReplaceTask,"")),a.items.push({type:"list_item",raw:c,task:!!_,checked:b,loose:!1,text:l,tokens:[]}),a.raw+=c}var C=a.items.at(-1);if(!C)return;C.raw=C.raw.trimEnd(),C.text=C.text.trimEnd(),a.raw=a.raw.trimEnd();for(var k=0;k0&&A.some(function(e){return t.rules.other.anyLine.test(e.raw)});a.loose=w}if(a.loose)for(var S=0;S0?-2:-1}(t[2],"()");if(-2===u)return;if(u>-1){var a=(0===t[0].indexOf("!")?5:4)+t[1].length+u;t[2]=t[2].substring(0,u),t[0]=t[0].substring(0,a).trim(),t[3]=""}}var i=t[2],o="";if(this.options.pedantic){var s=this.rules.other.pedanticHrefTitle.exec(i);s&&(i=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):"";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(i=this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?i.slice(1):i.slice(1,-1)),wi(t,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}},{key:"reflink",value:function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!r){var u=n[0].charAt(0);return{type:"text",raw:u,text:u}}return wi(n,r,n[0],this.lexer,this.rules)}}},{key:"emStrong",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!r[1]&&!r[2]||!n||this.rules.inline.punctuation.exec(n))){var u,a,i=gn(r[0]).length-1,o=i,s=0,c="*"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+i);null!=(r=c.exec(t));)if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(a=gn(u).length,r[3]||r[4])o+=a;else if(!((r[5]||r[6])&&i%3)||(i+a)%3){if(!((o-=a)>0)){a=Math.min(a,a+o+s);var l=gn(r[0])[0].length,f=e.slice(0,i+r.index+l+a);if(Math.min(i,a)%2){var d=f.slice(1,-1);return{type:"em",raw:f,text:d,tokens:this.lexer.inlineTokens(d)}}var p=f.slice(2,-2);return{type:"strong",raw:f,text:p,tokens:this.lexer.inlineTokens(p)}}}else s+=a}}},{key:"codespan",value:function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(this.rules.other.newLineCharGlobal," "),r=this.rules.other.nonSpaceChar.test(n),u=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&u&&(n=n.substring(1,n.length-1)),{type:"codespan",raw:t[0],text:n}}}},{key:"br",value:function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}},{key:"del",value:function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}},{key:"autolink",value:function(e){var t,n,r=this.rules.inline.autolink.exec(e);if(r)return n="@"===r[2]?"mailto:"+(t=r[1]):t=r[1],{type:"link",raw:r[0],text:t,href:n,tokens:[{type:"text",raw:t,text:t}]}}},{key:"url",value:function(e){var t;if(t=this.rules.inline.url.exec(e)){var n,r;if("@"===t[2])r="mailto:"+(n=t[0]);else{var u;do{var a,i;u=t[0],t[0]=null!==(a=null===(i=this.rules.inline._backpedal.exec(t[0]))||void 0===i?void 0:i[0])&&void 0!==a?a:""}while(u!==t[0]);n=t[0],r="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:n,href:r,tokens:[{type:"text",raw:n,text:n}]}}}},{key:"inlineText",value:function(e){var t=this.rules.inline.text.exec(e);if(t){var n=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:n}}}}]),xi=function(){function e(t){tn(this,e),on(this,"tokens",void 0),on(this,"options",void 0),on(this,"state",void 0),on(this,"tokenizer",void 0),on(this,"inlineQueue",void 0),this.tokens=[],this.tokens.links=Object.create(null),this.options=t||ba,this.options.tokenizer=this.options.tokenizer||new Si,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var n={other:Sa,block:gi.normal,inline:Fi.normal};this.options.pedantic?(n.block=gi.pedantic,n.inline=Fi.pedantic):this.options.gfm&&(n.block=gi.gfm,this.options.breaks?n.inline=Fi.breaks:n.inline=Fi.gfm),this.tokenizer.rules=n}return un(e,[{key:"lex",value:function(e){e=e.replace(Sa.carriageReturn,"\n"),this.blockTokens(e,this.tokens);for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:[],u=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=function(){var t,a,i;if(null!==(t=n.options.extensions)&&void 0!==t&&null!==(t=t.block)&&void 0!==t&&t.some(function(t){return!!(i=t.call({lexer:n},e,r))&&(e=e.substring(i.raw.length),r.push(i),!0)}))return 0;if(i=n.tokenizer.space(e)){e=e.substring(i.raw.length);var o=r.at(-1);return 1===i.raw.length&&void 0!==o?o.raw+="\n":r.push(i),0}if(i=n.tokenizer.code(e)){e=e.substring(i.raw.length);var s=r.at(-1);return"paragraph"===(null==s?void 0:s.type)||"text"===(null==s?void 0:s.type)?(s.raw+=(s.raw.endsWith("\n")?"":"\n")+i.raw,s.text+="\n"+i.text,n.inlineQueue.at(-1).src=s.text):r.push(i),0}if(i=n.tokenizer.fences(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.heading(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.hr(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.blockquote(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.list(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.html(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.def(e)){e=e.substring(i.raw.length);var c=r.at(-1);return"paragraph"===(null==c?void 0:c.type)||"text"===(null==c?void 0:c.type)?(c.raw+=(c.raw.endsWith("\n")?"":"\n")+i.raw,c.text+="\n"+i.raw,n.inlineQueue.at(-1).src=c.text):n.tokens.links[i.tag]||(n.tokens.links[i.tag]={href:i.href,title:i.title},r.push(i)),0}if(i=n.tokenizer.table(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.lheading(e))return e=e.substring(i.raw.length),r.push(i),0;var l=e;if(null!==(a=n.options.extensions)&&void 0!==a&&a.startBlock){var f,d=1/0,p=e.slice(1);n.options.extensions.startBlock.forEach(function(e){"number"==typeof(f=e.call({lexer:n},p))&&f>=0&&(d=Math.min(d,f))}),d<1/0&&d>=0&&(l=e.substring(0,d+1))}if(n.state.top&&(i=n.tokenizer.paragraph(l))){var h=r.at(-1);return u&&"paragraph"===(null==h?void 0:h.type)?(h.raw+=(h.raw.endsWith("\n")?"":"\n")+i.raw,h.text+="\n"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=h.text):r.push(i),u=l.length!==e.length,e=e.substring(i.raw.length),0}if(i=n.tokenizer.text(e)){e=e.substring(i.raw.length);var v=r.at(-1);return"text"===(null==v?void 0:v.type)?(v.raw+=(v.raw.endsWith("\n")?"":"\n")+i.raw,v.text+="\n"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=v.text):r.push(i),0}if(e){var m="Infinite loop on byte: "+e.charCodeAt(0);if(n.options.silent)return console.error(m),1;throw new Error(m)}};for(this.options.pedantic&&(e=e.replace(Sa.tabCharGlobal," ").replace(Sa.spaceLine,""));e&&(0===(t=a())||1!==t););return this.state.top=!0,r}},{key:"inline",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return this.inlineQueue.push({src:e,tokens:t}),t}},{key:"inlineTokens",value:function(e){var t,n,r,u=this,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=e,o=null;if(this.tokens.links){var s=Object.keys(this.tokens.links);if(s.length>0)for(;null!=(o=this.tokenizer.rules.inline.reflinkSearch.exec(i));)s.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(i=i.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(o=this.tokenizer.rules.inline.anyPunctuation.exec(i));)i=i.slice(0,o.index)+"++"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;null!=(o=this.tokenizer.rules.inline.blockSkip.exec(i));)r=o[2]?o[2].length:0,i=i.slice(0,o.index+r)+"["+"a".repeat(o[0].length-r-2)+"]"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);i=null!==(t=null===(n=this.options.hooks)||void 0===n||null===(n=n.emStrongMask)||void 0===n?void 0:n.call({lexer:this},i))&&void 0!==t?t:i;for(var c,l=!1,f="",d=function(){var t,n,r;if(l||(f=""),l=!1,null!==(t=u.options.extensions)&&void 0!==t&&null!==(t=t.inline)&&void 0!==t&&t.some(function(t){return!!(r=t.call({lexer:u},e,a))&&(e=e.substring(r.raw.length),a.push(r),!0)}))return 0;if(r=u.tokenizer.escape(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.tag(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.link(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.reflink(e,u.tokens.links)){e=e.substring(r.raw.length);var o=a.at(-1);return"text"===r.type&&"text"===(null==o?void 0:o.type)?(o.raw+=r.raw,o.text+=r.text):a.push(r),0}if(r=u.tokenizer.emStrong(e,i,f))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.codespan(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.br(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.del(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.autolink(e))return e=e.substring(r.raw.length),a.push(r),0;if(!u.state.inLink&&(r=u.tokenizer.url(e)))return e=e.substring(r.raw.length),a.push(r),0;var s=e;if(null!==(n=u.options.extensions)&&void 0!==n&&n.startInline){var c,d=1/0,p=e.slice(1);u.options.extensions.startInline.forEach(function(e){"number"==typeof(c=e.call({lexer:u},p))&&c>=0&&(d=Math.min(d,c))}),d<1/0&&d>=0&&(s=e.substring(0,d+1))}if(r=u.tokenizer.inlineText(s)){e=e.substring(r.raw.length),"_"!==r.raw.slice(-1)&&(f=r.raw.slice(-1)),l=!0;var h=a.at(-1);return"text"===(null==h?void 0:h.type)?(h.raw+=r.raw,h.text+=r.text):a.push(r),0}if(e){var v="Infinite loop on byte: "+e.charCodeAt(0);if(u.options.silent)return console.error(v),1;throw new Error(v)}};e&&(0===(c=d())||1!==c););return a}}],[{key:"rules",get:function(){return{block:gi,inline:Fi}}},{key:"lex",value:function(t,n){return new e(n).lex(t)}},{key:"lexInline",value:function(t,n){return new e(n).inlineTokens(t)}}])}(),Oi=un(function e(t){tn(this,e),on(this,"options",void 0),on(this,"parser",void 0),this.options=t||ba},[{key:"space",value:function(e){return""}},{key:"code",value:function(e){var t,n=e.text,r=e.lang,u=e.escaped,a=null===(t=(r||"").match(Sa.notSpaceStart))||void 0===t?void 0:t[0],i=n.replace(Sa.endingNewline,"")+"\n";return a?'

    '+(u?i:bi(i,!0))+"
    \n":"
    "+(u?i:bi(i,!0))+"
    \n"}},{key:"blockquote",value:function(e){var t=e.tokens;return"
    \n".concat(this.parser.parse(t),"
    \n")}},{key:"html",value:function(e){return e.text}},{key:"def",value:function(e){return""}},{key:"heading",value:function(e){var t=e.tokens,n=e.depth;return"").concat(this.parser.parseInline(t),"\n")}},{key:"hr",value:function(e){return"
    \n"}},{key:"list",value:function(e){for(var t=e.ordered,n=e.start,r="",u=0;u\n"+r+"\n"}},{key:"listitem",value:function(e){var t="";if(e.task){var n,r=this.checkbox({checked:!!e.checked});e.loose?"paragraph"===(null===(n=e.tokens[0])||void 0===n?void 0:n.type)?(e.tokens[0].text=r+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=r+" "+bi(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:"text",raw:r+" ",text:r+" ",escaped:!0}):t+=r+" "}return t+=this.parser.parse(e.tokens,!!e.loose),"
  • ".concat(t,"
  • \n")}},{key:"checkbox",value:function(e){return"'}},{key:"paragraph",value:function(e){var t=e.tokens;return"

    ".concat(this.parser.parseInline(t),"

    \n")}},{key:"table",value:function(e){for(var t="",n="",r=0;r")),"\n\n"+t+"\n"+u+"
    \n"}},{key:"tablerow",value:function(e){var t=e.text;return"\n".concat(t,"\n")}},{key:"tablecell",value:function(e){var t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?"<".concat(n,' align="').concat(e.align,'">'):"<".concat(n,">"))+t+"\n")}},{key:"strong",value:function(e){var t=e.tokens;return"".concat(this.parser.parseInline(t),"")}},{key:"em",value:function(e){var t=e.tokens;return"".concat(this.parser.parseInline(t),"")}},{key:"codespan",value:function(e){var t=e.text;return"".concat(bi(t,!0),"")}},{key:"br",value:function(e){return"
    "}},{key:"del",value:function(e){var t=e.tokens;return"".concat(this.parser.parseInline(t),"")}},{key:"link",value:function(e){var t=e.href,n=e.title,r=e.tokens,u=this.parser.parseInline(r),a=Ci(t);if(null===a)return u;var i='
    "+u+""}},{key:"image",value:function(e){var t=e.href,n=e.title,r=e.text,u=e.tokens;u&&(r=this.parser.parseInline(u,this.parser.textRenderer));var a=Ci(t);if(null===a)return bi(r);var i='').concat(r,'"}},{key:"text",value:function(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:bi(e.text)}}]),Bi=un(function e(){tn(this,e)},[{key:"strong",value:function(e){return e.text}},{key:"em",value:function(e){return e.text}},{key:"codespan",value:function(e){return e.text}},{key:"del",value:function(e){return e.text}},{key:"html",value:function(e){return e.text}},{key:"text",value:function(e){return e.text}},{key:"link",value:function(e){return""+e.text}},{key:"image",value:function(e){return""+e.text}},{key:"br",value:function(){return""}}]),Ii=function(){function e(t){tn(this,e),on(this,"options",void 0),on(this,"renderer",void 0),on(this,"textRenderer",void 0),this.options=t||ba,this.options.renderer=this.options.renderer||new Oi,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Bi}return un(e,[{key:"parse",value:function(e){for(var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n="",r=0;r1&&void 0!==arguments[1]?arguments[1]:this.renderer,n="",r=0;r"u"||null===n)return i(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof n)return i(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));if(a.hooks&&(a.hooks.options=a,a.hooks.block=e),a.async)return Xt(vn().m(function r(){var u,i,o,s,c,l,f,d,p,h,v;return vn().w(function(r){for(;;)switch(r.n){case 0:if(!a.hooks){r.n=2;break}return r.n=1,a.hooks.preprocess(n);case 1:c=r.v,r.n=3;break;case 2:c=n;case 3:if(u=c,!a.hooks){r.n=5;break}return r.n=4,a.hooks.provideLexer();case 4:l=r.v,r.n=6;break;case 5:l=e?xi.lex:xi.lexInline;case 6:return f=l,r.n=7,f(u,a);case 7:if(i=r.v,!a.hooks){r.n=9;break}return r.n=8,a.hooks.processAllTokens(i);case 8:d=r.v,r.n=10;break;case 9:d=i;case 10:if(o=d,!a.walkTokens){r.n=11;break}return r.n=11,Promise.all(t.walkTokens(o,a.walkTokens));case 11:if(!a.hooks){r.n=13;break}return r.n=12,a.hooks.provideParser();case 12:p=r.v,r.n=14;break;case 13:p=e?Ii.parse:Ii.parseInline;case 14:return h=p,r.n=15,h(o,a);case 15:if(s=r.v,!a.hooks){r.n=17;break}return r.n=16,a.hooks.postprocess(s);case 16:v=r.v,r.n=18;break;case 17:v=s;case 18:return r.a(2,v)}},r)}))().catch(i);try{a.hooks&&(n=a.hooks.preprocess(n));var o=(a.hooks?a.hooks.provideLexer():e?xi.lex:xi.lexInline)(n,a);a.hooks&&(o=a.hooks.processAllTokens(o)),a.walkTokens&&t.walkTokens(o,a.walkTokens);var s=(a.hooks?a.hooks.provideParser():e?Ii.parse:Ii.parseInline)(o,a);return a.hooks&&(s=a.hooks.postprocess(s)),s}catch(e){return i(e)}}}},{key:"onError",value:function(e,t){return function(n){if(n.message+="\nPlease report this to https://github.com/markedjs/marked.",e){var r="

    An error occurred:

    "+bi(n.message+"",!0)+"
    ";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}}]),ji=new Pi;function Ni(e,t){return ji.parse(e,t)}function zi(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}Ni.options=Ni.setOptions=function(e){return ji.setOptions(e),Ni.defaults=ji.defaults,Ca(Ni.defaults),Ni},Ni.getDefaults=function(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}},Ni.defaults=ba,Ni.use=function(){return ji.use.apply(ji,arguments),Ni.defaults=ji.defaults,Ca(Ni.defaults),Ni},Ni.walkTokens=function(e,t){return ji.walkTokens(e,t)},Ni.parseInline=ji.parseInline,Ni.Parser=Ii,Ni.parser=Ii.parse,Ni.Renderer=Oi,Ni.TextRenderer=Bi,Ni.Lexer=xi,Ni.lexer=xi.lex,Ni.Tokenizer=Si,Ni.Hooks=Ti,Ni.parse=Ni,Ni.options,Ni.setOptions,Ni.use,Ni.walkTokens,Ni.parseInline,Ii.parse,xi.lex;var Ri=new Ni.Renderer;Ri.code=function(e){var t=e.text,n=e.lang,r=void 0===n?"":n,u=e.escaped,a=r?"language-".concat(r):"",i=u?t:zi(t),o=encodeURIComponent(t);return'\n
    \n \n
    ').concat(i,"
    \n
    \n ")},Ri.link=function(e){var t=e.href,n=e.title,r=e.text,u=n?' title="'.concat(zi(n),'"'):"",a=t?zi(t):"",i=zi(r);return'').concat(i,"")};var Mi=nt(function(e){var t=e.content,n=e.copyButtonText,r=e.copyButtonCopiedText,u=e.isStreaming,a=Pe(function(){return Ni.parse(t,{gfm:!0,breaks:!0,renderer:Ri})},[t]),i=Ie(null);return Oe(function(){var e=i.current;if(e)return Array.from(e.querySelectorAll(".DocSearch-CodeSnippet-CopyButton")).forEach(function(e){var t=e.querySelector(".DocSearch-CodeSnippet-CopyButton-Label");t&&(t.textContent=n),e.classList.remove("DocSearch-CodeSnippet-CopyButton--copied")}),e.addEventListener("click",t),function(){e.removeEventListener("click",t)};function t(e){var t,u=e.target.closest(".DocSearch-CodeSnippet-CopyButton");if(u){var a=null!==(t=u.getAttribute("data-code"))&&void 0!==t?t:"";navigator.clipboard.writeText(decodeURIComponent(a)).catch(function(){});var i=u.querySelector(".DocSearch-CodeSnippet-CopyButton-Label");if(i){u.classList.add("DocSearch-CodeSnippet-CopyButton--copied");var o=n;i.textContent=r,setTimeout(function(){u.classList.remove("DocSearch-CodeSnippet-CopyButton--copied"),i.textContent=o},1500)}}}},[a,n,r]),It.createElement("div",{ref:i,className:"DocSearch-Markdown-Content ".concat(u?"DocSearch-Markdown-Content--streaming":""),dangerouslySetInnerHTML:{__html:a}})});function Zi(e){var t=e.part,n=e.translations,r=e.onSearchQueryClick,u=n.searchingText,a=n.preToolCallText,i=n.toolCallResultText;switch(t.state){case"input-streaming":return It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Tool Tool--PartialCall shimmer"},It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}),It.createElement("span",null,u));case"input-available":return It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Tool Tool--Call shimmer"},It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}),It.createElement("span",null,a," ",'"'.concat(t.input.query||"",'" ...')));case"output-available":var o,s="tool-searchIndex"===t.type?t.output.query:t.input.query,c="tool-searchIndex"===t.type?null===(o=t.output.hits)||void 0===o?void 0:o.length:t.output.nbHits;return It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Tool Tool--Result"},It.createElement(wn,null),It.createElement("span",null,i," ",r?It.createElement("span",{role:"button",tabIndex:0,className:"DocSearch-AskAiScreen-MessageContent-Tool-Query",onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),r(s||""))},onClick:function(){return r(s||"")}}," ",'"',s||"",'"'):It.createElement("span",{className:"DocSearch-AskAiScreen-MessageContent-Tool-Query"},' "',s||"",'"')," ","found ",c||0," results"));default:return null}}function Li(e){return e.replace(/<[^>]*>/g,"").replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}Mi.displayName="MemoizedMarkdown";var $i=function(e,t){var n=t[0].parts.find(function(e){return"text"===e.type}),r=null!=n&&n.text?Li(n.text):"";return{query:e,objectID:r,messages:t,type:"askAI",anchor:"stored",content:null,hierarchy:{lvl0:"askAI",lvl1:r,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},url:"",url_without_anchor:""}},qi=function(e){return null==e?void 0:e.parts.find(function(e){return"text"===e.type})};function Ui(e){var t;return e&&(null===(t=e.message)||void 0===t?void 0:t.includes("AI-217"))||!1}var Hi=["translations"];function Vi(e){var t=e.disclaimerText;return It.createElement("p",{className:"DocSearch-AskAiScreen-Disclaimer"},t)}function Wi(e){var t,n,r,u=e.exchange,a=e.askAiError,i=e.isLastExchange,o=e.loadingStatus,s=e.onSearchQueryClick,c=e.translations,l=e.conversations,f=e.onFeedback,d=e.agentStudio,p=u.userMessage,h=u.assistantMessage,v=c.stoppedStreamingText,m=void 0===v?"You stopped this response":v,D=c.errorTitleText,y=void 0===D?"Chat error":D,g=c.preToolCallText,F=void 0===g?"Searching...":g,E=c.afterToolCallText,_=void 0===E?"Searched for":E,b=c.duringToolCallText,C=void 0===b?"Searching...":b,k=Ui(a),A=Pe(function(){return qi(h)},[h]),w=Pe(function(){return qi(p)},[p]),S=It.useMemo(function(){return e=h,t=[],n=new Set,e?(e.parts.forEach(function(e){if("text"===e.type&&0!==e.text.length){var r,u=e.text.replace(/```[\s\S]*?```/g,"").replace(/`[^`]*`/g,""),a=an(u.matchAll(/\[([^\]]*)\]\(([^)]+)\)/g));try{for(a.s();!(r=a.n()).done;){var i=r.value,o=i[1].trim(),s=i[2];n.has(s)||(n.add(s),t.push({url:s,title:o||void 0}))}}catch(e){a.e(e)}finally{a.f()}var c,l=an(u.matchAll(/(?"{}|\\^`[\]]+/g));try{for(l.s();!(c=l.n()).done;){var f=c.value[0].replace(/[.,;:!?]+$/,"");n.has(f)||(n.add(f),t.push({url:f}))}}catch(e){l.e(e)}finally{l.f()}}}),t):[];var e,t,n},[h]),x=It.useMemo(function(){return function(e){for(var t=[],n=0;n0&&u.push(c),a++}u.length>1?t.push({type:"aggregated-tool-call",queries:u}):1===u.length&&t.push(r),n=a-1}else t.push(r)}return t}((null==h?void 0:h.parts)||[])},[h]),O=(null===(t=p.metadata)||void 0===t?void 0:t.stopped)||(null==h||null===(n=h.metadata)||void 0===n?void 0:n.stopped),B=!O&&(!i||i&&"ready"===o&&Boolean(h)),I=["submitted","streaming"].includes(o)&&i&&!x.some(function(e){return"step-start"!==e.type});return It.createElement("div",{className:"DocSearch-AskAiScreen-Response-Container"},It.createElement("div",{className:"DocSearch-AskAiScreen-Response"},It.createElement("div",{className:"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--user"},It.createElement("p",{className:"DocSearch-AskAiScreen-Query"},null!==(r=null==w?void 0:w.text)&&void 0!==r?r:"")),It.createElement("div",{className:"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--assistant"},It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent"},"error"===o&&a&&i&&!k&&It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error"},It.createElement(oa,null),It.createElement("div",{className:"DocSearch-AskAiScreen-Error-Content"},It.createElement("h4",{className:"DocSearch-AskAiScreen-Error-Title"},y),It.createElement(Mi,{content:a.message,copyButtonText:"",copyButtonCopiedText:"",isStreaming:!1}))),I&&It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent-Reasoning"},It.createElement("span",{className:"shimmer"},c.thinkingText||"Thinking...")),x.map(function(e,t){var n=t;return"string"==typeof e?It.createElement(Mi,{key:n,content:e,copyButtonText:c.copyButtonText||"Copy",copyButtonCopiedText:c.copyButtonCopiedText||"Copied!",isStreaming:"streaming"===o}):"aggregated-tool-call"===e.type?It.createElement(_a,{key:n,queries:e.queries,translations:c,onSearchQueryClick:s}):"reasoning"===e.type&&"streaming"===e.state?It.createElement("div",{key:n,className:"DocSearch-AskAiScreen-MessageContent-Reasoning shimmer"},It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}),It.createElement("span",{className:"shimmer"},"Reasoning...")):"text"===e.type?It.createElement(Mi,{key:n,content:e.text,copyButtonText:c.copyButtonText||"Copy",copyButtonCopiedText:c.copyButtonCopiedText||"Copied!",isStreaming:"streaming"===e.state}):"tool-searchIndex"===e.type||"tool-algolia_search_index"===e.type?It.createElement(Zi,{key:n,translations:{preToolCallText:F,searchingText:C,toolCallResultText:_},part:e,onSearchQueryClick:s}):null})),O&&It.createElement("p",{className:"DocSearck-AskAiScreen-MessageContent-Stopped"},m)),It.createElement("div",{className:"DocSearch-AskAiScreen-Answer-Footer"},It.createElement(Ki,{id:(null==p?void 0:p.id)||u.id,showActions:B,latestAssistantMessageContent:(null==A?void 0:A.text)||null,translations:c,conversations:l,agentStudio:d,onFeedback:f}))),S.length>0?It.createElement(Ji,{urlsToDisplay:S,relatedSourcesText:c.relatedSourcesText}):null)}function Ki(e){var t=e.id,n=e.showActions,r=e.latestAssistantMessageContent,u=e.translations,a=e.conversations,i=e.onFeedback,o=e.agentStudio,s=It.useMemo(function(){var e,n,r=null===(e=a.getOne)||void 0===e?void 0:e.call(a,t);return null!==(n=null==r?void 0:r.feedback)&&void 0!==n?n:null},[a,t]),c=yn(It.useState(s),2),l=c[0],f=c[1],d=yn(It.useState(!1),2),p=d[0],h=d[1],v=yn(It.useState(null),2),m=v[0],D=v[1],y=function(){var e=Xt(vn().m(function e(n){var r;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!p){e.n=1;break}return e.a(2);case 1:return D(null),h(!0),e.p=2,e.n=3,null==i?void 0:i(t,"like"===n?1:0);case 3:f(n),e.n=5;break;case 4:e.p=4,r=e.v,D(r);case 5:return e.p=5,h(!1),e.f(5);case 6:return e.a(2)}},e,null,[[2,4,5,6]])}));return function(t){return e.apply(this,arguments)}}(),g=u.likeButtonTitle,F=void 0===g?"Like":g,E=u.dislikeButtonTitle,_=void 0===E?"Dislike":E,b=u.thanksForFeedbackText,C=void 0===b?"Thanks for your feedback!":b;return n&&r?It.createElement("div",{className:"DocSearch-AskAiScreen-Actions"},!o&&(null===l?It.createElement(It.Fragment,null,p?It.createElement(ra,{className:"DocSearch-AskAiScreen-SmallerLoadingIcon"}):It.createElement(It.Fragment,null,It.createElement(Xi,{title:F,onClick:function(){return y("like")}}),It.createElement(eo,{title:_,onClick:function(){return y("dislike")}})),m&&It.createElement("p",{className:"DocSearch-AskAiScreen-FeedbackText"},m.message||"An error occured")):It.createElement("p",{className:"DocSearch-AskAiScreen-FeedbackText DocSearch-AskAiScreen-FeedbackText--visible"},C)),It.createElement(Yi,{translations:u,onClick:function(){return navigator.clipboard.writeText(r)}})):null}function Ji(e){var t=e.urlsToDisplay,n=e.relatedSourcesText;return It.createElement("div",{className:"DocSearch-AskAiScreen-RelatedSources"},It.createElement("p",{className:"DocSearch-AskAiScreen-RelatedSources-Title"},n||"Related sources"),It.createElement("div",{className:"DocSearch-AskAiScreen-RelatedSources-List"},t.length>0&&t.map(function(e){return It.createElement("a",{key:e.url,href:e.url,className:"DocSearch-AskAiScreen-RelatedSources-Item-Link",target:"_blank",rel:"noopener noreferrer"},It.createElement(Gi,null),It.createElement("span",null,e.title||e.url))})))}function Qi(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,Hi),u=n.disclaimerText,a=void 0===u?"Answers are generated with AI which can make mistakes. Verify responses.":u,i=n.threadDepthExceededMessage,o=void 0===i?"This conversation is now closed to keep responses accurate.":i,s=n.startNewConversationButtonText,c=void 0===s?"Start a new conversation":s,l=r.messages,f=r.askAiError,d=r.status,p=Pe(function(){return"error"===d&&Ui(f)},[d,f]),h=Pe(function(){for(var e=[],t=0;t0&&(e[e.length-1].assistantMessage||e.pop()),e},[l,p]),v=function(e){r.onAskAiToggle(!1),r.setQuery(e)},m=p&&l.some(function(e){return"assistant"===e.role});return It.createElement("div",{className:"DocSearch-AskAiScreen DocSearch-AskAiScreen-Container"},m&&It.createElement("div",{className:"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error DocSearch-AskAiScreen-Error--ThreadDepth"},It.createElement("div",{className:"DocSearch-AskAiScreen-Error-Content"},It.createElement("p",null,o," ",It.createElement("button",{type:"button",className:"DocSearch-ThreadDepthError-Link",onClick:r.onNewConversation},c)," ","to continue."))),It.createElement(Vi,{disclaimerText:a}),It.createElement("div",{className:"DocSearch-AskAiScreen-Body"},It.createElement("div",{className:"DocSearch-AskAiScreen-ExchangesList"},h.slice().reverse().map(function(e,t){return It.createElement(Wi,{key:e.id,exchange:e,askAiError:r.askAiError,isLastExchange:0===t,loadingStatus:r.status,translations:n,conversations:r.conversations,agentStudio:r.agentStudio,onSearchQueryClick:v,onFeedback:r.onFeedback})}))))}function Gi(){return It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},It.createElement("line",{x1:"4",x2:"20",y1:"9",y2:"9"}),It.createElement("line",{x1:"4",x2:"20",y1:"15",y2:"15"}),It.createElement("line",{x1:"10",x2:"8",y1:"3",y2:"21"}),It.createElement("line",{x1:"16",x2:"14",y1:"3",y2:"21"}))}function Yi(e){var t=e.onClick,n=e.translations,r=n.copyButtonTitle,u=void 0===r?"Copy":r,a=n.copyButtonCopiedText,i=void 0===a?"Copied!":a,o=yn(Se(!1),2),s=o[0],c=o[1];return Oe(function(){if(s){var e=setTimeout(function(){c(!1)},1500);return function(){return clearTimeout(e)}}},[s]),It.createElement("button",{type:"button",className:"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-CopyButton ".concat(s?"DocSearch-AskAiScreen-CopyButton--copied":""),disabled:s,title:s?i:u,onClick:function(){t(),c(!0)}},s?It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-check-icon lucide-check"},It.createElement("path",{d:"M20 6 9 17l-5-5"})):It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-copy-icon lucide-copy"},It.createElement("rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}),It.createElement("path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"})))}function Xi(e){var t=e.title,n=e.onClick;return It.createElement("button",{type:"button",className:"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-LikeButton",title:t,onClick:n},It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-thumbs-up-icon lucide-thumbs-up"},It.createElement("path",{d:"M7 10v12"}),It.createElement("path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"})))}function eo(e){var t=e.title,n=e.onClick;return It.createElement("button",{type:"button",className:"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-DislikeButton",title:t,onClick:n},It.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-thumbs-down-icon lucide-thumbs-down"},It.createElement("path",{d:"M17 14V2"}),It.createElement("path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"})))}var to=["hit","attribute","tagName"];function no(e,t){return t.split(".").reduce(function(e,t){return null!=e&&e[t]?e[t]:null},e)}function ro(e){var t=e.hit,n=e.attribute,r=e.tagName;return $(void 0===r?"span":r,pn(pn({},hn(e,to)),{},{dangerouslySetInnerHTML:{__html:no(t,"_snippetResult.".concat(n,".value"))||no(t,n)}}))}var uo=["item","getItemProps","onItemClick","translations","collection"];function ao(e){var t=It.useMemo(function(){return e.title?e.title.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'"):null},[e.title]);return e.collection&&0!==e.collection.items.length?"askAI"===e.collection.source.sourceId?It.createElement("section",{className:"DocSearch-AskAi-Section"},It.createElement("ul",e.getListProps({source:e.collection.source}),It.createElement(oo,sn({item:e.collection.items[0],translations:e.translations},e)))):(e.collection.source.sourceId,It.createElement("section",{className:"DocSearch-Hits"},It.createElement("div",{className:"DocSearch-Hit-source"},t),It.createElement("ul",e.getListProps({source:e.collection.source}),e.collection.items.map(function(t,n){return It.createElement(io,sn({key:[e.title,t.objectID].join(":"),item:t,index:n},e))})))):null}function io(e){var t=e.item,n=e.index,r=e.renderIcon,u=e.renderAction,a=e.getItemProps,i=e.onItemClick,o=e.collection,s=e.hitComponent;return It.createElement("li",sn({className:["DocSearch-Hit",t.__docsearch_parent&&"DocSearch-Hit--Child"].filter(Boolean).join(" ")},a({item:t,source:o.source,onClick:function(e){i(t,e)}})),It.createElement(s,{hit:t},It.createElement("div",{className:"DocSearch-Hit-Container"},r({item:t,index:n}),t.hierarchy[t.type]&&"lvl1"===t.type&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement(ro,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.lvl1"}),t.content&&It.createElement(ro,{className:"DocSearch-Hit-path",hit:t,attribute:"content"})),"askAI"===t.type&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement("span",{className:"DocSearch-Hit-title"},Li(t.hierarchy.lvl1||""))),t.hierarchy[t.type]&&("lvl2"===t.type||"lvl3"===t.type||"lvl4"===t.type||"lvl5"===t.type||"lvl6"===t.type)&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement(ro,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.".concat(t.type)}),It.createElement(ro,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),"content"===t.type&&It.createElement("div",{className:"DocSearch-Hit-content-wrapper"},It.createElement(ro,{className:"DocSearch-Hit-title",hit:t,attribute:"content"}),It.createElement(ro,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),u({item:t}))))}function oo(e){var t=e.item,n=e.getItemProps,r=e.onItemClick,u=e.translations,a=e.collection,i=hn(e,uo),o=u||{},s=o.askAiPlaceholder,c=void 0===s?"Ask AI: ":s,l=o.noResultsAskAiPlaceholder,f=void 0===l?"Didn't find it in the docs? Ask AI to help: ":l,d=1===i.state.collections.length?f:c;return It.createElement("li",sn({className:"DocSearch-Hit"},n({item:t,source:a.source,onClick:function(e){r(t,e)}})),It.createElement("div",{className:"DocSearch-Hit--AskAI"},It.createElement("div",{className:"DocSearch-Hit-AskAIButton DocSearch-Hit-Container"},It.createElement("div",{className:" DocSearch-Hit-AskAIButton-icon DocSearch-Hit-icon"},It.createElement(ua,null)),It.createElement("div",{className:"DocSearch-Hit-AskAIButton-title"},It.createElement("span",{className:"DocSearch-Hit-AskAIButton-title-highlight"},d),It.createElement("mark",{className:"DocSearch-Hit-AskAIButton-title-query"},String(t.query||""))))))}var so=["onAskAiToggle"];function co(e){var t=e.onAskAiToggle,n=hn(e,so),r=It.useMemo(function(){return n.state.collections[2]},[n.state]);return It.useEffect(function(){r&&0!==r.items.length||t(!0)},[r,t]),It.createElement("div",{className:"DocSearch-Dropdown-Container DocSearch-Conversation-History"},It.createElement(ao,sn({},n,{key:r.source.sourceId,title:"",translations:n.translations,collection:r,renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(ua,null))},renderAction:function(e){var t=e.item;return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{type:"button",className:"DocSearch-Hit-action-button",onClick:function(e){e.preventDefault(),e.stopPropagation(),n.conversations.remove(t),n.refresh()}},It.createElement(ia,null)))}})))}function lo(e){var t=e.translations,n=void 0===t?{}:t,r=n.titleText,u=void 0===r?"Unable to fetch results":r,a=n.helpText,i=void 0===a?"You might want to check your network connection.":a;return It.createElement("div",{className:"DocSearch-ErrorScreen"},It.createElement("div",{className:"DocSearch-Screen-Icon"},It.createElement(va,null)),It.createElement("p",{className:"DocSearch-Title"},u),It.createElement("p",{className:"DocSearch-Help"},i))}function fo(e){var t=e.translations,n=void 0===t?{}:t,r=e.suggestedQuestions,u=void 0===r?[]:r,a=e.selectSuggestedQuestion,i=n.newConversationTitle,o=void 0===i?"How can I help you today?":i,s=n.newConversationDescription,c=void 0===s?"I search through your documentation to help you find setup guides, feature details and troubleshooting tips, fast.":s;return It.createElement("div",{className:"DocSearch-NewConversationScreen"},It.createElement("h3",{className:"DocSearch-NewConversationScreen-Title"},o),It.createElement("p",{className:"DocSearch-NewConversationScreen-Description"},c),It.createElement("div",{className:"DocSearch-NewConversationScreen-SuggestedQuestions"},u.map(function(e){return It.createElement("button",{key:e.objectID,type:"button",className:"DocSearch-NewConversationScreen-SuggestedQuestion",onClick:function(){return a(e)}},e.question)})))}var po=["translations"];function ho(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,po),u=n.noResultsText,a=void 0===u?"No results found for":u,i=n.suggestedQueryText,o=void 0===i?"Try searching for":i,s=n.reportMissingResultsText,c=void 0===s?"Believe this query should return results?":s,l=n.reportMissingResultsLinkText,f=void 0===l?"Let us know.":l,d=r.state.context.searchSuggestions;return It.createElement("div",{className:"DocSearch-NoResults ".concat(r.canHandleAskAi?"DocSearch-NoResults--withAskAi":"")},It.createElement("div",{className:"DocSearch-Screen-Icon"},It.createElement(ma,null)),It.createElement("p",{className:"DocSearch-Title"},a,' "',It.createElement("strong",null,r.state.query),'"'),d&&d.length>0&&It.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},It.createElement("p",{className:"DocSearch-Help"},o,":"),It.createElement("div",{className:"DocSearch-NoResults-Prefill-List-Items"},d.slice(0,3).reduce(function(e,t){return[].concat(gn(e),[It.createElement("p",{key:t},It.createElement(wn,{size:16}),It.createElement("button",{className:"DocSearch-Prefill",key:t,type:"button",onClick:function(){r.setQuery(t.toLowerCase()+" "),r.refresh(),r.inputRef.current.focus()}},t))])},[]))),r.getMissingResultsUrl&&It.createElement("p",{className:"DocSearch-Help"},"".concat(c," "),It.createElement("a",{href:r.getMissingResultsUrl({query:r.state.query}),target:"_blank",rel:"noopener noreferrer"},f)))}var vo=["translations"];function mo(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,vo);return It.createElement("div",{className:"DocSearch-Dropdown-Container"},r.state.collections.map(function(e){if(0===e.items.length)return null;var t=jn(e.items[0]);return It.createElement(ao,sn({},r,{key:e.source.sourceId,translations:n,title:t,collection:e,renderIcon:function(t){var n,r=t.item,u=t.index;return It.createElement(It.Fragment,null,r.__docsearch_parent&&It.createElement("svg",{className:"DocSearch-Hit-Tree",viewBox:"0 0 24 54"},It.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},r.__docsearch_parent!==(null===(n=e.items[u+1])||void 0===n?void 0:n.__docsearch_parent)?It.createElement("path",{d:"M8 6v21M20 27H8.3"}):It.createElement("path",{d:"M8 6v42M20 27H8.3"}))),It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(la,{type:r.type})))},renderAction:function(){return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement(sa,null))}}))}),r.resultsFooterComponent&&It.createElement("section",{className:"DocSearch-HitsFooter"},It.createElement(r.resultsFooterComponent,{state:r.state})))}var Do=["translations"];function yo(e){var t=e.translations,n=void 0===t?{}:t,r=hn(e,Do),u=n.recentSearchesTitle,a=void 0===u?"Recent":u,i=n.saveRecentSearchButtonTitle,o=void 0===i?"Save this search":i,s=n.removeRecentSearchButtonTitle,c=void 0===s?"Remove this search from history":s,l=n.favoriteSearchesTitle,f=void 0===l?"Favorite":l,d=n.removeFavoriteSearchButtonTitle,p=void 0===d?"Remove this search from favorites":d,h=n.recentConversationsTitle,v=void 0===h?"Recent conversations":h,m=n.removeRecentConversationButtonTitle,D=void 0===m?"Remove this conversation from history":m;return It.createElement("div",{className:"DocSearch-Dropdown-Container"},It.createElement(ao,sn({},r,{title:a,collection:r.state.collections[0],renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(aa,null))},renderAction:function(e){var t=e.item;return It.createElement(It.Fragment,null,It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:o,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.favoriteSearches.add(t),r.recentSearches.remove(t),r.refresh()}},It.createElement(pa,null))),It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:c,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.recentSearches.remove(t),r.refresh()}},It.createElement(ia,null))))}})),It.createElement(ao,sn({},r,{title:f,collection:r.state.collections[1],renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(pa,null))},renderAction:function(e){var t=e.item;return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:p,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.favoriteSearches.remove(t),r.refresh()}},It.createElement(ia,null)))}})),It.createElement(ao,sn({},r,{title:v,collection:r.state.collections[2],renderIcon:function(){return It.createElement("div",{className:"DocSearch-Hit-icon"},It.createElement(ua,null))},renderAction:function(e){var t=e.item;return It.createElement("div",{className:"DocSearch-Hit-action"},It.createElement("button",{className:"DocSearch-Hit-action-button",title:D,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.conversations.remove(t),r.refresh()}},It.createElement(ia,null)))}})))}var go=["translations"],Fo=It.memo(function(e){var t,n=e.translations,r=void 0===n?{}:n,u=hn(e,go);return u.canHandleAskAi&&u.isAskAiActive&&"conversation-history"===u.askAiState?It.createElement(co,u):u.canHandleAskAi&&u.isAskAiActive&&"new-conversation"===u.askAiState?It.createElement(fo,{translations:null==r?void 0:r.newConversation,selectSuggestedQuestion:u.selectSuggestedQuestion,suggestedQuestions:u.suggestedQuestions}):u.isAskAiActive&&u.canHandleAskAi?It.createElement(Qi,sn({},u,{messages:u.messages,status:u.status,askAiError:u.askAiError,translations:null==r?void 0:r.askAiScreen,agentStudio:u.agentStudio})):"error"===(null===(t=u.state)||void 0===t?void 0:t.status)?It.createElement(lo,{translations:null==r?void 0:r.errorScreen}):u.state.query?u.hasCollections||u.canHandleAskAi?It.createElement(It.Fragment,null,It.createElement(mo,sn({},u,{translations:null==r?void 0:r.resultsScreen})),u.canHandleAskAi&&1===u.state.collections.length&&It.createElement(ho,sn({},u,{translations:null==r?void 0:r.noResultsScreen}))):It.createElement(ho,sn({},u,{translations:null==r?void 0:r.noResultsScreen})):It.createElement(yo,sn({},u,{hasCollections:u.hasCollections,translations:null==r?void 0:r.startScreen}))},function(e,t){return"loading"===t.state.status||"stalled"===t.state.status});function Eo(e){var t=e.size,n=void 0===t?20:t,r=e.color,u=void 0===r?"currentColor":r;return It.createElement("svg",{width:n,height:n,className:"DocSearch-Back-Icon",viewBox:"0 0 24 24",fill:"none",stroke:u,strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true"},It.createElement("path",{d:"m12 19-7-7 7-7"}),It.createElement("path",{d:"M19 12H5"}))}var _o=["children","className","onClick"],bo=It.createContext({open:!1,setOpen:function(e){}});function Co(e){var t=e.children,n=yn(It.useState(!1),2),r=n[0],u=n[1],a=It.useRef(null);return It.useEffect(function(){function e(e){var t;null!==(t=a.current)&&void 0!==t&&t.contains(e.target)||u(!1)}return r&&window.addEventListener("click",e),function(){window.removeEventListener("click",e)}},[r]),It.createElement(bo.Provider,{value:{open:r,setOpen:u}},It.createElement("div",{ref:a,className:"DocSearch-Menu"},t))}function ko(e){var t=e.heading,n=e.shimmer,r=void 0!==n&&n;return It.createElement("span",{className:"DocSearch-Modal-heading".concat(r?" shimmer":"")},t)}Co.Trigger=function(e){var t=e.children,n=e.className,r=void 0===n?"":n,u=e.disabled,a=It.useContext(bo),i=a.open,o=a.setOpen;return It.createElement("button",{type:"button",className:"DocSearch-Menu-trigger ".concat(r).concat(u?" disabled":""),"aria-disabled":u,onClick:function(){u||o(!i)}},t)},Co.Content=function(e){var t=e.children,n=It.useContext(bo).open;return It.createElement("div",{className:"DocSearch-Menu-content".concat(n?" open":"")},t)},Co.Item=function(e){var t=e.children,n=e.className,r=void 0===n?"":n,u=e.onClick,a=hn(e,_o),i=It.useContext(bo).setOpen;return It.createElement("button",sn({type:"button",className:"DocSearch-Menu-item ".concat(r),onClick:function(e){u&&(u(e),i(!1))}},a),t)};var Ao=["translations","askAiState","onAskAiToggle","setAskAiState"];function wo(e){var t=e.translations,n=void 0===t?{}:t,r=e.askAiState,u=e.onAskAiToggle,a=e.setAskAiState,i=hn(e,Ao),o=n.clearButtonTitle,s=void 0===o?"Clear":o,c=n.clearButtonAriaLabel,l=void 0===c?"Clear the query":c,f=n.closeButtonText,d=void 0===f?"Close":f,p=n.closeButtonAriaLabel,h=void 0===p?"Close":p,v=n.searchInputLabel,m=void 0===v?"Search":v,D=n.backToKeywordSearchButtonText,y=void 0===D?"Back to keyword search":D,g=n.backToKeywordSearchButtonAriaLabel,F=void 0===g?"Back to keyword search":g,E=n.placeholderTextAskAiStreaming,_=void 0===E?"Answering...":E,b=n.newConversationPlaceholder,C=void 0===b?"Ask a question":b,k=n.conversationHistoryTitle,A=void 0===k?"My conversation history":k,w=n.startNewConversationText,S=void 0===w?"Start a new conversation":w,x=n.viewConversationHistoryText,O=void 0===x?"Conversation history":x,B=n.threadDepthErrorPlaceholder,I=void 0===B?"Conversation limit reached":B,T=i.getFormProps({inputElement:i.inputRef.current}).onReset;It.useEffect(function(){i.autoFocus&&i.inputRef.current&&i.inputRef.current.focus()},[i.autoFocus,i.inputRef]),It.useEffect(function(){i.isFromSelection&&i.inputRef.current&&i.inputRef.current.select()},[i.isFromSelection,i.inputRef]);var P=It.useMemo(function(){var e=i.state.collections[2];return!!e&&e.items.length>0},[i.state.collections]),j=i.getInputProps({inputElement:i.inputRef.current,autoFocus:i.autoFocus,maxLength:512}),N=new Set(["ArrowUp","ArrowDown","Enter"]),z=j.onKeyDown,R=j.onChange,M="streaming"===i.askAiStatus||"submitted"===i.askAiStatus,Z="stalled"===i.state.status,L=i.isAskAiActive&&"conversation-history"!==r,$=i.isThreadDepthError||!1,q=i.placeholder;"new-conversation"===r&&(q=C),$&&i.isAskAiActive&&(q=I);var U=null;M&&(U=_),"conversation-history"===r&&(U=A),It.useEffect(function(){"streaming"!==i.askAiStatus&&"submitted"!==i.askAiStatus&&i.inputRef.current&&i.inputRef.current.focus()},[i.askAiStatus,i.inputRef]);var H=pn(pn({},j),{},{enterKeyHint:i.isAskAiActive?"enter":"search",onKeyDown:function(e){if(i.isAskAiActive&&N.has(e.key))return"Enter"===e.key&&!M&&i.state.query&&i.onAskAgain(i.state.query),e.preventDefault(),void e.stopPropagation();null==z||z(e)},onChange:function(e){if(i.isAskAiActive)return i.setQuery(e.currentTarget.value),e.preventDefault(),void e.stopPropagation();null==R||R(e)},disabled:M||$&&i.isAskAiActive}),V=It.useCallback(function(){if(!$)return"conversation-history"===r?(u(!0),void a("initial")):void u(!1);i.onNewConversation()},[r,$,u,a,i]);return It.createElement(It.Fragment,null,It.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:T},i.isAskAiActive?It.createElement(It.Fragment,null,It.createElement("button",{type:"button",tabIndex:0,className:"DocSearch-Action DocSearch-AskAi-Return",title:y,"aria-label":F,onClick:V},It.createElement(Eo,null))):It.createElement(It.Fragment,null,Z&&It.createElement("div",{className:"DocSearch-LoadingIndicator"},It.createElement(ra,null)),!Z&&It.createElement("label",sn({className:"DocSearch-MagnifierLabel"},i.getLabelProps()),It.createElement(wn,null),It.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},m))),U&&It.createElement(ko,{heading:U,shimmer:M}),It.createElement("input",sn({className:"DocSearch-Input",ref:i.inputRef},H,{placeholder:q,hidden:Boolean(U)})),It.createElement("div",{className:"DocSearch-Actions"},It.createElement("button",{className:"DocSearch-Clear",type:"reset","aria-label":l,hidden:!i.state.query,tabIndex:i.state.query?0:-1,"aria-hidden":i.state.query?"false":"true"},s),i.state.query&&It.createElement("div",{className:"DocSearch-Divider"}),M&&It.createElement(It.Fragment,null,It.createElement("button",{type:"button",className:"DocSearch-Action DocSearch-StopStreaming",onClick:i.onStopAskAiStreaming},It.createElement(ha,null)),It.createElement("div",{className:"DocSearch-Divider"})),L&&It.createElement(It.Fragment,null,It.createElement(Co,null,It.createElement(Co.Trigger,{className:"DocSearch-Action"},It.createElement(Da,null)),It.createElement(Co.Content,null,It.createElement(Co.Item,{onClick:i.onNewConversation},It.createElement(ga,null),S),P&&It.createElement(Co.Item,{onClick:i.onViewConversationHistory},It.createElement(ya,null),O))),It.createElement("div",{className:"DocSearch-Divider"})),It.createElement("button",{type:"button",title:d,className:"DocSearch-Action DocSearch-Close","aria-label":h,onClick:i.onClose},It.createElement(ia,null)))))}function So(){if("undefined"!=typeof window&&window.localStorage){var e=[];for(var t in window.localStorage)if(t.includes("__DOCSEARCH_")){var n=window.localStorage[t];e.push({key:t,size:n.length+t.length})}e.sort(function(e,t){return t.size-e.size});for(var r=Math.ceil(e.length/2),u=0;u-1&&a.splice(i,1),a.unshift(n),a=a.slice(0,r),u.setItem(a)},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getAll:function(){return a}}}function Io(e){var t=e.key,n=e.limit,r=void 0===n?5:n,u=xo(t),a=u.getItem().slice(0,r);return{add:function(e){var t=e.objectID,n=e.query,i=a.findIndex(function(e){return e.objectID===t||e.query===n});i>-1?a[i]=e:(a.unshift(e),a=a.slice(0,r)),u.setItem(a)},addFeedback:function(e,t){var n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(n&&n.messages){var r=n.messages.find(function(t){return t.id===e});r&&(r.feedback=t,u.setItem(a))}},getOne:function(e){var t,n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});return null==n||null===(t=n.messages)||void 0===t?void 0:t.find(function(t){return t.id===e})},getAll:function(){return a},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getConversation:function(e){var t=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(t&&t.messages)return t}}}var To,Po="vercel.ai.error",jo=Symbol.for(Po),No=function(e){function t(e){var n,r=e.name,i=e.message,o=e.cause;return a(this,t),(n=u(this,t,[i]))[To]=!0,n.name=r,n.cause=o,n}return f(t,e),o(t,null,[{key:"isInstance",value:function(e){return t.hasMarker(e,Po)}},{key:"hasMarker",value:function(e,t){var n=Symbol.for(t);return null!=e&&"object"==_(e)&&n in e&&"boolean"==typeof e[n]&&!0===e[n]}}])}(C(Error));To=jo;var zo=No;function Ro(e){return null==e?"unknown error":"string"==typeof e?e:e instanceof Error?e.message:JSON.stringify(e)}var Mo,Zo="AI_InvalidArgumentError",Lo="vercel.ai.error.".concat(Zo),$o=Symbol.for(Lo),qo=function(e){function t(e){var n,r=e.message,i=e.cause,o=e.argument;return a(this,t),(n=u(this,t,[{name:Zo,message:r,cause:i}]))[Mo]=!0,n.argument=o,n}return f(t,e),o(t,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Lo)}}])}(zo);Mo=$o;var Uo,Ho="AI_JSONParseError",Vo="vercel.ai.error.".concat(Ho),Wo=Symbol.for(Vo),Ko=function(e){function t(e){var n,r=e.text,i=e.cause;return a(this,t),(n=u(this,t,[{name:Ho,message:"JSON parsing failed: Text: ".concat(r,".\nError message: ").concat(Ro(i)),cause:i}]))[Uo]=!0,n.text=r,n}return f(t,e),o(t,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Vo)}}])}(zo);Uo=Wo;var Jo,Qo="AI_TypeValidationError",Go="vercel.ai.error.".concat(Qo),Yo=Symbol.for(Go);Jo=Yo;var Xo=function(e){function t(e){var n,r=e.value,i=e.cause;return a(this,t),(n=u(this,t,[{name:Qo,message:"Type validation failed: Value: ".concat(JSON.stringify(r),".\nError message: ").concat(Ro(i)),cause:i}]))[Jo]=!0,n.value=r,n}return f(t,e),o(t,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Go)}},{key:"wrap",value:function(e){var n=e.value,r=e.cause;return t.isInstance(r)&&r.value===n?r:new t({value:n,cause:r})}}])}(zo),es=function(){function e(t,n){var r;return tn(this,e),(r=en(this,e,[t])).name="ParseError",r.type=n.type,r.field=n.field,r.value=n.value,r.line=n.line,r}return ln(e,bn(Error)),un(e)}();function ts(e){}var ns=function(){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=n.onError,u=n.onRetry,a=n.onComment;return tn(this,e),en(this,e,[{start:function(e){t=function(e){if("function"==typeof e)throw new TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");var t,n=e.onEvent,r=void 0===n?ts:n,u=e.onError,a=void 0===u?ts:u,i=e.onRetry,o=void 0===i?ts:i,s=e.onComment,c="",l=!0,f="",d="";function p(e){if(""===e)return f.length>0&&r({id:t,event:d||void 0,data:f.endsWith("\n")?f.slice(0,-1):f}),t=void 0,f="",void(d="");if(e.startsWith(":"))s&&s(e.slice(e.startsWith(": ")?2:1));else{var n=e.indexOf(":");if(-1===n)h(e,"",e);else{var u=e.slice(0,n),a=" "===e[n+1]?2:1;h(u,e.slice(n+a),e)}}}function h(e,n,r){switch(e){case"event":d=n;break;case"data":f="".concat(f).concat(n,"\n");break;case"id":t=n.includes("\0")?void 0:n;break;case"retry":/^\d+$/.test(n)?o(parseInt(n,10)):a(new es('Invalid `retry` value: "'.concat(n,'"'),{type:"invalid-retry",value:n,line:r}));break;default:a(new es('Unknown field "'.concat(e.length>20?"".concat(e.slice(0,20),"…"):e,'"'),{type:"unknown-field",field:e,value:n,line:r}))}}return{feed:function(e){var t,n=l?e.replace(/^\xEF\xBB\xBF/,""):e,r=function(e){for(var t=[],n="",r=0;r0&&void 0!==arguments[0]?arguments[0]:{}).consume&&p(c),l=!0,t=void 0,f="",d="",c=""}}}({onEvent:function(t){e.enqueue(t)},onError:function(t){"terminate"===r?e.error(t):"function"==typeof r&&r(t)},onRetry:u,onComment:a})},transform:function(e){t.feed(e)}}])}return ln(e,bn(TransformStream)),un(e)}();function rs(e,t,n){var r;function u(n,r){var u,a,o;for(var s in Object.defineProperty(n,"_zod",{value:null!==(u=n._zod)&&void 0!==u?u:{},enumerable:!1}),null!==(a=(o=n._zod).traits)&&void 0!==a||(o.traits=new Set),n._zod.traits.add(e),t(n,r),i.prototype)s in n||Object.defineProperty(n,s,{value:i.prototype[s].bind(n)});n._zod.constr=i,n._zod.def=r}var a=function(e){function t(){return tn(this,t),en(this,t,arguments)}return ln(t,e),un(t)}(null!==(r=null==n?void 0:n.Parent)&&void 0!==r?r:Object);function i(e){var t,r,i=null!=n&&n.Parent?new a:this;u(i,e),null!==(t=(r=i._zod).deferred)&&void 0!==t||(r.deferred=[]);var o,s=an(i._zod.deferred);try{for(s.s();!(o=s.n()).done;)(0,o.value)()}catch(e){s.e(e)}finally{s.f()}return i}return Object.defineProperty(a,"name",{value:e}),Object.defineProperty(i,"init",{value:u}),Object.defineProperty(i,Symbol.hasInstance,{value:function(t){var r;return!!(null!=n&&n.Parent&&t instanceof n.Parent)||(null==t||null===(r=t._zod)||void 0===r||null===(r=r.traits)||void 0===r?void 0:r.has(e))}}),Object.defineProperty(i,"name",{value:e}),i}var us=function(){function e(){return tn(this,e),en(this,e,["Encountered Promise during synchronous parse. Use .parseAsync() instead."])}return ln(e,bn(Error)),un(e)}(),as=function(){function e(t){var n;return tn(this,e),(n=en(this,e,["Encountered unidirectional transform during encode: ".concat(t)])).name="ZodEncodeError",n}return ln(e,bn(Error)),un(e)}(),is={};function os(e){return is}function ss(e){var t=Object.values(e).filter(function(e){return"number"==typeof e}),n=Object.entries(e).filter(function(e){var n=yn(e,2),r=n[0];return n[1],-1===t.indexOf(+r)}).map(function(e){var t=yn(e,2);return t[0],t[1]});return n}function cs(e,t){return"bigint"==typeof t?t.toString():t}function ls(e){return{get value(){var t=e();return Object.defineProperty(this,"value",{value:t}),t}}}function fs(e){return null==e}function ds(e){var t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}var ps=Symbol("evaluating");function hs(e,t,n){var r=void 0;Object.defineProperty(e,t,{get:function(){if(r!==ps)return void 0===r&&(r=ps,r=n()),r},set:function(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function vs(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ms(){for(var e={},t=arguments.length,n=new Array(t),r=0;r1&&void 0!==arguments[1]?arguments[1]:0;if(!0===e.aborted)return!0;for(var n=t;nu&&(t.inclusive?r.minimum=t.value:r.exclusiveMinimum=t.value)}),e._zod.check=function(r){(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ec=rs("$ZodCheckMultipleOf",function(e,t){Dc.init(e,t),e._zod.onattach.push(function(e){var n,r;null!==(n=(r=e._zod.bag).multipleOf)&&void 0!==n||(r.multipleOf=t.value)}),e._zod.check=function(n){if(En(n.value)!==En(t.value))throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){var n=(e.toString().split(".")[1]||"").length,r=t.toString(),u=(r.split(".")[1]||"").length;if(0===u&&/\d?e-\d?/.test(r)){var a=r.match(/\d?e-(\d?)/);null!=a&&a[1]&&(u=Number.parseInt(a[1]))}var i=n>u?n:u;return Number.parseInt(e.toFixed(i).replace(".",""))%Number.parseInt(t.toFixed(i).replace(".",""))/Math.pow(10,i)}(n.value,t.value))||n.issues.push({origin:En(n.value),code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),_c=rs("$ZodCheckNumberFormat",function(e,t){var n;Dc.init(e,t),t.format=t.format||"float64";var r=null===(n=t.format)||void 0===n?void 0:n.includes("int"),u=r?"int":"number",a=yn(ws[t.format],2),i=a[0],o=a[1];e._zod.onattach.push(function(e){var n=e._zod.bag;n.format=t.format,n.minimum=i,n.maximum=o,r&&(n.pattern=fc)}),e._zod.check=function(n){var a=n.value;if(r){if(!Number.isInteger(a))return void n.issues.push({expected:u,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});if(!Number.isSafeInteger(a))return void(a>0?n.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:u,continue:!t.abort}):n.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:u,continue:!t.abort}))}ao&&n.issues.push({origin:"number",input:a,code:"too_big",maximum:o,inst:e})}}),bc=rs("$ZodCheckMaxSize",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;r.size>=t.minimum||n.issues.push({origin:Is(r),code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),kc=rs("$ZodCheckSizeEquals",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.size,n.maximum=t.size,n.size=t.size}),e._zod.check=function(n){var r=n.value,u=r.size;if(u!==t.size){var a=u>t.size;n.issues.push(pn(pn({origin:Is(r)},a?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),Ac=rs("$ZodCheckMaxLength",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;if(!(r.length>=t.minimum)){var u=Ts(r);n.issues.push({origin:u,code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}}),Sc=rs("$ZodCheckLengthEquals",function(e,t){var n,r;Dc.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!fs(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=function(n){var r=n.value,u=r.length;if(u!==t.length){var a=Ts(r),i=u>t.length;n.issues.push(pn(pn({origin:a},i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),xc=rs("$ZodCheckStringFormat",function(e,t){var n,r,u,a;Dc.init(e,t),e._zod.onattach.push(function(e){var n,r=e._zod.bag;r.format=t.format,t.pattern&&(null!==(n=r.patterns)&&void 0!==n||(r.patterns=new Set),r.patterns.add(t.pattern))}),t.pattern?null!==(n=(u=e._zod).check)&&void 0!==n||(u.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push(pn(pn({origin:"string",code:"invalid_format",format:t.format,input:n.value},t.pattern?{pattern:t.pattern.toString()}:{}),{},{inst:e,continue:!t.abort}))}):null!==(r=(a=e._zod).check)&&void 0!==r||(a.check=function(){})}),Oc=rs("$ZodCheckRegex",function(e,t){xc.init(e,t),e._zod.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Bc=rs("$ZodCheckLowerCase",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=vc),xc.init(e,t)}),Ic=rs("$ZodCheckUpperCase",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=mc),xc.init(e,t)}),Tc=rs("$ZodCheckIncludes",function(e,t){Dc.init(e,t);var n=Cs(t.includes),r=new RegExp("number"==typeof t.position?"^.{".concat(t.position,"}").concat(n):n);t.pattern=r,e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Pc=rs("$ZodCheckStartsWith",function(e,t){var n;Dc.init(e,t);var r=new RegExp("^".concat(Cs(t.prefix),".*"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),jc=rs("$ZodCheckEndsWith",function(e,t){var n;Dc.init(e,t);var r=new RegExp(".*".concat(Cs(t.suffix),"$"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});function Nc(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,gn(xs(n,e.issues)))}var zc=rs("$ZodCheckProperty",function(e,t){Dc.init(e,t),e._zod.check=function(e){var n=t.schema._zod.run({value:e.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(function(n){return Nc(n,e,t.property)});Nc(n,e,t.property)}}),Rc=rs("$ZodCheckMimeType",function(e,t){Dc.init(e,t);var n=new Set(t.mime);e._zod.onattach.push(function(e){e._zod.bag.mime=t.mime}),e._zod.check=function(r){n.has(r.value.type)||r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Mc=rs("$ZodCheckOverwrite",function(e,t){Dc.init(e,t),e._zod.check=function(e){e.value=t.tx(e.value)}}),Zc=un(function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];tn(this,e),this.content=[],this.indent=0,this&&(this.args=t)},[{key:"indented",value:function(e){this.indent+=1,e(this),this.indent-=1}},{key:"write",value:function(e){var t=this;if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});var n,r=e.split("\n").filter(function(e){return e}),u=Math.min.apply(Math,gn(r.map(function(e){return e.length-e.trimStart().length}))),a=r.map(function(e){return e.slice(u)}).map(function(e){return" ".repeat(2*t.indent)+e}),i=an(a);try{for(i.s();!(n=i.n()).done;){var o=n.value;this.content.push(o)}}catch(e){i.e(e)}finally{i.f()}}},{key:"compile",value:function(){var e,t=Function,n=null==this?void 0:this.args,r=gn((null!==(e=null==this?void 0:this.content)&&void 0!==e?e:[""]).map(function(e){return" ".concat(e)}));return nn(t,gn(n).concat([r.join("\n")]))}}]),Lc={major:4,minor:1,patch:12},$c=rs("$ZodType",function(e,t){var n,r;null!=e||(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Lc;var u=gn(null!==(n=e._zod.def.checks)&&void 0!==n?n:[]);e._zod.traits.has("$ZodCheck")&&u.unshift(e);var a,i=an(u);try{for(i.s();!(a=i.n()).done;){var o,s=an(a.value._zod.onattach);try{for(s.s();!(o=s.n()).done;)(0,o.value)(e)}catch(e){s.e(e)}finally{s.f()}}}catch(e){i.e(e)}finally{i.f()}if(0===u.length){var c,l;null!==(c=(r=e._zod).deferred)&&void 0!==c||(r.deferred=[]),null===(l=e._zod.deferred)||void 0===l||l.push(function(){e._zod.run=e._zod.parse})}else{var f=function(e,t,n){var r,u,a=Ss(e),i=an(t);try{var o=function(){var t=u.value;if(t._zod.def.when){if(!t._zod.def.when(e))return 0}else if(a)return 0;var i=e.issues.length,o=t._zod.check(e);if(o instanceof Promise&&!1===(null==n?void 0:n.async))throw new us;if(r||o instanceof Promise)r=(null!=r?r:Promise.resolve()).then(Xt(vn().m(function t(){return vn().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,o;case 1:if(e.issues.length!==i){t.n=2;break}return t.a(2);case 2:a||(a=Ss(e,i));case 3:return t.a(2)}},t)})));else{if(e.issues.length===i)return 0;a||(a=Ss(e,i))}};for(i.s();!(u=i.n()).done;)o()}catch(e){i.e(e)}finally{i.f()}return r?r.then(function(){return e}):e},d=function(t,n,r){if(Ss(t))return t.aborted=!0,t;var a=f(n,u,r);if(a instanceof Promise){if(!1===r.async)throw new us;return a.then(function(t){return e._zod.parse(t,r)})}return e._zod.parse(a,r)};e._zod.run=function(t,n){if(n.skipChecks)return e._zod.parse(t,n);if("backward"===n.direction){var r=e._zod.parse({value:t.value,issues:[]},pn(pn({},n),{},{skipChecks:!0}));return r instanceof Promise?r.then(function(e){return d(e,t,n)}):d(r,t,n)}var a=e._zod.parse(t,n);if(a instanceof Promise){if(!1===n.async)throw new us;return a.then(function(e){return f(e,u,n)})}return f(a,u,n)}}e["~standard"]={validate:function(t){try{var n,r=Ls(e,t);return r.success?{value:r.data}:{issues:null===(n=r.error)||void 0===n?void 0:n.issues}}catch(n){return qs(e,t).then(function(e){var t;return e.success?{value:e.data}:{issues:null===(t=e.error)||void 0===t?void 0:t.issues}})}},vendor:"zod",version:1}}),qc=rs("$ZodString",function(e,t){var n,r,u;$c.init(e,t),e._zod.pattern=null!==(n=gn(null!==(r=null==e||null===(u=e._zod.bag)||void 0===u?void 0:u.patterns)&&void 0!==r?r:[]).pop())&&void 0!==n?n:function(e){var t,n,r=e?"[\\s\\S]{".concat(null!==(t=null==e?void 0:e.minimum)&&void 0!==t?t:0,",").concat(null!==(n=null==e?void 0:e.maximum)&&void 0!==n?n:"","}"):"[\\s\\S]*";return new RegExp("^".concat(r,"$"))}(e._zod.bag),e._zod.parse=function(n,r){if(t.coerce)try{n.value=String(n.value)}catch(r){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),Uc=rs("$ZodStringFormat",function(e,t){xc.init(e,t),qc.init(e,t)}),Hc=rs("$ZodGUID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Gs),Uc.init(e,t)}),Vc=rs("$ZodUUID",function(e,t){var n;if(t.version){var r,u={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===u)throw new Error('Invalid UUID version: "'.concat(t.version,'"'));null!==(r=t.pattern)&&void 0!==r||(t.pattern=Ys(u))}else null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ys());Uc.init(e,t)}),Wc=rs("$ZodEmail",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Xs),Uc.init(e,t)}),Kc=rs("$ZodURL",function(e,t){Uc.init(e,t),e._zod.check=function(n){try{var r=n.value.trim(),u=new URL(r);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(u.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:ic.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(u.protocol.endsWith(":")?u.protocol.slice(0,-1):u.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=u.href:n.value=r)}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Jc=rs("$ZodEmoji",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Uc.init(e,t)}),Qc=rs("$ZodNanoID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Js),Uc.init(e,t)}),Gc=rs("$ZodCUID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Us),Uc.init(e,t)}),Yc=rs("$ZodCUID2",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Hs),Uc.init(e,t)}),Xc=rs("$ZodULID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Vs),Uc.init(e,t)}),el=rs("$ZodXID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ws),Uc.init(e,t)}),tl=rs("$ZodKSUID",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ks),Uc.init(e,t)}),nl=rs("$ZodISODateTime",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=function(e){var t=lc({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");var r="".concat(t,"(?:").concat(n.join("|"),")");return new RegExp("^".concat(sc,"T(?:").concat(r,")$"))}(t)),Uc.init(e,t)}),rl=rs("$ZodISODate",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=cc),Uc.init(e,t)}),ul=rs("$ZodISOTime",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp("^".concat(lc(t),"$"))),Uc.init(e,t)}),al=rs("$ZodISODuration",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Qs),Uc.init(e,t)}),il=rs("$ZodIPv4",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ec),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format="ipv4"})}),ol=rs("$ZodIPv6",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=tc),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format="ipv6"}),e._zod.check=function(n){try{new URL("http://[".concat(n.value,"]"))}catch(r){n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),sl=rs("$ZodCIDRv4",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=nc),Uc.init(e,t)}),cl=rs("$ZodCIDRv6",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=rc),Uc.init(e,t),e._zod.check=function(n){var r=n.value.split("/");try{if(2!==r.length)throw new Error;var u=yn(r,2),a=u[0],i=u[1];if(!i)throw new Error;var o=Number(i);if("".concat(o)!==i)throw new Error;if(o<0||o>128)throw new Error;new URL("http://[".concat(a,"]"))}catch(r){n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function ll(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch(e){return!1}}var fl=rs("$ZodBase64",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=uc),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding="base64"}),e._zod.check=function(n){ll(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}}),dl=rs("$ZodBase64URL",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ac),Uc.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding="base64url"}),e._zod.check=function(n){(function(e){if(!ac.test(e))return!1;var t=e.replace(/[-_]/g,function(e){return"-"===e?"+":"/"});return ll(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),pl=rs("$ZodE164",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=oc),Uc.init(e,t)}),hl=rs("$ZodJWT",function(e,t){Uc.init(e,t),e._zod.check=function(n){(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;try{var n=e.split(".");if(3!==n.length)return!1;var r=yn(n,1)[0];if(!r)return!1;var u=JSON.parse(atob(r));return!("typ"in u&&"JWT"!==(null==u?void 0:u.typ)||!u.alg||t&&(!("alg"in u)||u.alg!==t))}catch(e){return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),vl=rs("$ZodNumber",function(e,t){var n;$c.init(e,t),e._zod.pattern=null!==(n=e._zod.bag.pattern)&&void 0!==n?n:dc,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Number(n.value)}catch(e){}var u=n.value;if("number"==typeof u&&!Number.isNaN(u)&&Number.isFinite(u))return n;var a="number"==typeof u?Number.isNaN(u)?"NaN":Number.isFinite(u)?void 0:"Infinity":void 0;return n.issues.push(pn({expected:"number",code:"invalid_type",input:u,inst:e},a?{received:a}:{})),n}}),ml=rs("$ZodNumber",function(e,t){_c.init(e,t),vl.init(e,t)}),Dl=rs("$ZodBoolean",function(e,t){$c.init(e,t),e._zod.pattern=pc,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}var u=n.value;return"boolean"==typeof u||n.issues.push({expected:"boolean",code:"invalid_type",input:u,inst:e}),n}}),yl=rs("$ZodNull",function(e,t){$c.init(e,t),e._zod.pattern=hc,e._zod.values=new Set([null]),e._zod.parse=function(t,n){var r=t.value;return null===r||t.issues.push({expected:"null",code:"invalid_type",input:r,inst:e}),t}}),gl=rs("$ZodUnknown",function(e,t){$c.init(e,t),e._zod.parse=function(e){return e}}),Fl=rs("$ZodNever",function(e,t){$c.init(e,t),e._zod.parse=function(t,n){return t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t}});function El(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,gn(xs(n,e.issues))),t.value[n]=e.value}var _l=rs("$ZodArray",function(e,t){$c.init(e,t),e._zod.parse=function(n,r){var u=n.value;if(!Array.isArray(u))return n.issues.push({expected:"array",code:"invalid_type",input:u,inst:e}),n;n.value=Array(u.length);for(var a=[],i=function(e){var i=u[e],o=t.element._zod.run({value:i,issues:[]},r);o instanceof Promise?a.push(o.then(function(t){return El(t,n,e)})):El(o,n,e)},o=0;o ({\n ...iss,\n path: iss.path ? [").concat(p,", ...iss.path] : [").concat(p,"]\n })));\n }\n \n \n if (").concat(d,".value === undefined) {\n if (").concat(p," in input) {\n newResult[").concat(p,"] = undefined;\n }\n } else {\n newResult[").concat(p,"] = ").concat(d,".value;\n }\n \n "))}}catch(e){l.e(e)}finally{l.f()}t.write("payload.value = newResult;"),t.write("return payload;");var h=t.compile();return function(t,n){return h(e,t,n)}}(t.shape)),l=n(l,f),c?kl([],d,l,f,r,e):l):u(l,f):(l.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),l)}});function Sl(e,t,n,r){var u,a=an(e);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(0===i.issues.length)return t.value=i.value,t}}catch(e){a.e(e)}finally{a.f()}var o=e.filter(function(e){return!Ss(e)});return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(function(e){return e.issues.map(function(e){return Bs(e,r,os())})})}),t)}var xl=rs("$ZodUnion",function(e,t){$c.init(e,t),hs(e._zod,"optin",function(){return t.options.some(function(e){return"optional"===e._zod.optin})?"optional":void 0}),hs(e._zod,"optout",function(){return t.options.some(function(e){return"optional"===e._zod.optout})?"optional":void 0}),hs(e._zod,"values",function(){if(t.options.every(function(e){return e._zod.values}))return new Set(t.options.flatMap(function(e){return Array.from(e._zod.values)}))}),hs(e._zod,"pattern",function(){if(t.options.every(function(e){return e._zod.pattern})){var e=t.options.map(function(e){return e._zod.pattern});return new RegExp("^(".concat(e.map(function(e){return ds(e.source)}).join("|"),")$"))}});var n=1===t.options.length,r=t.options[0]._zod.run;e._zod.parse=function(u,a){if(n)return r(u,a);var i,o=!1,s=[],c=an(t.options);try{for(c.s();!(i=c.n()).done;){var l=i.value._zod.run({value:u.value,issues:[]},a);if(l instanceof Promise)s.push(l),o=!0;else{if(0===l.issues.length)return l;s.push(l)}}}catch(e){c.e(e)}finally{c.f()}return o?Promise.all(s).then(function(t){return Sl(t,u,e,a)}):Sl(s,u,e,a)}}),Ol=rs("$ZodDiscriminatedUnion",function(e,t){xl.init(e,t);var n=e._zod.parse;hs(e._zod,"propValues",function(){var e,n={},r=an(t.options);try{for(r.s();!(e=r.n()).done;){var u=e.value,a=u._zod.propValues;if(!a||0===Object.keys(a).length)throw new Error('Invalid discriminated union option at index "'.concat(t.options.indexOf(u),'"'));for(var i=0,o=Object.entries(a);i0&&n.issues.push({code:"unrecognized_keys",input:u,inst:e,keys:s})}else{n.value={};var d,p=an(Reflect.ownKeys(u));try{var h=function(){var i=d.value;if("__proto__"===i)return 0;var o=t.keyType._zod.run({value:i,issues:[]},r);if(o instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(o.issues.length)return n.issues.push({code:"invalid_key",origin:"record",issues:o.issues.map(function(e){return Bs(e,r,os())}),input:i,path:[i],inst:e}),n.value[o.value]=o.value,0;var s,c=t.valueType._zod.run({value:u[i],issues:[]},r);c instanceof Promise?a.push(c.then(function(e){var t;e.issues.length&&(t=n.issues).push.apply(t,gn(xs(i,e.issues))),n.value[o.value]=e.value})):(c.issues.length&&(s=n.issues).push.apply(s,gn(xs(i,c.issues))),n.value[o.value]=c.value)};for(p.s();!(d=p.n()).done;)h()}catch(e){p.e(e)}finally{p.f()}}return a.length?Promise.all(a).then(function(){return n}):n}}),jl=rs("$ZodEnum",function(e,t){$c.init(e,t);var n=ss(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp("^(".concat(n.filter(function(e){return bs.has(En(e))}).map(function(e){return"string"==typeof e?Cs(e):e.toString()}).join("|"),")$")),e._zod.parse=function(t,u){var a=t.value;return r.has(a)||t.issues.push({code:"invalid_value",values:n,input:a,inst:e}),t}}),Nl=rs("$ZodLiteral",function(e,t){if($c.init(e,t),0===t.values.length)throw new Error("Cannot create literal schema with no valid values");e._zod.values=new Set(t.values),e._zod.pattern=new RegExp("^(".concat(t.values.map(function(e){return"string"==typeof e?Cs(e):e?Cs(e.toString()):String(e)}).join("|"),")$")),e._zod.parse=function(n,r){var u=n.value;return e._zod.values.has(u)||n.issues.push({code:"invalid_value",values:t.values,input:u,inst:e}),n}}),zl=rs("$ZodTransform",function(e,t){$c.init(e,t),e._zod.parse=function(n,r){if("backward"===r.direction)throw new as(e.constructor.name);var u=t.transform(n.value,n);if(r.async)return(u instanceof Promise?u:Promise.resolve(u)).then(function(e){return n.value=e,n});if(u instanceof Promise)throw new us;return n.value=u,n}});function Rl(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}var Ml=rs("$ZodOptional",function(e,t){$c.init(e,t),e._zod.optin="optional",e._zod.optout="optional",hs(e._zod,"values",function(){return t.innerType._zod.values?new Set([].concat(gn(t.innerType._zod.values),[void 0])):void 0}),hs(e._zod,"pattern",function(){var e=t.innerType._zod.pattern;return e?new RegExp("^(".concat(ds(e.source),")?$")):void 0}),e._zod.parse=function(e,n){if("optional"===t.innerType._zod.optin){var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(t){return Rl(t,e.value)}):Rl(r,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}}),Zl=rs("$ZodNullable",function(e,t){$c.init(e,t),hs(e._zod,"optin",function(){return t.innerType._zod.optin}),hs(e._zod,"optout",function(){return t.innerType._zod.optout}),hs(e._zod,"pattern",function(){var e=t.innerType._zod.pattern;return e?new RegExp("^(".concat(ds(e.source),"|null)$")):void 0}),hs(e._zod,"values",function(){return t.innerType._zod.values?new Set([].concat(gn(t.innerType._zod.values),[null])):void 0}),e._zod.parse=function(e,n){return null===e.value?e:t.innerType._zod.run(e,n)}}),Ll=rs("$ZodDefault",function(e,t){$c.init(e,t),e._zod.optin="optional",hs(e._zod,"values",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(e){return $l(e,t)}):$l(r,t)}});function $l(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}var ql=rs("$ZodPrefault",function(e,t){$c.init(e,t),e._zod.optin="optional",hs(e._zod,"values",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){return"backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n)}}),Ul=rs("$ZodNonOptional",function(e,t){$c.init(e,t),hs(e._zod,"values",function(){var e=t.innerType._zod.values;return e?new Set(gn(e).filter(function(e){return void 0!==e})):void 0}),e._zod.parse=function(n,r){var u=t.innerType._zod.run(n,r);return u instanceof Promise?u.then(function(t){return Hl(t,e)}):Hl(u,e)}});function Hl(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var Vl=rs("$ZodCatch",function(e,t){$c.init(e,t),hs(e._zod,"optin",function(){return t.innerType._zod.optin}),hs(e._zod,"optout",function(){return t.innerType._zod.optout}),hs(e._zod,"values",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if("backward"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(r){return e.value=r.value,r.issues.length&&(e.value=t.catchValue(pn(pn({},e),{},{error:{issues:r.issues.map(function(e){return Bs(e,n,os())})},input:e.value})),e.issues=[]),e}):(e.value=r.value,r.issues.length&&(e.value=t.catchValue(pn(pn({},e),{},{error:{issues:r.issues.map(function(e){return Bs(e,n,os())})},input:e.value})),e.issues=[]),e)}}),Wl=rs("$ZodPipe",function(e,t){$c.init(e,t),hs(e._zod,"values",function(){return t.in._zod.values}),hs(e._zod,"optin",function(){return t.in._zod.optin}),hs(e._zod,"optout",function(){return t.out._zod.optout}),hs(e._zod,"propValues",function(){return t.in._zod.propValues}),e._zod.parse=function(e,n){if("backward"===n.direction){var r=t.out._zod.run(e,n);return r instanceof Promise?r.then(function(e){return Kl(e,t.in,n)}):Kl(r,t.in,n)}var u=t.in._zod.run(e,n);return u instanceof Promise?u.then(function(e){return Kl(e,t.out,n)}):Kl(u,t.out,n)}});function Kl(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Jl=rs("$ZodReadonly",function(e,t){$c.init(e,t),hs(e._zod,"propValues",function(){return t.innerType._zod.propValues}),hs(e._zod,"values",function(){return t.innerType._zod.values}),hs(e._zod,"optin",function(){return t.innerType._zod.optin}),hs(e._zod,"optout",function(){return t.innerType._zod.optout}),e._zod.parse=function(e,n){if("backward"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Ql):Ql(r)}});function Ql(e){return e.value=Object.freeze(e.value),e}var Gl=rs("$ZodLazy",function(e,t){$c.init(e,t),hs(e._zod,"innerType",function(){return t.getter()}),hs(e._zod,"pattern",function(){return e._zod.innerType._zod.pattern}),hs(e._zod,"propValues",function(){return e._zod.innerType._zod.propValues}),hs(e._zod,"optin",function(){var t;return null!==(t=e._zod.innerType._zod.optin)&&void 0!==t?t:void 0}),hs(e._zod,"optout",function(){var t;return null!==(t=e._zod.innerType._zod.optout)&&void 0!==t?t:void 0}),e._zod.parse=function(t,n){return e._zod.innerType._zod.run(t,n)}}),Yl=rs("$ZodCustom",function(e,t){Dc.init(e,t),$c.init(e,t),e._zod.parse=function(e,t){return e},e._zod.check=function(n){var r=n.value,u=t.fn(r);if(u instanceof Promise)return u.then(function(t){return Xl(t,n,r,e)});Xl(u,n,r,e)}});function Xl(e,t,n,r){if(!e){var u,a={code:"custom",input:n,inst:r,path:gn(null!==(u=r._zod.def.path)&&void 0!==u?u:[]),continue:!r._zod.def.abort};r._zod.def.params&&(a.params=r._zod.def.params),t.issues.push(Ps(a))}}var ef=un(function e(){tn(this,e),this._map=new WeakMap,this._idmap=new Map},[{key:"add",value:function(e){var t=arguments.length<=1?void 0:arguments[1];if(this._map.set(e,t),t&&"object"===En(t)&&"id"in t){if(this._idmap.has(t.id))throw new Error("ID ".concat(t.id," already exists in the registry"));this._idmap.set(t.id,e)}return this}},{key:"clear",value:function(){return this._map=new WeakMap,this._idmap=new Map,this}},{key:"remove",value:function(e){var t=this._map.get(e);return t&&"object"===En(t)&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}},{key:"get",value:function(e){var t=e._zod.parent;if(t){var n,r=pn({},null!==(n=this.get(t))&&void 0!==n?n:{});delete r.id;var u=pn(pn({},r),this._map.get(e));return Object.keys(u).length?u:void 0}return this._map.get(e)}},{key:"has",value:function(e){return this._map.has(e)}}]);var tf=new ef;function nf(e,t){return new e(pn({type:"string",format:"guid",check:"string_format",abort:!1},As(t)))}function rf(e,t){return new gc(pn(pn({check:"less_than"},As(t)),{},{value:e,inclusive:!1}))}function uf(e,t){return new gc(pn(pn({check:"less_than"},As(t)),{},{value:e,inclusive:!0}))}function af(e,t){return new Fc(pn(pn({check:"greater_than"},As(t)),{},{value:e,inclusive:!1}))}function of(e,t){return new Fc(pn(pn({check:"greater_than"},As(t)),{},{value:e,inclusive:!0}))}function sf(e,t){return new Ec(pn(pn({check:"multiple_of"},As(t)),{},{value:e}))}function cf(e,t){return new Ac(pn(pn({check:"max_length"},As(t)),{},{maximum:e}))}function lf(e,t){return new wc(pn(pn({check:"min_length"},As(t)),{},{minimum:e}))}function ff(e,t){return new Sc(pn(pn({check:"length_equals"},As(t)),{},{length:e}))}function df(e,t){return new Oc(pn(pn({check:"string_format",format:"regex"},As(t)),{},{pattern:e}))}function pf(e){return new Bc(pn({check:"string_format",format:"lowercase"},As(e)))}function hf(e){return new Ic(pn({check:"string_format",format:"uppercase"},As(e)))}function vf(e,t){return new Tc(pn(pn({check:"string_format",format:"includes"},As(t)),{},{includes:e}))}function mf(e,t){return new Pc(pn(pn({check:"string_format",format:"starts_with"},As(t)),{},{prefix:e}))}function Df(e,t){return new jc(pn(pn({check:"string_format",format:"ends_with"},As(t)),{},{suffix:e}))}function yf(e){return new Mc({check:"overwrite",tx:e})}function gf(e){return yf(function(t){return t.normalize(e)})}function Ff(){return yf(function(e){return e.trim()})}function Ef(){return yf(function(e){return e.toLowerCase()})}function _f(){return yf(function(e){return e.toUpperCase()})}var bf=un(function e(t){var n,r,u,a,i;tn(this,e),this.counter=0,this.metadataRegistry=null!==(n=null==t?void 0:t.metadata)&&void 0!==n?n:tf,this.target=null!==(r=null==t?void 0:t.target)&&void 0!==r?r:"draft-2020-12",this.unrepresentable=null!==(u=null==t?void 0:t.unrepresentable)&&void 0!==u?u:"throw",this.override=null!==(a=null==t?void 0:t.override)&&void 0!==a?a:function(){},this.io=null!==(i=null==t?void 0:t.io)&&void 0!==i?i:"output",this.seen=new Map},[{key:"process",value:function(e){var t,n,r,u,a=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{path:[],schemaPath:[]},o=e._zod.def,s=this.seen.get(e);if(s)return s.count++,i.schemaPath.includes(e)&&(s.cycle=i.path),s.schema;var c={schema:{},count:1,cycle:void 0,path:i.path};this.seen.set(e,c);var l=null===(t=(n=e._zod).toJSONSchema)||void 0===t?void 0:t.call(n);if(l)c.schema=l;else{var f=pn(pn({},i),{},{schemaPath:[].concat(gn(i.schemaPath),[e]),path:i.path}),d=e._zod.parent;if(d)c.ref=d,this.process(d,f),this.seen.get(d).isParent=!0;else{var p=c.schema;switch(o.type){case"string":var h=p;h.type="string";var v,m=e._zod.bag,D=m.minimum,y=m.maximum,g=m.format,F=m.patterns,E=m.contentEncoding;if("number"==typeof D&&(h.minLength=D),"number"==typeof y&&(h.maxLength=y),g&&(h.format=null!==(v={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""}[g])&&void 0!==v?v:g,""===h.format&&delete h.format),E&&(h.contentEncoding=E),F&&F.size>0){var _=gn(F);1===_.length?h.pattern=_[0].source:_.length>1&&(c.schema.allOf=gn(_.map(function(e){return pn(pn({},"draft-7"===a.target||"draft-4"===a.target||"openapi-3.0"===a.target?{type:"string"}:{}),{},{pattern:e.source})})))}break;case"number":var b=p,C=e._zod.bag,k=C.minimum,A=C.maximum,w=C.format,S=C.multipleOf,x=C.exclusiveMaximum,O=C.exclusiveMinimum;"string"==typeof w&&w.includes("int")?b.type="integer":b.type="number","number"==typeof O&&("draft-4"===this.target||"openapi-3.0"===this.target?(b.minimum=O,b.exclusiveMinimum=!0):b.exclusiveMinimum=O),"number"==typeof k&&(b.minimum=k,"number"==typeof O&&"draft-4"!==this.target&&(O>=k?delete b.minimum:delete b.exclusiveMinimum)),"number"==typeof x&&("draft-4"===this.target||"openapi-3.0"===this.target?(b.maximum=x,b.exclusiveMaximum=!0):b.exclusiveMaximum=x),"number"==typeof A&&(b.maximum=A,"number"==typeof x&&"draft-4"!==this.target&&(x<=A?delete b.maximum:delete b.exclusiveMaximum)),"number"==typeof S&&(b.multipleOf=S);break;case"boolean":case"success":p.type="boolean";break;case"bigint":if("throw"===this.unrepresentable)throw new Error("BigInt cannot be represented in JSON Schema");break;case"symbol":if("throw"===this.unrepresentable)throw new Error("Symbols cannot be represented in JSON Schema");break;case"null":"openapi-3.0"===this.target?(p.type="string",p.nullable=!0,p.enum=[null]):p.type="null";break;case"any":case"unknown":break;case"undefined":if("throw"===this.unrepresentable)throw new Error("Undefined cannot be represented in JSON Schema");break;case"void":if("throw"===this.unrepresentable)throw new Error("Void cannot be represented in JSON Schema");break;case"never":p.not={};break;case"date":if("throw"===this.unrepresentable)throw new Error("Date cannot be represented in JSON Schema");break;case"array":var B=p,I=e._zod.bag,T=I.minimum,P=I.maximum;"number"==typeof T&&(B.minItems=T),"number"==typeof P&&(B.maxItems=P),B.type="array",B.items=this.process(o.element,pn(pn({},f),{},{path:[].concat(gn(f.path),["items"])}));break;case"object":var j,N=p;N.type="object",N.properties={};var z=o.shape;for(var R in z)N.properties[R]=this.process(z[R],pn(pn({},f),{},{path:[].concat(gn(f.path),["properties",R])}));var M=new Set(Object.keys(z)),Z=new Set(gn(M).filter(function(e){var t=o.shape[e]._zod;return"input"===a.io?void 0===t.optin:void 0===t.optout}));Z.size>0&&(N.required=Array.from(Z)),"never"===(null===(j=o.catchall)||void 0===j?void 0:j._zod.def.type)?N.additionalProperties=!1:o.catchall?o.catchall&&(N.additionalProperties=this.process(o.catchall,pn(pn({},f),{},{path:[].concat(gn(f.path),["additionalProperties"])}))):"output"===this.io&&(N.additionalProperties=!1);break;case"union":var L=p,$=o.options.map(function(e,t){return a.process(e,pn(pn({},f),{},{path:[].concat(gn(f.path),["anyOf",t])}))});L.anyOf=$;break;case"intersection":var q=p,U=this.process(o.left,pn(pn({},f),{},{path:[].concat(gn(f.path),["allOf",0])})),H=this.process(o.right,pn(pn({},f),{},{path:[].concat(gn(f.path),["allOf",1])})),V=function(e){return"allOf"in e&&1===Object.keys(e).length},W=[].concat(gn(V(U)?U.allOf:[U]),gn(V(H)?H.allOf:[H]));q.allOf=W;break;case"tuple":var K=p;K.type="array";var J="draft-2020-12"===this.target?"prefixItems":"items",Q="draft-2020-12"===this.target||"openapi-3.0"===this.target?"items":"additionalItems",G=o.items.map(function(e,t){return a.process(e,pn(pn({},f),{},{path:[].concat(gn(f.path),[J,t])}))}),Y=o.rest?this.process(o.rest,pn(pn({},f),{},{path:[].concat(gn(f.path),[Q],gn("openapi-3.0"===this.target?[o.items.length]:[]))})):null;"draft-2020-12"===this.target?(K.prefixItems=G,Y&&(K.items=Y)):"openapi-3.0"===this.target?(K.items={anyOf:G},Y&&K.items.anyOf.push(Y),K.minItems=G.length,Y||(K.maxItems=G.length)):(K.items=G,Y&&(K.additionalItems=Y));var X=e._zod.bag,ee=X.minimum,te=X.maximum;"number"==typeof ee&&(K.minItems=ee),"number"==typeof te&&(K.maxItems=te);break;case"record":var ne=p;ne.type="object","draft-7"!==this.target&&"draft-2020-12"!==this.target||(ne.propertyNames=this.process(o.keyType,pn(pn({},f),{},{path:[].concat(gn(f.path),["propertyNames"])}))),ne.additionalProperties=this.process(o.valueType,pn(pn({},f),{},{path:[].concat(gn(f.path),["additionalProperties"])}));break;case"map":if("throw"===this.unrepresentable)throw new Error("Map cannot be represented in JSON Schema");break;case"set":if("throw"===this.unrepresentable)throw new Error("Set cannot be represented in JSON Schema");break;case"enum":var re=p,ue=ss(o.entries);ue.every(function(e){return"number"==typeof e})&&(re.type="number"),ue.every(function(e){return"string"==typeof e})&&(re.type="string"),re.enum=ue;break;case"literal":var ae,ie=p,oe=[],se=an(o.values);try{for(se.s();!(ae=se.n()).done;){var ce=ae.value;if(void 0===ce){if("throw"===this.unrepresentable)throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if("bigint"==typeof ce){if("throw"===this.unrepresentable)throw new Error("BigInt literals cannot be represented in JSON Schema");oe.push(Number(ce))}else oe.push(ce)}}catch(e){se.e(e)}finally{se.f()}if(0===oe.length);else if(1===oe.length){var le=oe[0];ie.type=null===le?"null":En(le),"draft-4"===this.target||"openapi-3.0"===this.target?ie.enum=[le]:ie.const=le}else oe.every(function(e){return"number"==typeof e})&&(ie.type="number"),oe.every(function(e){return"string"==typeof e})&&(ie.type="string"),oe.every(function(e){return"boolean"==typeof e})&&(ie.type="string"),oe.every(function(e){return null===e})&&(ie.type="null"),ie.enum=oe;break;case"file":var fe=p,de={type:"string",format:"binary",contentEncoding:"binary"},pe=e._zod.bag,he=pe.minimum,ve=pe.maximum,me=pe.mime;void 0!==he&&(de.minLength=he),void 0!==ve&&(de.maxLength=ve),me?1===me.length?(de.contentMediaType=me[0],Object.assign(fe,de)):fe.anyOf=me.map(function(e){return pn(pn({},de),{},{contentMediaType:e})}):Object.assign(fe,de);break;case"transform":if("throw"===this.unrepresentable)throw new Error("Transforms cannot be represented in JSON Schema");break;case"nullable":var De=this.process(o.innerType,f);"openapi-3.0"===this.target?(c.ref=o.innerType,p.nullable=!0):p.anyOf=[De,{type:"null"}];break;case"nonoptional":case"promise":case"optional":this.process(o.innerType,f),c.ref=o.innerType;break;case"default":this.process(o.innerType,f),c.ref=o.innerType,p.default=JSON.parse(JSON.stringify(o.defaultValue));break;case"prefault":this.process(o.innerType,f),c.ref=o.innerType,"input"===this.io&&(p._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break;case"catch":var ye;this.process(o.innerType,f),c.ref=o.innerType;try{ye=o.catchValue(void 0)}catch(e){throw new Error("Dynamic catch values are not supported in JSON Schema")}p.default=ye;break;case"nan":if("throw"===this.unrepresentable)throw new Error("NaN cannot be represented in JSON Schema");break;case"template_literal":var ge=p,Fe=e._zod.pattern;if(!Fe)throw new Error("Pattern not found in template literal");ge.type="string",ge.pattern=Fe.source;break;case"pipe":var Ee="input"===this.io?"transform"===o.in._zod.def.type?o.out:o.in:o.out;this.process(Ee,f),c.ref=Ee;break;case"readonly":this.process(o.innerType,f),c.ref=o.innerType,p.readOnly=!0;break;case"lazy":var _e=e._zod.innerType;this.process(_e,f),c.ref=_e;break;case"custom":if("throw"===this.unrepresentable)throw new Error("Custom types cannot be represented in JSON Schema");break;case"function":if("throw"===this.unrepresentable)throw new Error("Function types cannot be represented in JSON Schema")}}}var be=this.metadataRegistry.get(e);return be&&Object.assign(c.schema,be),"input"===this.io&&Cf(e)&&(delete c.schema.examples,delete c.schema.default),"input"===this.io&&c.schema._prefault&&(null!==(r=(u=c.schema).default)&&void 0!==r||(u.default=c.schema._prefault)),delete c.schema._prefault,this.seen.get(e).schema}},{key:"emit",value:function(e,t){var n,r,u,a,i,o,s=this,c={cycles:null!==(n=null==t?void 0:t.cycles)&&void 0!==n?n:"ref",reused:null!==(r=null==t?void 0:t.reused)&&void 0!==r?r:"inline",external:null!==(u=null==t?void 0:t.external)&&void 0!==u?u:void 0},l=this.seen.get(e);if(!l)throw new Error("Unprocessed schema. This is a bug in Zod.");var f=function(e){if(!e[1].schema.$ref){var t=e[1],n=function(e){var t,n="draft-2020-12"===s.target?"$defs":"definitions";if(c.external){var r,u,a,i,o=null===(r=c.external.registry.get(e[0]))||void 0===r?void 0:r.id,f=null!==(u=c.external.uri)&&void 0!==u?u:function(e){return e};if(o)return{ref:f(o)};var d=null!==(a=null!==(i=e[1].defId)&&void 0!==i?i:e[1].schema.id)&&void 0!==a?a:"schema".concat(s.counter++);return e[1].defId=d,{defId:d,ref:"".concat(f("__shared"),"#/").concat(n,"/").concat(d)}}if(e[1]===l)return{ref:"#"};var p="".concat("#","/").concat(n,"/"),h=null!==(t=e[1].schema.id)&&void 0!==t?t:"__schema".concat(s.counter++);return{defId:h,ref:p+h}}(e),r=n.ref,u=n.defId;t.def=pn({},t.schema),u&&(t.defId=u);var a=t.schema;for(var i in a)delete a[i];a.$ref=r}};if("throw"===c.cycles){var d,p=an(this.seen.entries());try{for(p.s();!(d=p.n()).done;){var h,v=d.value[1];if(v.cycle)throw new Error("Cycle detected: "+"#/".concat(null===(h=v.cycle)||void 0===h?void 0:h.join("/"),"/")+'\n\nSet the `cycles` parameter to `"ref"` to resolve cyclical schemas with defs.')}}catch(e){p.e(e)}finally{p.f()}}var m,D=an(this.seen.entries());try{for(D.s();!(m=D.n()).done;){var y,g=m.value,F=g[1];if(e!==g[0]){if(c.external){var E,_=null===(E=c.external.registry.get(g[0]))||void 0===E?void 0:E.id;if(e!==g[0]&&_){f(g);continue}}((null===(y=this.metadataRegistry.get(g[0]))||void 0===y?void 0:y.id)||F.cycle||F.count>1&&"ref"===c.reused)&&f(g)}else f(g)}}catch(e){D.e(e)}finally{D.f()}var b,C=function(e,t){var n,r,u=s.seen.get(e),a=null!==(n=u.def)&&void 0!==n?n:u.schema,i=pn({},a);if(null!==u.ref){var o=u.ref;if(u.ref=null,o){C(o,t);var c,l=s.seen.get(o).schema;!l.$ref||"draft-7"!==t.target&&"draft-4"!==t.target&&"openapi-3.0"!==t.target?(Object.assign(a,l),Object.assign(a,i)):(a.allOf=null!==(c=a.allOf)&&void 0!==c?c:[],a.allOf.push(l))}u.isParent||s.override({zodSchema:e,jsonSchema:a,path:null!==(r=u.path)&&void 0!==r?r:[]})}},k=an(gn(this.seen.entries()).reverse());try{for(k.s();!(b=k.n()).done;){var A=b.value;C(A[0],{target:this.target})}}catch(e){k.e(e)}finally{k.f()}var w={};if("draft-2020-12"===this.target?w.$schema="https://json-schema.org/draft/2020-12/schema":"draft-7"===this.target?w.$schema="http://json-schema.org/draft-07/schema#":"draft-4"===this.target?w.$schema="http://json-schema.org/draft-04/schema#":"openapi-3.0"===this.target||console.warn("Invalid target: ".concat(this.target)),null!==(a=c.external)&&void 0!==a&&a.uri){var S,x=null===(S=c.external.registry.get(e))||void 0===S?void 0:S.id;if(!x)throw new Error("Schema is missing an `id` property");w.$id=c.external.uri(x)}Object.assign(w,l.def);var O,B=null!==(i=null===(o=c.external)||void 0===o?void 0:o.defs)&&void 0!==i?i:{},I=an(this.seen.entries());try{for(I.s();!(O=I.n()).done;){var T=O.value[1];T.def&&T.defId&&(B[T.defId]=T.def)}}catch(e){I.e(e)}finally{I.f()}c.external||Object.keys(B).length>0&&("draft-2020-12"===this.target?w.$defs=B:w.definitions=B);try{return JSON.parse(JSON.stringify(w))}catch(e){throw new Error("Error converting schema to JSON.")}}}]);function Cf(e,t){var n=null!=t?t:{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);var r=e._zod.def;switch(r.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":case"custom":case"success":case"catch":case"function":return!1;case"array":return Cf(r.element,n);case"object":for(var u in r.shape)if(Cf(r.shape[u],n))return!0;return!1;case"union":var a,i=an(r.options);try{for(i.s();!(a=i.n()).done;)if(Cf(a.value,n))return!0}catch(e){i.e(e)}finally{i.f()}return!1;case"intersection":return Cf(r.left,n)||Cf(r.right,n);case"tuple":var o,s=an(r.items);try{for(s.s();!(o=s.n()).done;)if(Cf(o.value,n))return!0}catch(e){s.e(e)}finally{s.f()}return!(!r.rest||!Cf(r.rest,n));case"record":case"map":return Cf(r.keyType,n)||Cf(r.valueType,n);case"set":return Cf(r.valueType,n);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":case"default":case"prefault":return Cf(r.innerType,n);case"lazy":return Cf(r.getter(),n);case"transform":return!0;case"pipe":return Cf(r.in,n)||Cf(r.out,n)}throw new Error("Unknown schema type: ".concat(r.type))}var kf=Object.freeze({__proto__:null,endsWith:Df,gt:af,gte:of,includes:vf,length:ff,lowercase:pf,lt:rf,lte:uf,maxLength:cf,maxSize:function(e,t){return new bc(pn(pn({check:"max_size"},As(t)),{},{maximum:e}))},mime:function(e,t){return new Rc(pn({check:"mime_type",mime:e},As(t)))},minLength:lf,minSize:function(e,t){return new Cc(pn(pn({check:"min_size"},As(t)),{},{minimum:e}))},multipleOf:sf,negative:function(e){return rf(0,e)},nonnegative:function(e){return of(0,e)},nonpositive:function(e){return uf(0,e)},normalize:gf,overwrite:yf,positive:function(e){return af(0,e)},property:function(e,t,n){return new zc(pn({check:"property",property:e,schema:t},As(n)))},regex:df,size:function(e,t){return new kc(pn(pn({check:"size_equals"},As(t)),{},{size:e}))},startsWith:mf,toLowerCase:Ef,toUpperCase:_f,trim:Ff,uppercase:hf}),Af=rs("ZodISODateTime",function(e,t){nl.init(e,t),Wf.init(e,t)});var wf=rs("ZodISODate",function(e,t){rl.init(e,t),Wf.init(e,t)});var Sf=rs("ZodISOTime",function(e,t){ul.init(e,t),Wf.init(e,t)});var xf=rs("ZodISODuration",function(e,t){al.init(e,t),Wf.init(e,t)});var Of=rs("ZodError",function(e,t){Ns.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:function(t){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},n={_errors:[]},r=function(e){var u,a=an(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if("invalid_union"===i.code&&i.errors.length)i.errors.map(function(e){return r({issues:e})});else if("invalid_key"===i.code)r({issues:i.issues});else if("invalid_element"===i.code)r({issues:i.issues});else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},r={},u=[],a=an(e.issues);try{for(a.s();!(t=a.n()).done;){var i=t.value;i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(n(i))):u.push(n(i))}}catch(e){a.e(e)}finally{a.f()}return{formErrors:u,fieldErrors:r}}(e,t)}},addIssue:{value:function(t){e.issues.push(t),e.message=JSON.stringify(e.issues,cs,2)}},addIssues:{value:function(t){var n;(n=e.issues).push.apply(n,gn(t)),e.message=JSON.stringify(e.issues,cs,2)}},isEmpty:{get:function(){return 0===e.issues.length}}})},{Parent:Error}),Bf=Rs(Of),If=Ms(Of),Tf=Zs(Of),Pf=$s(Of),jf=function(e){return function(t,n,r){var u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Rs(e)(t,n,u)}}(Of),Nf=function(e){return function(t,n,r){return Rs(e)(t,n,r)}}(Of),zf=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){var a;return vn().w(function(t){for(;;)if(0===t.n)return a=u?Object.assign(u,{direction:"backward"}):{direction:"backward"},t.a(2,Ms(e)(n,r,a))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),Rf=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){return vn().w(function(t){for(;;)if(0===t.n)return t.a(2,Ms(e)(n,r,u))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),Mf=function(e){return function(t,n,r){var u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Zs(e)(t,n,u)}}(Of),Zf=function(e){return function(t,n,r){return Zs(e)(t,n,r)}}(Of),Lf=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){var a;return vn().w(function(t){for(;;)if(0===t.n)return a=u?Object.assign(u,{direction:"backward"}):{direction:"backward"},t.a(2,$s(e)(n,r,a))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),$f=function(e){return function(){var t=Xt(vn().m(function t(n,r,u){return vn().w(function(t){for(;;)if(0===t.n)return t.a(2,$s(e)(n,r,u))},t)}));return function(e,n,r){return t.apply(this,arguments)}}()}(Of),qf=rs("ZodType",function(e,t){return $c.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=function(){for(var n,r=arguments.length,u=new Array(r),a=0;a1&&void 0!==arguments[1]?arguments[1]:{})}(t,n))},e.superRefine=function(t){return e.check(function(e){var t=function(e){var t=new Dc(pn({check:"custom"},As(void 0)));return t._zod.check=e,t}(function(n){return n.addIssue=function(e){if("string"==typeof e)n.issues.push(Ps(e,n.value,t._zod.def));else{var r,u,a,i,o=e;o.fatal&&(o.continue=!1),null!==(r=o.code)&&void 0!==r||(o.code="custom"),null!==(u=o.input)&&void 0!==u||(o.input=n.value),null!==(a=o.inst)&&void 0!==a||(o.inst=t),null!==(i=o.continue)&&void 0!==i||(o.continue=!t._zod.def.abort),n.issues.push(Ps(o))}},e(n.value,n)});return t}(t))},e.overwrite=function(t){return e.check(yf(t))},e.optional=function(){return $d(e)},e.nullable=function(){return Ud(e)},e.nullish=function(){return $d(Ud(e))},e.nonoptional=function(t){return function(e,t){return new Wd(pn({type:"nonoptional",innerType:e},As(t)))}(e,t)},e.array=function(){return Ad(e)},e.or=function(t){return Bd([e,t])},e.and=function(t){return new Td({type:"intersection",left:e,right:t})},e.transform=function(t){return Qd(e,new Zd({type:"transform",transform:t}))},e.default=function(t){return n=t,new Hd({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():_s(n)}});var n},e.prefault=function(t){return n=t,new Vd({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():_s(n)}});var n},e.catch=function(t){return new Kd({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:function(){return n}});var n},e.pipe=function(t){return Qd(e,t)},e.readonly=function(){return new Xd({type:"readonly",innerType:e})},e.describe=function(t){var n=e.clone();return tf.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:function(){var t;return null===(t=tf.get(e))||void 0===t?void 0:t.description},configurable:!0}),e.meta=function(){if(0===arguments.length)return tf.get(e);var t=e.clone();return tf.add(t,arguments.length<=0?void 0:arguments[0]),t},e.isOptional=function(){return e.safeParse(void 0).success},e.isNullable=function(){return e.safeParse(null).success},e}),Uf=rs("_ZodString",function(e,t){var n,r,u;qc.init(e,t),qf.init(e,t);var a=e._zod.bag;e.format=null!==(n=a.format)&&void 0!==n?n:null,e.minLength=null!==(r=a.minimum)&&void 0!==r?r:null,e.maxLength=null!==(u=a.maximum)&&void 0!==u?u:null,e.regex=function(){return e.check(df.apply(kf,arguments))},e.includes=function(){return e.check(vf.apply(kf,arguments))},e.startsWith=function(){return e.check(mf.apply(kf,arguments))},e.endsWith=function(){return e.check(Df.apply(kf,arguments))},e.min=function(){return e.check(lf.apply(kf,arguments))},e.max=function(){return e.check(cf.apply(kf,arguments))},e.length=function(){return e.check(ff.apply(kf,arguments))},e.nonempty=function(){for(var t=arguments.length,n=new Array(t),r=0;r0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");var r=ms(e._zod.def,{get shape(){var n=pn(pn({},e._zod.def.shape),t);return vs(this,"shape",n),n},checks:[]});return ks(e,r)}(e,t)},e.safeExtend=function(t){return function(e,t){if(!Es(t))throw new Error("Invalid input to safeExtend: expected a plain object");var n=pn(pn({},e._zod.def),{},{get shape(){var n=pn(pn({},e._zod.def.shape),t);return vs(this,"shape",n),n},checks:e._zod.def.checks});return ks(e,n)}(e,t)},e.merge=function(t){return function(e,t){var n=ms(e._zod.def,{get shape(){var n=pn(pn({},e._zod.def.shape),t._zod.def.shape);return vs(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return ks(e,n)}(e,t)},e.pick=function(t){return function(e,t){var n=e._zod.def;return ks(e,ms(e._zod.def,{get shape(){var e={};for(var r in t){if(!(r in n.shape))throw new Error('Unrecognized key: "'.concat(r,'"'));t[r]&&(e[r]=n.shape[r])}return vs(this,"shape",e),e},checks:[]}))}(e,t)},e.omit=function(t){return function(e,t){var n=e._zod.def,r=ms(e._zod.def,{get shape(){var r=pn({},e._zod.def.shape);for(var u in t){if(!(u in n.shape))throw new Error('Unrecognized key: "'.concat(u,'"'));t[u]&&delete r[u]}return vs(this,"shape",r),r},checks:[]});return ks(e,r)}(e,t)},e.partial=function(){return function(e,t,n){var r=ms(t._zod.def,{get shape(){var r=t._zod.def.shape,u=pn({},r);if(n)for(var a in n){if(!(a in r))throw new Error('Unrecognized key: "'.concat(a,'"'));n[a]&&(u[a]=new e({type:"optional",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:"optional",innerType:r[i]});return vs(this,"shape",u),u},checks:[]});return ks(t,r)}(Ld,e,arguments.length<=0?void 0:arguments[0])},e.required=function(){return function(e,t,n){var r=ms(t._zod.def,{get shape(){var r=t._zod.def.shape,u=pn({},r);if(n)for(var a in n){if(!(a in u))throw new Error('Unrecognized key: "'.concat(a,'"'));n[a]&&(u[a]=new e({type:"nonoptional",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:"nonoptional",innerType:r[i]});return vs(this,"shape",u),u},checks:[]});return ks(t,r)}(Wd,e,arguments.length<=0?void 0:arguments[0])}});function Sd(e,t){var n=pn({type:"object",shape:null!=e?e:{}},As(t));return new wd(n)}function xd(e,t){return new wd(pn({type:"object",shape:e,catchall:Cd()},As(t)))}var Od=rs("ZodUnion",function(e,t){xl.init(e,t),qf.init(e,t),e.options=t.options});function Bd(e,t){return new Od(pn({type:"union",options:e},As(t)))}var Id=rs("ZodDiscriminatedUnion",function(e,t){Od.init(e,t),Ol.init(e,t)}),Td=rs("ZodIntersection",function(e,t){Bl.init(e,t),qf.init(e,t)}),Pd=rs("ZodRecord",function(e,t){Pl.init(e,t),qf.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function jd(e,t,n){return new Pd(pn({type:"record",keyType:e,valueType:t},As(n)))}var Nd=rs("ZodEnum",function(e,t){jl.init(e,t),qf.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);var n=new Set(Object.keys(t.entries));e.extract=function(e,r){var u,a={},i=an(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error("Key ".concat(o," not found in enum"));a[o]=t.entries[o]}}catch(e){i.e(e)}finally{i.f()}return new Nd(pn(pn(pn({},t),{},{checks:[]},As(r)),{},{entries:a}))},e.exclude=function(e,r){var u,a=pn({},t.entries),i=an(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error("Key ".concat(o," not found in enum"));delete a[o]}}catch(e){i.e(e)}finally{i.f()}return new Nd(pn(pn(pn({},t),{},{checks:[]},As(r)),{},{entries:a}))}});function zd(e,t){var n=Array.isArray(e)?Object.fromEntries(e.map(function(e){return[e,e]})):e;return new Nd(pn({type:"enum",entries:n},As(t)))}var Rd=rs("ZodLiteral",function(e,t){Nl.init(e,t),qf.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get:function(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Md(e,t){return new Rd(pn({type:"literal",values:Array.isArray(e)?e:[e]},As(t)))}var Zd=rs("ZodTransform",function(e,t){zl.init(e,t),qf.init(e,t),e._zod.parse=function(n,r){if("backward"===r.direction)throw new as(e.constructor.name);n.addIssue=function(r){if("string"==typeof r)n.issues.push(Ps(r,n.value,t));else{var u,a,i,o=r;o.fatal&&(o.continue=!1),null!==(u=o.code)&&void 0!==u||(o.code="custom"),null!==(a=o.input)&&void 0!==a||(o.input=n.value),null!==(i=o.inst)&&void 0!==i||(o.inst=e),n.issues.push(Ps(o))}};var u=t.transform(n.value,n);return u instanceof Promise?u.then(function(e){return n.value=e,n}):(n.value=u,n)}}),Ld=rs("ZodOptional",function(e,t){Ml.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function $d(e){return new Ld({type:"optional",innerType:e})}var qd=rs("ZodNullable",function(e,t){Zl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function Ud(e){return new qd({type:"nullable",innerType:e})}var Hd=rs("ZodDefault",function(e,t){Ll.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeDefault=e.unwrap}),Vd=rs("ZodPrefault",function(e,t){ql.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}}),Wd=rs("ZodNonOptional",function(e,t){Ul.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}}),Kd=rs("ZodCatch",function(e,t){Vl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeCatch=e.unwrap}),Jd=rs("ZodPipe",function(e,t){Wl.init(e,t),qf.init(e,t),e.in=t.in,e.out=t.out});function Qd(e,t){return new Jd({type:"pipe",in:e,out:t})}var Gd,Yd,Xd=rs("ZodReadonly",function(e,t){Jl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.innerType}}),ep=rs("ZodLazy",function(e,t){Gl.init(e,t),qf.init(e,t),e.unwrap=function(){return e._zod.def.getter()}}),tp=rs("ZodCustom",function(e,t){Yl.init(e,t),qf.init(e,t)});function np(e,t){return function(e,t,n){var r,u=As(n);return null!==(r=u.abort)&&void 0!==r||(u.abort=!0),new e(pn({type:"custom",check:"custom",fn:t},u))}(tp,null!=e?e:function(){return!0},t)}function rp(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{error:"Input not instance of ".concat(e.name)},n=new tp(pn({type:"custom",check:"custom",fn:function(t){return t instanceof e},abort:!0},As(t)));return n._zod.bag.Class=e,n}!function(e){e.assertEqual=function(e){},e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=function(e){var t,n={},r=an(e);try{for(r.s();!(t=r.n()).done;){var u=t.value;n[u]=u}}catch(e){r.e(e)}finally{r.f()}return n},e.getValidEnumValues=function(t){var n,r={},u=an(e.objectKeys(t).filter(function(e){return"number"!=typeof t[t[e]]}));try{for(u.s();!(n=u.n()).done;){var a=n.value;r[a]=t[a]}}catch(e){u.e(e)}finally{u.f()}return e.objectValues(r)},e.objectValues=function(t){return e.objectKeys(t).map(function(e){return t[e]})},e.objectKeys="function"==typeof Object.keys?function(e){return Object.keys(e)}:function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=function(e,t){var n,r=an(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if(t(u))return u}}catch(e){r.e(e)}finally{r.f()}},e.isInteger="function"==typeof Number.isInteger?function(e){return Number.isInteger(e)}:function(e){return"number"==typeof e&&Number.isFinite(e)&&Math.floor(e)===e},e.joinValues=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" | ";return e.map(function(e){return"string"==typeof e?"'".concat(e,"'"):e}).join(t)},e.jsonStringifyReplacer=function(e,t){return"bigint"==typeof t?t.toString():t}}(Gd||(Gd={})),function(e){e.mergeShapes=function(e,t){return pn(pn({},e),t)}}(Yd||(Yd={}));var up=Gd.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ap=function(e){switch(En(e)){case"undefined":return up.undefined;case"string":return up.string;case"number":return Number.isNaN(e)?up.nan:up.number;case"boolean":return up.boolean;case"function":return up.function;case"bigint":return up.bigint;case"symbol":return up.symbol;case"object":return Array.isArray(e)?up.array:null===e?up.null:e.then&&"function"==typeof e.then&&e.catch&&"function"==typeof e.catch?up.promise:"undefined"!=typeof Map&&e instanceof Map?up.map:"undefined"!=typeof Set&&e instanceof Set?up.set:"undefined"!=typeof Date&&e instanceof Date?up.date:up.object;default:return up.unknown}},ip=Gd.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),op=function(){function e(t){var n;tn(this,e),(n=en(this,e)).issues=[],n.addIssue=function(e){n.issues=[].concat(gn(n.issues),[e])},n.addIssues=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];n.issues=[].concat(gn(n.issues),gn(e))};var r=(this instanceof e?this.constructor:void 0).prototype;return Object.setPrototypeOf?Object.setPrototypeOf(n,r):n.__proto__=r,n.name="ZodError",n.issues=t,n}return ln(e,bn(Error)),un(e,[{key:"errors",get:function(){return this.issues}},{key:"format",value:function(e){var t=e||function(e){return e.message},n={_errors:[]},r=function(e){var u,a=an(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if("invalid_union"===i.code)i.unionErrors.map(r);else if("invalid_return_type"===i.code)r(i.returnTypeError);else if("invalid_arguments"===i.code)r(i.argumentsError);else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s0&&void 0!==arguments[0]?arguments[0]:function(e){return e.message},n=Object.create(null),r=[],u=an(this.issues);try{for(u.s();!(e=u.n()).done;){var a=e.value;if(a.path.length>0){var i=a.path[0];n[i]=n[i]||[],n[i].push(t(a))}else r.push(t(a))}}catch(e){u.e(e)}finally{u.f()}return{formErrors:r,fieldErrors:n}}},{key:"formErrors",get:function(){return this.flatten()}}],[{key:"assert",value:function(t){if(!(t instanceof e))throw new Error("Not a ZodError: ".concat(t))}}])}();op.create=function(e){return new op(e)};var sp=function(e,t){var n;switch(e.code){case ip.invalid_type:n=e.received===up.undefined?"Required":"Expected ".concat(e.expected,", received ").concat(e.received);break;case ip.invalid_literal:n="Invalid literal value, expected ".concat(JSON.stringify(e.expected,Gd.jsonStringifyReplacer));break;case ip.unrecognized_keys:n="Unrecognized key(s) in object: ".concat(Gd.joinValues(e.keys,", "));break;case ip.invalid_union:n="Invalid input";break;case ip.invalid_union_discriminator:n="Invalid discriminator value. Expected ".concat(Gd.joinValues(e.options));break;case ip.invalid_enum_value:n="Invalid enum value. Expected ".concat(Gd.joinValues(e.options),", received '").concat(e.received,"'");break;case ip.invalid_arguments:n="Invalid function arguments";break;case ip.invalid_return_type:n="Invalid function return type";break;case ip.invalid_date:n="Invalid date";break;case ip.invalid_string:"object"===En(e.validation)?"includes"in e.validation?(n='Invalid input: must include "'.concat(e.validation.includes,'"'),"number"==typeof e.validation.position&&(n="".concat(n," at one or more positions greater than or equal to ").concat(e.validation.position))):"startsWith"in e.validation?n='Invalid input: must start with "'.concat(e.validation.startsWith,'"'):"endsWith"in e.validation?n='Invalid input: must end with "'.concat(e.validation.endsWith,'"'):Gd.assertNever(e.validation):n="regex"!==e.validation?"Invalid ".concat(e.validation):"Invalid";break;case ip.too_small:n="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"more than"," ").concat(e.minimum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"over"," ").concat(e.minimum," character(s)"):"number"===e.type||"bigint"===e.type?"Number must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(e.minimum):"date"===e.type?"Date must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(new Date(Number(e.minimum))):"Invalid input";break;case ip.too_big:n="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"less than"," ").concat(e.maximum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"under"," ").concat(e.maximum," character(s)"):"number"===e.type?"Number must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"bigint"===e.type?"BigInt must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"date"===e.type?"Date must be ".concat(e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"," ").concat(new Date(Number(e.maximum))):"Invalid input";break;case ip.custom:n="Invalid input";break;case ip.invalid_intersection_types:n="Intersection results could not be merged";break;case ip.not_multiple_of:n="Number must be a multiple of ".concat(e.multipleOf);break;case ip.not_finite:n="Number must be finite";break;default:n=t.defaultError,Gd.assertNever(e)}return{message:n}},cp=sp;function lp(){return cp}var fp=function(e){var t=e.data,n=e.path,r=e.errorMaps,u=e.issueData,a=[].concat(gn(n),gn(u.path||[])),i=pn(pn({},u),{},{path:a});if(void 0!==u.message)return pn(pn({},u),{},{path:a,message:u.message});var o,s="",c=r.filter(function(e){return!!e}).slice().reverse(),l=an(c);try{for(l.s();!(o=l.n()).done;)s=(0,o.value)(i,{data:t,defaultError:s}).message}catch(e){l.e(e)}finally{l.f()}return pn(pn({},u),{},{path:a,message:s})};function dp(e,t){var n=lp(),r=fp({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===sp?void 0:sp].filter(function(e){return!!e})});e.common.issues.push(r)}var pp,hp=function(){function e(){tn(this,e),this.value="valid"}return un(e,[{key:"dirty",value:function(){"valid"===this.value&&(this.value="dirty")}},{key:"abort",value:function(){"aborted"!==this.value&&(this.value="aborted")}}],[{key:"mergeArray",value:function(e,t){var n,r=[],u=an(t);try{for(u.s();!(n=u.n()).done;){var a=n.value;if("aborted"===a.status)return vp;"dirty"===a.status&&e.dirty(),r.push(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}},{key:"mergeObjectAsync",value:(t=Xt(vn().m(function t(n,r){var u,a,i,o,s,c,l;return vn().w(function(t){for(;;)switch(t.p=t.n){case 0:u=[],a=an(r),t.p=1,a.s();case 2:if((i=a.n()).done){t.n=6;break}return o=i.value,t.n=3,o.key;case 3:return s=t.v,t.n=4,o.value;case 4:c=t.v,u.push({key:s,value:c});case 5:t.n=2;break;case 6:t.n=8;break;case 7:t.p=7,l=t.v,a.e(l);case 8:return t.p=8,a.f(),t.f(8);case 9:return t.a(2,e.mergeObjectSync(n,u))}},t,null,[[1,7,8,9]])})),function(e,n){return t.apply(this,arguments)})},{key:"mergeObjectSync",value:function(e,t){var n,r={},u=an(t);try{for(u.s();!(n=u.n()).done;){var a=n.value,i=a.key,o=a.value;if("aborted"===i.status)return vp;if("aborted"===o.status)return vp;"dirty"===i.status&&e.dirty(),"dirty"===o.status&&e.dirty(),"__proto__"===i.value||void 0===o.value&&!a.alwaysSet||(r[i.value]=o.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}}]);var t}(),vp=Object.freeze({status:"aborted"}),mp=function(e){return{status:"dirty",value:e}},Dp=function(e){return{status:"valid",value:e}},yp=function(e){return"aborted"===e.status},gp=function(e){return"dirty"===e.status},Fp=function(e){return"valid"===e.status},Ep=function(e){return"undefined"!=typeof Promise&&e instanceof Promise};!function(e){e.errToObj=function(e){return"string"==typeof e?{message:e}:e||{}},e.toString=function(e){return"string"==typeof e?e:null==e?void 0:e.message}}(pp||(pp={}));var _p=un(function e(t,n,r,u){tn(this,e),this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=u},[{key:"path",get:function(){var e,t;return this._cachedPath.length||(Array.isArray(this._key)?(e=this._cachedPath).push.apply(e,gn(this._path).concat(gn(this._key))):(t=this._cachedPath).push.apply(t,gn(this._path).concat([this._key]))),this._cachedPath}}]),bp=function(e,t){if(Fp(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;var t=new op(e.common.issues);return this._error=t,this._error}}};function Cp(e){if(!e)return{};var t=e.errorMap,n=e.invalid_type_error,r=e.required_error,u=e.description;if(t&&(n||r))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');return t?{errorMap:t,description:u}:{errorMap:function(t,u){var a,i,o=e.message;return"invalid_enum_value"===t.code?{message:null!=o?o:u.defaultError}:void 0===u.data?{message:null!==(i=null!=o?o:r)&&void 0!==i?i:u.defaultError}:"invalid_type"!==t.code?{message:u.defaultError}:{message:null!==(a=null!=o?o:n)&&void 0!==a?a:u.defaultError}},description:u}}var kp,Ap=function(){return un(function e(t){var n=this;tn(this,e),this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:function(e){return n["~validate"](e)}}},[{key:"description",get:function(){return this._def.description}},{key:"_getType",value:function(e){return ap(e.data)}},{key:"_getOrReturnCtx",value:function(e,t){return t||{common:e.parent.common,data:e.data,parsedType:ap(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}},{key:"_processInputParams",value:function(e){return{status:new hp,ctx:{common:e.parent.common,data:e.data,parsedType:ap(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}},{key:"_parseSync",value:function(e){var t=this._parse(e);if(Ep(t))throw new Error("Synchronous parse encountered promise.");return t}},{key:"_parseAsync",value:function(e){var t=this._parse(e);return Promise.resolve(t)}},{key:"parse",value:function(e,t){var n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}},{key:"safeParse",value:function(e,t){var n,r={common:{issues:[],async:null!==(n=null==t?void 0:t.async)&&void 0!==n&&n,contextualErrorMap:null==t?void 0:t.errorMap},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ap(e)},u=this._parseSync({data:e,path:r.path,parent:r});return bp(r,u)}},{key:"~validate",value:function(e){var t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ap(e)};if(!this["~standard"].async)try{var n=this._parseSync({data:e,path:[],parent:t});return Fp(n)?{value:n.value}:{issues:t.common.issues}}catch(e){var r;null!=e&&null!==(r=e.message)&&void 0!==r&&null!==(r=r.toLowerCase())&&void 0!==r&&r.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(function(e){return Fp(e)?{value:e.value}:{issues:t.common.issues}})}},{key:"parseAsync",value:(e=Xt(vn().m(function e(t,n){var r;return vn().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.safeParseAsync(t,n);case 1:if(!(r=e.v).success){e.n=2;break}return e.a(2,r.data);case 2:throw r.error;case 3:return e.a(2)}},e,this)})),function(t,n){return e.apply(this,arguments)})},{key:"safeParseAsync",value:function(){var e=Xt(vn().m(function e(t,n){var r,u,a;return vn().w(function(e){for(;;)switch(e.n){case 0:return r={common:{issues:[],contextualErrorMap:null==n?void 0:n.errorMap,async:!0},path:(null==n?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:ap(t)},u=this._parse({data:t,path:r.path,parent:r}),e.n=1,Ep(u)?u:Promise.resolve(u);case 1:return a=e.v,e.a(2,bp(r,a))}},e,this)}));return function(t,n){return e.apply(this,arguments)}}()},{key:"refine",value:function(e,t){return this._refinement(function(n,r){var u=e(n),a=function(){return r.addIssue(pn({code:ip.custom},function(e){return"string"==typeof t||void 0===t?{message:t}:"function"==typeof t?t(e):t}(n)))};return"undefined"!=typeof Promise&&u instanceof Promise?u.then(function(e){return!!e||(a(),!1)}):!!u||(a(),!1)})}},{key:"refinement",value:function(e,t){return this._refinement(function(n,r){return!!e(n)||(r.addIssue("function"==typeof t?t(n,r):t),!1)})}},{key:"_refinement",value:function(e){return new wh({schema:this,typeName:Th.ZodEffects,effect:{type:"refinement",refinement:e}})}},{key:"superRefine",value:function(e){return this._refinement(e)}},{key:"optional",value:function(){return Sh.create(this,this._def)}},{key:"nullable",value:function(){return xh.create(this,this._def)}},{key:"nullish",value:function(){return this.nullable().optional()}},{key:"array",value:function(){return sh.create(this)}},{key:"promise",value:function(){return Ah.create(this,this._def)}},{key:"or",value:function(e){return fh.create([this,e],this._def)}},{key:"and",value:function(e){return vh.create(this,e,this._def)}},{key:"transform",value:function(e){return new wh(pn(pn({},Cp(this._def)),{},{schema:this,typeName:Th.ZodEffects,effect:{type:"transform",transform:e}}))}},{key:"default",value:function(e){var t="function"==typeof e?e:function(){return e};return new Oh(pn(pn({},Cp(this._def)),{},{innerType:this,defaultValue:t,typeName:Th.ZodDefault}))}},{key:"brand",value:function(){return new Ph(pn({typeName:Th.ZodBranded,type:this},Cp(this._def)))}},{key:"catch",value:function(e){var t="function"==typeof e?e:function(){return e};return new Bh(pn(pn({},Cp(this._def)),{},{innerType:this,catchValue:t,typeName:Th.ZodCatch}))}},{key:"describe",value:function(e){return new this.constructor(pn(pn({},this._def),{},{description:e}))}},{key:"pipe",value:function(e){return jh.create(this,e)}},{key:"readonly",value:function(){return Nh.create(this)}},{key:"isOptional",value:function(){return this.safeParse(void 0).success}},{key:"isNullable",value:function(){return this.safeParse(null).success}}]);var e}(),wp=/^c[^\s-]{8,}$/i,Sp=/^[0-9a-z]+$/,xp=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Op=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Bp=/^[a-z0-9_-]{21}$/i,Ip=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Tp=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Pp=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,jp=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Np=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,zp=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Rp=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Mp=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Zp=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Lp="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",$p=new RegExp("^".concat(Lp,"$"));function qp(e){var t="[0-5]\\d";e.precision?t="".concat(t,"\\.\\d{").concat(e.precision,"}"):null==e.precision&&(t="".concat(t,"(\\.\\d+)?"));var n=e.precision?"+":"?";return"([01]\\d|2[0-3]):[0-5]\\d(:".concat(t,")").concat(n)}function Up(e){return new RegExp("^".concat(qp(e),"$"))}function Hp(e){var t="".concat(Lp,"T").concat(qp(e)),n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t="".concat(t,"(").concat(n.join("|"),")"),new RegExp("^".concat(t,"$"))}function Vp(e,t){return!("v4"!==t&&t||!jp.test(e))||!("v6"!==t&&t||!zp.test(e))}function Wp(e,t){if(!Ip.test(e))return!1;try{var n=yn(e.split("."),1)[0];if(!n)return!1;var r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),u=JSON.parse(atob(r));return!("object"!==En(u)||null===u||"typ"in u&&"JWT"!==(null==u?void 0:u.typ)||!u.alg||t&&u.alg!==t)}catch(e){return!1}}function Kp(e,t){return!("v4"!==t&&t||!Np.test(e))||!("v6"!==t&&t||!Rp.test(e))}var Jp=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==up.string){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.string,received:t.parsedType}),vp}var n,r=new hp,u=void 0,a=an(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;if("min"===i.kind)e.data.lengthi.value&&(dp(u=this._getOrReturnCtx(e,u),{code:ip.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if("length"===i.kind){var o=e.data.length>i.value,s=e.data.lengtht)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"maxLength",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valuer?n:r;return Number.parseInt(e.toFixed(u).replace(".",""))%Number.parseInt(t.toFixed(u).replace(".",""))/Math.pow(10,u)}Jp.create=function(e){var t;return new Jp(pn({checks:[],typeName:Th.ZodString,coerce:null!==(t=null==e?void 0:e.coerce)&&void 0!==t&&t},Cp(e)))};var Gp=function(){function e(){var t;return tn(this,e),(t=en(this,e,arguments)).min=t.gte,t.max=t.lte,t.step=t.multipleOf,t}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==up.number){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.number,received:t.parsedType}),vp}var n,r=void 0,u=new hp,a=an(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;"int"===i.kind?Gd.isInteger(e.data)||(dp(r=this._getOrReturnCtx(e,r),{code:ip.invalid_type,expected:"integer",received:"float",message:i.message}),u.dirty()):"min"===i.kind?(i.inclusive?e.datai.value:e.data>=i.value)&&(dp(r=this._getOrReturnCtx(e,r),{code:ip.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),u.dirty()):"multipleOf"===i.kind?0!==Qp(e.data,i.value)&&(dp(r=this._getOrReturnCtx(e,r),{code:ip.not_multiple_of,multipleOf:i.value,message:i.message}),u.dirty()):"finite"===i.kind?Number.isFinite(e.data)||(dp(r=this._getOrReturnCtx(e,r),{code:ip.not_finite,message:i.message}),u.dirty()):Gd.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:u.value,value:e.data}}},{key:"gte",value:function(e,t){return this.setLimit("min",e,!0,pp.toString(t))}},{key:"gt",value:function(e,t){return this.setLimit("min",e,!1,pp.toString(t))}},{key:"lte",value:function(e,t){return this.setLimit("max",e,!0,pp.toString(t))}},{key:"lt",value:function(e,t){return this.setLimit("max",e,!1,pp.toString(t))}},{key:"setLimit",value:function(t,n,r,u){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[{kind:t,value:n,inclusive:r,message:pp.toString(u)}])}))}},{key:"_addCheck",value:function(t){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[t])}))}},{key:"int",value:function(e){return this._addCheck({kind:"int",message:pp.toString(e)})}},{key:"positive",value:function(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:pp.toString(e)})}},{key:"negative",value:function(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:pp.toString(e)})}},{key:"nonpositive",value:function(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:pp.toString(e)})}},{key:"nonnegative",value:function(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:pp.toString(e)})}},{key:"multipleOf",value:function(e,t){return this._addCheck({kind:"multipleOf",value:e,message:pp.toString(t)})}},{key:"finite",value:function(e){return this._addCheck({kind:"finite",message:pp.toString(e)})}},{key:"safe",value:function(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:pp.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:pp.toString(e)})}},{key:"minValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"min"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"maxValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valuen)&&(n=u.value):"max"===u.kind&&(null===t||u.valuea.value:e.data>=a.value)&&(dp(n=this._getOrReturnCtx(e,n),{code:ip.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty()):"multipleOf"===a.kind?e.data%a.value!==BigInt(0)&&(dp(n=this._getOrReturnCtx(e,n),{code:ip.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):Gd.assertNever(a)}}catch(e){u.e(e)}finally{u.f()}return{status:r.value,value:e.data}}},{key:"_getInvalidInput",value:function(e){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.bigint,received:t.parsedType}),vp}},{key:"gte",value:function(e,t){return this.setLimit("min",e,!0,pp.toString(t))}},{key:"gt",value:function(e,t){return this.setLimit("min",e,!1,pp.toString(t))}},{key:"lte",value:function(e,t){return this.setLimit("max",e,!0,pp.toString(t))}},{key:"lt",value:function(e,t){return this.setLimit("max",e,!1,pp.toString(t))}},{key:"setLimit",value:function(t,n,r,u){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[{kind:t,value:n,inclusive:r,message:pp.toString(u)}])}))}},{key:"_addCheck",value:function(t){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[t])}))}},{key:"positive",value:function(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:pp.toString(e)})}},{key:"negative",value:function(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:pp.toString(e)})}},{key:"nonpositive",value:function(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:pp.toString(e)})}},{key:"nonnegative",value:function(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:pp.toString(e)})}},{key:"multipleOf",value:function(e,t){return this._addCheck({kind:"multipleOf",value:e,message:pp.toString(t)})}},{key:"minValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"min"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:"maxValue",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valuei.value&&(dp(u=this._getOrReturnCtx(e,u),{code:ip.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):Gd.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:r.value,value:new Date(e.data.getTime())}}},{key:"_addCheck",value:function(t){return new e(pn(pn({},this._def),{},{checks:[].concat(gn(this._def.checks),[t])}))}},{key:"min",value:function(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:pp.toString(t)})}},{key:"max",value:function(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:pp.toString(t)})}},{key:"minDate",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"min"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return null!=t?new Date(t):null}},{key:"maxDate",get:function(){var e,t=null,n=an(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;"max"===r.kind&&(null===t||r.valueu.exactLength.value,i=n.data.lengthu.maxLength.value&&(dp(n,{code:ip.too_big,maximum:u.maxLength.value,type:"array",inclusive:!0,exact:!1,message:u.maxLength.message}),r.dirty()),n.common.async)return Promise.all(gn(n.data).map(function(e,t){return u.type._parseAsync(new _p(n,e,n.path,t))})).then(function(e){return hp.mergeArray(r,e)});var o=gn(n.data).map(function(e,t){return u.type._parseSync(new _p(n,e,n.path,t))});return hp.mergeArray(r,o)}},{key:"element",get:function(){return this._def.type}},{key:"min",value:function(t,n){return new e(pn(pn({},this._def),{},{minLength:{value:t,message:pp.toString(n)}}))}},{key:"max",value:function(t,n){return new e(pn(pn({},this._def),{},{maxLength:{value:t,message:pp.toString(n)}}))}},{key:"length",value:function(t,n){return new e(pn(pn({},this._def),{},{exactLength:{value:t,message:pp.toString(n)}}))}},{key:"nonempty",value:function(e){return this.min(1,e)}}])}();function ch(e){if(e instanceof lh){var t={};for(var n in e.shape){var r=e.shape[n];t[n]=Sh.create(ch(r))}return new lh(pn(pn({},e._def),{},{shape:function(){return t}}))}return e instanceof sh?new sh(pn(pn({},e._def),{},{type:ch(e.element)})):e instanceof Sh?Sh.create(ch(e.unwrap())):e instanceof xh?xh.create(ch(e.unwrap())):e instanceof mh?mh.create(e.items.map(function(e){return ch(e)})):e}sh.create=function(e,t){return new sh(pn({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Th.ZodArray},Cp(t)))};var lh=function(){function e(){var t;return tn(this,e),(t=en(this,e,arguments))._cached=null,t.nonstrict=t.passthrough,t.augment=t.extend,t}return ln(e,Ap),un(e,[{key:"_getCached",value:function(){if(null!==this._cached)return this._cached;var e=this._def.shape(),t=Gd.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}},{key:"_parse",value:function(e){if(this._getType(e)!==up.object){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.object,received:t.parsedType}),vp}var n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._getCached(),i=a.shape,o=a.keys,s=[];if(!(this._def.catchall instanceof ih&&"strip"===this._def.unknownKeys))for(var c in u.data)o.includes(c)||s.push(c);var l,f=[],d=an(o);try{for(d.s();!(l=d.n()).done;){var p=l.value,h=i[p],v=u.data[p];f.push({key:{status:"valid",value:p},value:h._parse(new _p(u,v,u.path,p)),alwaysSet:p in u.data})}}catch(e){d.e(e)}finally{d.f()}if(this._def.catchall instanceof ih){var m=this._def.unknownKeys;if("passthrough"===m){var D,y=an(s);try{for(y.s();!(D=y.n()).done;){var g=D.value;f.push({key:{status:"valid",value:g},value:{status:"valid",value:u.data[g]}})}}catch(e){y.e(e)}finally{y.f()}}else if("strict"===m)s.length>0&&(dp(u,{code:ip.unrecognized_keys,keys:s}),r.dirty());else if("strip"!==m)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{var F,E=this._def.catchall,_=an(s);try{for(_.s();!(F=_.n()).done;){var b=F.value,C=u.data[b];f.push({key:{status:"valid",value:b},value:E._parse(new _p(u,C,u.path,b)),alwaysSet:b in u.data})}}catch(e){_.e(e)}finally{_.f()}}return u.common.async?Promise.resolve().then(Xt(vn().m(function e(){var t,n,r,u,a,i,o;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:t=[],n=an(f),e.p=1,n.s();case 2:if((r=n.n()).done){e.n=6;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:i=e.v,t.push({key:a,value:i,alwaysSet:u.alwaysSet});case 5:e.n=2;break;case 6:e.n=8;break;case 7:e.p=7,o=e.v,n.e(o);case 8:return e.p=8,n.f(),e.f(8);case 9:return e.a(2,t)}},e,null,[[1,7,8,9]])}))).then(function(e){return hp.mergeObjectSync(r,e)}):hp.mergeObjectSync(r,f)}},{key:"shape",get:function(){return this._def.shape()}},{key:"strict",value:function(t){var n=this;return pp.errToObj,new e(pn(pn({},this._def),{},{unknownKeys:"strict"},void 0!==t?{errorMap:function(e,r){var u,a,i,o,s=null!==(u=null===(a=(i=n._def).errorMap)||void 0===a?void 0:a.call(i,e,r).message)&&void 0!==u?u:r.defaultError;return"unrecognized_keys"===e.code?{message:null!==(o=pp.errToObj(t).message)&&void 0!==o?o:s}:{message:s}}}:{}))}},{key:"strip",value:function(){return new e(pn(pn({},this._def),{},{unknownKeys:"strip"}))}},{key:"passthrough",value:function(){return new e(pn(pn({},this._def),{},{unknownKeys:"passthrough"}))}},{key:"extend",value:function(t){var n=this;return new e(pn(pn({},this._def),{},{shape:function(){return pn(pn({},n._def.shape()),t)}}))}},{key:"merge",value:function(t){var n=this;return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:function(){return pn(pn({},n._def.shape()),t._def.shape())},typeName:Th.ZodObject})}},{key:"setKey",value:function(e,t){return this.augment(on({},e,t))}},{key:"catchall",value:function(t){return new e(pn(pn({},this._def),{},{catchall:t}))}},{key:"pick",value:function(t){var n,r={},u=an(Gd.objectKeys(t));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]&&this.shape[a]&&(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"omit",value:function(t){var n,r={},u=an(Gd.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]||(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"deepPartial",value:function(){return ch(this)}},{key:"partial",value:function(t){var n,r={},u=an(Gd.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value,i=this.shape[a];t&&!t[a]?r[a]=i:r[a]=i.optional()}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"required",value:function(t){var n,r={},u=an(Gd.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;if(t&&!t[a])r[a]=this.shape[a];else{for(var i=this.shape[a];i instanceof Sh;)i=i._def.innerType;r[a]=i}}}catch(e){u.e(e)}finally{u.f()}return new e(pn(pn({},this._def),{},{shape:function(){return r}}))}},{key:"keyof",value:function(){return bh(Gd.objectKeys(this.shape))}}])}();lh.create=function(e,t){return new lh(pn({shape:function(){return e},unknownKeys:"strip",catchall:ih.create(),typeName:Th.ZodObject},Cp(t)))},lh.strictCreate=function(e,t){return new lh(pn({shape:function(){return e},unknownKeys:"strict",catchall:ih.create(),typeName:Th.ZodObject},Cp(t)))},lh.lazycreate=function(e,t){return new lh(pn({shape:e,unknownKeys:"strip",catchall:ih.create(),typeName:Th.ZodObject},Cp(t)))};var fh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx,n=this._def.options;if(t.common.async)return Promise.all(n.map(function(){var e=Xt(vn().m(function e(n){var r,u,a;return vn().w(function(e){for(;;)switch(e.n){case 0:return r=pn(pn({},t),{},{common:pn(pn({},t.common),{},{issues:[]}),parent:null}),e.n=1,n._parseAsync({data:t.data,path:t.path,parent:r});case 1:return u=e.v,a=r,e.a(2,{result:u,ctx:a})}},e)}));return function(t){return e.apply(this,arguments)}}())).then(function(e){var n,r=an(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if("valid"===u.result.status)return u.result}}catch(e){r.e(e)}finally{r.f()}var a,i=an(e);try{for(i.s();!(a=i.n()).done;){var o,s=a.value;if("dirty"===s.result.status)return(o=t.common.issues).push.apply(o,gn(s.ctx.common.issues)),s.result}}catch(e){i.e(e)}finally{i.f()}var c=e.map(function(e){return new op(e.ctx.common.issues)});return dp(t,{code:ip.invalid_union,unionErrors:c}),vp});var r,u,a=void 0,i=[],o=an(n);try{for(o.s();!(r=o.n()).done;){var s=r.value,c=pn(pn({},t),{},{common:pn(pn({},t.common),{},{issues:[]}),parent:null}),l=s._parseSync({data:t.data,path:t.path,parent:c});if("valid"===l.status)return l;"dirty"!==l.status||a||(a={result:l,ctx:c}),c.common.issues.length&&i.push(c.common.issues)}}catch(e){o.e(e)}finally{o.f()}if(a)return(u=t.common.issues).push.apply(u,gn(a.ctx.common.issues)),a.result;var f=i.map(function(e){return new op(e)});return dp(t,{code:ip.invalid_union,unionErrors:f}),vp}},{key:"options",get:function(){return this._def.options}}])}();fh.create=function(e,t){return new fh(pn({options:e,typeName:Th.ZodUnion},Cp(t)))};var dh=function(e){return e instanceof Eh?dh(e.schema):e instanceof wh?dh(e.innerType()):e instanceof _h?[e.value]:e instanceof Ch?e.options:e instanceof kh?Gd.objectValues(e.enum):e instanceof Oh?dh(e._def.innerType):e instanceof nh?[void 0]:e instanceof rh?[null]:e instanceof Sh?[void 0].concat(gn(dh(e.unwrap()))):e instanceof xh?[null].concat(gn(dh(e.unwrap()))):e instanceof Ph||e instanceof Nh?dh(e.unwrap()):e instanceof Bh?dh(e._def.innerType):[]},ph=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==up.object)return dp(t,{code:ip.invalid_type,expected:up.object,received:t.parsedType}),vp;var n=this.discriminator,r=t.data[n],u=this.optionsMap.get(r);return u?t.common.async?u._parseAsync({data:t.data,path:t.path,parent:t}):u._parseSync({data:t.data,path:t.path,parent:t}):(dp(t,{code:ip.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),vp)}},{key:"discriminator",get:function(){return this._def.discriminator}},{key:"options",get:function(){return this._def.options}},{key:"optionsMap",get:function(){return this._def.optionsMap}}],[{key:"create",value:function(t,n,r){var u,a=new Map,i=an(n);try{for(i.s();!(u=i.n()).done;){var o=u.value,s=dh(o.shape[t]);if(!s.length)throw new Error("A discriminator value for key `".concat(t,"` could not be extracted from all schema options"));var c,l=an(s);try{for(l.s();!(c=l.n()).done;){var f=c.value;if(a.has(f))throw new Error("Discriminator property ".concat(String(t)," has duplicate value ").concat(String(f)));a.set(f,o)}}catch(e){l.e(e)}finally{l.f()}}}catch(e){i.e(e)}finally{i.f()}return new e(pn({typeName:Th.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:a},Cp(r)))}}])}();function hh(e,t){var n=ap(e),r=ap(t);if(e===t)return{valid:!0,data:e};if(n===up.object&&r===up.object){var u,a=Gd.objectKeys(t),i=Gd.objectKeys(e).filter(function(e){return-1!==a.indexOf(e)}),o=pn(pn({},e),t),s=an(i);try{for(s.s();!(u=s.n()).done;){var c=u.value,l=hh(e[c],t[c]);if(!l.valid)return{valid:!1};o[c]=l.data}}catch(e){s.e(e)}finally{s.f()}return{valid:!0,data:o}}if(n===up.array&&r===up.array){if(e.length!==t.length)return{valid:!1};for(var f=[],d=0;dthis._def.items.length&&(dp(u,{code:ip.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());var a=gn(u.data).map(function(e,n){var r=t._def.items[n]||t._def.rest;return r?r._parse(new _p(u,e,u.path,n)):null}).filter(function(e){return!!e});return u.common.async?Promise.all(a).then(function(e){return hp.mergeArray(r,e)}):hp.mergeArray(r,a)}},{key:"items",get:function(){return this._def.items}},{key:"rest",value:function(t){return new e(pn(pn({},this._def),{},{rest:t}))}}])}();mh.create=function(e,t){if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new mh(pn({items:e,typeName:Th.ZodTuple,rest:null},Cp(t)))};var Dh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"keySchema",get:function(){return this._def.keyType}},{key:"valueSchema",get:function(){return this._def.valueType}},{key:"_parse",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==up.object)return dp(r,{code:ip.invalid_type,expected:up.object,received:r.parsedType}),vp;var u=[],a=this._def.keyType,i=this._def.valueType;for(var o in r.data)u.push({key:a._parse(new _p(r,o,r.path,o)),value:i._parse(new _p(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?hp.mergeObjectAsync(n,u):hp.mergeObjectSync(n,u)}},{key:"element",get:function(){return this._def.valueType}}],[{key:"create",value:function(t,n,r){return new e(n instanceof Ap?pn({keyType:t,valueType:n,typeName:Th.ZodRecord},Cp(r)):pn({keyType:Jp.create(),valueType:t,typeName:Th.ZodRecord},Cp(n)))}}])}(),yh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"keySchema",get:function(){return this._def.keyType}},{key:"valueSchema",get:function(){return this._def.valueType}},{key:"_parse",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==up.map)return dp(r,{code:ip.invalid_type,expected:up.map,received:r.parsedType}),vp;var u=this._def.keyType,a=this._def.valueType,i=gn(r.data.entries()).map(function(e,t){var n=yn(e,2),i=n[0],o=n[1];return{key:u._parse(new _p(r,i,r.path,[t,"key"])),value:a._parse(new _p(r,o,r.path,[t,"value"]))}});if(r.common.async){var o=new Map;return Promise.resolve().then(Xt(vn().m(function e(){var t,r,u,a,s,c;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:t=an(i),e.p=1,t.s();case 2:if((r=t.n()).done){e.n=7;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:if(s=e.v,"aborted"!==a.status&&"aborted"!==s.status){e.n=5;break}return e.a(2,vp);case 5:"dirty"!==a.status&&"dirty"!==s.status||n.dirty(),o.set(a.value,s.value);case 6:e.n=2;break;case 7:e.n=9;break;case 8:e.p=8,c=e.v,t.e(c);case 9:return e.p=9,t.f(),e.f(9);case 10:return e.a(2,{status:n.value,value:o})}},e,null,[[1,8,9,10]])})))}var s,c=new Map,l=an(i);try{for(l.s();!(s=l.n()).done;){var f=s.value,d=f.key,p=f.value;if("aborted"===d.status||"aborted"===p.status)return vp;"dirty"!==d.status&&"dirty"!==p.status||n.dirty(),c.set(d.value,p.value)}}catch(e){l.e(e)}finally{l.f()}return{status:n.value,value:c}}}])}();yh.create=function(e,t,n){return new yh(pn({valueType:t,keyType:e,typeName:Th.ZodMap},Cp(n)))};var gh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==up.set)return dp(r,{code:ip.invalid_type,expected:up.set,received:r.parsedType}),vp;var u=this._def;null!==u.minSize&&r.data.sizeu.maxSize.value&&(dp(r,{code:ip.too_big,maximum:u.maxSize.value,type:"set",inclusive:!0,exact:!1,message:u.maxSize.message}),n.dirty());var a=this._def.valueType;function i(e){var t,r=new Set,u=an(e);try{for(u.s();!(t=u.n()).done;){var a=t.value;if("aborted"===a.status)return vp;"dirty"===a.status&&n.dirty(),r.add(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:n.value,value:r}}var o=gn(r.data.values()).map(function(e,t){return a._parse(new _p(r,e,r.path,t))});return r.common.async?Promise.all(o).then(function(e){return i(e)}):i(o)}},{key:"min",value:function(t,n){return new e(pn(pn({},this._def),{},{minSize:{value:t,message:pp.toString(n)}}))}},{key:"max",value:function(t,n){return new e(pn(pn({},this._def),{},{maxSize:{value:t,message:pp.toString(n)}}))}},{key:"size",value:function(e,t){return this.min(e,t).max(e,t)}},{key:"nonempty",value:function(e){return this.min(1,e)}}])}();gh.create=function(e,t){return new gh(pn({valueType:e,minSize:null,maxSize:null,typeName:Th.ZodSet},Cp(t)))};var Fh=function(){function e(){var t;return tn(this,e),(t=en(this,e,arguments)).validate=t.implement,t}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==up.function)return dp(t,{code:ip.invalid_type,expected:up.function,received:t.parsedType}),vp;function n(e,n){return fp({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,lp(),sp].filter(function(e){return!!e}),issueData:{code:ip.invalid_arguments,argumentsError:n}})}function r(e,n){return fp({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,lp(),sp].filter(function(e){return!!e}),issueData:{code:ip.invalid_return_type,returnTypeError:n}})}var u={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof Ah){var i=this;return Dp(Xt(vn().m(function e(){var t,o,s,c,l,f,d,p=arguments;return vn().w(function(e){for(;;)switch(e.n){case 0:for(t=p.length,o=new Array(t),s=0;s1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(t,pn(pn({},this._def),n))}},{key:"exclude",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(this.options.filter(function(e){return!t.includes(e)}),pn(pn({},this._def),n))}}])}();Ch.create=bh;var kh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=Gd.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==up.string&&n.parsedType!==up.number){var r=Gd.objectValues(t);return dp(n,{expected:Gd.joinValues(r),received:n.parsedType,code:ip.invalid_type}),vp}if(this._cache||(this._cache=new Set(Gd.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){var u=Gd.objectValues(t);return dp(n,{received:n.data,code:ip.invalid_enum_value,options:u}),vp}return Dp(e.data)}},{key:"enum",get:function(){return this._def.values}}])}();kh.create=function(e,t){return new kh(pn({values:e,typeName:Th.ZodNativeEnum},Cp(t)))};var Ah=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"unwrap",value:function(){return this._def.type}},{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e).ctx;if(n.parsedType!==up.promise&&!1===n.common.async)return dp(n,{code:ip.invalid_type,expected:up.promise,received:n.parsedType}),vp;var r=n.parsedType===up.promise?n.data:Promise.resolve(n.data);return Dp(r.then(function(e){return t._def.type.parseAsync(e,{path:n.path,errorMap:n.common.contextualErrorMap})}))}}])}();Ah.create=function(e,t){return new Ah(pn({type:e,typeName:Th.ZodPromise},Cp(t)))};var wh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"innerType",value:function(){return this._def.schema}},{key:"sourceType",value:function(){return this._def.schema._def.typeName===Th.ZodEffects?this._def.schema.sourceType():this._def.schema}},{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._def.effect||null,i={addIssue:function(e){dp(u,e),e.fatal?r.abort():r.dirty()},get path(){return u.path}};if(i.addIssue=i.addIssue.bind(i),"preprocess"===a.type){var o=a.transform(u.data,i);if(u.common.async)return Promise.resolve(o).then(function(){var e=Xt(vn().m(function e(n){var a;return vn().w(function(e){for(;;)switch(e.n){case 0:if("aborted"!==r.value){e.n=1;break}return e.a(2,vp);case 1:return e.n=2,t._def.schema._parseAsync({data:n,path:u.path,parent:u});case 2:if("aborted"!==(a=e.v).status){e.n=3;break}return e.a(2,vp);case 3:if("dirty"!==a.status){e.n=4;break}return e.a(2,mp(a.value));case 4:if("dirty"!==r.value){e.n=5;break}return e.a(2,mp(a.value));case 5:return e.a(2,a)}},e)}));return function(t){return e.apply(this,arguments)}}());if("aborted"===r.value)return vp;var s=this._def.schema._parseSync({data:o,path:u.path,parent:u});return"aborted"===s.status?vp:"dirty"===s.status||"dirty"===r.value?mp(s.value):s}if("refinement"===a.type){var c=function(e){var t=a.refinement(e,i);if(u.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===u.common.async){var l=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});return"aborted"===l.status?vp:("dirty"===l.status&&r.dirty(),c(l.value),{status:r.value,value:l.value})}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return"aborted"===e.status?vp:("dirty"===e.status&&r.dirty(),c(e.value).then(function(){return{status:r.value,value:e.value}}))})}if("transform"===a.type){if(!1===u.common.async){var f=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});if(!Fp(f))return vp;var d=a.transform(f.value,i);if(d instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:d}}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return Fp(e)?Promise.resolve(a.transform(e.value,i)).then(function(e){return{status:r.value,value:e}}):vp})}Gd.assertNever(a)}}])}();wh.create=function(e,t,n){return new wh(pn({schema:e,typeName:Th.ZodEffects,effect:t},Cp(n)))},wh.createWithPreprocess=function(e,t,n){return new wh(pn({schema:t,effect:{type:"preprocess",transform:e},typeName:Th.ZodEffects},Cp(n)))};var Sh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){return this._getType(e)===up.undefined?Dp(void 0):this._def.innerType._parse(e)}},{key:"unwrap",value:function(){return this._def.innerType}}])}();Sh.create=function(e,t){return new Sh(pn({innerType:e,typeName:Th.ZodOptional},Cp(t)))};var xh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){return this._getType(e)===up.null?Dp(null):this._def.innerType._parse(e)}},{key:"unwrap",value:function(){return this._def.innerType}}])}();xh.create=function(e,t){return new xh(pn({innerType:e,typeName:Th.ZodNullable},Cp(t)))};var Oh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return t.parsedType===up.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}},{key:"removeDefault",value:function(){return this._def.innerType}}])}();Oh.create=function(e,t){return new Oh(pn({innerType:e,typeName:Th.ZodDefault,defaultValue:"function"==typeof t.default?t.default:function(){return t.default}},Cp(t)))};var Bh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e).ctx,r=pn(pn({},n),{},{common:pn(pn({},n.common),{},{issues:[]})}),u=this._def.innerType._parse({data:r.data,path:r.path,parent:pn({},r)});return Ep(u)?u.then(function(e){return{status:"valid",value:"valid"===e.status?e.value:t._def.catchValue({get error(){return new op(r.common.issues)},input:r.data})}}):{status:"valid",value:"valid"===u.status?u.value:this._def.catchValue({get error(){return new op(r.common.issues)},input:r.data})}}},{key:"removeCatch",value:function(){return this._def.innerType}}])}();Bh.create=function(e,t){return new Bh(pn({innerType:e,typeName:Th.ZodCatch,catchValue:"function"==typeof t.catch?t.catch:function(){return t.catch}},Cp(t)))};var Ih=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){if(this._getType(e)!==up.nan){var t=this._getOrReturnCtx(e);return dp(t,{code:ip.invalid_type,expected:up.nan,received:t.parsedType}),vp}return{status:"valid",value:e.data}}}])}();Ih.create=function(e){return new Ih(pn({typeName:Th.ZodNaN},Cp(e)))};var Th,Ph=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}},{key:"unwrap",value:function(){return this._def.type}}])}(),jh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx;if(u.common.async){var a=function(){var e=Xt(vn().m(function e(){var n;return vn().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,t._def.in._parseAsync({data:u.data,path:u.path,parent:u});case 1:if("aborted"!==(n=e.v).status){e.n=2;break}return e.a(2,vp);case 2:if("dirty"!==n.status){e.n=3;break}return r.dirty(),e.a(2,mp(n.value));case 3:return e.a(2,t._def.out._parseAsync({data:n.value,path:u.path,parent:u}));case 4:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();return a()}var i=this._def.in._parseSync({data:u.data,path:u.path,parent:u});return"aborted"===i.status?vp:"dirty"===i.status?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:u.path,parent:u})}}],[{key:"create",value:function(t,n){return new e({in:t,out:n,typeName:Th.ZodPipeline})}}])}(),Nh=function(){function e(){return tn(this,e),en(this,e,arguments)}return ln(e,Ap),un(e,[{key:"_parse",value:function(e){var t=this._def.innerType._parse(e),n=function(e){return Fp(e)&&(e.value=Object.freeze(e.value)),e};return Ep(t)?t.then(function(e){return n(e)}):n(t)}},{key:"unwrap",value:function(){return this._def.innerType}}])}();Nh.create=function(e,t){return new Nh(pn({innerType:e,typeName:Th.ZodReadonly},Cp(t)))},lh.lazycreate,function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(Th||(Th={})),Jp.create,Gp.create,Ih.create,Yp.create,Xp.create,eh.create,th.create,nh.create,rh.create,uh.create,ah.create,ih.create,oh.create,sh.create,lh.create,lh.strictCreate,fh.create,ph.create,vh.create,mh.create,Dh.create,yh.create,gh.create,Fh.create,Eh.create,_h.create,Ch.create,kh.create,Ah.create,wh.create,Sh.create,xh.create,wh.createWithPreprocess,jh.create;var zh=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.prefix,n=e.size,r=void 0===n?16:n,u=e.alphabet,a=void 0===u?"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz":u,i=e.separator,o=void 0===i?"-":i,s=function(){for(var e=a.length,t=new Array(r),n=0;n0&&void 0!==arguments[0]?arguments[0]:globalThis;return r.window?"runtime/browser":(null==(e=r.navigator)?void 0:e.userAgent)?"runtime/".concat(r.navigator.userAgent.toLowerCase()):(null==(n=null==(t=r.process)?void 0:t.versions)?void 0:n.node)?"runtime/node.js/".concat(r.process.version.substring(0)):r.EdgeRuntime?"runtime/vercel-edge":"runtime/unknown"}function Zh(e){if(null==e)return{};var t={};if(e instanceof Headers)e.forEach(function(e,n){t[n.toLowerCase()]=e});else{Array.isArray(e)||(e=Object.entries(e));var n,r=s(e);try{for(r.s();!(n=r.n()).done;){var u=g(n.value,2),a=u[0],i=u[1];null!=i&&(t[a.toLowerCase()]=i)}}catch(e){r.e(e)}finally{r.f()}}return t}function Lh(e){for(var t=new Headers(Zh(e)),n=t.get("user-agent")||"",r=arguments.length,u=new Array(r>1?r-1:0),a=1;a1?r:r[0]}}if(n.every(function(e){return"ZodLiteral"===e._def.typeName&&!e.description})){var u=n.reduce(function(e,t){var n=_(t._def.value);switch(n){case"string":case"number":case"boolean":return[].concat(F(e),[n]);case"bigint":return[].concat(F(e),["integer"]);case"object":if(null===t._def.value)return[].concat(F(e),["null"]);default:return e}},[]);if(u.length===n.length){var a=u.filter(function(e,t,n){return n.indexOf(e)===t});return{type:a.length>1?a:a[0],enum:n.reduce(function(e,t){return e.includes(t._def.value)?e:[].concat(F(e),[t._def.value])},[])}}}else if(n.every(function(e){return"ZodEnum"===e._def.typeName}))return{type:"string",enum:n.reduce(function(e,t){return[].concat(F(e),F(t._def.values.filter(function(t){return!e.includes(t)})))},[])};return function(e,t){var n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map(function(e,n){return xv(e._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["anyOf","".concat(n)])}))}).filter(function(e){return!!e&&(!t.strictUnions||"object"==_(e)&&Object.keys(e).length>0)});return n.length?{anyOf:n}:void 0}(e,t)}(e,n);case Th.ZodIntersection:return function(e,t){var n=[xv(e.left._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf","0"])})),xv(e.right._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf","1"])}))].filter(function(e){return!!e}),r=[];return n.forEach(function(e){if("type"in(n=e)&&"string"===n.type||!("allOf"in n)){var t=e;if("additionalProperties"in e&&!1===e.additionalProperties)e.additionalProperties,t=v(e,Vt);r.push(t)}else r.push.apply(r,F(e.allOf));var n}),r.length?{allOf:r}:void 0}(e,n);case Th.ZodTuple:return function(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map(function(e,n){return xv(e._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","".concat(n)])}))}).reduce(function(e,t){return void 0===t?e:[].concat(F(e),[t])},[]),additionalItems:xv(e.rest._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["additionalItems"])}))}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map(function(e,n){return xv(e._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","".concat(n)])}))}).reduce(function(e,t){return void 0===t?e:[].concat(F(e),[t])},[])}}(e,n);case Th.ZodRecord:return kv(e,n);case Th.ZodLiteral:return function(e){var t=_(e.value);return"bigint"!==t&&"number"!==t&&"boolean"!==t&&"string"!==t?{type:Array.isArray(e.value)?"array":"object"}:{type:"bigint"===t?"integer":t,const:e.value}}(e);case Th.ZodEnum:return function(e){return{type:"string",enum:Array.from(e.values)}}(e);case Th.ZodNativeEnum:return function(e){var t=e.values,n=Object.keys(e.values).filter(function(e){return"number"!=typeof t[t[e]]}).map(function(e){return t[e]}),r=Array.from(new Set(n.map(function(e){return _(e)})));return{type:1===r.length?"string"===r[0]?"string":"number":["string","number"],enum:n}}(e);case Th.ZodNullable:return function(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Av[e.innerType._def.typeName],"null"]};var n=xv(e.innerType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["anyOf","0"])}));return n&&{anyOf:[n,{type:"null"}]}}(e,n);case Th.ZodOptional:return function(e,t){var n;if(t.currentPath.toString()===(null==(n=t.propertyPath)?void 0:n.toString()))return xv(e.innerType._def,t);var r=xv(e.innerType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["anyOf","1"])}));return r?{anyOf:[{not:{}},r]}:{}}(e,n);case Th.ZodMap:return function(e,t){return"record"===t.mapStrategy?kv(e,t):{type:"array",maxItems:125,items:{type:"array",items:[xv(e.keyType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","items","0"])}))||{},xv(e.valueType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items","items","1"])}))||{}],minItems:2,maxItems:2}}}(e,n);case Th.ZodSet:return function(e,t){var n={type:"array",uniqueItems:!0,items:xv(e.valueType._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["items"])}))};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}(e,n);case Th.ZodLazy:return function(){return e.getter()._def};case Th.ZodPromise:return function(e,t){return xv(e.type._def,t)}(e,n);case Th.ZodNaN:case Th.ZodNever:return{not:{}};case Th.ZodEffects:return function(e,t){return"input"===t.effectStrategy?xv(e.schema._def,t):{}}(e,n);case Th.ZodAny:case Th.ZodUnknown:return{};case Th.ZodDefault:return function(e,t){return h(h({},xv(e.innerType._def,t)),{},{default:e.defaultValue()})}(e,n);case Th.ZodBranded:return uv(e,n);case Th.ZodReadonly:case Th.ZodCatch:return function(e,t){return xv(e.innerType._def,t)}(e,n);case Th.ZodPipeline:return function(e,t){if("input"===t.pipeStrategy)return xv(e.in._def,t);if("output"===t.pipeStrategy)return xv(e.out._def,t);var n=xv(e.in._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf","0"])}));return{allOf:[n,xv(e.out._def,h(h({},t),{},{currentPath:[].concat(F(t.currentPath),["allOf",n?"1":"0"])}))].filter(function(e){return void 0!==e})}}(e,n);case Th.ZodFunction:case Th.ZodVoid:case Th.ZodSymbol:default:return}};function xv(e,t){var n,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],u=t.seen.get(e);if(t.override){var a=null==(n=t.override)?void 0:n.call(t,e,t,u,r);if(a!==nv)return a}if(u&&!r){var i=Ov(u,t);if(void 0!==i)return i}var o={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,o);var s=Sv(e,e.typeName,t),c="function"==typeof s?xv(s(),t):s;if(c&&Bv(e,t,c),t.postProcess){var l=t.postProcess(c,e,t);return o.jsonSchema=c,l}return o.jsonSchema=c,c}var Ov=function(e,t){switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:tv(t.currentPath,e.path)};case"none":case"seen":return e.path.length0){var v="draft-2020-12"===r.target?"$defs":"definitions";c.__shared=on({},v,u)}return{schemas:c}}var m=new bf(t);return m.process(e),m.emit(e,t)}(e,{target:"draft-7",io:"output",reused:"inline"})},{validate:(t=r(m().m(function t(n){var r;return m().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,Pf(e,n);case 1:return r=t.v,t.a(2,r.success?{success:!0,value:r.data}:{success:!1,error:r.error})}},t)})),function(e){return t.apply(this,arguments)})});var t}(e):function(e){return jv(function(){return Iv(e,{$refStrategy:"none"})},{validate:(t=r(m().m(function t(n){var r;return m().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,e.safeParseAsync(n);case 1:return r=t.v,t.a(2,r.success?{success:!0,value:r.data}:{success:!1,error:r.error})}},t)})),function(e){return t.apply(this,arguments)})});var t}(e)}var Pv=Symbol.for("vercel.ai.schema");function jv(e){var t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).validate;return c(function(e,t,n,r){var u={configurable:!0,enumerable:!0};return u[e]=r,Object.defineProperty(t,n,u)}("get",c(c(c({},Pv,!0),"_type",void 0),Hh,!0),"jsonSchema",function(){return"function"==typeof e&&(e=e()),e}),"validate",t)}var Nv,zv=Object.defineProperty,Rv="AI_NoObjectGeneratedError",Mv="vercel.ai.error.".concat(Rv),Zv=Symbol.for(Mv),Lv=function(e){function t(e){var n,r=e.message,i=void 0===r?"No object generated.":r,o=e.cause,s=e.text,c=e.response,l=e.usage,f=e.finishReason;return a(this,t),(n=u(this,t,[{name:Rv,message:i,cause:o}]))[Nv]=!0,n.text=s,n.response=c,n.usage=l,n.finishReason=f,n}return f(t,e),o(t,null,[{key:"isInstance",value:function(e){return zo.hasMarker(e,Mv)}}])}(zo);Nv=Zv;var $v="5.0.93",qv=Bd([Vf(),rp(Uint8Array),rp(ArrayBuffer),np(function(e){var t,n;return null!=(n=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&n},{message:"Must be a Buffer"})]),Uv=new ep({type:"lazy",getter:function(){return Bd([Fd(),Vf(),hd(),yd(),jd(Vf(),Uv),Ad(Uv)])}}),Hv=jd(Vf(),jd(Vf(),Uv)),Vv=Sd({type:Md("text"),text:Vf(),providerOptions:Hv.optional()}),Wv=Sd({type:Md("image"),image:Bd([qv,rp(URL)]),mediaType:Vf().optional(),providerOptions:Hv.optional()}),Kv=Sd({type:Md("file"),data:Bd([qv,rp(URL)]),filename:Vf().optional(),mediaType:Vf(),providerOptions:Hv.optional()}),Jv=Sd({type:Md("reasoning"),text:Vf(),providerOptions:Hv.optional()}),Qv=Sd({type:Md("tool-call"),toolCallId:Vf(),toolName:Vf(),input:_d(),providerOptions:Hv.optional(),providerExecuted:yd().optional()}),Gv=new Id(pn({type:"union",options:[Sd({type:Md("text"),value:Vf()}),Sd({type:Md("json"),value:Uv}),Sd({type:Md("error-text"),value:Vf()}),Sd({type:Md("error-json"),value:Uv}),Sd({type:Md("content"),value:Ad(Bd([Sd({type:Md("text"),text:Vf()}),Sd({type:Md("media"),data:Vf(),mediaType:Vf()})]))})],discriminator:"type"},As(undefined))),Yv=Sd({type:Md("tool-result"),toolCallId:Vf(),toolName:Vf(),output:Gv,providerOptions:Hv.optional()}),Xv=Sd({role:Md("system"),content:Vf(),providerOptions:Hv.optional()}),em=Sd({role:Md("user"),content:Bd([Vf(),Ad(Bd([Vv,Wv,Kv]))]),providerOptions:Hv.optional()}),tm=Sd({role:Md("assistant"),content:Bd([Vf(),Ad(Bd([Vv,Kv,Jv,Qv,Yv]))]),providerOptions:Hv.optional()});Bd([Xv,em,tm,Sd({role:Md("tool"),content:Ad(Yv),providerOptions:Hv.optional()})]),zh({prefix:"aitxt",size:24}),TransformStream;var nm=function(){var e;return function(){return null==e&&(e=Tv(Bd([xd({type:Md("text-start"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("text-delta"),id:Vf(),delta:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("text-end"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("error"),errorText:Vf()}),xd({type:Md("tool-input-start"),toolCallId:Vf(),toolName:Vf(),providerExecuted:yd().optional(),dynamic:yd().optional()}),xd({type:Md("tool-input-delta"),toolCallId:Vf(),inputTextDelta:Vf()}),xd({type:Md("tool-input-available"),toolCallId:Vf(),toolName:Vf(),input:_d(),providerExecuted:yd().optional(),providerMetadata:Hv.optional(),dynamic:yd().optional()}),xd({type:Md("tool-input-error"),toolCallId:Vf(),toolName:Vf(),input:_d(),providerExecuted:yd().optional(),providerMetadata:Hv.optional(),dynamic:yd().optional(),errorText:Vf()}),xd({type:Md("tool-output-available"),toolCallId:Vf(),output:_d(),providerExecuted:yd().optional(),dynamic:yd().optional(),preliminary:yd().optional()}),xd({type:Md("tool-output-error"),toolCallId:Vf(),errorText:Vf(),providerExecuted:yd().optional(),dynamic:yd().optional()}),xd({type:Md("reasoning-start"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("reasoning-delta"),id:Vf(),delta:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("reasoning-end"),id:Vf(),providerMetadata:Hv.optional()}),xd({type:Md("source-url"),sourceId:Vf(),url:Vf(),title:Vf().optional(),providerMetadata:Hv.optional()}),xd({type:Md("source-document"),sourceId:Vf(),mediaType:Vf(),title:Vf(),filename:Vf().optional(),providerMetadata:Hv.optional()}),xd({type:Md("file"),url:Vf(),mediaType:Vf(),providerMetadata:Hv.optional()}),xd({type:np(function(e){return"string"==typeof e&&e.startsWith("data-")},{message:'Type must start with "data-"'}),id:Vf().optional(),data:_d(),transient:yd().optional()}),xd({type:Md("start-step")}),xd({type:Md("finish-step")}),xd({type:Md("start"),messageId:Vf().optional(),messageMetadata:_d().optional()}),xd({type:Md("finish"),finishReason:zd(["stop","length","content-filter","tool-calls","error","other","unknown"]).optional(),messageMetadata:_d().optional()}),xd({type:Md("abort")}),xd({type:Md("message-metadata"),messageMetadata:_d()})]))),e}}();function rm(e,t){if(void 0!==e||void 0!==t){if(void 0===e)return t;if(void 0===t)return e;var n=h({},e);for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var u=t[r];if(void 0===u)continue;var a=r in e?e[r]:void 0,i=!(null===u||"object"!=_(u)||Array.isArray(u)||u instanceof Date||u instanceof RegExp),o=!(null==a||"object"!=_(a)||Array.isArray(a)||a instanceof Date||a instanceof RegExp);n[r]=i&&o?rm(a,u):u}return n}}function um(e){var t=["ROOT"],n=-1,r=null;function u(e,u,a){switch(e){case'"':n=u,t.pop(),t.push(a),t.push("INSIDE_STRING");break;case"f":case"t":case"n":n=u,r=u,t.pop(),t.push(a),t.push("INSIDE_LITERAL");break;case"-":t.pop(),t.push(a),t.push("INSIDE_NUMBER");break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n=u,t.pop(),t.push(a),t.push("INSIDE_NUMBER");break;case"{":n=u,t.pop(),t.push(a),t.push("INSIDE_OBJECT_START");break;case"[":n=u,t.pop(),t.push(a),t.push("INSIDE_ARRAY_START")}}function a(e,r){switch(e){case",":t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break;case"}":n=r,t.pop()}}function i(e,r){switch(e){case",":t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break;case"]":n=r,t.pop()}}for(var o=0;o=0;f--)switch(t[f]){case"INSIDE_STRING":l+='"';break;case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":l+="}";break;case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":l+="]";break;case"INSIDE_LITERAL":var d=e.substring(r,e.length);"true".startsWith(d)?l+="true".slice(d.length):"false".startsWith(d)?l+="false".slice(d.length):"null".startsWith(d)&&(l+="null".slice(d.length))}return l}function am(e){return im.apply(this,arguments)}function im(){return im=r(m().m(function e(t){var n,r;return m().w(function(e){for(;;)switch(e.n){case 0:if(void 0!==t){e.n=1;break}return e.a(2,{value:void 0,state:"undefined-input"});case 1:return e.n=2,Gh({text:t});case 2:if(!(n=e.v).success){e.n=3;break}r={value:n.value,state:"successful-parse"},e.n=5;break;case 3:return e.n=4,Gh({text:um(t)});case 4:n=e.v,r=n.success?{value:n.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"};case 5:return e.a(2,r)}},e)})),im.apply(this,arguments)}function om(e){return e.type.startsWith("tool-")}function sm(e){return om(e)||function(e){return"dynamic-tool"===e.type}(e)}function cm(e){return e.type.split("-").slice(1).join("-")}function lm(e){var t=e.lastMessage,n=e.messageId;return{message:"assistant"===(null==t?void 0:t.role)?t:{id:n,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function fm(e){var t=e.stream,n=e.messageMetadataSchema,u=e.dataPartSchemas,a=e.runUpdateMessageJob,i=e.onError,o=e.onToolCall,s=e.onData;return t.pipeThrough(new TransformStream({transform:function(e,t){return r(m().m(function c(){return m().w(function(c){for(;;)switch(c.n){case 0:return c.n=1,a(function(){var a=r(m().m(function a(c){var l,f,d,p,v,D,y,g,F,E,_,b,C,k,A,w,S,x,O,B,I,T,P,j,N,z,R,M,Z;return m().w(function(a){for(;;)switch(a.n){case 0:b=function(){return b=r(m().m(function e(t){var r;return m().w(function(e){for(;;)switch(e.n){case 0:if(null==t){e.n=2;break}if(r=null!=l.message.metadata?rm(l.message.metadata,t):t,!(null!=n)){e.n=1;break}return e.n=1,Wh({value:r,schema:n});case 1:l.message.metadata=r;case 2:return e.a(2)}},e)})),b.apply(this,arguments)},_=function(e){return b.apply(this,arguments)},E=function(e){var t,n,r=l.message.parts.find(function(t){return"dynamic-tool"===t.type&&t.toolCallId===e.toolCallId}),u=e,a=r;null!=r?(r.state=e.state,a.toolName=e.toolName,a.input=u.input,a.output=u.output,a.errorText=u.errorText,a.rawInput=null!=(t=u.rawInput)?t:a.rawInput,a.preliminary=u.preliminary,a.providerExecuted=null!=(n=u.providerExecuted)?n:r.providerExecuted,null!=u.providerMetadata&&"input-available"===r.state&&(r.callProviderMetadata=u.providerMetadata)):l.message.parts.push(h({type:"dynamic-tool",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:u.input,output:u.output,errorText:u.errorText,preliminary:u.preliminary,providerExecuted:u.providerExecuted},null!=u.providerMetadata?{callProviderMetadata:u.providerMetadata}:{}))},F=function(e){var t,n=l.message.parts.find(function(t){return om(t)&&t.toolCallId===e.toolCallId}),r=e,u=n;null!=n?(n.state=e.state,u.input=r.input,u.output=r.output,u.errorText=r.errorText,u.rawInput=r.rawInput,u.preliminary=r.preliminary,u.providerExecuted=null!=(t=r.providerExecuted)?t:n.providerExecuted,null!=r.providerMetadata&&"input-available"===n.state&&(n.callProviderMetadata=r.providerMetadata)):l.message.parts.push(h({type:"tool-".concat(e.toolName),toolCallId:e.toolCallId,state:e.state,input:r.input,output:r.output,rawInput:r.rawInput,errorText:r.errorText,providerExecuted:r.providerExecuted,preliminary:r.preliminary},null!=r.providerMetadata?{callProviderMetadata:r.providerMetadata}:{}))},g=function(e){var t=l.message.parts.filter(function(e){return"dynamic-tool"===e.type}).find(function(t){return t.toolCallId===e});if(null==t)throw new Error("tool-output-error must be preceded by a tool-input-available");return t},y=function(e){var t=l.message.parts.filter(om).find(function(t){return t.toolCallId===e});if(null==t)throw new Error("tool-output-error must be preceded by a tool-input-available");return t},l=c.state,f=c.write,Z=e.type,a.n="text-start"===Z?1:"text-delta"===Z?2:"text-end"===Z?3:"reasoning-start"===Z?4:"reasoning-delta"===Z?5:"reasoning-end"===Z?6:"file"===Z?7:"source-url"===Z?8:"source-document"===Z?9:"tool-input-start"===Z?10:"tool-input-delta"===Z?11:"tool-input-available"===Z?13:"tool-input-error"===Z?15:"tool-output-available"===Z?16:"tool-output-error"===Z?17:"start-step"===Z?18:"finish-step"===Z?19:"start"===Z?20:"finish"===Z?22:"message-metadata"===Z?24:"error"===Z?26:27;break;case 1:return C={type:"text",text:"",providerMetadata:e.providerMetadata,state:"streaming"},l.activeTextParts[e.id]=C,l.message.parts.push(C),f(),a.a(3,30);case 2:return(k=l.activeTextParts[e.id]).text+=e.delta,k.providerMetadata=null!=(d=e.providerMetadata)?d:k.providerMetadata,f(),a.a(3,30);case 3:return(A=l.activeTextParts[e.id]).state="done",A.providerMetadata=null!=(p=e.providerMetadata)?p:A.providerMetadata,delete l.activeTextParts[e.id],f(),a.a(3,30);case 4:return w={type:"reasoning",text:"",providerMetadata:e.providerMetadata,state:"streaming"},l.activeReasoningParts[e.id]=w,l.message.parts.push(w),f(),a.a(3,30);case 5:return(S=l.activeReasoningParts[e.id]).text+=e.delta,S.providerMetadata=null!=(v=e.providerMetadata)?v:S.providerMetadata,f(),a.a(3,30);case 6:return(x=l.activeReasoningParts[e.id]).providerMetadata=null!=(D=e.providerMetadata)?D:x.providerMetadata,x.state="done",delete l.activeReasoningParts[e.id],f(),a.a(3,30);case 7:return l.message.parts.push({type:"file",mediaType:e.mediaType,url:e.url}),f(),a.a(3,30);case 8:return l.message.parts.push({type:"source-url",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),f(),a.a(3,30);case 9:return l.message.parts.push({type:"source-document",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),f(),a.a(3,30);case 10:return O=l.message.parts.filter(om),l.partialToolCalls[e.toolCallId]={text:"",toolName:e.toolName,index:O.length,dynamic:e.dynamic},e.dynamic?E({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted}):F({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-streaming",input:void 0,providerExecuted:e.providerExecuted}),f(),a.a(3,30);case 11:return(B=l.partialToolCalls[e.toolCallId]).text+=e.inputTextDelta,a.n=12,am(B.text);case 12:return I=a.v,T=I.value,B.dynamic?E({toolCallId:e.toolCallId,toolName:B.toolName,state:"input-streaming",input:T}):F({toolCallId:e.toolCallId,toolName:B.toolName,state:"input-streaming",input:T}),f(),a.a(3,30);case 13:if(e.dynamic?E({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):F({toolCallId:e.toolCallId,toolName:e.toolName,state:"input-available",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),f(),!(o&&!e.providerExecuted)){a.n=14;break}return a.n=14,o({toolCall:e});case 14:return a.a(3,30);case 15:return e.dynamic?E({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):F({toolCallId:e.toolCallId,toolName:e.toolName,state:"output-error",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),f(),a.a(3,30);case 16:return e.dynamic?(P=g(e.toolCallId),E({toolCallId:e.toolCallId,toolName:P.toolName,state:"output-available",input:P.input,output:e.output,preliminary:e.preliminary})):(j=y(e.toolCallId),F({toolCallId:e.toolCallId,toolName:cm(j),state:"output-available",input:j.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary})),f(),a.a(3,30);case 17:return e.dynamic?(N=g(e.toolCallId),E({toolCallId:e.toolCallId,toolName:N.toolName,state:"output-error",input:N.input,errorText:e.errorText,providerExecuted:e.providerExecuted})):(z=y(e.toolCallId),F({toolCallId:e.toolCallId,toolName:cm(z),state:"output-error",input:z.input,rawInput:z.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted})),f(),a.a(3,30);case 18:return l.message.parts.push({type:"step-start"}),a.a(3,30);case 19:return l.activeTextParts={},l.activeReasoningParts={},a.a(3,30);case 20:return null!=e.messageId&&(l.message.id=e.messageId),a.n=21,_(e.messageMetadata);case 21:return null==e.messageId&&null==e.messageMetadata||f(),a.a(3,30);case 22:return null!=e.finishReason&&(l.finishReason=e.finishReason),a.n=23,_(e.messageMetadata);case 23:return null!=e.messageMetadata&&f(),a.a(3,30);case 24:return a.n=25,_(e.messageMetadata);case 25:return null!=e.messageMetadata&&f(),a.a(3,30);case 26:return null==i||i(new Error(e.errorText)),a.a(3,30);case 27:if(!function(e){return e.type.startsWith("data-")}(e)){a.n=30;break}if(!(null!=(null==u?void 0:u[e.type]))){a.n=28;break}return a.n=28,Wh({value:e.data,schema:u[e.type]});case 28:if(!(R=e).transient){a.n=29;break}return null==s||s(R),a.a(3,30);case 29:M=null!=R.id?l.message.parts.find(function(e){return R.type===e.type&&R.id===e.id}):void 0,null!=M?M.data=R.data:l.message.parts.push(R),null==s||s(R),f();case 30:t.enqueue(e);case 31:return a.a(2)}},a)}));return function(e){return a.apply(this,arguments)}}());case 1:return c.a(2)}},c)}))()}}))}zh({prefix:"aitxt",size:24}),zh({prefix:"aiobj",size:24});var dm=function(){return o(function e(){a(this,e),this.queue=[],this.isProcessing=!1},[{key:"processQueue",value:(t=r(m().m(function e(){return m().w(function(e){for(;;)switch(e.n){case 0:if(this.isProcessing){e.n=5;break}this.isProcessing=!0;case 1:if(!(this.queue.length>0)){e.n=4;break}return e.n=2,this.queue[0]();case 2:this.queue.shift();case 3:e.n=1;break;case 4:this.isProcessing=!1;case 5:return e.a(2)}},e,this)})),function(){return t.apply(this,arguments)})},{key:"run",value:(e=r(m().m(function e(t){var n=this;return m().w(function(e){for(;;)if(0===e.n)return e.a(2,new Promise(function(e,u){n.queue.push(r(m().m(function n(){var r;return m().w(function(n){for(;;)switch(n.p=n.n){case 0:return n.p=0,n.n=1,t();case 1:e(),n.n=3;break;case 2:n.p=2,r=n.v,u(r);case 3:return n.a(2)}},n,null,[[0,2]])}))),n.processQueue()}))},e)})),function(t){return e.apply(this,arguments)})}]);var e,t}();zh({prefix:"aiobj",size:24}),function(e,t){for(var n in t)zv(e,n,{get:t[n],enumerable:!0})}({},{object:function(){return mm},text:function(){return vm}});var pm,hm,vm=function(){return{type:"text",responseFormat:{type:"text"},parsePartial:(t=r(m().m(function e(t){var n;return m().w(function(e){for(;;)if(0===e.n)return n=t.text,e.a(2,{partial:n})},e)})),function(e){return t.apply(this,arguments)}),parseOutput:(e=r(m().m(function e(t){var n;return m().w(function(e){for(;;)if(0===e.n)return n=t.text,e.a(2,n)},e)})),function(t){return e.apply(this,arguments)})};var e,t},mm=function(e){var t=function(e){return null==e?jv({properties:{},additionalProperties:!1}):"object"==_(t=e)&&null!==t&&Pv in t&&!0===t[Pv]&&"jsonSchema"in t&&"validate"in t?e:"function"==typeof e?e():Tv(e);var t}(e.schema);return{type:"object",responseFormat:{type:"json",schema:t.jsonSchema},parsePartial:function(e){return r(m().m(function t(){var n,r,u,a;return m().w(function(t){for(;;)switch(t.n){case 0:return n=e.text,t.n=1,am(n);case 1:r=t.v,a=r.state,t.n="failed-parse"===a||"undefined-input"===a?2:"repaired-parse"===a||"successful-parse"===a?3:4;break;case 2:case 5:return t.a(2);case 3:return t.a(2,{partial:r.value});case 4:throw u=r.state,new Error("Unsupported parse state: ".concat(u))}},t)}))()},parseOutput:function(e,n){return r(m().m(function r(){var u,a,i;return m().w(function(r){for(;;)switch(r.n){case 0:return u=e.text,r.n=1,Gh({text:u});case 1:if((a=r.v).success){r.n=2;break}throw new Lv({message:"No object generated: could not parse the response.",cause:a.error,text:u,response:n.response,usage:n.usage,finishReason:n.finishReason});case 2:return r.n=3,Jh({value:a.value,schema:t});case 3:if((i=r.v).success){r.n=4;break}throw new Lv({message:"No object generated: response did not match schema.",cause:i.error,text:u,response:n.response,usage:n.usage,finishReason:n.finishReason});case 4:return r.a(2,i.value)}},r)}))()}}},Dm=function(){return o(function e(t){var n=t.api,r=void 0===n?"/api/chat":n,u=t.credentials,i=t.headers,o=t.body,s=t.fetch,c=t.prepareSendMessagesRequest,l=t.prepareReconnectToStreamRequest;a(this,e),this.api=r,this.credentials=u,this.headers=i,this.body=o,this.fetch=s,this.prepareSendMessagesRequest=c,this.prepareReconnectToStreamRequest=l},[{key:"sendMessages",value:(t=r(m().m(function e(t){var n,r,u,a,i,o,s,c,l,f,d,p,D,y,g,F,E,_,b,C;return m().w(function(e){for(;;)switch(e.n){case 0:return n=t.abortSignal,r=v(t,Wt),e.n=1,Xh(this.body);case 1:return c=e.v,e.n=2,Xh(this.headers);case 2:return l=e.v,e.n=3,Xh(this.credentials);case 3:return f=e.v,d=h(h({},Zh(l)),Zh(r.headers)),e.n=4,null==(u=this.prepareSendMessagesRequest)?void 0:u.call(this,{api:this.api,id:r.chatId,messages:r.messages,body:h(h({},c),r.body),headers:d,credentials:f,requestMetadata:r.metadata,trigger:r.trigger,messageId:r.messageId});case 4:return p=e.v,D=null!=(a=null==p?void 0:p.api)?a:this.api,y=void 0!==(null==p?void 0:p.headers)?Zh(p.headers):d,g=void 0!==(null==p?void 0:p.body)?p.body:h(h(h({},c),r.body),{},{id:r.chatId,messages:r.messages,trigger:r.trigger,messageId:r.messageId}),F=null!=(i=null==p?void 0:p.credentials)?i:f,E=null!=(o=this.fetch)?o:globalThis.fetch,e.n=5,E(D,{method:"POST",headers:Lh(h({"Content-Type":"application/json"},y),"ai-sdk/".concat($v),Mh()),body:JSON.stringify(g),credentials:F,signal:n});case 5:if((_=e.v).ok){e.n=9;break}return b=Error,e.n=6,_.text();case 6:if(null==(s=e.v)){e.n=7;break}C=s,e.n=8;break;case 7:C="Failed to fetch the chat response.";case 8:throw new b(C);case 9:if(_.body){e.n=10;break}throw new Error("The response body is empty.");case 10:return e.a(2,this.processResponseStream(_.body))}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"reconnectToStream",value:(e=r(m().m(function e(t){var n,r,u,a,i,o,s,c,l,f,d,p,v,D,y,g,F;return m().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Xh(this.body);case 1:return o=e.v,e.n=2,Xh(this.headers);case 2:return s=e.v,e.n=3,Xh(this.credentials);case 3:return c=e.v,l=h(h({},Zh(s)),Zh(t.headers)),e.n=4,null==(n=this.prepareReconnectToStreamRequest)?void 0:n.call(this,{api:this.api,id:t.chatId,body:h(h({},o),t.body),headers:l,credentials:c,requestMetadata:t.metadata});case 4:return f=e.v,d=null!=(r=null==f?void 0:f.api)?r:"".concat(this.api,"/").concat(t.chatId,"/stream"),p=void 0!==(null==f?void 0:f.headers)?Zh(f.headers):l,v=null!=(u=null==f?void 0:f.credentials)?u:c,D=null!=(a=this.fetch)?a:globalThis.fetch,e.n=5,D(d,{method:"GET",headers:Lh(p,"ai-sdk/".concat($v),Mh()),credentials:v});case 5:if(204!==(y=e.v).status){e.n=6;break}return e.a(2,null);case 6:if(y.ok){e.n=10;break}return g=Error,e.n=7,y.text();case 7:if(null==(i=e.v)){e.n=8;break}F=i,e.n=9;break;case 8:F="Failed to fetch the chat response.";case 9:throw new g(F);case 10:if(y.body){e.n=11;break}throw new Error("The response body is empty.");case 11:return e.a(2,this.processResponseStream(y.body))}},e,this)})),function(t){return e.apply(this,arguments)})}]);var e,t}(),ym=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return a(this,t),u(this,t,[e])}return f(t,e),o(t,[{key:"processResponseStream",value:function(e){return function(e){var t=e.schema;return e.stream.pipeThrough(new TextDecoderStream).pipeThrough(new ns).pipeThrough(new TransformStream({transform:function(e,n){return r(m().m(function r(){var u,a;return m().w(function(r){for(;;)switch(r.n){case 0:if(u=e.data,!("[DONE]"!==u)){r.n=2;break}return a=n,r.n=1,Gh({text:u,schema:t});case 1:a.enqueue.call(a,r.v);case 2:return r.a(2)}},r)}))()}}))}({stream:e,schema:nm}).pipeThrough(new TransformStream({transform:function(e,t){return r(m().m(function n(){return m().w(function(n){for(;;)switch(n.n){case 0:if(e.success){n.n=1;break}throw e.error;case 1:t.enqueue(e.value);case 2:return n.a(2)}},n)}))()}}))}}])}(Dm),gm=function(){return o(function e(t){var n=this,u=t.generateId,i=void 0===u?Rh:u,o=t.id,s=void 0===o?i():o,c=t.transport,l=void 0===c?new ym:c,f=t.messageMetadataSchema,d=t.dataPartSchemas,p=t.state,D=t.onError,y=t.onToolCall,g=t.onFinish,E=t.onData,_=t.sendAutomaticallyWhen;a(this,e),this.activeResponse=void 0,this.jobExecutor=new dm,this.sendMessage=function(){var e=r(m().m(function e(t,u){var a,i,o,s,c,l,f;return m().w(function(e){for(;;)switch(e.n){case 0:if(null!=t){e.n=2;break}return e.n=1,n.makeRequest(h({trigger:"submit-message",messageId:null==(a=n.lastMessage)?void 0:a.id},u));case 1:return e.a(2,void e.v);case 2:if(!("text"in t)&&!("files"in t)){e.n=6;break}if(!Array.isArray(t.files)){e.n=3;break}f=t.files,e.n=5;break;case 3:return e.n=4,function(){var e=r(m().m(function e(t){return m().w(function(e){for(;;)switch(e.n){case 0:if(null!=t){e.n=1;break}return e.a(2,[]);case 1:if(globalThis.FileList&&t instanceof globalThis.FileList){e.n=2;break}throw new Error("FileList is not supported in the current environment");case 2:return e.a(2,Promise.all(Array.from(t).map(function(){var e=r(m().m(function e(t){var n,r,u,a,i;return m().w(function(e){for(;;)switch(e.n){case 0:return n=t.name,r=t.type,u=r,a=n,e.n=1,new Promise(function(e,n){var r=new FileReader;r.onload=function(t){var n;e(null==(n=t.target)?void 0:n.result)},r.onerror=function(e){return n(e)},r.readAsDataURL(t)});case 1:return i=e.v,e.a(2,{type:"file",mediaType:u,filename:a,url:i})}},e)}));return function(t){return e.apply(this,arguments)}}())))}},e)}));return function(t){return e.apply(this,arguments)}}()(t.files);case 4:f=e.v;case 5:c={parts:[].concat(F(f),F("text"in t&&null!=t.text?[{type:"text",text:t.text}]:[]))},e.n=7;break;case 6:c=t;case 7:if(null==t.messageId){e.n=10;break}if(l=n.state.messages.findIndex(function(e){return e.id===t.messageId}),-1!==l){e.n=8;break}throw new Error("message with id ".concat(t.messageId," not found"));case 8:if("user"===n.state.messages[l].role){e.n=9;break}throw new Error("message with id ".concat(t.messageId," is not a user message"));case 9:n.state.messages=n.state.messages.slice(0,l+1),n.state.replaceMessage(l,h(h({},c),{},{id:t.messageId,role:null!=(i=c.role)?i:"user",metadata:t.metadata})),e.n=11;break;case 10:n.state.pushMessage(h(h({},c),{},{id:null!=(o=c.id)?o:n.generateId(),role:null!=(s=c.role)?s:"user",metadata:t.metadata}));case 11:return e.n=12,n.makeRequest(h({trigger:"submit-message",messageId:t.messageId},u));case 12:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),this.regenerate=r(m().m(function e(){var t,r,u,a,i=arguments;return m().w(function(e){for(;;)switch(e.n){case 0:if(r=(t=i.length>0&&void 0!==i[0]?i[0]:{}).messageId,u=v(t,Kt),a=null==r?n.state.messages.length-1:n.state.messages.findIndex(function(e){return e.id===r}),-1!==a){e.n=1;break}throw new Error("message ".concat(r," not found"));case 1:return n.state.messages=n.state.messages.slice(0,"assistant"===n.messages[a].role?a:a+1),e.n=2,n.makeRequest(h({trigger:"regenerate-message",messageId:r},u));case 2:return e.a(2)}},e)})),this.resumeStream=r(m().m(function e(){var t,r=arguments;return m().w(function(e){for(;;)switch(e.n){case 0:return t=r.length>0&&void 0!==r[0]?r[0]:{},e.n=1,n.makeRequest(h({trigger:"resume-stream"},t));case 1:return e.a(2)}},e)})),this.clearError=function(){"error"===n.status&&(n.state.error=void 0,n.setStatus({status:"ready"}))},this.addToolOutput=function(){var e=r(m().m(function e(t){var u,a,i,o,s;return m().w(function(e){for(;;)if(0===e.n)return u=t.state,a=void 0===u?"output-available":u,t.tool,i=t.toolCallId,o=t.output,s=t.errorText,e.a(2,n.jobExecutor.run(r(m().m(function e(){var t,r,u,c;return m().w(function(e){for(;;)switch(e.n){case 0:u=n.state.messages,c=u[u.length-1],n.state.replaceMessage(u.length-1,h(h({},c),{},{parts:c.parts.map(function(e){return sm(e)&&e.toolCallId===i?h(h({},e),{},{state:a,output:o,errorText:s}):e})})),n.activeResponse&&(n.activeResponse.state.message.parts=n.activeResponse.state.message.parts.map(function(e){return sm(e)&&e.toolCallId===i?h(h({},e),{},{state:a,output:o,errorText:s}):e})),"streaming"!==n.status&&"submitted"!==n.status&&(null==(t=n.sendAutomaticallyWhen)?void 0:t.call(n,{messages:n.state.messages}))&&n.makeRequest({trigger:"submit-message",messageId:null==(r=n.lastMessage)?void 0:r.id});case 1:return e.a(2)}},e)}))))},e)}));return function(t){return e.apply(this,arguments)}}(),this.addToolResult=this.addToolOutput,this.stop=r(m().m(function e(){var t;return m().w(function(e){for(;;)switch(e.n){case 0:"streaming"!==n.status&&"submitted"!==n.status||(null==(t=n.activeResponse)?void 0:t.abortController)&&n.activeResponse.abortController.abort();case 1:return e.a(2)}},e)})),this.id=s,this.transport=l,this.generateId=i,this.messageMetadataSchema=f,this.dataPartSchemas=d,this.state=p,this.onError=D,this.onToolCall=y,this.onFinish=g,this.onData=E,this.sendAutomaticallyWhen=_},[{key:"status",get:function(){return this.state.status}},{key:"setStatus",value:function(e){var t=e.status,n=e.error;this.status!==t&&(this.state.status=t,this.state.error=n)}},{key:"error",get:function(){return this.state.error}},{key:"messages",get:function(){return this.state.messages},set:function(e){this.state.messages=e}},{key:"lastMessage",get:function(){return this.state.messages[this.state.messages.length-1]}},{key:"makeRequest",value:(e=r(m().m(function e(t){var n,u,a,i,o,s,c,l,f,d,p,h,v,D,y,g,F,E,_=this;return m().w(function(e){for(;;)switch(e.p=e.n){case 0:if(n=t.trigger,u=t.metadata,a=t.headers,i=t.body,o=t.messageId,this.setStatus({status:"submitted",error:void 0}),d=this.lastMessage,p=!1,h=!1,v=!1,e.p=1,(D={state:lm({lastMessage:this.state.snapshot(d),messageId:this.generateId()}),abortController:new AbortController}).abortController.signal.addEventListener("abort",function(){p=!0}),this.activeResponse=D,"resume-stream"!==n){e.n=4;break}return e.n=2,this.transport.reconnectToStream({chatId:this.id,metadata:u,headers:a,body:i});case 2:if(null!=(g=e.v)){e.n=3;break}return e.a(2,void this.setStatus({status:"ready"}));case 3:y=g,e.n=6;break;case 4:return e.n=5,this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:D.abortController.signal,metadata:u,headers:a,body:i,trigger:n,messageId:o});case 5:y=e.v;case 6:return F=function(e){return _.jobExecutor.run(function(){return e({state:D.state,write:function(){var e;_.setStatus({status:"streaming"}),D.state.message.id===(null==(e=_.lastMessage)?void 0:e.id)?_.state.replaceMessage(_.state.messages.length-1,D.state.message):_.state.pushMessage(D.state.message)}})})},e.n=7,function(){var e=r(m().m(function e(t){var n,r,u,a;return m().w(function(e){for(;;)switch(e.p=e.n){case 0:n=t.stream,r=t.onError,u=n.getReader(),e.p=1;case 2:return e.n=3,u.read();case 3:if(!e.v.done){e.n=4;break}return e.a(3,5);case 4:e.n=2;break;case 5:e.n=7;break;case 6:e.p=6,a=e.v,null==r||r(a);case 7:return e.p=7,u.releaseLock(),e.f(7);case 8:return e.a(2)}},e,null,[[1,6,7,8]])}));return function(t){return e.apply(this,arguments)}}()({stream:fm({stream:y,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:F,onError:function(e){throw e}}),onError:function(e){throw e}});case 7:this.setStatus({status:"ready"}),e.n=10;break;case 8:if(e.p=8,E=e.v,!p&&"AbortError"!==E.name){e.n=9;break}return e.a(2,(p=!0,this.setStatus({status:"ready"}),null));case 9:v=!0,E instanceof TypeError&&(E.message.toLowerCase().includes("fetch")||E.message.toLowerCase().includes("network"))&&(h=!0),this.onError&&E instanceof Error&&this.onError(E),this.setStatus({status:"error",error:E});case 10:e.p=10;try{null==(c=this.onFinish)||c.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:p,isDisconnect:h,isError:v,finishReason:null==(s=this.activeResponse)?void 0:s.state.finishReason})}catch(e){console.error(e)}return this.activeResponse=void 0,e.f(10);case 11:if(!(null==(l=this.sendAutomaticallyWhen)?void 0:l.call(this,{messages:this.state.messages}))||v){e.n=12;break}return e.n=12,this.makeRequest({trigger:"submit-message",messageId:null==(f=this.lastMessage)?void 0:f.id,metadata:u,headers:a,body:i});case 12:return e.a(2)}},e,this,[[1,8,10,11]])})),function(t){return e.apply(this,arguments)})}]);var e}();function Fm(e){var t=e.messages,n=t[t.length-1];if(!n)return!1;if("assistant"!==n.role)return!1;var r=n.parts.reduce(function(e,t,n){return"step-start"===t.type?n:e},-1),u=n.parts.slice(r+1).filter(sm).filter(function(e){return!e.providerExecuted});return u.length>0&&u.every(function(e){return"output-available"===e.state||"output-error"===e.state})}var Em,_m,bm,Cm,km,Am,wm,Sm,xm,Om,Bm=function(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}((hm||(hm=1,pm=function(e,t){if("function"!=typeof e)throw new TypeError("Expected the first argument to be a `function`, got `".concat(En(e),"`."));var n,r=0;return function(){for(var u=this,a=arguments.length,i=new Array(a),o=0;o0&&void 0!==arguments[0]?arguments[0]:[];a(this,e),Pm(this,Em,void 0),Pm(this,_m,"ready"),Pm(this,bm,void 0),Pm(this,Cm,new Set),Pm(this,km,new Set),Pm(this,Am,new Set),this.pushMessage=function(e){jm(t,Em,Tm(t,Em).concat(e)),Tm(t,wm).call(t)},this.popMessage=function(){jm(t,Em,Tm(t,Em).slice(0,-1)),Tm(t,wm).call(t)},this.replaceMessage=function(e,n){jm(t,Em,[].concat(F(Tm(t,Em).slice(0,e)),[t.snapshot(n)],F(Tm(t,Em).slice(e+1)))),Tm(t,wm).call(t)},this.snapshot=function(e){return structuredClone(e)},this["~registerMessagesCallback"]=function(e,n){var r,u,a=n?(r=e,null!=(u=n)?Bm(r,u):r):e;return Tm(t,Cm).add(a),function(){Tm(t,Cm).delete(a)}},this["~registerStatusCallback"]=function(e){return Tm(t,km).add(e),function(){Tm(t,km).delete(e)}},this["~registerErrorCallback"]=function(e){return Tm(t,Am).add(e),function(){Tm(t,Am).delete(e)}},Pm(this,wm,function(){Tm(t,Cm).forEach(function(e){return e()})}),Pm(this,Sm,function(){Tm(t,km).forEach(function(e){return e()})}),Pm(this,xm,function(){Tm(t,Am).forEach(function(e){return e()})}),jm(this,Em,n)},[{key:"status",get:function(){return Tm(this,_m)},set:function(e){jm(this,_m,e),Tm(this,Sm).call(this)}},{key:"error",get:function(){return Tm(this,bm)},set:function(e){jm(this,bm,e),Tm(this,xm).call(this)}},{key:"messages",get:function(){return Tm(this,Em)},set:function(e){jm(this,Em,F(e)),Tm(this,wm).call(this)}}])}();Em=new WeakMap,_m=new WeakMap,bm=new WeakMap,Cm=new WeakMap,km=new WeakMap,Am=new WeakMap,wm=new WeakMap,Sm=new WeakMap,xm=new WeakMap;var zm=function(e){function n(e){var r,i=e.messages,o=v(e,Jt);a(this,n);var s=new Nm(i);return r=u(this,n,[h(h({},o),{},{state:s})]),Pm(t(r),Om,void 0),r["~registerMessagesCallback"]=function(e,n){return Tm(t(r),Om)["~registerMessagesCallback"](e,n)},r["~registerStatusCallback"]=function(e){return Tm(t(r),Om)["~registerStatusCallback"](e)},r["~registerErrorCallback"]=function(e){return Tm(t(r),Om)["~registerErrorCallback"](e)},jm(t(r),Om,s),r}return f(n,e),o(n)}(gm);Om=new WeakMap;var Rm="askai_token",Mm=function(e){if(!e)return!0;try{var t=function(e){var t=yn(e.split("."),1)[0];return JSON.parse(atob(t))}(e),n=t.exp;return Date.now()/1e3>n-30}catch(e){return!0}},Zm=null,Lm=function(){var e=Xt(vn().m(function e(t){var n,r,u,a,i,o;return vn().w(function(e){for(;;)switch(e.n){case 0:if(n=t.assistantId,r=t.abortSignal,u=t.useStagingEnv,a=void 0!==u&&u,i=sessionStorage.getItem(Rm),Mm(i)){e.n=1;break}return e.a(2,i);case 1:return o=a?Yu:Gu,Zm||(Zm=fetch("".concat(o,"/token"),{method:"POST",headers:{"x-algolia-assistant-id":n,"content-type":"application/json"},signal:r}).then(function(e){return e.json()}).then(function(e){var t=e.token,n=e.success,r=e.message;if(!n&&r)throw new Error(r);return sessionStorage.setItem(Rm,t),t}).finally(function(){return Zm=null})),e.a(2,Zm)}},e)}));return function(t){return e.apply(this,arguments)}}(),$m=function(){var e=Xt(vn().m(function e(t){var n,r,u,a,i,o,s,c,l,f;return vn().w(function(e){for(;;)switch(e.n){case 0:return n=t.assistantId,r=t.thumbs,u=t.messageId,a=t.appId,i=t.abortSignal,o=t.useStagingEnv,s=void 0!==o&&o,(c=new Headers).set("x-algolia-assistant-id",n),c.set("content-type","application/json"),e.n=1,Lm({assistantId:n,abortSignal:i,useStagingEnv:s});case 1:return l=e.v,c.set("authorization","TOKEN ".concat(l)),f=s?Yu:Gu,e.a(2,fetch("".concat(f,"/feedback"),{method:"POST",body:JSON.stringify({appId:a,messageId:u,thumbs:r}),headers:c}))}},e)}));return function(t){return e.apply(this,arguments)}}(),qm=["assistantId","apiKey","appId","indexName","useStagingEnv"];function Um(e){var t,n="algolia-client-js-".concat(e.key);function r(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function u(){return JSON.parse(r().getItem(n)||"{}")}function a(e){r().setItem(n,JSON.stringify(e))}return{get:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){var n,r,i;return n=e.timeToLive?1e3*e.timeToLive:null,r=u(),a(i=Object.fromEntries(Object.entries(r).filter(function(e){return void 0!==yn(e,2)[1].timestamp}))),n&&a(Object.fromEntries(Object.entries(i).filter(function(e){var t=yn(e,2)[1],r=(new Date).getTime();return!(t.timestamp+n2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then(function(e){return Promise.all([e,n.miss(e)])}).then(function(e){return yn(e,1)[0]})},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(e,r,u).catch(function(){return Hm({caches:t}).get(e,r,u)})},set:function(e,r){return n.set(e,r).catch(function(){return Hm({caches:t}).set(e,r)})},delete:function(e){return n.delete(e).catch(function(){return Hm({caches:t}).delete(e)})},clear:function(){return n.clear().catch(function(){return Hm({caches:t}).clear()})}}}function Vm(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(n,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);var i=r();return i.then(function(e){return u.miss(e)}).then(function(){return i})},set:function(n,r){return t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Wm(e){var t=e.algoliaAgents,n=e.client,r=e.version,u=function(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var n="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(n)&&(t.value="".concat(t.value).concat(n)),t}};return t}(r).add({segment:n,version:r});return t.forEach(function(e){return u.add(e)}),u}var Km=12e4;function Jm(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"up",n=Date.now();return pn(pn({},e),{},{status:t,lastUpdate:n,isUp:function(){return"up"===t||Date.now()-n>Km},isTimedOut:function(){return"timed out"===t&&Date.now()-n<=Km}})}var Qm=function(){function e(t,n){var r;return tn(this,e),on(r=en(this,e,[t]),"name","AlgoliaError"),n&&(r.name=n),r}return ln(e,bn(Error)),un(e)}(),Gm=function(){function e(t,n,r){var u;return tn(this,e),on(u=en(this,e,[t,r]),"stackTrace",void 0),u.stackTrace=n,u}return ln(e,Qm),un(e)}(),Ym=function(){function e(t){return tn(this,e),en(this,e,["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",t,"RetryError"])}return ln(e,Gm),un(e)}(),Xm=function(){function e(t,n,r){var u,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"ApiError";return tn(this,e),on(u=en(this,e,[t,r,a]),"status",void 0),u.status=n,u}return ln(e,Gm),un(e)}(),eD=function(){function e(t,n){var r;return tn(this,e),on(r=en(this,e,[t,"DeserializationError"]),"response",void 0),r.response=n,r}return ln(e,Qm),un(e)}(),tD=function(){function e(t,n,r,u){var a;return tn(this,e),on(a=en(this,e,[t,n,u,"DetailedApiError"]),"error",void 0),a.error=r,a}return ln(e,Xm),un(e)}();function nD(e,t,n){var r,u=(r=n,Object.keys(r).filter(function(e){return void 0!==r[e]}).sort().map(function(e){return"".concat(e,"=").concat(encodeURIComponent("[object Array]"===Object.prototype.toString.call(r[e])?r[e].join(","):r[e]).replace(/\+/g,"%20"))}).join("&")),a="".concat(e.protocol,"://").concat(e.url).concat(e.port?":".concat(e.port):"","/").concat("/"===t.charAt(0)?t.substring(1):t);return u.length&&(a+="?".concat(u)),a}function rD(e,t){if("GET"!==e.method&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:pn(pn({},e.data),t.data);return JSON.stringify(n)}}function uD(e,t,n){var r=pn(pn(pn({Accept:"application/json"},e),t),n),u={};return Object.keys(r).forEach(function(e){var t=r[e];u[e.toLowerCase()]=t}),u}function aD(e){try{return JSON.parse(e.content)}catch(t){throw new eD(t.message,e)}}function iD(e,t){var n=e.content,r=e.status;try{var u=JSON.parse(n);return"error"in u?new tD(u.message,r,u.error,t):new Xm(u.message,r,t)}catch(e){}return new Xm(n,r,t)}function oD(e){var t=e.isTimedOut,n=e.status;return t||function(e){return!e.isTimedOut&&0===~~e.status}({isTimedOut:t,status:n})||2!=~~(n/100)&&4!=~~(n/100)}function sD(e){return 2==~~(e.status/100)}function cD(e){return e.map(function(e){return lD(e)})}function lD(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return pn(pn({},e),{},{request:pn(pn({},e.request),{},{headers:pn(pn({},e.request.headers),t)})})}var fD=["appId","apiKey","authMode","algoliaAgents"],dD=["params"],pD="5.43.0";function hD(e){return[{url:"".concat(e,"-dsn.algolia.net"),accept:"read",protocol:"https"},{url:"".concat(e,".algolia.net"),accept:"write",protocol:"https"}].concat(function(e){for(var t=e,n=e.length-1;n>0;n--){var r=Math.floor(Math.random()*(n+1)),u=e[n];t[n]=e[r],t[r]=u}return t}([{url:"".concat(e,"-1.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-2.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-3.algolianet.com"),accept:"readWrite",protocol:"https"}]))}var vD="4.5.4";function mD(e,t,n){var r=It.useMemo(function(){var r=function(e,t){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!t||"string"!=typeof t)throw new Error("`apiKey` is missing.");return function(e){var t=e.appId,n=e.apiKey,r=e.authMode,u=e.algoliaAgents,a=hn(e,fD),i=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"WithinHeaders",r={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers:function(){return"WithinHeaders"===n?r:{}},queryParameters:function(){return"WithinQueryParameters"===n?r:{}}}}(t,n,r),o=function(e){var t=e.hosts,n=e.hostsCache,r=e.baseHeaders,u=e.logger,a=e.baseQueryParameters,i=e.algoliaAgent,o=e.timeouts,s=e.requester,c=e.requestsCache,l=e.responsesCache;function f(e){return d.apply(this,arguments)}function d(){return(d=Xt(vn().m(function e(t){var r,u,a,i,o;return vn().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Promise.all(t.map(function(e){return n.get(e,function(){return Promise.resolve(Jm(e))})}));case 1:return r=e.v,u=r.filter(function(e){return e.isUp()}),a=r.filter(function(e){return e.isTimedOut()}),i=[].concat(gn(u),gn(a)),o=i.length>0?i:t,e.a(2,{hosts:o,getTimeout:function(e,t){return(0===a.length&&0===e?1:a.length+3+e)*t}})}},e)}))).apply(this,arguments)}function p(e,t){return h.apply(this,arguments)}function h(){return h=Xt(vn().m(function e(c,l){var d,p,h,v,m,D,y,g,F,E,_,b,C,k=arguments;return vn().w(function(e){for(;;)switch(e.n){case 0:if(d=!(k.length>2&&void 0!==k[2])||k[2],p=[],h=rD(c,l),v=uD(r,c.headers,l.headers),m="GET"===c.method?pn(pn({},c.data),l.data):{},D=pn(pn(pn({},a),c.queryParameters),m),i.value&&(D["x-algolia-agent"]=i.value),l&&l.queryParameters)for(y=0,g=Object.keys(l.queryParameters);y1&&void 0!==arguments[1]?arguments[1]:{},n=e.useReadTransporter||"GET"===e.method;if(!n)return p(e,t,n);var u=function(){return p(e,t)};if(!0!==(t.cacheable||e.cacheable))return u();var i={request:e,requestOptions:t,transporter:{queryParameters:a,headers:r}};return l.get(i,function(){return c.get(i,function(){return c.set(i,u()).then(function(e){return Promise.all([c.delete(i),e])},function(e){return Promise.all([c.delete(i),Promise.reject(e)])}).then(function(e){var t=yn(e,2);return t[0],t[1]})})},{miss:function(e){return l.set(i,e)}})},requestsCache:c,responsesCache:l}}(pn(pn({hosts:hD(t)},a),{},{algoliaAgent:Wm({algoliaAgents:u,client:"Lite",version:pD}),baseHeaders:pn(pn({"content-type":"text/plain"},i.headers()),a.baseHeaders),baseQueryParameters:pn(pn({},i.queryParameters()),a.baseQueryParameters)}));return{transporter:o,appId:t,apiKey:n,clearCache:function(){return Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(function(){})},get _ua(){return o.algoliaAgent.value},addAlgoliaAgent:function(e,t){o.algoliaAgent.add({segment:e,version:t})},setClientApiKey:function(e){var t=e.apiKey;r&&"WithinHeaders"!==r?o.baseQueryParameters["x-algolia-api-key"]=t:o.baseHeaders["x-algolia-api-key"]=t},searchForHits:function(e,t){return this.search(e,t)},searchForFacets:function(e,t){return this.search(e,t)},customPost:function(e,t){var n=e.path,r=e.parameters,u=e.body;if(!n)throw new Error("Parameter `path` is required when calling `customPost`.");var a={method:"POST",path:"/{path}".replace("{path}",n),queryParameters:r||{},headers:{},data:u||{}};return o.request(a,t)},getRecommendations:function(e,t){if(e&&Array.isArray(e)&&(e={requests:e}),!e)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!e.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");var n={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(n,t)},search:function(e,t){if(e&&Array.isArray(e)){var n={requests:e.map(function(e){var t=e.params,n=hn(e,dD);return"facet"===n.type?pn(pn(pn({},n),t),{},{type:"facet"}):pn(pn(pn({},n),t),{},{facet:void 0,maxFacetHits:void 0,facetQuery:void 0})})};e=n}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");var r={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(r,t)}}}(pn({appId:e,apiKey:t,timeouts:{connect:1e3,read:2e3,write:3e4},logger:{debug:function(e,t){return Promise.resolve()},info:function(e,t){return Promise.resolve()},error:function(e,t){return Promise.resolve()}},requester:{send:function(e){return new Promise(function(t){var n=new XMLHttpRequest;n.open(e.method,e.url,!0),Object.keys(e.headers).forEach(function(t){return n.setRequestHeader(t,e.headers[t])});var r,u=function(e,r){return setTimeout(function(){n.abort(),t({status:0,content:r,isTimedOut:!0})},e)},a=u(e.connectTimeout,"Connection timeout");n.onreadystatechange=function(){n.readyState>n.OPENED&&void 0===r&&(clearTimeout(a),r=u(e.responseTimeout,"Socket timeout"))},n.onerror=function(){0===n.status&&(clearTimeout(a),clearTimeout(r),t({content:n.responseText||"Network request failed",status:n.status,isTimedOut:!1}))},n.onload=function(){clearTimeout(a),clearTimeout(r),t({content:n.responseText,status:n.status,isTimedOut:!1})},n.send(e.data)})}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:Vm(),requestsCache:Vm({serializable:!1}),hostsCache:Hm({caches:[Um({key:"".concat(pD,"-").concat(e)}),Vm()]})},void 0))}(e,t);return r.addAlgoliaAgent("docsearch",vD),!1===/docsearch.js \(.*\)/.test(r.transporter.algoliaAgent.value)&&r.addAlgoliaAgent("docsearch-react",vD),n(r)},[e,t,n]);return r}var DD=["appId","apiKey","askAi","maxResultsPerGroup","theme","onClose","transformItems","hitComponent","resultsFooterComponent","navigator","initialScrollY","transformSearchClient","disableUserPersonalization","initialQuery","translations","getMissingResultsUrl","insights","onAskAiToggle","interceptAskAiEvent","isAskAiActive","recentSearchesLimit","recentSearchesWithFavoritesLimit","indices","indexName","searchParameters","isHybridModeSupported"],yD=["footer","searchBox"],gD=function(){var e=Xt(vn().m(function e(t){var n,r,u,a,i,o,s,c,l,f,d,p,h,v,m,D,y,g,F;return vn().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=t.query,r=t.state,u=t.setContext,a=t.setStatus,i=t.searchClient,o=t.indexes,s=t.snippetLength,c=t.insights,l=t.appId,f=t.apiKey,d=t.maxResultsPerGroup,p=t.transformItems,h=void 0===p?xn:p,v=t.saveRecentSearch,m=t.onClose,D=c,e.p=1,e.n=2,i.search({requests:o.map(function(e){var t,r,u,a,i,o,c,l="string"==typeof e?e:e.name,f="string"==typeof e?{}:e.searchParameters;return pn({query:n,indexName:l,attributesToRetrieve:null!==(t=null==f?void 0:f.attributesToRetrieve)&&void 0!==t?t:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:null!==(r=null==f?void 0:f.attributesToSnippet)&&void 0!==r?r:["hierarchy.lvl1:".concat(s.current),"hierarchy.lvl2:".concat(s.current),"hierarchy.lvl3:".concat(s.current),"hierarchy.lvl4:".concat(s.current),"hierarchy.lvl5:".concat(s.current),"hierarchy.lvl6:".concat(s.current),"content:".concat(s.current)],snippetEllipsisText:null!==(u=null==f?void 0:f.snippetEllipsisText)&&void 0!==u?u:"…",highlightPreTag:null!==(a=null==f?void 0:f.highlightPreTag)&&void 0!==a?a:"",highlightPostTag:null!==(i=null==f?void 0:f.highlightPostTag)&&void 0!==i?i:"",hitsPerPage:null!==(o=null==f?void 0:f.hitsPerPage)&&void 0!==o?o:20,clickAnalytics:null!==(c=null==f?void 0:f.clickAnalytics)&&void 0!==c?c:D},null!=f?f:{})})});case 2:return y=e.v,g=y.results,e.a(2,g.flatMap(function(e){var t,n=e,a=n.hits,i=n.nbHits,o=Sn(h(a),function(e){return jn(e)},d);if(r.context.searchSuggestions.length0&&$.forEach(function(e){Fe.push("string"==typeof e?{name:e}:e)}),Fe.length<1)throw new Error("Must supply either `indexName` or `indices` for DocSearch to work");var Ee=Fe[0].name,_e=It.useRef(Io({key:"__DOCSEARCH_ASKAI_CONVERSATIONS__".concat((null==fe?void 0:fe.indexName)||Ee),limit:10})).current,be=It.useRef(Bo({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(Ee),limit:10})).current,Ce=It.useRef(Bo({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(Ee),limit:0===be.getAll().length?R:Z})).current,ke=yn(It.useState(!1),2),Ae=ke[0],we=ke[1],xe=function(e){var t=e.assistantId,n=e.apiKey,r=e.appId,u=e.indexName,a=e.useStagingEnv,i=void 0!==a&&a,o=hn(e,qm),s=Ie(new AbortController),c=Pe(function(){return o.agentStudio?function(e){var t=e.appId,n=e.apiKey,r=e.assistantId,u=e.searchParameters;return new ym({api:"https://".concat(t,".algolia.net/agent-studio/1/agents/").concat(r,"/completions?stream=true&compatibilityMode=ai-sdk-5"),headers:{"x-algolia-application-id":t,"x-algolia-api-key":n},body:u?{algolia:{searchParameters:u}}:{}})}({apiKey:n,appId:r,assistantId:null!=t?t:"",searchParameters:o.searchParameters}):function(e){var t,n=e.assistantId,r=e.apiKey,u=e.indexName,a=e.searchParameters,i=e.appId,o=e.abortController,s=e.useStagingEnv;return new ym({api:s?Yu:Gu,headers:(t=Xt(vn().m(function e(){var t;return vn().w(function(e){for(;;)switch(e.n){case 0:if(n){e.n=1;break}throw new Error("Ask AI assistant ID is required");case 1:return e.n=2,Lm({assistantId:n,abortSignal:o.signal,useStagingEnv:s});case 2:return t=e.v,e.a(2,pn(pn({},t?{authorization:"TOKEN ".concat(t)}:{}),{},{"X-Algolia-API-Key":r,"X-Algolia-Application-Id":i,"X-Algolia-Index-Name":u,"X-Algolia-Assistant-Id":n||"","X-AI-SDK-Version":"v5"}))}},e)})),function(){return t.apply(this,arguments)}),body:a?{searchParameters:a}:{}})}({assistantId:null!=t?t:"",apiKey:n,appId:r,indexName:u,searchParameters:o.searchParameters,abortController:s.current,useStagingEnv:i})},[n,r,t,u,i,o]),l=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.experimental_throttle,n=e.resume,r=void 0!==n&&n,u=v(e,Qt),a=Ie("chat"in u?u.chat:new zm(u));("chat"in u&&u.chat!==a.current||"id"in u&&a.current.id!==u.id)&&(a.current="chat"in u?u.chat:new zm(u));var i="id"in u?u.id:null,o=je(function(e){return a.current["~registerMessagesCallback"](e,t)},[t,i]),s=Ve(o,function(){return a.current.messages}),c=Ve(a.current["~registerStatusCallback"],function(){return a.current.status}),l=Ve(a.current["~registerErrorCallback"],function(){return a.current.error}),f=je(function(e){"function"==typeof e&&(e=e(a.current.messages)),a.current.messages=e},[a]);return Oe(function(){r&&a.current.resumeStream()},[r,a]),{id:a.current.id,messages:s,setMessages:f,sendMessage:a.current.sendMessage,regenerate:a.current.regenerate,clearError:a.current.clearError,stop:a.current.stop,error:l,resumeStream:a.current.resumeStream,status:c,addToolResult:a.current.addToolOutput,addToolOutput:a.current.addToolOutput}}({sendAutomaticallyWhen:Fm,transport:c}),f=l.messages,d=l.sendMessage,p=l.status,h=l.setMessages,m=l.error,D=l.stop,y=Ie(Io({key:"__DOCSEARCH_ASKAI_CONVERSATIONS__".concat(u),limit:10})).current,g=je(function(){var e=Xt(vn().m(function e(n,u){var a;return vn().w(function(e){for(;;)switch(e.n){case 0:if(t){e.n=1;break}return e.a(2);case 1:return e.n=2,$m({assistantId:t,thumbs:u,messageId:n,appId:r,abortSignal:s.current.signal,useStagingEnv:i});case 2:if(!(e.v.status>=300)){e.n=3;break}throw new Error("Failed, try again later.");case 3:null===(a=y.addFeedback)||void 0===a||a.call(y,n,1===u?"like":"dislike");case 4:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[t,r,y,i]),F=function(){var e=Xt(vn().m(function e(){return vn().w(function(e){for(;;)switch(e.n){case 0:return s.current.abort(),e.n=1,D();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),E=Pe(function(){for(var e=[],t=0;t0){var u=r.detail[0],a=u.msg,i=u.loc.at(-1);t="".concat(a,": ").concat(i)}}else t=n.message}catch(e){}return new Error(t)}(m):m},[m,o.agentStudio]);return{messages:f,sendMessage:d,status:p,setMessages:h,askAiError:b,stopAskAiStreaming:F,isStreaming:_,exchanges:E,conversations:y,sendFeedback:g}}({assistantId:de,apiKey:(null==fe?void 0:fe.apiKey)||i,appId:(null==fe?void 0:fe.appId)||a,indexName:(null==fe?void 0:fe.indexName)||Ee,searchParameters:pe,useStagingEnv:he,agentStudio:ge}),Be=xe.messages,Te=xe.status,Ne=xe.setMessages,ze=xe.sendMessage,Re=xe.stopAskAiStreaming,Me=xe.askAiError,Ze=xe.sendFeedback,Le=It.useRef(Te);It.useEffect(function(){if(!k){if("streaming"===Le.current&&"ready"===Te){Ae&&Be.at(-1)&&(Be.at(-1).metadata={stopped:!0});var e,t=an(Be[0].parts);try{for(t.s();!(e=t.n()).done;){var n=e.value;"text"===n.type&&_e.add($i(n.text,Be))}}catch(e){t.e(e)}finally{t.f()}}Le.current=Te}},[Te,Be,_e,k,Ae]);var $e=It.useMemo(function(){return"error"===Te&&Ui(Me)},[Te,Me]),qe=It.useCallback(function(e){var t=e.hierarchy,n=["lvl6","lvl5","lvl4","lvl3","lvl2","lvl1","lvl0"].find(function(e){return t[e]});return pn(pn({},e),{},{type:n||"lvl0",content:null})},[]),Ue=It.useCallback(function(e){if(!k){var t="content"===e.type?e.__docsearch_parent||qe(e):e;t&&-1===be.getAll().findIndex(function(e){return e.objectID===t.objectID})&&Ce.add(t)}},[be,Ce,k,qe]),He=It.useCallback(function(e){if(Y.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,n={eventName:"Item Selected",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};Y.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(n)}},[Y.context.algoliaInsightsPlugin]),We=It.useRef(void 0),Ke=It.useCallback(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;if(e){var r={query:t,suggestedQuestionId:null==n?void 0:n.objectID};if(null!=P&&P(r))return void(We.current&&We.current.setQuery(""))}if(e&&"new-conversation"===me&&De("initial"),T(e,{query:t,suggestedQuestionId:null==n?void 0:n.objectID}),!V){we(!1);var u={};if(n&&(u.body={suggestedQuestionId:n.objectID}),ze({role:"user",parts:[{type:"text",text:t}]},u),ae.current){var a=ae.current;"function"==typeof a.scrollTo?a.scrollTo({top:0,behavior:"smooth"}):a.scrollTop=0}We.current&&We.current.setQuery("")}},[T,P,ze,me,De,V]),Je=It.useCallback(function(){var e=Xt(vn().m(function e(t,n){return vn().w(function(e){for(;;)switch(e.n){case 0:if(de&&a){e.n=1;break}return e.a(2);case 1:return e.n=2,Ze(t,n);case 2:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[de,a,Ze]);We.current||(We.current=Qu({id:"docsearch",defaultActiveItemId:0,openOnFocus:!0,initialState:{query:ce,context:{searchSuggestions:[]}},insights:Boolean(I),navigator:g,onStateChange:function(e){X(e.state)},getSources:function(e){var t=e.query,n=e.state,r=e.setContext,u=e.setStatus;if(!t){var o=function(e){var t=e.recentSearches,n=e.favoriteSearches,r=e.saveRecentSearch,u=e.onClose;return e.disableUserPersonalization?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,n=e.event;r(t),On(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return t.getAll()}},{sourceId:"favoriteSearches",onSelect:function(e){var t=e.item,n=e.event;r(t),On(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return n.getAll()}}]}({recentSearches:Ce,favoriteSearches:be,saveRecentSearch:Ue,onClose:f,disableUserPersonalization:k,canHandleAskAi:ee}),c=ee?[{sourceId:"recentConversations",getItems:function(){return k?[]:_e.getAll()},onSelect:function(e){var t=e.item;t.messages&&(Ne(t.messages),T(!0))}}]:[];return[].concat(gn(o),c)}var l={context:n.context},d=gD({query:t,state:l,setContext:r,setStatus:u,searchClient:le,indexes:Fe,snippetLength:oe,insights:Boolean(I),appId:a,apiKey:i,maxResultsPerGroup:s,transformItems:p,saveRecentSearch:Ue,onClose:f}),h=ee?[{sourceId:"askAI",getItems:function(){return[{type:"askAI",query:t,url_without_anchor:"",objectID:"ask-ai-button",content:null,url:"",anchor:null,hierarchy:{lvl0:"Ask AI",lvl1:t,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},_highlightResult:{},_snippetResult:{},__docsearch_parent:null}]},onSelect:function(e){var t=e.item;"askAI"===t.type&&t.query&&Ke(!0,t.query)}}]:[];return d.then(function(e){return[].concat(h,gn(e))})}}));var Qe,Ge,Ye=We.current,Xe=Ye.getEnvironmentProps,et=Ye.getRootProps,tt=Ye.refresh;!function(e){var t=e.getEnvironmentProps,n=e.panelElement,r=e.formElement,u=e.inputElement;It.useEffect(function(){if(n&&r&&u){var e=t({panelElement:n,formElement:r,inputElement:u}),a=e.onTouchStart,i=e.onTouchMove;return window.addEventListener("touchstart",a),window.addEventListener("touchmove",i),function(){window.removeEventListener("touchstart",a),window.removeEventListener("touchmove",i)}}},[t,n,r,u])}({getEnvironmentProps:Xe,panelElement:ae.current,formElement:ue.current,inputElement:ie.current}),Qe={container:ne.current},Ge=Qe.container,It.useEffect(function(){if(Ge){var e=Ge.querySelectorAll("a[href]:not([disabled]), button:not([disabled]), input:not([disabled])"),t=e[0],n=e[e.length-1];return Ge.addEventListener("keydown",r),function(){Ge.removeEventListener("keydown",r)}}function r(e){"Tab"===e.key&&(e.shiftKey?document.activeElement===t&&(e.preventDefault(),n.focus()):document.activeElement===n&&(e.preventDefault(),t.focus()))}},[Ge]),kn({theme:c}),It.useEffect(function(){return document.body.classList.add("DocSearch--active"),function(){var e,t;document.body.classList.remove("DocSearch--active"),null===(e=(t=window).scrollTo)||void 0===e||e.call(t,0,E)}},[]),It.useEffect(function(){"undefined"!=typeof window&&window.localStorage&&function(){if("undefined"==typeof window||!window.localStorage)return 0;var e=0;for(var t in window.localStorage)window.localStorage.hasOwnProperty(t)&&(e+=window.localStorage[t].length+t.length);return e}()>4194304&&So()},[]),It.useLayoutEffect(function(){var e=window.innerWidth-document.body.clientWidth;return document.body.style.marginInlineEnd="".concat(e,"px"),function(){document.body.style.marginInlineEnd="0px"}},[]),It.useEffect(function(){window.matchMedia("(max-width: 768px)").matches&&(oe.current=5)},[]),It.useEffect(function(){var e;ae.current&&!N&&("function"==typeof(e=ae.current).scrollTo?e.scrollTo({top:0,behavior:"smooth"}):e.scrollTop=0)},[Y.query,N]),It.useEffect(function(){ce.length>0&&(tt(),ie.current&&ie.current.focus())},[ce,tt]),It.useEffect(function(){function e(){if(re.current){var e=.01*window.innerHeight;re.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}},[]),It.useEffect(function(){N||(Ye.refresh(),Ne([]))},[N,Ye,Ne]),It.useEffect(function(){De("initial")},[N,De]);var nt=function(){var e=Xt(vn().m(function e(){return vn().w(function(e){for(;;)switch(e.n){case 0:return we(!0),e.n=1,Re();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),rt=function(){Ne([]),De("new-conversation")},ut=!0,at=Y.collections.some(function(e){return e.items.length>0});return"idle"!==Y.status||!1!==at||0!==Y.query.length||N||(ut=!1),It.createElement("div",sn({ref:ne},et({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===Y.status&&"DocSearch-Container--Stalled","error"===Y.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&f()}}),It.createElement("div",{className:"DocSearch-Modal",ref:re},It.createElement("header",{className:"DocSearch-SearchBar",ref:ue},It.createElement(wo,sn({},Ye,{state:Y,placeholder:te||"Search docs",autoFocus:0===ce.length,inputRef:ie,isFromSelection:Boolean(ce)&&ce===se,translations:J,isAskAiActive:N,askAiStatus:Te,askAiError:Me,askAiState:me,setAskAiState:De,isThreadDepthError:$e&&"new-conversation"!==me,onClose:f,onAskAiToggle:T,onAskAgain:function(e){Ke(!0,e)},onStopAskAiStreaming:nt,onNewConversation:rt,onViewConversationHistory:function(){De("conversation-history")}}))),ut&&It.createElement("div",{className:"DocSearch-Dropdown",ref:ae},It.createElement(Fo,sn({},Ye,{indexName:Ee,state:Y,hitComponent:m,resultsFooterComponent:y,disableUserPersonalization:k,recentSearches:Ce,favoriteSearches:be,conversations:_e,inputRef:ie,translations:Q,getMissingResultsUrl:O,isAskAiActive:N,canHandleAskAi:ee,messages:Be,askAiError:Me,status:Te,hasCollections:at,askAiState:me,selectAskAiQuestion:Ke,suggestedQuestions:ye,selectSuggestedQuestion:function(e){Ke(!0,e.question,e)},agentStudio:ge,onAskAiToggle:T,onNewConversation:rt,onItemClick:function(e,t){if("askAI"===e.type&&e.query){if("stored"===e.anchor&&"messages"in e){Ne(e.messages);var n={query:e.query,messageId:e.messages[0].id};if(null!=P&&P(n))return We.current&&We.current.setQuery(""),void t.preventDefault();T(!0,n)}else Ke(!0,e.query);return De("initial"),void t.preventDefault()}He(e),Ue(e),On(t)||f()},onFeedback:Je}))),It.createElement("footer",{className:"DocSearch-Footer"},It.createElement(ta,{translations:K,isAskAiActive:N}))))}var ED=It.forwardRef(function(e,t){return It.createElement(qt,sn({},e,{ref:t}),It.createElement(_D,e))});function _D(e){var t,n,r,u=function(){var e=It.useContext($t);if(void 0===e)throw new Error("`useDocSearch` must be used within the `DocSearch` provider");return e}(),a=u.searchButtonRef,i=u.keyboardShortcuts,o=u.isModalActive,s=u.isAskAiActive,c=u.initialQuery,l=u.onAskAiToggle,f=u.openModal,d=u.closeModal;return It.createElement(It.Fragment,null,It.createElement(zn,{keyboardShortcuts:i,ref:a,translations:null===(t=e.translations)||void 0===t?void 0:t.button,onClick:f}),o&&pt(It.createElement(FD,sn({},e,{initialScrollY:window.scrollY,initialQuery:c,translations:null==e||null===(n=e.translations)||void 0===n?void 0:n.modal,isAskAiActive:s,onAskAiToggle:l,onClose:d})),null!==(r=e.portalContainer)&&void 0!==r?r:document.body))}var bD=function(e,t,n,r){var u;t[0]=0;for(var a=1;a=5&&((u||!e&&5===r)&&(i.push(r,0,u,n),r=6),e&&(i.push(r,e,0,n),r=6)),u=""},s=0;s"===t?(r=1,u=""):u=t+u[0]:a?t===a?a="":u+=t:'"'===t||"'"===t?a=t:">"===t?(o(),r=1):r&&("="===t?(r=5,n=u,u=""):"/"===t&&(r<5||">"===e[s][c+1])?(o(),3===r&&(i=i[0]),r=i,(i=i[0]).push(2,0,r),r=0):" "===t||"\t"===t||"\n"===t||"\r"===t?(o(),r=2):u+=t),3===r&&"!--"===u&&(r=4,i=i[0])}return o(),i}(e)),t),arguments,[])).length>1?t:t[0]}.bind($);function wD(e){if(e)return function(t){var n=e(t,{html:AD});return Ot(n)?n:"function"==typeof n?n(t):"string"==typeof n?$("span",null,n):n}}return function(e){var t=e.container,n=e.environment,r=e.transformSearchClient,u=e.hitComponent,a=e.resultsFooterComponent,i=v(e,kD),o=function(e,t){if("string"!=typeof e)return e;if(!t)throw new Error("Cannot resolve a selector without a browser environment.");var n=t.document.querySelector(e);if(!n)throw new Error('Container selector did not match any element: "'.concat(e,'"'));return n}(t,n||("undefined"!=typeof window?window:void 0)),s={current:null},c=!1,l=h(h({},i),{},{ref:s,hitComponent:wD(u),resultsFooterComponent:wD(a),transformSearchClient:function(e){return null!=e&&e.addAlgoliaAgent&&e.addAlgoliaAgent("docsearch.js",vD),"function"==typeof r?r(e):e}});return gt($(ED,l),o),c=!0,{open:function(){var e;null===(e=s.current)||void 0===e||e.open()},close:function(){var e;null===(e=s.current)||void 0===e||e.close()},openAskAi:function(e){var t;null===(t=s.current)||void 0===t||t.openAskAi(e)},get isReady(){return c},get isOpen(){var e,t;return null!==(e=null===(t=s.current)||void 0===t?void 0:t.isOpen)&&void 0!==e&&e},destroy:function(){Bt(o),c=!1}}}}); -//# sourceMappingURL=index.js.map diff --git a/node_modules/@docsearch/js/dist/umd/index.js.map b/node_modules/@docsearch/js/dist/umd/index.js.map deleted file mode 100644 index ccbef71..0000000 --- a/node_modules/@docsearch/js/dist/umd/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../../../../node_modules/preact/dist/preact.mjs","../../../../node_modules/preact/hooks/dist/hooks.mjs","../../../../node_modules/preact/compat/dist/compat.mjs","../../../docsearch-core/dist/esm/index.js","../../../docsearch-react/dist/esm/index.js","../../../../node_modules/htm/dist/htm.module.js","../../src/docsearch.tsx"],"sourcesContent":["var n,l,u,t,i,r,f,e,o,c,s,a,h={},p=[],v=Array.isArray,y=p.slice,w=Object.assign;function d(n){n&&n.parentNode&&n.remove()}function _(n,l,u){var t,i,r,f={};for(r in l)\"key\"==r?t=l[r]:\"ref\"==r&&\"function\"!=typeof n?i=l[r]:f[r]=l[r];return arguments.length>2&&(f.children=arguments.length>3?y.call(arguments,2):u),g(n,f,t,i,null)}function g(u,t,i,r,f){var e={type:u,props:t,key:i,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==f?++l:f,__i:-1,__u:0};return null==f&&null!=n.vnode&&n.vnode(e),e}function b(){return{current:null}}function k(n){return n.children}function m(n,l){this.props=n,this.context=l,this.__g=0}function M(n,l){if(null==l)return n.__?M(n.__,n.__i+1):null;for(var u;lh&&t.sort(f),l=t.shift(),h=t.length,8&l.__g&&(i=void 0,o=(e=(u=l).__v).__e,c=[],s=[],(a=u.__P)&&((i=w({},e)).__v=e.__v+1,n.vnode&&n.vnode(i),q(a,i,e,u.__n,a.namespaceURI,32&e.__u?[o]:null,c,null==o?M(e):o,!!(32&e.__u),s,a.ownerDocument),i.__v=e.__v,i.__.__k[i.__i]=i,P(c,i,s),i.__e!=o&&S(i)));r=0}function C(n,l,u,t,i,r,f,e,o,c,s,a){var v,y,w,d,_,g,b,k=t&&t.__k||p,m=l.length;for(o=j(u,l,k,o,m),v=0;v0?g(f.type,f.props,f.key,f.ref?f.ref:null,f.__v):f).__=n,f.__b=n.__b+1,e=null,-1!=(c=f.__i=I(f,u,o,a))&&(a--,(e=u[c])&&(e.__u|=2)),null==e||null==e.__v?(-1==c&&(i>s?h--:io?h--:h++,f.__u|=4))):n.__k[r]=null;if(a)for(r=0;r(s?1:0))for(i=u-1,r=u+1;i>=0||r=0?i--:r++])&&0==(2&c.__u)&&e==c.key&&o==c.type)return f;return-1}function L(n,l,u){\"-\"==l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":u}function O(n,l,u,t,i){var 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||L(n.style,l,\"\");if(u)for(l in u)t&&u[l]==t[l]||L(n.style,l,u[l])}else if(\"o\"==l[0]&&\"n\"==l[1])r=l!=(l=l.replace(e,\"$1\")),(l=l.slice(2))[0].toLowerCase()!=l[0]&&(l=l.toLowerCase()),n.__l||(n.__l={}),n.__l[l+r]=u,u?t?u.l=t.l:(u.l=o,n.addEventListener(l,r?s:c,r)):n.removeEventListener(l,r?s:c,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==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 T(l){return function(u){if(this.__l){var t=this.__l[u.type+l];if(null==u.u)u.u=o++;else if(u.u0&&u.__c.__z.push(B),T++,f[P]=null):8==B.nodeType&&\"/$s\"==B.data?(--T>0&&u.__c.__z.push(B),q=0===T,o=f[P],f[P]=null):T>0&&(u.__c.__z.push(B),f[P]=null));if(!q){for(;o&&8==o.nodeType&&o.nextSibling;)o=o.nextSibling;f[f.indexOf(o)]=null,u.__c.__z=[o]}u.__e=o}else{for(D=f.length;D--;)d(f[D]);N(u)}else u.__e=t.__e,u.__k=t.__k,l.then||N(u);n.__e(l,u,t)}else o=u.__e=z(t.__e,u,t,i,r,f,e,c,s,a);return(h=n.diffed)&&h(u),128&u.__u?void 0:o}function N(n){n&&n.__c&&(n.__c.__g|=4),n&&n.__k&&n.__k.forEach(N)}function P(l,u,t){for(var i=0;i0?n:v(n)?n.map(V):w({},n)}function z(l,u,t,i,r,f,e,o,c,s){var a,p,w,_,g,b,k,m,S=t.props,$=u.props,x=u.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!=f)for(a=0;a2&&(f.children=arguments.length>3?y.call(arguments,2):u),g(n.type,f,t||n.key,i||n.ref,null)}function K(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.__g|=4,$(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\"+a++,l.__=n,l.Provider=l.__l=(l.Consumer=function(n,l){return n.children(l)}).contextType=l,l}n={__e:function(n,l,u,t){for(var i,f,e;l=l.__;)if((i=l.__c)&&!(1&i.__g)){i.__g|=4;try{if((f=i.constructor)&&null!=f.getDerivedStateFromError&&(i.setState(f.getDerivedStateFromError(n)),e=8&i.__g),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),e=8&i.__g),e)return void(i.__g|=2)}catch(l){n=l}}throw r=0,n}},l=0,u=function(n){return null!=n&&null==n.constructor},m.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),$(this))},m.prototype.forceUpdate=function(n){this.__v&&(this.__g|=4,n&&this.__h.push(n),$(this))},m.prototype.render=k,t=[],r=0,f=function(n,l){return n.__v.__b-l.__v.__b},e=/(PointerCapture)$|Capture$/i,o=0,c=T(!1),s=T(!0),a=0;export{m as Component,k as Fragment,J as cloneElement,K as createContext,_ as createElement,b as createRef,_ as h,G as hydrate,u as isValidElement,n as options,F as render,H as toChildArray};\n//# sourceMappingURL=preact.mjs.map\n","import{options as n}from\"preact\";var t,r,u,i,o=Object.is,f=0,c=[],e=n,a=e.__b,v=e.__r,l=e.diffed,m=e.__c,s=e.unmount,p=e.__;function d(n,t){e.__h&&e.__h(r,n,f||t),f=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function h(n){return f=1,y(D,n)}function y(n,u,i){var f=d(t++,2);if(f.t=n,!f.__c&&(f.__=[i?i(u):D(void 0,u),function(n){var t=f.__N?f.__N[0]:f.__[0],r=f.t(t,n);o(t,r)||(f.__N=[r,f.__[1]],f.__c.setState({}))}],f.__c=r,!r.__f)){var c=function(n,t,r){if(!f.__c.__H)return!0;var u=f.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!e||e.call(this,n,t,r);var i=f.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,o(t,n.__[0])||(i=!0)}}),e&&e.call(this,n,t,r)||i};r.__f=!0;var e=r.shouldComponentUpdate,a=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(4&this.__g){var u=e;e=void 0,c(n,t,r),e=u}a&&a.call(this,n,t,r)},r.shouldComponentUpdate=c}return f.__N||f.__}function _(n,u){var i=d(t++,3);!e.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__H.__h.push(i))}function A(n,u){var i=d(t++,4);!e.__s&&C(i.__H,u)&&(i.__=n,i.u=u,r.__h.push(i))}function F(n){return f=5,q(function(){return{current:n}},[])}function T(n,t,r){f=6,A(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 q(n,r){var u=d(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function b(n,t){return f=8,q(function(){return n},t)}function j(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(n,t){e.useDebugValue&&e.useDebugValue(t?t(n):n)}function O(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 P(){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 g(){for(var n;n=c.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=[],e.__e(t,n.__v)}}e.__b=function(n){r=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),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},e.diffed=function(n){l&&l(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==c.push(t)&&i===e.requestAnimationFrame||((i=e.requestAnimationFrame)||w)(g)),t.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),u=r=null},e.__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=[],e.__e(r,n.__v)}}),m&&m(n,t)},e.unmount=function(n){s&&s(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&&e.__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!o(t,n[r])})}function D(n,t){return\"function\"==typeof t?t(n):t}export{b as useCallback,j as useContext,x as useDebugValue,_ as useEffect,O as useErrorBoundary,P as useId,T as useImperativeHandle,A as useLayoutEffect,q as useMemo,y as useReducer,F as useRef,h as useState};\n//# sourceMappingURL=hooks.mjs.map\n","import{Component as n,createElement as e,toChildArray as t,options as r,Fragment as u,render as o,hydrate as i,createContext as l,createRef as c,cloneElement as a}from\"preact\";export{Component,Fragment,createContext,createElement,createRef}from\"preact\";import{useState as f,useLayoutEffect as s,useEffect as v,useCallback as p,useContext as d,useDebugValue as h,useId as m,useImperativeHandle as _,useMemo as y,useReducer as b,useRef as g}from\"preact/hooks\";export*from\"preact/hooks\";function E(n,e){var t=e(),r=f({t:{__:t,u:e}}),u=r[0].t,o=r[1];return s(function(){u.__=t,u.u=e,S(u)&&o({t:u})},[n,t,e]),v(function(){return S(u)&&o({t:u}),n(function(){S(u)&&o({t:u})})},[n]),t}function S(n){var e=n.u,t=n.__;try{var r=e();return!Object.is(t,r)}catch(n){return!0}}function C(n){n()}function x(n){return n}function R(){return[!1,C]}var w=s,k=Object.assign;function I(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}var N=/^(-|f[lo].*[^se]$|g.{5,}[^ps]$|z|o[pr]|(W.{5})?[lL]i.*(t|mp)$|an|(bo|s).{4}Im|sca|m.{6}[ds]|ta|c.*[st]$|wido|ini)/;function O(n,e){this.props=n,this.context=e}function D(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:I(this.props,n)}function u(t){return this.shouldComponentUpdate=r,e(n,t)}return u.displayName=\"Memo(\"+(n.displayName||n.name)+\")\",u.prototype.isReactComponent=!0,u.type=n,u}(O.prototype=new n).isPureReactComponent=!0,O.prototype.shouldComponentUpdate=function(n,e){return I(this.props,n)||I(this.state,e)};var L=Symbol.for(\"react.forward_ref\");function M(n){function e(e){var t=k({},e);return delete t.ref,n(t,e.ref||null)}return e.$$typeof=L,e.render=n,e.prototype.isReactComponent=!0,e.displayName=\"ForwardRef(\"+(n.displayName||n.name)+\")\",e}var A=function(n,e,r){return null==n?null:t(t(n).map(e.bind(r)))},F={map:A,forEach:A,count:function(n){return n?t(n).length:0},only:function(n){var e=t(n);if(1!==e.length)throw\"Children.only\";return e[0]},toArray:t},T=r.__e;r.__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);T(n,e,t,r)};var U=r.unmount;function V(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=k({},n)).__c&&(n.__c.__P===t&&(n.__c.__P=e),n.__c.__g|=4,n.__c=null),n.__k=n.__k&&n.__k.map(function(n){return V(n,e,t)})),n}function j(n,e,t){return n&&t&&(\"string\"==typeof n.type&&(n.__u|=1),n.__v=null,n.__k=n.__k&&n.__k.map(function(n){return j(n,e,t)}),n.__c&&n.__c.__P===e&&(n.__e&&t.appendChild(n.__e),n.__c.__g|=4,n.__c.__P=t)),n}function W(){this.__u=0,this.o=null,this.__b=null}function $(n){var t,r,u;function o(o){if(t||(t=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw t;return e(r,o)}return o.displayName=\"Lazy\",o}function z(n){return this.getChildContext=function(){return n.context},n.children}function P(n){var t=this,r=n.i;if(t.componentWillUnmount=function(){o(null,t.l),t.l=null,t.i=null},t.i&&t.i!==r&&t.componentWillUnmount(),!t.l){for(var u=t.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;t.i=r,t.l={nodeType:1,parentNode:r,childNodes:[],__k:{__m:u.__m},ownerDocument:r.ownerDocument,insertBefore:function(n,e){this.childNodes.push(n),t.i.insertBefore(n,e)}}}o(e(z,{context:t.context},n.__v),t.l)}function H(n,t){var r=e(P,{__v:n,i:t});return r.containerInfo=t,r}r.unmount=function(n){var e=n.__c;e&&e.__R&&e.__R(),U&&U(n)},(W.prototype=new n).__c=function(n,e){var t=e.__c,r=this;null==r.o&&(r.o=[]),r.o.push(t);var u=!1,o=function(){u||(u=!0,t.__R=null,i())};t.__R=o;var i=function(){if(!--r.__u){if(r.state.__a){var n=r.state.__a;r.__v.__k[0]=j(n,n.__c.__P,n.__c.__O)}var e;for(r.setState({__a:r.__b=null});e=r.o.pop();)e.forceUpdate()}};r.__u++||32&e.__u||r.setState({__a:r.__b=r.__v.__k[0]}),n.then(o,o)},W.prototype.componentWillUnmount=function(){this.o=[]},W.prototype.render=function(n,t){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}return[e(u,null,t.__a?null:n.children),t.__a&&e(u,null,n.fallback)]};var B=Symbol.for(\"react.element\"),Z=/^(?: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]/,Y=/[A-Z0-9]/g,q=\"undefined\"!=typeof document,G=function(n){return/fil|che|rad/.test(n)};function J(n,e,t){return null==e.__k&&(e.textContent=\"\"),o(n,e),\"function\"==typeof t&&t(),n?n.__c:null}function K(n,e,t){return i(n,e),\"function\"==typeof t&&t(),n?n.__c:null}n.prototype.isReactComponent={},[\"componentWillMount\",\"componentWillReceiveProps\",\"componentWillUpdate\"].forEach(function(e){Object.defineProperty(n.prototype,e,{configurable:!0,get:function(){return this[\"UNSAFE_\"+e]},set:function(n){Object.defineProperty(this,e,{configurable:!0,writable:!0,value:n})}})});var Q=r.event;function X(){}function nn(){return this.cancelBubble}function en(){return this.defaultPrevented}r.event=function(n){return Q&&(n=Q(n)),n.persist=X,n.isPropagationStopped=nn,n.isDefaultPrevented=en,n.nativeEvent=n};var tn,rn={enumerable:!1,configurable:!0,get:function(){return this.class}},un=r.vnode;r.vnode=function(n){if(\"string\"==typeof n.type)!function(n){var e=n.props,r=n.type,u={},o=-1===r.indexOf(\"-\");for(var i in e){var l=e[i];if(!(\"value\"===i&&\"defaultValue\"in e&&null==l||q&&\"children\"===i&&\"noscript\"===r||\"class\"===i||\"className\"===i)){if(\"style\"===i&&\"object\"==typeof l)for(var c in l)\"number\"!=typeof l[c]||N.test(c)||(l[c]+=\"px\");else if(\"defaultValue\"===i&&\"value\"in e&&null==e.value)i=\"value\";else if(\"download\"===i&&!0===l)l=\"\";else if(\"translate\"===i&&\"no\"===l)l=!1;else if(\"o\"===i[0]&&\"n\"===i[1]){var a=i.toLowerCase();\"ondoubleclick\"===a?i=\"ondblclick\":\"onchange\"!==a||\"input\"!==r&&\"textarea\"!==r||G(e.type)?\"onfocus\"===a?i=\"onfocusin\":\"onblur\"===a&&(i=\"onfocusout\"):a=i=\"oninput\",\"oninput\"===a&&u[i=a]&&(i=\"oninputCapture\")}else o&&Z.test(i)?i=i.replace(Y,\"-$&\").toLowerCase():null===l&&(l=void 0);u[i]=l}}\"select\"==r&&u.multiple&&Array.isArray(u.value)&&(u.value=t(e.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),\"select\"==r&&null!=u.defaultValue&&(u.value=t(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\",rn)):(e.className&&!e.class||e.class&&e.className)&&(u.class=u.className=e.className),n.props=u}(n);else if(\"function\"==typeof n.type&&(\"ref\"in n.props&&\"prototype\"in n.type&&n.type.prototype.render&&(n.ref=n.props.ref,delete n.props.ref),n.type.defaultProps)){var e=k({},n.props);for(var r in n.type.defaultProps)void 0===e[r]&&(e[r]=n.type.defaultProps[r]);n.props=e}n.$$typeof=B,un&&un(n)};var on=r.__r;r.__r=function(n){on&&on(n),tn=n.__c};var ln=r.diffed;r.diffed=function(n){ln&&ln(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),tn=null};var cn={ReactCurrentDispatcher:{current:{readContext:function(n){return tn.__n[n.__c].props.value},useCallback:p,useContext:d,useDebugValue:h,useDeferredValue:x,useEffect:v,useId:m,useImperativeHandle:_,useInsertionEffect:w,useLayoutEffect:s,useMemo:y,useReducer:b,useRef:g,useState:f,useSyncExternalStore:E,useTransition:R}}},an=\"18.3.1\";function fn(n){return e.bind(null,n)}function sn(n){return!!n&&n.$$typeof===B}function vn(n){return sn(n)&&n.type===u}function pn(n){return!!n&&!!n.displayName&&(\"string\"==typeof n.displayName||n.displayName instanceof String)&&n.displayName.startsWith(\"Memo(\")}function dn(n){return sn(n)?a.apply(null,arguments):n}function hn(n){return!!n.__k&&(o(null,n),!0)}function mn(n){return n&&(n.__v&&n.__v.__e||1===n.nodeType&&n)||null}var _n=function(n,e){return n(e)};function yn(n,e){return n(e)}var bn=u,gn=sn,En={useState:f,useId:m,useReducer:b,useEffect:v,useLayoutEffect:s,useInsertionEffect:w,useTransition:R,useDeferredValue:x,useSyncExternalStore:E,startTransition:C,useRef:g,useImperativeHandle:_,useMemo:y,useCallback:p,useContext:d,useDebugValue:h,version:\"18.3.1\",Children:F,render:J,hydrate:K,unmountComponentAtNode:hn,createPortal:H,createElement:e,createContext:l,createFactory:fn,cloneElement:dn,createRef:c,Fragment:u,isValidElement:sn,isElement:gn,isFragment:vn,isMemo:pn,findDOMNode:mn,Component:n,PureComponent:O,memo:D,forwardRef:M,flushSync:_n,unstable_batchedUpdates:yn,StrictMode:bn,Suspense:W,lazy:$,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:cn};export{F as Children,O as PureComponent,bn as StrictMode,W as Suspense,cn as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,dn as cloneElement,fn as createFactory,H as createPortal,En as default,mn as findDOMNode,_n as flushSync,M as forwardRef,K as hydrate,gn as isElement,vn as isFragment,pn as isMemo,sn as isValidElement,$ as lazy,D as memo,J as render,C as startTransition,hn as unmountComponentAtNode,yn as unstable_batchedUpdates,x as useDeferredValue,w as useInsertionEffect,E as useSyncExternalStore,R as useTransition,an as version};\n//# sourceMappingURL=compat.mjs.map\n","import e,{useEffect as t}from\"react\";function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.length)&&(t=e.length);for(var n=0,r=Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,i=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}function b(e,t,n){return(t=j(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function A(){return A=Object.assign?Object.assign.bind():function(e){for(var t=1;t3?(u=h===r)&&(s=a[(o=a[4])?5:(o=3,3)],a[4]=a[5]=e):a[0]<=p&&((u=n<2&&pr||r>h)&&(a[4]=n,a[5]=r,f.n=h,o=0))}if(u||n>1)return i;throw d=!0,r}return function(u,l,h){if(c>1)throw TypeError(\"Generator is already running\");for(d&&1===l&&p(l,h),o=l,s=h;(t=o<2?e:s)||!d;){a||(o?o<3?(o>1&&(f.n=-1),p(o,s)):f.n=s:f.v=s);try{if(c=2,a){if(o||(u=\"next\"),t=a[u]){if(!(t=t.call(a,s)))throw TypeError(\"iterator result is not an object\");if(!t.done)return t;s=t.value,o<2&&(o=0)}else 1===o&&(t=a.return)&&t.call(a),o<2&&(s=TypeError(\"The iterator does not provide a '\"+u+\"' method\"),o=1);a=e}else if((t=(d=f.n<0)?s:n.call(r,f))!==i)break}catch(t){a=e,o=1,s=t}finally{c=1}}return{value:t,done:d}}}(n,u,a),!0),c}var i={};function o(){}function s(){}function c(){}t=Object.getPrototypeOf;var l=[][r]?t(t([][r]())):(I(t={},r,function(){return this}),t),d=c.prototype=o.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,I(e,u,\"GeneratorFunction\")),e.prototype=Object.create(d),e}return s.prototype=c,I(d,\"constructor\",c),I(c,\"constructor\",s),s.displayName=\"GeneratorFunction\",I(c,u,\"GeneratorFunction\"),I(d),I(d,u,\"Generator\"),I(d,r,function(){return this}),I(d,\"toString\",function(){return\"[object Generator]\"}),(B=function(){return{w:a,m:f}})()}function I(e,t,n,r){var u=Object.defineProperty;try{u({},\"\",{})}catch(e){u=0}I=function(e,t,n,r){function a(t,n){I(e,t,function(e){return this._invoke(t,n,e)})}t?u?u(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(a(\"next\",0),a(\"throw\",1),a(\"return\",2))},I(e,t,n,r)}function O(e,t){return O=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},O(e,t)}function T(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:\"undefined\"!=typeof Symbol&&e[Symbol.iterator]||e[\"@@iterator\"];if(null!=n){var r,u,a,i,o=[],s=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=a.call(n)).done)&&(o.push(r.value),o.length!==t);s=!0);}catch(e){c=!0,u=e}finally{try{if(!s&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw u}}return o}}(e,t)||z(e,t)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function P(e){return function(e){if(Array.isArray(e))return p(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\"@@iterator\"])return Array.from(e)}(e)||z(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function j(e){var t=function(e,t){if(\"object\"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||\"default\");if(\"object\"!=typeof r)return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===t?String:Number)(e)}(e,\"string\");return\"symbol\"==typeof t?t:t+\"\"}function N(e){return N=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},N(e)}function z(e,t){if(e){if(\"string\"==typeof e)return p(e,t);var n={}.toString.call(e).slice(8,-1);return\"Object\"===n&&e.constructor&&(n=e.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(e):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p(e,t):void 0}}function R(e){var t=\"function\"==typeof Map?new Map:void 0;return R=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf(\"[native code]\")}catch(t){return\"function\"==typeof e}}(e))return e;if(\"function\"!=typeof e)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return y(e,arguments,C(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),O(n,e)},R(e)}function M(){M=function(e,t){return new n(e,void 0,t)};var e=RegExp.prototype,t=new WeakMap;function n(e,r,u){var a=RegExp(e,r);return t.set(a,u||t.get(e)),O(a,n.prototype)}function r(e,n){var r=t.get(n);return Object.keys(r).reduce(function(t,n){var u=r[n];if(\"number\"==typeof u)t[n]=e[u];else{for(var a=0;void 0===e[u[a]]&&a+1]+)(>|$)/g,function(e,t,n){if(\"\"===n)return e;var r=a[t];return Array.isArray(r)?\"$\"+r.join(\"$\"):\"number\"==typeof r?\"$\"+r:\"\"}))}if(\"function\"==typeof u){var i=this;return e[Symbol.replace].call(this,n,function(){var e=arguments;return\"object\"!=typeof e[e.length-1]&&(e=[].slice.call(e)).push(r(e,i)),u.apply(this,e)})}return e[Symbol.replace].call(this,n,u)},M.apply(this,arguments)}var Z=function(e){var t=e.theme;r(function(){if(t){var e=document.documentElement.dataset.theme;if(t!==e)return document.documentElement.dataset.theme=t,function(){void 0===e?delete document.documentElement.dataset.theme:document.documentElement.dataset.theme=e}}},[t])},L={\"Ctrl/Cmd+K\":!0,\"/\":!0};function $(e){return S(S({},L),e)}function q(e){var t=e.size,r=void 0===t?20:t,u=e.color,a=void 0===u?\"currentColor\":u;return n.createElement(\"svg\",{width:r,height:r,className:\"DocSearch-Search-Icon\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\"},n.createElement(\"circle\",{cx:\"11\",cy:\"11\",r:\"8\",stroke:a,fill:\"none\",strokeWidth:\"1.4\"}),n.createElement(\"path\",{d:\"m21 21-4.3-4.3\",stroke:a,fill:\"none\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}))}function U(e,t,n){return e.reduce(function(e,r){var u=t(r);return e.hasOwnProperty(u)||(e[u]=[]),e[u].length<(n||5)&&e[u].push(r),e},{})}function V(e){return e}function H(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}var K=\"Ctrl\";function W(){}var J=/(|<\\/mark>)/g,Q=RegExp(J.source);function G(e){var t,n,r=e;if(!r.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var u=r.__docsearch_parent?null===(t=r.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(n=e._highlightResult)||void 0===n||null===(n=n.hierarchy)||void 0===n?void 0:n.lvl0;return u?u.value&&Q.test(u.value)?u.value.replace(J,\"\"):u.value:e.hierarchy.lvl0}var Y=[\"translations\",\"keyboardShortcuts\"],X=n.forwardRef(function(e,t){var a=e.translations,i=void 0===a?{}:a,o=e.keyboardShortcuts,s=x(e,Y),c=i.buttonText,l=void 0===c?\"Search\":c,d=i.buttonAriaLabel,f=void 0===d?\"Search\":d,p=$(o),h=T(u(null),2),v=h[0],m=h[1];Z({theme:s.theme}),r(function(){\"undefined\"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?m(\"⌘\"):m(K))},[]);var D=T(v===K?[K,\"Control\",\"Ctrl\"]:[\"Meta\",\"Meta\",\"⌘\"],3),y=D[0],g=D[1],F=D[2],E=p[\"Ctrl/Cmd+K\"],b=\"\".concat(g,\"+k\");return n.createElement(\"button\",A({type:\"button\",className:\"DocSearch DocSearch-Button\",\"aria-label\":E?\"\".concat(f,\" (\").concat(b,\")\"):f,\"aria-keyshortcuts\":E?b:void 0},s,{ref:t}),n.createElement(\"span\",{className:\"DocSearch-Button-Container\"},n.createElement(q,null),n.createElement(\"span\",{className:\"DocSearch-Button-Placeholder\"},l)),n.createElement(\"span\",{className:\"DocSearch-Button-Keys\"},null!==v&&E&&n.createElement(n.Fragment,null,n.createElement(ee,{reactsToKey:y},F),n.createElement(ee,{reactsToKey:\"k\"},\"K\"))))});function ee(e){var t=e.reactsToKey,a=e.children,i=T(u(!1),2),o=i[0],s=i[1];return r(function(){if(t)return window.addEventListener(\"keydown\",e),window.addEventListener(\"keyup\",n),function(){window.removeEventListener(\"keydown\",e),window.removeEventListener(\"keyup\",n)};function e(e){e.key===t&&s(!0)}function n(e){e.key!==t&&\"Meta\"!==e.key||s(!1)}},[t]),n.createElement(\"kbd\",{className:o?\"DocSearch-Button-Key DocSearch-Button-Key--pressed\":\"DocSearch-Button-Key\"+(\"Ctrl\"===t?\" DocSearch-Button-Key--ctrl\":\"\")},a)}function te(e,t){var n=void 0;return function(){for(var r=arguments.length,u=new Array(r),a=0;ae.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function ye(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ge(e){for(var t=1;t=3||2===n&&r>=4||1===n&&r>=10);function a(t,n,r){if(u&&void 0!==r){var a=r[0].__autocomplete_algoliaCredentials,i={\"X-Algolia-Application-Id\":a.appId,\"X-Algolia-API-Key\":a.apiKey};e.apply(void 0,[t].concat(ve(n),[{headers:i}]))}else e.apply(void 0,[t].concat(ve(n)))}return{init:function(t,n){e(\"init\",{appId:t,apiKey:n})},setAuthenticatedUserToken:function(t){e(\"setAuthenticatedUserToken\",t)},setUserToken:function(t){e(\"setUserToken\",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"clickedObjectIDsAfterSearch\",Ee(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"clickedObjectIDs\",Ee(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,[\"clickedFilters\"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"convertedObjectIDsAfterSearch\",Ee(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&a(\"convertedObjectIDs\",Ee(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,[\"convertedFilters\"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n0&&t.reduce(function(e,t){var n=t.items,r=De(t,pe);return[].concat(ve(e),ve(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r0&&e.apply(void 0,[\"viewedFilters\"].concat(n))}}}function Ae(e){var t=e.items.reduce(function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e},{});return Object.keys(t).map(function(e){return{index:e,items:t[e],algoliaSource:[\"autocomplete\"]}})}function Ce(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function ke(e){return ke=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},ke(e)}function we(e){return function(e){if(Array.isArray(e))return _e(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e[\"@@iterator\"])return Array.from(e)}(e)||function(e,t){if(!e)return;if(\"string\"==typeof e)return _e(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);\"Object\"===n&&e.constructor&&(n=e.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(e);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _e(e,t)}(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function _e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&Te({onItemsChange:u,items:n,insights:c,state:t}))}},0);return{name:\"aa.algoliaInsightsPlugin\",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive;function u(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:xe(xe({},o?{clickAnalytics:!0}:{}),e?{userToken:Ne(e)}:{}),insights:c}})}s(\"addAlgoliaAgent\",\"insights-plugin\"),u(),s(\"onUserTokenChange\",function(e){u(e)}),s(\"getUserToken\",null,function(e,t){u(t)}),n(function(e){var t=e.item,n=e.state,r=e.event,u=e.source;Ce(t)&&a({state:n,event:r,insights:c,item:t,insightsEvents:[xe({eventName:\"Item Selected\"},ce({item:t,items:u.getItems().filter(Ce)}))]})}),r(function(e){var t=e.item,n=e.source,r=e.state,u=e.event;Ce(t)&&i({state:r,event:u,insights:c,item:t,insightsEvents:[xe({eventName:\"Item Active\"},ce({item:t,items:n.getItems().filter(Ce)}))]})})},onStateChange:function(e){var t=e.state;d({state:t})},__autocomplete_pluginOptions:e}}function je(){var e,t=arguments.length>1?arguments[1]:void 0;return[].concat(we(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),[\"autocomplete-internal\"],we(null!==(e=t.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?[\"autocomplete-automatic\"]:[]))}function Ne(e){return\"number\"==typeof e?e.toString():e}function ze(e,t){var n=t;return{then:function(t,r){return ze(e.then(Me(t,n,e),Me(r,n,e)),n)},catch:function(t){return ze(e.catch(Me(t,n,e)),n)},finally:function(t){return t&&n.onCancelList.push(t),ze(e.finally(Me(t&&function(){return n.onCancelList=[],t()},n,e)),n)},cancel:function(){n.isCanceled=!0;var e=n.onCancelList;n.onCancelList=[],e.forEach(function(e){e()})},isCanceled:function(){return!0===n.isCanceled}}}function Re(e){return ze(e,{isCanceled:!1,onCancelList:[]})}function Me(e,t,n){return e?function(n){return t.isCanceled?n:e(n)}:n}var Ze,Le=!0;function $e(e,t,n,r){if(!n)return null;if(e<0&&(null===t||null!==r&&0===t))return n+e;var u=(null===t?-1:t)+e;return u<=-1||u>=n?null===r?null:0:u}function qe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ue(e){for(var t=1;t=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:u}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,i=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}function We(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?t.wait(Math.max.apply(Math,u)):void 0};function Qe(e){var t=function(e){var t=e.collections.map(function(e){return e.items.length}).reduce(function(e,t,n){var r=(e[n-1]||0)+t;return e.push(r),e},[]).reduce(function(t,n){return n<=e.activeItemId?t+1:t},0);return e.collections[t]}(e);if(!t)return null;var n=t.items[function(e){for(var t=e.state,n=e.collection,r=!1,u=0,a=0;!1===r;){var i=t.collections[u];if(i===n){r=!0;break}a+=i.items.length,u++}return t.activeItemId-a}({state:e,collection:t})],r=t.source;return{item:n,itemInputValue:r.getItemInputValue({item:n,state:e}),itemUrl:r.getItemUrl({item:n,state:e}),source:r}}function Ge(e,t,n){return[e,null==n?void 0:n.sourceId,t].filter(Boolean).join(\"-\").replace(/\\s/g,\"\")}var Ye=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function Xe(e){return e.nativeEvent||e}function et(e){return et=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},et(e)}function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function nt(e,t,n){return(t=function(e){var t=function(e,t){if(\"object\"!==et(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||\"default\");if(\"object\"!==et(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===t?String:Number)(e)}(e,\"string\");return\"symbol\"===et(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rt(e,t,n){var r,u=t.initialState;return{getState:function(){return u},dispatch:function(r,a){var i=function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:\"autocomplete-\".concat(re++),plugins:u,initialState:ft({activeItemId:null,query:\"\",completion:null,collections:[],isOpen:!1,status:\"idle\",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)})},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)})},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),u.forEach(function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)})},getSources:function(n){return Promise.all([].concat(ct(u.map(function(e){return e.getSources})),[e.getSources]).filter(Boolean).map(function(e){return function(e,t){var n=[];return Promise.resolve(e(t)).then(function(e){return Promise.all(e.filter(function(e){return Boolean(e)}).map(function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error(\"[Autocomplete] The `sourceId` \".concat(JSON.stringify(e.sourceId),\" is not unique.\"));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:oe,onResolve:oe};Object.keys(t).forEach(function(e){t[e].__default=!0});var r=Ue(Ue({},t),e);return Promise.resolve(r)}))})}(e,n)})).then(function(e){return ne(e)}).then(function(e){return e.map(function(e){return ft(ft({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach(function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)})},onActive:function(n){e.onActive(n),t.forEach(function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)})},onResolve:function(n){e.onResolve(n),t.forEach(function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)})}})})})},navigator:ft({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,\"_blank\",\"noopener\");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,\"_blank\",\"noopener\")}},e.navigator)})}function vt(e){return vt=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},vt(e)}function mt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Dt(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}var jt,Nt,zt,Rt=null,Mt=(jt=-1,Nt=-1,zt=void 0,function(e){var t=++jt;return Promise.resolve(e).then(function(e){return zt&&t=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function Kt(e){return Kt=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},Kt(e)}var Wt=[\"props\",\"refresh\",\"store\"],Jt=[\"inputElement\",\"formElement\",\"panelElement\"],Qt=[\"inputElement\"],Gt=[\"inputElement\",\"maxLength\"],Yt=[\"source\"],Xt=[\"item\",\"source\"];function en(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function tn(e){for(var t=1;t=0||(u[n]=e[n]);return u}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function un(e){var t=e.props,n=e.refresh,r=e.store,u=rn(e,Wt);return{getEnvironmentProps:function(e){var n=e.inputElement,u=e.formElement,a=e.panelElement;function i(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[u,a].some(function(t){return n=t,r=e.target,n===r||n.contains(r);var n,r})&&(r.dispatch(\"blur\",null),t.debug||r.pendingRequests.cancelAll())}return tn({onTouchStart:i,onMouseDown:i,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},rn(e,Jt))},getRootProps:function(e){return tn({role:\"combobox\",\"aria-expanded\":r.getState().isOpen,\"aria-haspopup\":\"listbox\",\"aria-controls\":r.getState().isOpen?r.getState().collections.map(function(e){var n=e.source;return Ge(t.id,\"list\",n)}).join(\" \"):void 0,\"aria-labelledby\":Ge(t.id,\"label\")},e)},getFormProps:function(e){e.inputElement;var a=rn(e,Qt),i=function(a){var i;t.onSubmit(tn({event:a,refresh:n,state:r.getState()},u)),r.dispatch(\"submit\",null),null===(i=e.inputElement)||void 0===i||i.blur()};return tn({action:\"\",noValidate:!0,role:\"search\",onSubmit:function(e){e.preventDefault();var n=Je(t.plugins,r.pendingRequests);void 0!==n?n.then(function(){return i(e)}):i(e)},onReset:function(a){var i;a.preventDefault(),t.onReset(tn({event:a,refresh:n,state:r.getState()},u)),r.dispatch(\"reset\",null),null===(i=e.inputElement)||void 0===i||i.focus()}},a)},getLabelProps:function(e){return tn({htmlFor:Ge(t.id,\"input\"),id:Ge(t.id,\"label\")},e)},getInputProps:function(e){var a;function i(e){(t.openOnFocus||Boolean(r.getState().query))&&Zt(tn({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},u)),r.dispatch(\"focus\",null)}var o=e||{};o.inputElement;var s=o.maxLength,c=void 0===s?512:s,l=rn(o,Gt),d=Qe(r.getState()),f=function(e){return Boolean(e&&e.match(Ye))}((null===(a=t.environment.navigator)||void 0===a?void 0:a.userAgent)||\"\"),p=t.enterKeyHint||(null!=d&&d.itemUrl&&!f?\"go\":\"search\");return tn({\"aria-autocomplete\":\"both\",\"aria-activedescendant\":r.getState().isOpen&&null!==r.getState().activeItemId?Ge(t.id,\"item-\".concat(r.getState().activeItemId),null==d?void 0:d.source):void 0,\"aria-controls\":r.getState().isOpen?r.getState().collections.filter(function(e){return e.items.length>0}).map(function(e){var n=e.source;return Ge(t.id,\"list\",n)}).join(\" \"):void 0,\"aria-labelledby\":Ge(t.id,\"label\"),value:r.getState().completion||r.getState().query,id:Ge(t.id,\"input\"),autoComplete:\"off\",autoCorrect:\"off\",autoCapitalize:\"off\",enterKeyHint:p,spellCheck:\"false\",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:\"search\",onChange:function(e){var a=e.currentTarget.value;t.ignoreCompositionEvents&&Xe(e).isComposing?u.setQuery(a):Zt(tn({event:e,props:t,query:a.slice(0,c),refresh:n,store:r},u))},onCompositionEnd:function(e){Zt(tn({event:e,props:t,query:e.currentTarget.value.slice(0,c),refresh:n,store:r},u))},onKeyDown:function(e){Xe(e).isComposing||function(e){var t=e.event,n=e.props,r=e.refresh,u=e.store,a=Ht(e,$t);if(\"ArrowUp\"===t.key||\"ArrowDown\"===t.key){var i=function(){var e=Qe(u.getState()),t=n.environment.document.getElementById(Ge(n.id,\"item-\".concat(u.getState().activeItemId),null==e?void 0:e.source));t&&(t.scrollIntoViewIfNeeded?t.scrollIntoViewIfNeeded(!1):t.scrollIntoView(!1))},o=function(){var e=Qe(u.getState());if(null!==u.getState().activeItemId&&e){var n=e.item,i=e.itemInputValue,o=e.itemUrl,s=e.source;s.onActive(Ut({event:t,item:n,itemInputValue:i,itemUrl:o,refresh:r,source:s,state:u.getState()},a))}};t.preventDefault(),!1===u.getState().isOpen&&(n.openOnFocus||Boolean(u.getState().query))?Zt(Ut({event:t,props:n,query:u.getState().query,refresh:r,store:u},a)).then(function(){u.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),o(),setTimeout(i,0)}):(u.dispatch(t.key,{}),o(),i())}else if(\"Escape\"===t.key)t.preventDefault(),u.dispatch(t.key,null),u.pendingRequests.cancelAll();else if(\"Tab\"===t.key)u.dispatch(\"blur\",null),u.pendingRequests.cancelAll();else if(\"Enter\"===t.key){if(null===u.getState().activeItemId||u.getState().collections.every(function(e){return 0===e.items.length})){var s=Je(n.plugins,u.pendingRequests);return void(void 0!==s?s.then(u.pendingRequests.cancelAll):n.debug||u.pendingRequests.cancelAll())}t.preventDefault();var c=Qe(u.getState()),l=c.item,d=c.itemInputValue,f=c.itemUrl,p=c.source;if(t.metaKey||t.ctrlKey)void 0!==f&&(p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a)),n.navigator.navigateNewTab({itemUrl:f,item:l,state:u.getState()}));else if(t.shiftKey)void 0!==f&&(p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a)),n.navigator.navigateNewWindow({itemUrl:f,item:l,state:u.getState()}));else if(t.altKey);else{if(void 0!==f)return p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a)),void n.navigator.navigate({itemUrl:f,item:l,state:u.getState()});Zt(Ut({event:t,nextState:{isOpen:!1},props:n,query:d,refresh:r,store:u},a)).then(function(){p.onSelect(Ut({event:t,item:l,itemInputValue:d,itemUrl:f,refresh:r,source:p,state:u.getState()},a))})}}}(tn({event:e,props:t,refresh:n,store:r},u))},onFocus:i,onBlur:oe,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},l)},getPanelProps:function(e){return tn({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch(\"mouseleave\",null)}},e)},getListProps:function(e){var n=e||{},r=n.source,u=rn(n,Yt);return tn({role:\"listbox\",\"aria-labelledby\":Ge(t.id,\"label\"),id:Ge(t.id,\"list\",r)},u)},getItemProps:function(e){var a=e.item,i=e.source,o=rn(e,Xt);return tn({id:Ge(t.id,\"item-\".concat(a.__autocomplete_id),i),role:\"option\",\"aria-selected\":r.getState().activeItemId===a.__autocomplete_id,onMouseMove:function(e){if(a.__autocomplete_id!==r.getState().activeItemId){r.dispatch(\"mousemove\",a.__autocomplete_id);var t=Qe(r.getState());if(null!==r.getState().activeItemId&&t){var i=t.item,o=t.itemInputValue,s=t.itemUrl,c=t.source;c.onActive(tn({event:e,item:i,itemInputValue:o,itemUrl:s,refresh:n,source:c,state:r.getState()},u))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var o=i.getItemInputValue({item:a,state:r.getState()}),s=i.getItemUrl({item:a,state:r.getState()});(s?Promise.resolve():Zt(tn({event:e,nextState:{isOpen:!1},props:t,query:o,refresh:n,store:r},u))).then(function(){i.onSelect(tn({event:e,item:a,itemInputValue:o,itemUrl:s,refresh:n,source:i,state:r.getState()},u))})}},o)}}}function an(e){return an=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},an(e)}function on(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function sn(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:\"\",n=\"string\"==typeof e?e:e.source,r={replace:function(e,t){var u=\"string\"==typeof t?t:t.source;return u=u.replace(er.caret,\"$1\"),n=n.replace(e,u),r},getRegex:function(){return new RegExp(n,t)}};return r}var Xn=function(){try{return!!new RegExp(\"(?<=1)(?/,blockquoteSetextReplace:/\\n {0,3}((?:=+|-+) *)(?=\\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \\t]?/gm,listReplaceTabs:/^\\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\\[[ xX]\\] /,listReplaceTask:/^\\[[ xX]\\] +/,anyLine:/\\n.*\\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\\||\\| *$/g,tableRowBlankLine:/\\n[ \\t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\\s|>)/i,endPreScriptTag:/^<\\/(pre|code|kbd|script)(\\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/,unicodeAlphaNumeric:/(?:[0-9A-Za-z\\xAA\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u0660-\\u0669\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07C0-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088F\\u08A0-\\u08C9\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0966-\\u096F\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09E6-\\u09F1\\u09F4-\\u09F9\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A6F\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AE6-\\u0AEF\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B66-\\u0B6F\\u0B71-\\u0B77\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0BE6-\\u0BF2\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5C\\u0C5D\\u0C60\\u0C61\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDC-\\u0CDE\\u0CE0\\u0CE1\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D58-\\u0D61\\u0D66-\\u0D78\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DE6-\\u0DEF\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F20-\\u0F33\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F-\\u1049\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u1090-\\u1099\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1369-\\u137C\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B50-\\u1B59\\u1B83-\\u1BA0\\u1BAE-\\u1BE5\\u1C00-\\u1C23\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C8A\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2070\\u2071\\u2074-\\u2079\\u207F-\\u2089\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2CFD\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u3192-\\u3195\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7DC\\uA7F1-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA830-\\uA835\\uA840-\\uA873\\uA882-\\uA8B3\\uA8D0-\\uA8D9\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA8FE\\uA900-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF-\\uA9D9\\uA9E0-\\uA9E4\\uA9E6-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD07-\\uDD33\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE1-\\uDEFB\\uDF00-\\uDF23\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDDC0-\\uDDF3\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC58-\\uDC76\\uDC79-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD20-\\uDD39\\uDD40-\\uDD59\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE40-\\uDE48\\uDE60-\\uDE7E\\uDE80-\\uDE9F\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDEEB-\\uDEEF\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD23\\uDD30-\\uDD39\\uDD40-\\uDD65\\uDD6F-\\uDD85\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEB0\\uDEB1\\uDEC2-\\uDEC7\\uDF00-\\uDF27\\uDF30-\\uDF45\\uDF51-\\uDF54\\uDF70-\\uDF81\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD804[\\uDC03-\\uDC37\\uDC52-\\uDC6F\\uDC71\\uDC72\\uDC75\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD03-\\uDD26\\uDD36-\\uDD3F\\uDD44\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDD0-\\uDDDA\\uDDDC\\uDDE1-\\uDDF4\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE3F\\uDE40\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDEF0-\\uDEF9\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61\\uDF80-\\uDF89\\uDF8B\\uDF8E\\uDF90-\\uDFB5\\uDFB7\\uDFD1\\uDFD3]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC50-\\uDC59\\uDC5F-\\uDC61\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEAA\\uDEB8\\uDEC0-\\uDEC9\\uDED0-\\uDEE3\\uDF00-\\uDF1A\\uDF30-\\uDF3B\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC2B\\uDCA0-\\uDCF2\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD2F\\uDD3F\\uDD41\\uDD50-\\uDD59\\uDDA0-\\uDDA7\\uDDAA-\\uDDD0\\uDDE1\\uDDE3\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE89\\uDE9D\\uDEB0-\\uDEF8\\uDFC0-\\uDFE0\\uDFF0-\\uDFF9]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC50-\\uDC6C\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46\\uDD50-\\uDD59\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD89\\uDD98\\uDDA0-\\uDDA9\\uDDB0-\\uDDDB\\uDDE0-\\uDDE9\\uDEE0-\\uDEF2\\uDF02\\uDF04-\\uDF10\\uDF12-\\uDF33\\uDF50-\\uDF59\\uDFB0\\uDFC0-\\uDFD4]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD80E\\uD80F\\uD81C-\\uD822\\uD840-\\uD868\\uD86A-\\uD86D\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883\\uD885-\\uD88C][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2F\\uDC41-\\uDC46\\uDC60-\\uDFFF]|\\uD810[\\uDC00-\\uDFFA]|\\uD811[\\uDC00-\\uDE46]|\\uD818[\\uDD00-\\uDD1D\\uDD30-\\uDD39]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDE70-\\uDEBE\\uDEC0-\\uDEC9\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF5B-\\uDF61\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDD40-\\uDD6C\\uDD70-\\uDD79\\uDE40-\\uDE96\\uDEA0-\\uDEB8\\uDEBB-\\uDED3\\uDF00-\\uDF4A\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1\\uDFE3\\uDFF2-\\uDFF6]|\\uD823[\\uDC00-\\uDCD5\\uDCFF-\\uDD1E\\uDD80-\\uDDF2]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD32\\uDD50-\\uDD52\\uDD55\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD833[\\uDCF0-\\uDCF9]|\\uD834[\\uDEC0-\\uDED3\\uDEE0-\\uDEF3\\uDF60-\\uDF78]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD837[\\uDF00-\\uDF1E\\uDF25-\\uDF2A]|\\uD838[\\uDC30-\\uDC6D\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD40-\\uDD49\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB\\uDEF0-\\uDEF9]|\\uD839[\\uDCD0-\\uDCEB\\uDCF0-\\uDCF9\\uDDD0-\\uDDED\\uDDF0-\\uDDFA\\uDEC0-\\uDEDE\\uDEE0-\\uDEE2\\uDEE4\\uDEE5\\uDEE7-\\uDEED\\uDEF0-\\uDEF4\\uDEFE\\uDEFF\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCCF\\uDD00-\\uDD43\\uDD4B\\uDD50-\\uDD59]|\\uD83B[\\uDC71-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDCB4\\uDD01-\\uDD2D\\uDD2F-\\uDD3D\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD00-\\uDD0C]|\\uD83E[\\uDFF0-\\uDFF9]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEAD\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0\\uDFF0-\\uDFFF]|\\uD87B[\\uDC00-\\uDE5D]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A\\uDF50-\\uDFFF]|\\uD88D[\\uDC00-\\uDC79])/,escapeTest:/[&<>\"']/,escapeReplace:/[&<>\"']/g,escapeTestNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/,escapeReplaceNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/g,unescapeTest:/&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/gi,caret:/(^|[^\\[])\\^/g,percentDecode:/%25/g,findPipe:/\\|/g,splitPipe:/ \\|/,slashPipe:/\\\\\\|/g,carriageReturn:/\\r\\n|\\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\\S*/,endingNewline:/\\n$/,listItemRegex:function(e){return new RegExp(\"^( {0,3}\".concat(e,\")((?:[\\t ][^\\\\n]*)?(?:\\\\n|$))\"))},nextBulletRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \\t][^\\\\n]*)?(?:\\\\n|$))\"))},hrRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)\"))},fencesBeginRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}(?:```|~~~)\"))},headingBeginRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}#\"))},htmlBeginRegex:function(e){return new RegExp(\"^ {0,\".concat(Math.min(3,e-1),\"}<(?:[a-z].*>|!--)\"),\"i\")}},tr=/^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/,nr=/(?:[*+-]|\\d{1,9}[.)])/,rr=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\\n(?!\\s*?\\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,ur=Yn(rr).replace(/bull/g,nr).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/\\|table/g,\"\").getRegex(),ar=Yn(rr).replace(/bull/g,nr).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/table/g,/ {0,3}\\|?(?:[:\\- ]*\\|)+[\\:\\- ]*\\n/).getRegex(),ir=/^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/,or=/(?!\\s*\\])(?:\\\\[\\s\\S]|[^\\[\\]\\\\])+/,sr=Yn(/^ {0,3}\\[(label)\\]: *(?:\\n[ \\t]*)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n[ \\t]*)?| *\\n[ \\t]*)(title))? *(?:\\n+|$)/).replace(\"label\",or).replace(\"title\",/(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/).getRegex(),cr=Yn(/^( {0,3}bull)([ \\t][^\\n]+?)?(?:\\n|$)/).replace(/bull/g,nr).getRegex(),lr=\"address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul\",dr=/|$))/,fr=Yn(\"^ {0,3}(?:<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:[^\\\\n]*\\\\n+|$)|comment[^\\\\n]*(\\\\n+|$)|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)|\\\\n*|$)|\\\\n*|$)|)[\\\\s\\\\S]*?(?:(?:\\\\n[ \\t]*)+\\\\n|$)|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \\t]*)+\\\\n|$)|(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \\t]*)+\\\\n|$))\",\"i\").replace(\"comment\",dr).replace(\"tag\",lr).replace(\"attribute\",/ +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/).getRegex(),pr=Yn(ir).replace(\"hr\",tr).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",lr).getRegex(),hr={blockquote:Yn(/^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/).replace(\"paragraph\",pr).getRegex(),code:/^((?: {4}| {0,3}\\t)[^\\n]+(?:\\n(?:[ \\t]*(?:\\n|$))*)?)+/,def:sr,fences:/^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/,hr:tr,html:fr,lheading:ur,list:cr,newline:/^(?:[ \\t]*(?:\\n|$))+/,paragraph:pr,table:Gn,text:/^[^\\n]+/},vr=Yn(\"^ *([^\\\\n ].*)\\\\n {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)\").replace(\"hr\",tr).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"blockquote\",\" {0,3}>\").replace(\"code\",\"(?: {4}| {0,3}\\t)[^\\\\n]\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",lr).getRegex(),mr=S(S({},hr),{},{lheading:ar,table:vr,paragraph:Yn(ir).replace(\"hr\",tr).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"table\",vr).replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\")|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",lr).getRegex()}),Dr=S(S({},hr),{},{html:Yn(\"^ *(?:comment *(?:\\\\n|\\\\s*$)|<(tag)[\\\\s\\\\S]+? *(?:\\\\n{2,}|\\\\s*$)|\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))\").replace(\"comment\",dr).replace(/tag/g,\"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b\").getRegex(),def:/^ *\\[([^\\]]+)\\]: *]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,heading:/^(#{1,6})(.*)(?:\\n+|$)/,fences:Gn,lheading:/^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,paragraph:Yn(ir).replace(\"hr\",tr).replace(\"heading\",\" *#{1,6} *[^\\n]\").replace(\"lheading\",ur).replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"|fences\",\"\").replace(\"|list\",\"\").replace(\"|html\",\"\").replace(\"|tag\",\"\").getRegex()}),yr=/^( {2,}|\\\\)\\n(?!\\s*$)/,gr=/(?:[!-\\/:-@\\[-`\\{-~\\xA1-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2010-\\u2027\\u2030-\\u205E\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u2FFF\\u3001-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/,Fr=/(?:[\\t-\\r -\\/:-@\\[-`\\{-~\\xA0-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u1680\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2000-\\u200A\\u2010-\\u2029\\u202F-\\u205F\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFEFF\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/,Er=/(?:[\\0-\\x08\\x0E-\\x1F0-9A-Za-z\\x7F-\\x9F\\xAA\\xAD\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u037D\\u037F-\\u0383\\u0386\\u0388-\\u03F5\\u03F7-\\u0481\\u0483-\\u0559\\u0560-\\u0588\\u058B\\u058C\\u0590-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7-\\u05F2\\u05F5-\\u0605\\u0610-\\u061A\\u061C\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u070E-\\u07F5\\u07FA-\\u07FD\\u0800-\\u082F\\u083F-\\u085D\\u085F-\\u0887\\u0889-\\u0963\\u0966-\\u096F\\u0971-\\u09F1\\u09F4-\\u09F9\\u09FC\\u09FE-\\u0A75\\u0A77-\\u0AEF\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C76\\u0C78-\\u0C7E\\u0C80-\\u0C83\\u0C85-\\u0D4E\\u0D50-\\u0D78\\u0D7A-\\u0DF3\\u0DF5-\\u0E3E\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E5C-\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F84\\u0F86-\\u0FBD\\u0FC6\\u0FCD\\u0FDB-\\u1049\\u1050-\\u109D\\u10A0-\\u10FA\\u10FC-\\u135F\\u1369-\\u138F\\u139A-\\u13FF\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u169D-\\u16EA\\u16EE-\\u1734\\u1737-\\u17D3\\u17D7\\u17DC-\\u17FF\\u180B-\\u193F\\u1941-\\u1943\\u1946-\\u19DD\\u1A00-\\u1A1D\\u1A20-\\u1A9F\\u1AA7\\u1AAE-\\u1B4D\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BFB\\u1C00-\\u1C3A\\u1C40-\\u1C7D\\u1C80-\\u1CBF\\u1CC8-\\u1CD2\\u1CD4-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF\\u200B-\\u200F\\u202A-\\u202E\\u2060-\\u2079\\u207F-\\u2089\\u208F-\\u209F\\u20C2-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u218C-\\u218F\\u242A-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2B74\\u2B75\\u2C00-\\u2CE4\\u2CEB-\\u2CF8\\u2CFD\\u2D00-\\u2D6F\\u2D71-\\u2DFF\\u2E2F\\u2E5E-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3040-\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E6-\\u31EE\\u31F0-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA672\\uA674-\\uA67D\\uA67F-\\uA6F1\\uA6F8-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uA873\\uA878-\\uA8CD\\uA8D0-\\uA8F7\\uA8FB\\uA8FD-\\uA92D\\uA930-\\uA95E\\uA960-\\uA9C0\\uA9CE-\\uA9DD\\uA9E0-\\uAA5B\\uAA60-\\uAA76\\uAA7A-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAB5A\\uAB5C-\\uAB69\\uAB6C-\\uABEA\\uABEC-\\uD7FF\\uE000-\\uFB28\\uFB2A-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDD0-\\uFDFB\\uFE00-\\uFE0F\\uFE1A-\\uFE2F\\uFE53\\uFE67\\uFE6C-\\uFEFE\\uFF00\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDCFF\\uDD03-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8F\\uDD9D-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDF9E\\uDFA0-\\uDFCF\\uDFD1-\\uDFFF]|\\uD801[\\uDC00-\\uDD6E\\uDD70-\\uDFFF]|\\uD802[\\uDC00-\\uDC56\\uDC58-\\uDC76\\uDC79-\\uDD1E\\uDD20-\\uDD3E\\uDD40-\\uDE4F\\uDE59-\\uDE7E\\uDE80-\\uDEC7\\uDEC9-\\uDEEF\\uDEF7-\\uDF38\\uDF40-\\uDF98\\uDF9D-\\uDFFF]|\\uD803[\\uDC00-\\uDD6D\\uDD6F-\\uDD8D\\uDD90-\\uDEAC\\uDEAE-\\uDECF\\uDED9-\\uDF54\\uDF5A-\\uDF85\\uDF8A-\\uDFFF]|\\uD804[\\uDC00-\\uDC46\\uDC4E-\\uDCBA\\uDCBD\\uDCC2-\\uDD3F\\uDD44-\\uDD73\\uDD76-\\uDDC4\\uDDC9-\\uDDCC\\uDDCE-\\uDDDA\\uDDDC\\uDDE0-\\uDE37\\uDE3E-\\uDEA8\\uDEAA-\\uDFD3\\uDFD6\\uDFD9-\\uDFFF]|\\uD805[\\uDC00-\\uDC4A\\uDC50-\\uDC59\\uDC5C\\uDC5E-\\uDCC5\\uDCC7-\\uDDC0\\uDDD8-\\uDE40\\uDE44-\\uDE5F\\uDE6D-\\uDEB8\\uDEBA-\\uDF3B\\uDF40-\\uDFFF]|\\uD806[\\uDC00-\\uDC3A\\uDC3C-\\uDD43\\uDD47-\\uDDE1\\uDDE3-\\uDE3E\\uDE47-\\uDE99\\uDE9D\\uDEA3-\\uDEFF\\uDF0A-\\uDFE0\\uDFE2-\\uDFFF]|\\uD807[\\uDC00-\\uDC40\\uDC46-\\uDC6F\\uDC72-\\uDEF6\\uDEF9-\\uDF42\\uDF50-\\uDFD4\\uDFF2-\\uDFFE]|[\\uD808\\uD80A\\uD80C-\\uD819\\uD81C-\\uD82E\\uD830-\\uD832\\uD837\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD809[\\uDC00-\\uDC6F\\uDC75-\\uDFFF]|\\uD80B[\\uDC00-\\uDFF0\\uDFF3-\\uDFFF]|\\uD81A[\\uDC00-\\uDE6D\\uDE70-\\uDEF4\\uDEF6-\\uDF36\\uDF40-\\uDF43\\uDF46-\\uDFFF]|\\uD81B[\\uDC00-\\uDD6C\\uDD70-\\uDE96\\uDE9B-\\uDFE1\\uDFE3-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D\\uDC9E\\uDCA0-\\uDFFF]|\\uD833[\\uDCF0-\\uDCF9\\uDCFD-\\uDCFF\\uDEB4-\\uDEB9\\uDED1-\\uDEDF\\uDEF1-\\uDF4F\\uDFC4-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDEB-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE8C-\\uDFFF]|\\uD838[\\uDC00-\\uDD4E\\uDD50-\\uDEFE\\uDF00-\\uDFFF]|\\uD839[\\uDC00-\\uDDFE\\uDE00-\\uDFFF]|\\uD83A[\\uDC00-\\uDD5D\\uDD60-\\uDFFF]|\\uD83B[\\uDC00-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDD2D\\uDD2F-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0C\\uDDAE-\\uDDE5\\uDE03-\\uDE0F\\uDE3C-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDE5F\\uDE66-\\uDEFF]|\\uD83D[\\uDED9-\\uDEDB\\uDEED-\\uDEEF\\uDEFD-\\uDEFF\\uDFDA-\\uDFDF\\uDFEC-\\uDFEF\\uDFF1-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE\\uDCAF\\uDCBC-\\uDCBF\\uDCC2-\\uDCCF\\uDCD9-\\uDCFF\\uDE58-\\uDE5F\\uDE6E\\uDE6F\\uDE7D-\\uDE7F\\uDE8B-\\uDE8D\\uDEC7\\uDEC9-\\uDECC\\uDEDD\\uDEDE\\uDEEB-\\uDEEE\\uDEF9-\\uDEFF\\uDF93\\uDFF0-\\uDFF9\\uDFFB-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])/,br=Yn(/^((?![*_])punctSpace)/,\"u\").replace(/punctSpace/g,Fr).getRegex(),Ar=/(?!~)(?:[!-\\/:-@\\[-`\\{-~\\xA1-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2010-\\u2027\\u2030-\\u205E\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u2FFF\\u3001-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/,Cr=Yn(/link|precode-code|html/,\"g\").replace(\"link\",M(/\\[(?:[^\\[\\]`]|(`+)[^`]+\\1(?!`))*?\\]\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)]|\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)])*\\))*\\)/,{a:1})).replace(\"precode-\",Xn?\"(?]*?>/).getRegex(),kr=/^(?:\\*+(?:((?!\\*)punct)|[^\\s*]))|^_+(?:((?!_)punct)|([^\\s_]))/,wr=Yn(kr,\"u\").replace(/punct/g,gr).getRegex(),_r=Yn(kr,\"u\").replace(/punct/g,Ar).getRegex(),Sr=\"^[^_*]*?__[^_*]*?\\\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\\\*)punct(\\\\*+)(?=[\\\\s]|$)|notPunctSpace(\\\\*+)(?!\\\\*)(?=punctSpace|$)|(?!\\\\*)punctSpace(\\\\*+)(?=notPunctSpace)|[\\\\s](\\\\*+)(?!\\\\*)(?=punct)|(?!\\\\*)punct(\\\\*+)(?!\\\\*)(?=punct)|notPunctSpace(\\\\*+)(?=notPunctSpace)\",xr=Yn(Sr,\"gu\").replace(/notPunctSpace/g,Er).replace(/punctSpace/g,Fr).replace(/punct/g,gr).getRegex(),Br=Yn(Sr,\"gu\").replace(/notPunctSpace/g,/(?:(?:[\\0-\\x08\\x0E-\\x1F0-9A-Za-z\\x7F-\\x9F\\xAA\\xAD\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376-\\u037D\\u037F-\\u0383\\u0386\\u0388-\\u03F5\\u03F7-\\u0481\\u0483-\\u0559\\u0560-\\u0588\\u058B\\u058C\\u0590-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7-\\u05F2\\u05F5-\\u0605\\u0610-\\u061A\\u061C\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DD\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u070E-\\u07F5\\u07FA-\\u07FD\\u0800-\\u082F\\u083F-\\u085D\\u085F-\\u0887\\u0889-\\u0963\\u0966-\\u096F\\u0971-\\u09F1\\u09F4-\\u09F9\\u09FC\\u09FE-\\u0A75\\u0A77-\\u0AEF\\u0AF2-\\u0B6F\\u0B71-\\u0BF2\\u0BFB-\\u0C76\\u0C78-\\u0C7E\\u0C80-\\u0C83\\u0C85-\\u0D4E\\u0D50-\\u0D78\\u0D7A-\\u0DF3\\u0DF5-\\u0E3E\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E5C-\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F84\\u0F86-\\u0FBD\\u0FC6\\u0FCD\\u0FDB-\\u1049\\u1050-\\u109D\\u10A0-\\u10FA\\u10FC-\\u135F\\u1369-\\u138F\\u139A-\\u13FF\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u169D-\\u16EA\\u16EE-\\u1734\\u1737-\\u17D3\\u17D7\\u17DC-\\u17FF\\u180B-\\u193F\\u1941-\\u1943\\u1946-\\u19DD\\u1A00-\\u1A1D\\u1A20-\\u1A9F\\u1AA7\\u1AAE-\\u1B4D\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BFB\\u1C00-\\u1C3A\\u1C40-\\u1C7D\\u1C80-\\u1CBF\\u1CC8-\\u1CD2\\u1CD4-\\u1FBC\\u1FBE\\u1FC2-\\u1FCC\\u1FD0-\\u1FDC\\u1FE0-\\u1FEC\\u1FF0-\\u1FFC\\u1FFF\\u200B-\\u200F\\u202A-\\u202E\\u2060-\\u2079\\u207F-\\u2089\\u208F-\\u209F\\u20C2-\\u20FF\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u218C-\\u218F\\u242A-\\u243F\\u244B-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2B74\\u2B75\\u2C00-\\u2CE4\\u2CEB-\\u2CF8\\u2CFD\\u2D00-\\u2D6F\\u2D71-\\u2DFF\\u2E2F\\u2E5E-\\u2E7F\\u2E9A\\u2EF4-\\u2EFF\\u2FD6-\\u2FEF\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3040-\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u318F\\u3192-\\u3195\\u31A0-\\u31BF\\u31E6-\\u31EE\\u31F0-\\u31FF\\u321F-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48F\\uA4C7-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA672\\uA674-\\uA67D\\uA67F-\\uA6F1\\uA6F8-\\uA6FF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA827\\uA82C-\\uA835\\uA83A-\\uA873\\uA878-\\uA8CD\\uA8D0-\\uA8F7\\uA8FB\\uA8FD-\\uA92D\\uA930-\\uA95E\\uA960-\\uA9C0\\uA9CE-\\uA9DD\\uA9E0-\\uAA5B\\uAA60-\\uAA76\\uAA7A-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAB5A\\uAB5C-\\uAB69\\uAB6C-\\uABEA\\uABEC-\\uD7FF\\uE000-\\uFB28\\uFB2A-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDD0-\\uFDFB\\uFE00-\\uFE0F\\uFE1A-\\uFE2F\\uFE53\\uFE67\\uFE6C-\\uFEFE\\uFF00\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFDF\\uFFE7\\uFFEF-\\uFFFB\\uFFFE\\uFFFF]|\\uD800[\\uDC00-\\uDCFF\\uDD03-\\uDD36\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDD8F\\uDD9D-\\uDD9F\\uDDA1-\\uDDCF\\uDDFD-\\uDF9E\\uDFA0-\\uDFCF\\uDFD1-\\uDFFF]|\\uD801[\\uDC00-\\uDD6E\\uDD70-\\uDFFF]|\\uD802[\\uDC00-\\uDC56\\uDC58-\\uDC76\\uDC79-\\uDD1E\\uDD20-\\uDD3E\\uDD40-\\uDE4F\\uDE59-\\uDE7E\\uDE80-\\uDEC7\\uDEC9-\\uDEEF\\uDEF7-\\uDF38\\uDF40-\\uDF98\\uDF9D-\\uDFFF]|\\uD803[\\uDC00-\\uDD6D\\uDD6F-\\uDD8D\\uDD90-\\uDEAC\\uDEAE-\\uDECF\\uDED9-\\uDF54\\uDF5A-\\uDF85\\uDF8A-\\uDFFF]|\\uD804[\\uDC00-\\uDC46\\uDC4E-\\uDCBA\\uDCBD\\uDCC2-\\uDD3F\\uDD44-\\uDD73\\uDD76-\\uDDC4\\uDDC9-\\uDDCC\\uDDCE-\\uDDDA\\uDDDC\\uDDE0-\\uDE37\\uDE3E-\\uDEA8\\uDEAA-\\uDFD3\\uDFD6\\uDFD9-\\uDFFF]|\\uD805[\\uDC00-\\uDC4A\\uDC50-\\uDC59\\uDC5C\\uDC5E-\\uDCC5\\uDCC7-\\uDDC0\\uDDD8-\\uDE40\\uDE44-\\uDE5F\\uDE6D-\\uDEB8\\uDEBA-\\uDF3B\\uDF40-\\uDFFF]|\\uD806[\\uDC00-\\uDC3A\\uDC3C-\\uDD43\\uDD47-\\uDDE1\\uDDE3-\\uDE3E\\uDE47-\\uDE99\\uDE9D\\uDEA3-\\uDEFF\\uDF0A-\\uDFE0\\uDFE2-\\uDFFF]|\\uD807[\\uDC00-\\uDC40\\uDC46-\\uDC6F\\uDC72-\\uDEF6\\uDEF9-\\uDF42\\uDF50-\\uDFD4\\uDFF2-\\uDFFE]|[\\uD808\\uD80A\\uD80C-\\uD819\\uD81C-\\uD82E\\uD830-\\uD832\\uD837\\uD83F-\\uDBFF][\\uDC00-\\uDFFF]|\\uD809[\\uDC00-\\uDC6F\\uDC75-\\uDFFF]|\\uD80B[\\uDC00-\\uDFF0\\uDFF3-\\uDFFF]|\\uD81A[\\uDC00-\\uDE6D\\uDE70-\\uDEF4\\uDEF6-\\uDF36\\uDF40-\\uDF43\\uDF46-\\uDFFF]|\\uD81B[\\uDC00-\\uDD6C\\uDD70-\\uDE96\\uDE9B-\\uDFE1\\uDFE3-\\uDFFF]|\\uD82F[\\uDC00-\\uDC9B\\uDC9D\\uDC9E\\uDCA0-\\uDFFF]|\\uD833[\\uDCF0-\\uDCF9\\uDCFD-\\uDCFF\\uDEB4-\\uDEB9\\uDED1-\\uDEDF\\uDEF1-\\uDF4F\\uDFC4-\\uDFFF]|\\uD834[\\uDCF6-\\uDCFF\\uDD27\\uDD28\\uDD65-\\uDD69\\uDD6D-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDDEB-\\uDDFF\\uDE42-\\uDE44\\uDE46-\\uDEFF\\uDF57-\\uDFFF]|\\uD835[\\uDC00-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE8C-\\uDFFF]|\\uD838[\\uDC00-\\uDD4E\\uDD50-\\uDEFE\\uDF00-\\uDFFF]|\\uD839[\\uDC00-\\uDDFE\\uDE00-\\uDFFF]|\\uD83A[\\uDC00-\\uDD5D\\uDD60-\\uDFFF]|\\uD83B[\\uDC00-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDD2D\\uDD2F-\\uDEEF\\uDEF2-\\uDFFF]|\\uD83C[\\uDC2C-\\uDC2F\\uDC94-\\uDC9F\\uDCAF\\uDCB0\\uDCC0\\uDCD0\\uDCF6-\\uDD0C\\uDDAE-\\uDDE5\\uDE03-\\uDE0F\\uDE3C-\\uDE3F\\uDE49-\\uDE4F\\uDE52-\\uDE5F\\uDE66-\\uDEFF]|\\uD83D[\\uDED9-\\uDEDB\\uDEED-\\uDEEF\\uDEFD-\\uDEFF\\uDFDA-\\uDFDF\\uDFEC-\\uDFEF\\uDFF1-\\uDFFF]|\\uD83E[\\uDC0C-\\uDC0F\\uDC48-\\uDC4F\\uDC5A-\\uDC5F\\uDC88-\\uDC8F\\uDCAE\\uDCAF\\uDCBC-\\uDCBF\\uDCC2-\\uDCCF\\uDCD9-\\uDCFF\\uDE58-\\uDE5F\\uDE6E\\uDE6F\\uDE7D-\\uDE7F\\uDE8B-\\uDE8D\\uDEC7\\uDEC9-\\uDECC\\uDEDD\\uDEDE\\uDEEB-\\uDEEE\\uDEF9-\\uDEFF\\uDF93\\uDFF0-\\uDFF9\\uDFFB-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])|~)/).replace(/punctSpace/g,/(?!~)(?:[\\t-\\r -\\/:-@\\[-`\\{-~\\xA0-\\xA9\\xAB\\xAC\\xAE-\\xB1\\xB4\\xB6-\\xB8\\xBB\\xBF\\xD7\\xF7\\u02C2-\\u02C5\\u02D2-\\u02DF\\u02E5-\\u02EB\\u02ED\\u02EF-\\u02FF\\u0375\\u037E\\u0384\\u0385\\u0387\\u03F6\\u0482\\u055A-\\u055F\\u0589\\u058A\\u058D-\\u058F\\u05BE\\u05C0\\u05C3\\u05C6\\u05F3\\u05F4\\u0606-\\u060F\\u061B\\u061D-\\u061F\\u066A-\\u066D\\u06D4\\u06DE\\u06E9\\u06FD\\u06FE\\u0700-\\u070D\\u07F6-\\u07F9\\u07FE\\u07FF\\u0830-\\u083E\\u085E\\u0888\\u0964\\u0965\\u0970\\u09F2\\u09F3\\u09FA\\u09FB\\u09FD\\u0A76\\u0AF0\\u0AF1\\u0B70\\u0BF3-\\u0BFA\\u0C77\\u0C7F\\u0C84\\u0D4F\\u0D79\\u0DF4\\u0E3F\\u0E4F\\u0E5A\\u0E5B\\u0F01-\\u0F17\\u0F1A-\\u0F1F\\u0F34\\u0F36\\u0F38\\u0F3A-\\u0F3D\\u0F85\\u0FBE-\\u0FC5\\u0FC7-\\u0FCC\\u0FCE-\\u0FDA\\u104A-\\u104F\\u109E\\u109F\\u10FB\\u1360-\\u1368\\u1390-\\u1399\\u1400\\u166D\\u166E\\u1680\\u169B\\u169C\\u16EB-\\u16ED\\u1735\\u1736\\u17D4-\\u17D6\\u17D8-\\u17DB\\u1800-\\u180A\\u1940\\u1944\\u1945\\u19DE-\\u19FF\\u1A1E\\u1A1F\\u1AA0-\\u1AA6\\u1AA8-\\u1AAD\\u1B4E\\u1B4F\\u1B5A-\\u1B6A\\u1B74-\\u1B7F\\u1BFC-\\u1BFF\\u1C3B-\\u1C3F\\u1C7E\\u1C7F\\u1CC0-\\u1CC7\\u1CD3\\u1FBD\\u1FBF-\\u1FC1\\u1FCD-\\u1FCF\\u1FDD-\\u1FDF\\u1FED-\\u1FEF\\u1FFD\\u1FFE\\u2000-\\u200A\\u2010-\\u2029\\u202F-\\u205F\\u207A-\\u207E\\u208A-\\u208E\\u20A0-\\u20C1\\u2100\\u2101\\u2103-\\u2106\\u2108\\u2109\\u2114\\u2116-\\u2118\\u211E-\\u2123\\u2125\\u2127\\u2129\\u212E\\u213A\\u213B\\u2140-\\u2144\\u214A-\\u214D\\u214F\\u218A\\u218B\\u2190-\\u2429\\u2440-\\u244A\\u249C-\\u24E9\\u2500-\\u2775\\u2794-\\u2B73\\u2B76-\\u2BFF\\u2CE5-\\u2CEA\\u2CF9-\\u2CFC\\u2CFE\\u2CFF\\u2D70\\u2E00-\\u2E2E\\u2E30-\\u2E5D\\u2E80-\\u2E99\\u2E9B-\\u2EF3\\u2F00-\\u2FD5\\u2FF0-\\u3004\\u3008-\\u3020\\u3030\\u3036\\u3037\\u303D-\\u303F\\u309B\\u309C\\u30A0\\u30FB\\u3190\\u3191\\u3196-\\u319F\\u31C0-\\u31E5\\u31EF\\u3200-\\u321E\\u322A-\\u3247\\u3250\\u3260-\\u327F\\u328A-\\u32B0\\u32C0-\\u33FF\\u4DC0-\\u4DFF\\uA490-\\uA4C6\\uA4FE\\uA4FF\\uA60D-\\uA60F\\uA673\\uA67E\\uA6F2-\\uA6F7\\uA700-\\uA716\\uA720\\uA721\\uA789\\uA78A\\uA828-\\uA82B\\uA836-\\uA839\\uA874-\\uA877\\uA8CE\\uA8CF\\uA8F8-\\uA8FA\\uA8FC\\uA92E\\uA92F\\uA95F\\uA9C1-\\uA9CD\\uA9DE\\uA9DF\\uAA5C-\\uAA5F\\uAA77-\\uAA79\\uAADE\\uAADF\\uAAF0\\uAAF1\\uAB5B\\uAB6A\\uAB6B\\uABEB\\uFB29\\uFBB2-\\uFBD2\\uFD3E-\\uFD4F\\uFD90\\uFD91\\uFDC8-\\uFDCF\\uFDFC-\\uFDFF\\uFE10-\\uFE19\\uFE30-\\uFE52\\uFE54-\\uFE66\\uFE68-\\uFE6B\\uFEFF\\uFF01-\\uFF0F\\uFF1A-\\uFF20\\uFF3B-\\uFF40\\uFF5B-\\uFF65\\uFFE0-\\uFFE6\\uFFE8-\\uFFEE\\uFFFC\\uFFFD]|\\uD800[\\uDD00-\\uDD02\\uDD37-\\uDD3F\\uDD79-\\uDD89\\uDD8C-\\uDD8E\\uDD90-\\uDD9C\\uDDA0\\uDDD0-\\uDDFC\\uDF9F\\uDFD0]|\\uD801\\uDD6F|\\uD802[\\uDC57\\uDC77\\uDC78\\uDD1F\\uDD3F\\uDE50-\\uDE58\\uDE7F\\uDEC8\\uDEF0-\\uDEF6\\uDF39-\\uDF3F\\uDF99-\\uDF9C]|\\uD803[\\uDD6E\\uDD8E\\uDD8F\\uDEAD\\uDED0-\\uDED8\\uDF55-\\uDF59\\uDF86-\\uDF89]|\\uD804[\\uDC47-\\uDC4D\\uDCBB\\uDCBC\\uDCBE-\\uDCC1\\uDD40-\\uDD43\\uDD74\\uDD75\\uDDC5-\\uDDC8\\uDDCD\\uDDDB\\uDDDD-\\uDDDF\\uDE38-\\uDE3D\\uDEA9\\uDFD4\\uDFD5\\uDFD7\\uDFD8]|\\uD805[\\uDC4B-\\uDC4F\\uDC5A\\uDC5B\\uDC5D\\uDCC6\\uDDC1-\\uDDD7\\uDE41-\\uDE43\\uDE60-\\uDE6C\\uDEB9\\uDF3C-\\uDF3F]|\\uD806[\\uDC3B\\uDD44-\\uDD46\\uDDE2\\uDE3F-\\uDE46\\uDE9A-\\uDE9C\\uDE9E-\\uDEA2\\uDF00-\\uDF09\\uDFE1]|\\uD807[\\uDC41-\\uDC45\\uDC70\\uDC71\\uDEF7\\uDEF8\\uDF43-\\uDF4F\\uDFD5-\\uDFF1\\uDFFF]|\\uD809[\\uDC70-\\uDC74]|\\uD80B[\\uDFF1\\uDFF2]|\\uD81A[\\uDE6E\\uDE6F\\uDEF5\\uDF37-\\uDF3F\\uDF44\\uDF45]|\\uD81B[\\uDD6D-\\uDD6F\\uDE97-\\uDE9A\\uDFE2]|\\uD82F[\\uDC9C\\uDC9F]|\\uD833[\\uDC00-\\uDCEF\\uDCFA-\\uDCFC\\uDD00-\\uDEB3\\uDEBA-\\uDED0\\uDEE0-\\uDEF0\\uDF50-\\uDFC3]|\\uD834[\\uDC00-\\uDCF5\\uDD00-\\uDD26\\uDD29-\\uDD64\\uDD6A-\\uDD6C\\uDD83\\uDD84\\uDD8C-\\uDDA9\\uDDAE-\\uDDEA\\uDE00-\\uDE41\\uDE45\\uDF00-\\uDF56]|\\uD835[\\uDEC1\\uDEDB\\uDEFB\\uDF15\\uDF35\\uDF4F\\uDF6F\\uDF89\\uDFA9\\uDFC3]|\\uD836[\\uDC00-\\uDDFF\\uDE37-\\uDE3A\\uDE6D-\\uDE74\\uDE76-\\uDE83\\uDE85-\\uDE8B]|\\uD838[\\uDD4F\\uDEFF]|\\uD839\\uDDFF|\\uD83A[\\uDD5E\\uDD5F]|\\uD83B[\\uDCAC\\uDCB0\\uDD2E\\uDEF0\\uDEF1]|\\uD83C[\\uDC00-\\uDC2B\\uDC30-\\uDC93\\uDCA0-\\uDCAE\\uDCB1-\\uDCBF\\uDCC1-\\uDCCF\\uDCD1-\\uDCF5\\uDD0D-\\uDDAD\\uDDE6-\\uDE02\\uDE10-\\uDE3B\\uDE40-\\uDE48\\uDE50\\uDE51\\uDE60-\\uDE65\\uDF00-\\uDFFF]|\\uD83D[\\uDC00-\\uDED8\\uDEDC-\\uDEEC\\uDEF0-\\uDEFC\\uDF00-\\uDFD9\\uDFE0-\\uDFEB\\uDFF0]|\\uD83E[\\uDC00-\\uDC0B\\uDC10-\\uDC47\\uDC50-\\uDC59\\uDC60-\\uDC87\\uDC90-\\uDCAD\\uDCB0-\\uDCBB\\uDCC0\\uDCC1\\uDCD0-\\uDCD8\\uDD00-\\uDE57\\uDE60-\\uDE6D\\uDE70-\\uDE7C\\uDE80-\\uDE8A\\uDE8E-\\uDEC6\\uDEC8\\uDECD-\\uDEDC\\uDEDF-\\uDEEA\\uDEEF-\\uDEF8\\uDF00-\\uDF92\\uDF94-\\uDFEF\\uDFFA])/).replace(/punct/g,Ar).getRegex(),Ir=Yn(\"^[^_*]*?\\\\*\\\\*[^_*]*?_[^_*]*?(?=\\\\*\\\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)\",\"gu\").replace(/notPunctSpace/g,Er).replace(/punctSpace/g,Fr).replace(/punct/g,gr).getRegex(),Or=Yn(/\\\\(punct)/,\"gu\").replace(/punct/g,gr).getRegex(),Tr=Yn(/^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/).replace(\"scheme\",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(\"email\",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Pr=Yn(dr).replace(\"(?:--\\x3e|$)\",\"--\\x3e\").getRegex(),jr=Yn(\"^comment|^|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>|^<\\\\?[\\\\s\\\\S]*?\\\\?>|^|^\").replace(\"comment\",Pr).replace(\"attribute\",/\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/).getRegex(),Nr=/(?:\\[(?:\\\\[\\s\\S]|[^\\[\\]\\\\])*\\]|\\\\[\\s\\S]|`+[^`]*?`+(?!`)|[^\\[\\]\\\\`])*?/,zr=Yn(/^!?\\[(label)\\]\\(\\s*(href)(?:(?:[ \\t]*(?:\\n[ \\t]*)?)(title))?\\s*\\)/).replace(\"label\",Nr).replace(\"href\",/<(?:\\\\.|[^\\n<>\\\\])+>|[^ \\t\\n\\x00-\\x1f]*/).replace(\"title\",/\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/).getRegex(),Rr=Yn(/^!?\\[(label)\\]\\[(ref)\\]/).replace(\"label\",Nr).replace(\"ref\",or).getRegex(),Mr=Yn(/^!?\\[(ref)\\](?:\\[\\])?/).replace(\"ref\",or).getRegex(),Zr=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Lr={_backpedal:Gn,anyPunctuation:Or,autolink:Tr,blockSkip:Cr,br:yr,code:/^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,del:Gn,emStrongLDelim:wr,emStrongRDelimAst:xr,emStrongRDelimUnd:Ir,escape:/^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,link:zr,nolink:Mr,punctuation:br,reflink:Rr,reflinkSearch:Yn(\"reflink|nolink(?!\\\\()\",\"g\").replace(\"reflink\",Rr).replace(\"nolink\",Mr).getRegex(),tag:jr,text:/^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\\":\">\",'\"':\""\",\"'\":\"'\"},Wr=function(e){return Kr[e]};function Jr(e,t){if(t){if(er.escapeTest.test(e))return e.replace(er.escapeReplace,Wr)}else if(er.escapeTestNoEncode.test(e))return e.replace(er.escapeReplaceNoEncode,Wr);return e}function Qr(e){try{e=encodeURI(e).replace(er.percentDecode,\"%\")}catch(e){return null}return e}function Gr(e,t){var n,r=e.replace(er.findPipe,function(e,t,n){for(var r=!1,u=t;--u>=0&&\"\\\\\"===n[u];)r=!r;return r?\"|\":\" |\"}).split(er.splitPipe),u=0;if(r[0].trim()||r.shift(),r.length>0&&!(null!==(n=r.at(-1))&&void 0!==n&&n.trim())&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length0)return{type:\"space\",raw:t[0]}}},{key:\"code\",value:function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(this.rules.other.codeRemoveIndent,\"\");return{type:\"code\",raw:t[0],codeBlockStyle:\"indented\",text:this.options.pedantic?n:Yr(n,\"\\n\")}}}},{key:\"fences\",value:function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],r=function(e,t,n){var r=e.match(n.other.indentCodeCompensation);if(null===r)return t;var u=r[1];return t.split(\"\\n\").map(function(e){var t=e.match(n.other.beginningSpace);return null===t?e:T(t,1)[0].length>=u.length?e.slice(u.length):e}).join(\"\\n\")}(n,t[3]||\"\",this.rules);return{type:\"code\",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,\"$1\"):t[2],text:r}}}},{key:\"heading\",value:function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(this.rules.other.endingHash.test(n)){var r=Yr(n,\"#\");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:\"heading\",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}},{key:\"hr\",value:function(e){var t=this.rules.block.hr.exec(e);if(t)return{type:\"hr\",raw:Yr(t[0],\"\\n\")}}},{key:\"blockquote\",value:function(e){var t=this.rules.block.blockquote.exec(e);if(t){for(var n=Yr(t[0],\"\\n\").split(\"\\n\"),r=\"\",u=\"\",a=[];n.length>0;){var i=!1,o=[],s=void 0;for(s=0;s1,a={type:\"list\",raw:\"\",ordered:u,start:u?+r.slice(0,-1):\"\",loose:!1,items:[]};r=u?\"\\\\d{1,9}\\\\\".concat(r.slice(-1)):\"\\\\\".concat(r),this.options.pedantic&&(r=u?r:\"[*+-]\");for(var i=this.rules.other.listItemRegex(r),o=!1;e;){var s=!1,c=\"\",l=\"\";if(!(n=i.exec(e))||this.rules.block.hr.test(e))break;c=n[0],e=e.substring(c.length);var d=n[2].split(\"\\n\",1)[0].replace(this.rules.other.listReplaceTabs,function(e){return\" \".repeat(3*e.length)}),f=e.split(\"\\n\",1)[0],p=!d.trim(),h=0;if(this.options.pedantic?(h=2,l=d.trimStart()):p?h=n[1].length+1:(h=(h=n[2].search(this.rules.other.nonSpaceChar))>4?1:h,l=d.slice(h),h+=n[1].length),p&&this.rules.other.blankLine.test(f)&&(c+=f+\"\\n\",e=e.substring(f.length+1),s=!0),!s)for(var v=this.rules.other.nextBulletRegex(h),m=this.rules.other.hrRegex(h),D=this.rules.other.fencesBeginRegex(h),y=this.rules.other.headingBeginRegex(h),g=this.rules.other.htmlBeginRegex(h);e;){var F=e.split(\"\\n\",1)[0],E=void 0;if(f=F,this.options.pedantic?E=f=f.replace(this.rules.other.listReplaceNesting,\" \"):E=f.replace(this.rules.other.tabCharGlobal,\" \"),D.test(f)||y.test(f)||g.test(f)||v.test(f)||m.test(f))break;if(E.search(this.rules.other.nonSpaceChar)>=h||!f.trim())l+=\"\\n\"+E.slice(h);else{if(p||d.replace(this.rules.other.tabCharGlobal,\" \").search(this.rules.other.nonSpaceChar)>=4||D.test(d)||y.test(d)||m.test(d))break;l+=\"\\n\"+f}!p&&!f.trim()&&(p=!0),c+=F+\"\\n\",e=e.substring(F.length+1),d=E.slice(h)}a.loose||(o?a.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0));var b=null,A=void 0;this.options.gfm&&((b=this.rules.other.listIsTask.exec(l))&&(A=\"[ ] \"!==b[0],l=l.replace(this.rules.other.listReplaceTask,\"\"))),a.items.push({type:\"list_item\",raw:c,task:!!b,checked:A,loose:!1,text:l,tokens:[]}),a.raw+=c}var C=a.items.at(-1);if(!C)return;C.raw=C.raw.trimEnd(),C.text=C.text.trimEnd(),a.raw=a.raw.trimEnd();for(var k=0;k0&&w.some(function(e){return t.rules.other.anyLine.test(e.raw)});a.loose=_}if(a.loose)for(var S=0;S0?-2:-1}(t[2],\"()\");if(-2===u)return;if(u>-1){var a=(0===t[0].indexOf(\"!\")?5:4)+t[1].length+u;t[2]=t[2].substring(0,u),t[0]=t[0].substring(0,a).trim(),t[3]=\"\"}}var i=t[2],o=\"\";if(this.options.pedantic){var s=this.rules.other.pedanticHrefTitle.exec(i);s&&(i=s[1],o=s[3])}else o=t[3]?t[3].slice(1,-1):\"\";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(i=this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?i.slice(1):i.slice(1,-1)),Xr(t,{href:i&&i.replace(this.rules.inline.anyPunctuation,\"$1\"),title:o&&o.replace(this.rules.inline.anyPunctuation,\"$1\")},t[0],this.lexer,this.rules)}}},{key:\"reflink\",value:function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var r=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,\" \").toLowerCase()];if(!r){var u=n[0].charAt(0);return{type:\"text\",raw:u,text:u}}return Xr(n,r,n[0],this.lexer,this.rules)}}},{key:\"emStrong\",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\",r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!r[1]&&!r[2]||!n||this.rules.inline.punctuation.exec(n))){var u,a,i=P(r[0]).length-1,o=i,s=0,c=\"*\"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+i);null!=(r=c.exec(t));)if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6])if(a=P(u).length,r[3]||r[4])o+=a;else if(!((r[5]||r[6])&&i%3)||(i+a)%3){if(!((o-=a)>0)){a=Math.min(a,a+o+s);var l=P(r[0])[0].length,d=e.slice(0,i+r.index+l+a);if(Math.min(i,a)%2){var f=d.slice(1,-1);return{type:\"em\",raw:d,text:f,tokens:this.lexer.inlineTokens(f)}}var p=d.slice(2,-2);return{type:\"strong\",raw:d,text:p,tokens:this.lexer.inlineTokens(p)}}}else s+=a}}},{key:\"codespan\",value:function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(this.rules.other.newLineCharGlobal,\" \"),r=this.rules.other.nonSpaceChar.test(n),u=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&u&&(n=n.substring(1,n.length-1)),{type:\"codespan\",raw:t[0],text:n}}}},{key:\"br\",value:function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:\"br\",raw:t[0]}}},{key:\"del\",value:function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:\"del\",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}},{key:\"autolink\",value:function(e){var t,n,r=this.rules.inline.autolink.exec(e);if(r)return\"@\"===r[2]?n=\"mailto:\"+(t=r[1]):n=t=r[1],{type:\"link\",raw:r[0],text:t,href:n,tokens:[{type:\"text\",raw:t,text:t}]}}},{key:\"url\",value:function(e){var t;if(t=this.rules.inline.url.exec(e)){var n,r;if(\"@\"===t[2])r=\"mailto:\"+(n=t[0]);else{var u;do{var a,i;u=t[0],t[0]=null!==(a=null===(i=this.rules.inline._backpedal.exec(t[0]))||void 0===i?void 0:i[0])&&void 0!==a?a:\"\"}while(u!==t[0]);n=t[0],r=\"www.\"===t[1]?\"http://\"+t[0]:t[0]}return{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}},{key:\"inlineText\",value:function(e){var t=this.rules.inline.text.exec(e);if(t){var n=this.lexer.state.inRawBlock;return{type:\"text\",raw:t[0],text:t[0],escaped:n}}}}])}(),tu=function(){function e(t){D(this,e),b(this,\"tokens\",void 0),b(this,\"options\",void 0),b(this,\"state\",void 0),b(this,\"tokenizer\",void 0),b(this,\"inlineQueue\",void 0),this.tokens=[],this.tokens.links=Object.create(null),this.options=t||Jn,this.options.tokenizer=this.options.tokenizer||new eu,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var n={other:er,block:Vr.normal,inline:Hr.normal};this.options.pedantic?(n.block=Vr.pedantic,n.inline=Hr.pedantic):this.options.gfm&&(n.block=Vr.gfm,this.options.breaks?n.inline=Hr.breaks:n.inline=Hr.gfm),this.tokenizer.rules=n}return F(e,[{key:\"lex\",value:function(e){e=e.replace(er.carriageReturn,\"\\n\"),this.blockTokens(e,this.tokens);for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:[],u=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=function(){var t,a,i;if(null!==(t=n.options.extensions)&&void 0!==t&&null!==(t=t.block)&&void 0!==t&&t.some(function(t){return!!(i=t.call({lexer:n},e,r))&&(e=e.substring(i.raw.length),r.push(i),!0)}))return 0;if(i=n.tokenizer.space(e)){e=e.substring(i.raw.length);var o=r.at(-1);return 1===i.raw.length&&void 0!==o?o.raw+=\"\\n\":r.push(i),0}if(i=n.tokenizer.code(e)){e=e.substring(i.raw.length);var s=r.at(-1);return\"paragraph\"===(null==s?void 0:s.type)||\"text\"===(null==s?void 0:s.type)?(s.raw+=(s.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,s.text+=\"\\n\"+i.text,n.inlineQueue.at(-1).src=s.text):r.push(i),0}if(i=n.tokenizer.fences(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.heading(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.hr(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.blockquote(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.list(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.html(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.def(e)){e=e.substring(i.raw.length);var c=r.at(-1);return\"paragraph\"===(null==c?void 0:c.type)||\"text\"===(null==c?void 0:c.type)?(c.raw+=(c.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,c.text+=\"\\n\"+i.raw,n.inlineQueue.at(-1).src=c.text):n.tokens.links[i.tag]||(n.tokens.links[i.tag]={href:i.href,title:i.title},r.push(i)),0}if(i=n.tokenizer.table(e))return e=e.substring(i.raw.length),r.push(i),0;if(i=n.tokenizer.lheading(e))return e=e.substring(i.raw.length),r.push(i),0;var l=e;if(null!==(a=n.options.extensions)&&void 0!==a&&a.startBlock){var d,f=1/0,p=e.slice(1);n.options.extensions.startBlock.forEach(function(e){\"number\"==typeof(d=e.call({lexer:n},p))&&d>=0&&(f=Math.min(f,d))}),f<1/0&&f>=0&&(l=e.substring(0,f+1))}if(n.state.top&&(i=n.tokenizer.paragraph(l))){var h=r.at(-1);return u&&\"paragraph\"===(null==h?void 0:h.type)?(h.raw+=(h.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,h.text+=\"\\n\"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=h.text):r.push(i),u=l.length!==e.length,e=e.substring(i.raw.length),0}if(i=n.tokenizer.text(e)){e=e.substring(i.raw.length);var v=r.at(-1);return\"text\"===(null==v?void 0:v.type)?(v.raw+=(v.raw.endsWith(\"\\n\")?\"\":\"\\n\")+i.raw,v.text+=\"\\n\"+i.text,n.inlineQueue.pop(),n.inlineQueue.at(-1).src=v.text):r.push(i),0}if(e){var m=\"Infinite loop on byte: \"+e.charCodeAt(0);if(n.options.silent)return console.error(m),1;throw new Error(m)}};for(this.options.pedantic&&(e=e.replace(er.tabCharGlobal,\" \").replace(er.spaceLine,\"\"));e&&(0===(t=a())||1!==t););return this.state.top=!0,r}},{key:\"inline\",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return this.inlineQueue.push({src:e,tokens:t}),t}},{key:\"inlineTokens\",value:function(e){var t,n,r,u=this,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=e,o=null;if(this.tokens.links){var s=Object.keys(this.tokens.links);if(s.length>0)for(;null!=(o=this.tokenizer.rules.inline.reflinkSearch.exec(i));)s.includes(o[0].slice(o[0].lastIndexOf(\"[\")+1,-1))&&(i=i.slice(0,o.index)+\"[\"+\"a\".repeat(o[0].length-2)+\"]\"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(o=this.tokenizer.rules.inline.anyPunctuation.exec(i));)i=i.slice(0,o.index)+\"++\"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;null!=(o=this.tokenizer.rules.inline.blockSkip.exec(i));)r=o[2]?o[2].length:0,i=i.slice(0,o.index+r)+\"[\"+\"a\".repeat(o[0].length-r-2)+\"]\"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);i=null!==(t=null===(n=this.options.hooks)||void 0===n||null===(n=n.emStrongMask)||void 0===n?void 0:n.call({lexer:this},i))&&void 0!==t?t:i;for(var c,l=!1,d=\"\",f=function(){var t,n,r;if(l||(d=\"\"),l=!1,null!==(t=u.options.extensions)&&void 0!==t&&null!==(t=t.inline)&&void 0!==t&&t.some(function(t){return!!(r=t.call({lexer:u},e,a))&&(e=e.substring(r.raw.length),a.push(r),!0)}))return 0;if(r=u.tokenizer.escape(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.tag(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.link(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.reflink(e,u.tokens.links)){e=e.substring(r.raw.length);var o=a.at(-1);return\"text\"===r.type&&\"text\"===(null==o?void 0:o.type)?(o.raw+=r.raw,o.text+=r.text):a.push(r),0}if(r=u.tokenizer.emStrong(e,i,d))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.codespan(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.br(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.del(e))return e=e.substring(r.raw.length),a.push(r),0;if(r=u.tokenizer.autolink(e))return e=e.substring(r.raw.length),a.push(r),0;if(!u.state.inLink&&(r=u.tokenizer.url(e)))return e=e.substring(r.raw.length),a.push(r),0;var s=e;if(null!==(n=u.options.extensions)&&void 0!==n&&n.startInline){var c,f=1/0,p=e.slice(1);u.options.extensions.startInline.forEach(function(e){\"number\"==typeof(c=e.call({lexer:u},p))&&c>=0&&(f=Math.min(f,c))}),f<1/0&&f>=0&&(s=e.substring(0,f+1))}if(r=u.tokenizer.inlineText(s)){e=e.substring(r.raw.length),\"_\"!==r.raw.slice(-1)&&(d=r.raw.slice(-1)),l=!0;var h=a.at(-1);return\"text\"===(null==h?void 0:h.type)?(h.raw+=r.raw,h.text+=r.text):a.push(r),0}if(e){var v=\"Infinite loop on byte: \"+e.charCodeAt(0);if(u.options.silent)return console.error(v),1;throw new Error(v)}};e&&(0===(c=f())||1!==c););return a}}],[{key:\"rules\",get:function(){return{block:Vr,inline:Hr}}},{key:\"lex\",value:function(t,n){return new e(n).lex(t)}},{key:\"lexInline\",value:function(t,n){return new e(n).inlineTokens(t)}}])}(),nu=function(){return F(function e(t){D(this,e),b(this,\"options\",void 0),b(this,\"parser\",void 0),this.options=t||Jn},[{key:\"space\",value:function(e){return\"\"}},{key:\"code\",value:function(e){var t,n=e.text,r=e.lang,u=e.escaped,a=null===(t=(r||\"\").match(er.notSpaceStart))||void 0===t?void 0:t[0],i=n.replace(er.endingNewline,\"\")+\"\\n\";return a?'
    '+(u?i:Jr(i,!0))+\"
    \\n\":\"
    \"+(u?i:Jr(i,!0))+\"
    \\n\"}},{key:\"blockquote\",value:function(e){var t=e.tokens;return\"
    \\n\".concat(this.parser.parse(t),\"
    \\n\")}},{key:\"html\",value:function(e){return e.text}},{key:\"def\",value:function(e){return\"\"}},{key:\"heading\",value:function(e){var t=e.tokens,n=e.depth;return\"\").concat(this.parser.parseInline(t),\"\\n\")}},{key:\"hr\",value:function(e){return\"
    \\n\"}},{key:\"list\",value:function(e){for(var t=e.ordered,n=e.start,r=\"\",u=0;u\\n\"+r+\"\\n\"}},{key:\"listitem\",value:function(e){var t=\"\";if(e.task){var n,r=this.checkbox({checked:!!e.checked});e.loose?\"paragraph\"===(null===(n=e.tokens[0])||void 0===n?void 0:n.type)?(e.tokens[0].text=r+\" \"+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&\"text\"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=r+\" \"+Jr(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:\"text\",raw:r+\" \",text:r+\" \",escaped:!0}):t+=r+\" \"}return t+=this.parser.parse(e.tokens,!!e.loose),\"
  • \".concat(t,\"
  • \\n\")}},{key:\"checkbox\",value:function(e){return\"'}},{key:\"paragraph\",value:function(e){var t=e.tokens;return\"

    \".concat(this.parser.parseInline(t),\"

    \\n\")}},{key:\"table\",value:function(e){for(var t=\"\",n=\"\",r=0;r\".concat(u,\"\")),\"\\n\\n\"+t+\"\\n\"+u+\"
    \\n\"}},{key:\"tablerow\",value:function(e){var t=e.text;return\"\\n\".concat(t,\"\\n\")}},{key:\"tablecell\",value:function(e){var t=this.parser.parseInline(e.tokens),n=e.header?\"th\":\"td\";return(e.align?\"<\".concat(n,' align=\"').concat(e.align,'\">'):\"<\".concat(n,\">\"))+t+\"\\n\")}},{key:\"strong\",value:function(e){var t=e.tokens;return\"\".concat(this.parser.parseInline(t),\"\")}},{key:\"em\",value:function(e){var t=e.tokens;return\"\".concat(this.parser.parseInline(t),\"\")}},{key:\"codespan\",value:function(e){var t=e.text;return\"\".concat(Jr(t,!0),\"\")}},{key:\"br\",value:function(e){return\"
    \"}},{key:\"del\",value:function(e){var t=e.tokens;return\"\".concat(this.parser.parseInline(t),\"\")}},{key:\"link\",value:function(e){var t=e.href,n=e.title,r=e.tokens,u=this.parser.parseInline(r),a=Qr(t);if(null===a)return u;var i='
    \"+u+\"\"}},{key:\"image\",value:function(e){var t=e.href,n=e.title,r=e.text,u=e.tokens;u&&(r=this.parser.parseInline(u,this.parser.textRenderer));var a=Qr(t);if(null===a)return Jr(r);var i='\"').concat(r,'\"');return\"}},{key:\"text\",value:function(e){return\"tokens\"in e&&e.tokens?this.parser.parseInline(e.tokens):\"escaped\"in e&&e.escaped?e.text:Jr(e.text)}}])}(),ru=function(){return F(function e(){D(this,e)},[{key:\"strong\",value:function(e){return e.text}},{key:\"em\",value:function(e){return e.text}},{key:\"codespan\",value:function(e){return e.text}},{key:\"del\",value:function(e){return e.text}},{key:\"html\",value:function(e){return e.text}},{key:\"text\",value:function(e){return e.text}},{key:\"link\",value:function(e){return\"\"+e.text}},{key:\"image\",value:function(e){return\"\"+e.text}},{key:\"br\",value:function(){return\"\"}}])}(),uu=function(){function e(t){D(this,e),b(this,\"options\",void 0),b(this,\"renderer\",void 0),b(this,\"textRenderer\",void 0),this.options=t||Jn,this.options.renderer=this.options.renderer||new nu,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new ru}return F(e,[{key:\"parse\",value:function(e){for(var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=\"\",r=0;r1&&void 0!==arguments[1]?arguments[1]:this.renderer,n=\"\",r=0;r\"u\"||null===n)return i(new Error(\"marked(): input parameter is undefined or null\"));if(\"string\"!=typeof n)return i(new Error(\"marked(): input parameter is of type \"+Object.prototype.toString.call(n)+\", string expected\"));if(a.hooks&&(a.hooks.options=a,a.hooks.block=e),a.async)return v(B().m(function r(){var u,i,o,s,c,l,d,f,p,h,v;return B().w(function(r){for(;;)switch(r.n){case 0:if(!a.hooks){r.n=2;break}return r.n=1,a.hooks.preprocess(n);case 1:c=r.v,r.n=3;break;case 2:c=n;case 3:if(u=c,!a.hooks){r.n=5;break}return r.n=4,a.hooks.provideLexer();case 4:l=r.v,r.n=6;break;case 5:l=e?tu.lex:tu.lexInline;case 6:return d=l,r.n=7,d(u,a);case 7:if(i=r.v,!a.hooks){r.n=9;break}return r.n=8,a.hooks.processAllTokens(i);case 8:f=r.v,r.n=10;break;case 9:f=i;case 10:if(o=f,!a.walkTokens){r.n=11;break}return r.n=11,Promise.all(t.walkTokens(o,a.walkTokens));case 11:if(!a.hooks){r.n=13;break}return r.n=12,a.hooks.provideParser();case 12:p=r.v,r.n=14;break;case 13:p=e?uu.parse:uu.parseInline;case 14:return h=p,r.n=15,h(o,a);case 15:if(s=r.v,!a.hooks){r.n=17;break}return r.n=16,a.hooks.postprocess(s);case 16:v=r.v,r.n=18;break;case 17:v=s;case 18:return r.a(2,v)}},r)}))().catch(i);try{a.hooks&&(n=a.hooks.preprocess(n));var o=(a.hooks?a.hooks.provideLexer():e?tu.lex:tu.lexInline)(n,a);a.hooks&&(o=a.hooks.processAllTokens(o)),a.walkTokens&&t.walkTokens(o,a.walkTokens);var s=(a.hooks?a.hooks.provideParser():e?uu.parse:uu.parseInline)(o,a);return a.hooks&&(s=a.hooks.postprocess(s)),s}catch(e){return i(e)}}}},{key:\"onError\",value:function(e,t){return function(n){if(n.message+=\"\\nPlease report this to https://github.com/markedjs/marked.\",e){var r=\"

    An error occurred:

    \"+Jr(n.message+\"\",!0)+\"
    \";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}}])}(),ou=new iu;function su(e,t){return ou.parse(e,t)}function cu(e){return e.replace(/&/g,\"&\").replace(//g,\">\").replace(/\"/g,\""\").replace(/'/g,\"'\")}su.options=su.setOptions=function(e){return ou.setOptions(e),su.defaults=ou.defaults,Qn(su.defaults),su},su.getDefaults=Wn,su.defaults=Jn,su.use=function(){return ou.use.apply(ou,arguments),su.defaults=ou.defaults,Qn(su.defaults),su},su.walkTokens=function(e,t){return ou.walkTokens(e,t)},su.parseInline=ou.parseInline,su.Parser=uu,su.parser=uu.parse,su.Renderer=nu,su.TextRenderer=ru,su.Lexer=tu,su.lexer=tu.lex,su.Tokenizer=eu,su.Hooks=au,su.parse=su,su.options,su.setOptions,su.use,su.walkTokens,su.parseInline,uu.parse,tu.lex;var lu=new su.Renderer;lu.code=function(e){var t=e.text,n=e.lang,r=void 0===n?\"\":n,u=e.escaped,a=r?\"language-\".concat(r):\"\",i=u?t:cu(t),o=encodeURIComponent(t);return'\\n
    \\n \\n
    ').concat(i,\"
    \\n
    \\n \")},lu.link=function(e){var t=e.href,n=e.title,r=e.text,u=n?' title=\"'.concat(cu(n),'\"'):\"\",a=t?cu(t):\"\",i=cu(r);return'').concat(i,\"\")};var du=i(function(e){var t=e.content,u=e.copyButtonText,a=e.copyButtonCopiedText,i=e.isStreaming,c=o(function(){return su.parse(t,{gfm:!0,breaks:!0,renderer:lu})},[t]),l=s(null);return r(function(){var e=l.current;if(e)return Array.from(e.querySelectorAll(\".DocSearch-CodeSnippet-CopyButton\")).forEach(function(e){var t=e.querySelector(\".DocSearch-CodeSnippet-CopyButton-Label\");t&&(t.textContent=u),e.classList.remove(\"DocSearch-CodeSnippet-CopyButton--copied\")}),e.addEventListener(\"click\",t),function(){e.removeEventListener(\"click\",t)};function t(e){var t,n=e.target.closest(\".DocSearch-CodeSnippet-CopyButton\");if(n){var r=null!==(t=n.getAttribute(\"data-code\"))&&void 0!==t?t:\"\";navigator.clipboard.writeText(decodeURIComponent(r)).catch(function(){});var i=n.querySelector(\".DocSearch-CodeSnippet-CopyButton-Label\");if(i){n.classList.add(\"DocSearch-CodeSnippet-CopyButton--copied\");var o=u;i.textContent=a,setTimeout(function(){n.classList.remove(\"DocSearch-CodeSnippet-CopyButton--copied\"),i.textContent=o},1500)}}}},[c,u,a]),n.createElement(\"div\",{ref:l,className:\"DocSearch-Markdown-Content \".concat(i?\"DocSearch-Markdown-Content--streaming\":\"\"),dangerouslySetInnerHTML:{__html:c}})});function fu(e){var t=e.part,r=e.translations,u=e.onSearchQueryClick,a=r.searchingText,i=r.preToolCallText,o=r.toolCallResultText;switch(t.state){case\"input-streaming\":return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool Tool--PartialCall shimmer\"},n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}),n.createElement(\"span\",null,a));case\"input-available\":return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool Tool--Call shimmer\"},n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}),n.createElement(\"span\",null,i,\" \",'\"'.concat(t.input.query||\"\",'\" ...')));case\"output-available\":var s,c=\"tool-searchIndex\"===t.type?t.output.query:t.input.query,l=\"tool-searchIndex\"===t.type?null===(s=t.output.hits)||void 0===s?void 0:s.length:t.output.nbHits;return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool Tool--Result\"},n.createElement(q,null),n.createElement(\"span\",null,o,\" \",u?n.createElement(\"span\",{role:\"button\",tabIndex:0,className:\"DocSearch-AskAiScreen-MessageContent-Tool-Query\",onKeyDown:function(e){\"Enter\"!==e.key&&\" \"!==e.key||(e.preventDefault(),u(c||\"\"))},onClick:function(){return u(c||\"\")}},\" \",'\"',c||\"\",'\"'):n.createElement(\"span\",{className:\"DocSearch-AskAiScreen-MessageContent-Tool-Query\"},' \"',c||\"\",'\"'),\" \",\"found \",l||0,\" results\"));default:return null}}function pu(e){var t=e.replace(/<[^>]*>/g,\"\");return t.replace(/&/g,\"&\").replace(//g,\">\").replace(/\"/g,\""\").replace(/'/g,\"'\")}du.displayName=\"MemoizedMarkdown\";var hu=function(e,t){var n=t[0].parts.find(function(e){return\"text\"===e.type}),r=null!=n&&n.text?pu(n.text):\"\";return{query:e,objectID:r,messages:t,type:\"askAI\",anchor:\"stored\",content:null,hierarchy:{lvl0:\"askAI\",lvl1:r,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},url:\"\",url_without_anchor:\"\"}},vu=function(e){return null==e?void 0:e.parts.find(function(e){return\"text\"===e.type})};function mu(e){var t;return e&&(null===(t=e.message)||void 0===t?void 0:t.includes(\"AI-217\"))||!1}var Du=[\"translations\"];function yu(e){var t=e.disclaimerText;return n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-Disclaimer\"},t)}function gu(e){var t,r,u,a=e.exchange,i=e.askAiError,s=e.isLastExchange,c=e.loadingStatus,l=e.onSearchQueryClick,d=e.translations,f=e.conversations,p=e.onFeedback,h=e.agentStudio,v=a.userMessage,m=a.assistantMessage,D=d.stoppedStreamingText,y=void 0===D?\"You stopped this response\":D,g=d.errorTitleText,F=void 0===g?\"Chat error\":g,b=d.preToolCallText,A=void 0===b?\"Searching...\":b,C=d.afterToolCallText,k=void 0===C?\"Searched for\":C,w=d.duringToolCallText,_=void 0===w?\"Searching...\":w,S=mu(i),x=o(function(){return vu(m)},[m]),B=o(function(){return vu(v)},[v]),I=n.useMemo(function(){return e=m,t=[],n=new Set,e?(e.parts.forEach(function(e){if(\"text\"===e.type&&0!==e.text.length){var r,u=e.text.replace(/```[\\s\\S]*?```/g,\"\").replace(/`[^`]*`/g,\"\"),a=E(u.matchAll(/\\[([^\\]]*)\\]\\(([^)]+)\\)/g));try{for(a.s();!(r=a.n()).done;){var i=r.value,o=i[1].trim(),s=i[2];n.has(s)||(n.add(s),t.push({url:s,title:o||void 0}))}}catch(e){a.e(e)}finally{a.f()}var c,l=E(u.matchAll(/(?\"{}|\\\\^`[\\]]+/g));try{for(l.s();!(c=l.n()).done;){var d=c.value[0].replace(/[.,;:!?]+$/,\"\");n.has(d)||(n.add(d),t.push({url:d}))}}catch(e){l.e(e)}finally{l.f()}}}),t):[];var e,t,n},[m]),O=n.useMemo(function(){return function(e){for(var t=[],n=0;n0&&u.push(c),a++}u.length>1?t.push({type:\"aggregated-tool-call\",queries:u}):1===u.length&&t.push(r),n=a-1}else t.push(r)}return t}((null==m?void 0:m.parts)||[])},[m]),T=(null===(t=v.metadata)||void 0===t?void 0:t.stopped)||(null==m||null===(r=m.metadata)||void 0===r?void 0:r.stopped),P=!T&&(!s||s&&\"ready\"===c&&Boolean(m)),j=[\"submitted\",\"streaming\"].includes(c)&&s&&!O.some(function(e){return\"step-start\"!==e.type});return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Response-Container\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Response\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--user\"},n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-Query\"},null!==(u=null==B?void 0:B.text)&&void 0!==u?u:\"\")),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Message DocSearch-AskAiScreen-Message--assistant\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent\"},\"error\"===c&&i&&s&&!S&&n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error\"},n.createElement(On,null),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Error-Content\"},n.createElement(\"h4\",{className:\"DocSearch-AskAiScreen-Error-Title\"},F),n.createElement(du,{content:i.message,copyButtonText:\"\",copyButtonCopiedText:\"\",isStreaming:!1}))),j&&n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent-Reasoning\"},n.createElement(\"span\",{className:\"shimmer\"},d.thinkingText||\"Thinking...\")),O.map(function(e,t){var r=t;return\"string\"==typeof e?n.createElement(du,{key:r,content:e,copyButtonText:d.copyButtonText||\"Copy\",copyButtonCopiedText:d.copyButtonCopiedText||\"Copied!\",isStreaming:\"streaming\"===c}):\"aggregated-tool-call\"===e.type?n.createElement(Kn,{key:r,queries:e.queries,translations:d,onSearchQueryClick:l}):\"reasoning\"===e.type&&\"streaming\"===e.state?n.createElement(\"div\",{key:r,className:\"DocSearch-AskAiScreen-MessageContent-Reasoning shimmer\"},n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}),n.createElement(\"span\",{className:\"shimmer\"},\"Reasoning...\")):\"text\"===e.type?n.createElement(du,{key:r,content:e.text,copyButtonText:d.copyButtonText||\"Copy\",copyButtonCopiedText:d.copyButtonCopiedText||\"Copied!\",isStreaming:\"streaming\"===e.state}):\"tool-searchIndex\"===e.type||\"tool-algolia_search_index\"===e.type?n.createElement(fu,{key:r,translations:{preToolCallText:A,searchingText:_,toolCallResultText:k},part:e,onSearchQueryClick:l}):null})),T&&n.createElement(\"p\",{className:\"DocSearck-AskAiScreen-MessageContent-Stopped\"},y)),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Answer-Footer\"},n.createElement(Fu,{id:(null==v?void 0:v.id)||a.id,showActions:P,latestAssistantMessageContent:(null==x?void 0:x.text)||null,translations:d,conversations:f,agentStudio:h,onFeedback:p}))),I.length>0?n.createElement(Eu,{urlsToDisplay:I,relatedSourcesText:d.relatedSourcesText}):null)}function Fu(e){var t=e.id,r=e.showActions,u=e.latestAssistantMessageContent,a=e.translations,i=e.conversations,o=e.onFeedback,s=e.agentStudio,c=n.useMemo(function(){var e,n,r=null===(e=i.getOne)||void 0===e?void 0:e.call(i,t);return null!==(n=null==r?void 0:r.feedback)&&void 0!==n?n:null},[i,t]),l=T(n.useState(c),2),d=l[0],f=l[1],p=T(n.useState(!1),2),h=p[0],m=p[1],D=T(n.useState(null),2),y=D[0],g=D[1],F=function(){var e=v(B().m(function e(n){var r;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:if(!h){e.n=1;break}return e.a(2);case 1:return g(null),m(!0),e.p=2,e.n=3,null==o?void 0:o(t,\"like\"===n?1:0);case 3:f(n),e.n=5;break;case 4:e.p=4,r=e.v,g(r);case 5:return e.p=5,m(!1),e.f(5);case 6:return e.a(2)}},e,null,[[2,4,5,6]])}));return function(t){return e.apply(this,arguments)}}(),E=a.likeButtonTitle,b=void 0===E?\"Like\":E,A=a.dislikeButtonTitle,C=void 0===A?\"Dislike\":A,k=a.thanksForFeedbackText,w=void 0===k?\"Thanks for your feedback!\":k;return r&&u?n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Actions\"},!s&&(null===d?n.createElement(n.Fragment,null,h?n.createElement(Sn,{className:\"DocSearch-AskAiScreen-SmallerLoadingIcon\"}):n.createElement(n.Fragment,null,n.createElement(ku,{title:b,onClick:function(){return F(\"like\")}}),n.createElement(wu,{title:C,onClick:function(){return F(\"dislike\")}})),y&&n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-FeedbackText\"},y.message||\"An error occured\")):n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-FeedbackText DocSearch-AskAiScreen-FeedbackText--visible\"},w)),n.createElement(Cu,{translations:a,onClick:function(){return navigator.clipboard.writeText(u)}})):null}function Eu(e){var t=e.urlsToDisplay,r=e.relatedSourcesText;return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-RelatedSources\"},n.createElement(\"p\",{className:\"DocSearch-AskAiScreen-RelatedSources-Title\"},r||\"Related sources\"),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-RelatedSources-List\"},t.length>0&&t.map(function(e){return n.createElement(\"a\",{key:e.url,href:e.url,className:\"DocSearch-AskAiScreen-RelatedSources-Item-Link\",target:\"_blank\",rel:\"noopener noreferrer\"},n.createElement(Au,null),n.createElement(\"span\",null,e.title||e.url))})))}function bu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,Du),a=r.disclaimerText,i=void 0===a?\"Answers are generated with AI which can make mistakes. Verify responses.\":a,s=r.threadDepthExceededMessage,c=void 0===s?\"This conversation is now closed to keep responses accurate.\":s,l=r.startNewConversationButtonText,d=void 0===l?\"Start a new conversation\":l,f=u.messages,p=u.askAiError,h=u.status,v=o(function(){return\"error\"===h&&mu(p)},[h,p]),m=o(function(){for(var e=[],t=0;t0&&(e[e.length-1].assistantMessage||e.pop());return e},[f,v]),D=function(e){u.onAskAiToggle(!1),u.setQuery(e)},y=v&&f.some(function(e){return\"assistant\"===e.role});return n.createElement(\"div\",{className:\"DocSearch-AskAiScreen DocSearch-AskAiScreen-Container\"},y&&n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-MessageContent DocSearch-AskAiScreen-Error DocSearch-AskAiScreen-Error--ThreadDepth\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Error-Content\"},n.createElement(\"p\",null,c,\" \",n.createElement(\"button\",{type:\"button\",className:\"DocSearch-ThreadDepthError-Link\",onClick:u.onNewConversation},d),\" \",\"to continue.\"))),n.createElement(yu,{disclaimerText:i}),n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-Body\"},n.createElement(\"div\",{className:\"DocSearch-AskAiScreen-ExchangesList\"},m.slice().reverse().map(function(e,t){return n.createElement(gu,{key:e.id,exchange:e,askAiError:u.askAiError,isLastExchange:0===t,loadingStatus:u.status,translations:r,conversations:u.conversations,agentStudio:u.agentStudio,onSearchQueryClick:D,onFeedback:u.onFeedback})}))))}function Au(){return n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"20\",height:\"20\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\"},n.createElement(\"line\",{x1:\"4\",x2:\"20\",y1:\"9\",y2:\"9\"}),n.createElement(\"line\",{x1:\"4\",x2:\"20\",y1:\"15\",y2:\"15\"}),n.createElement(\"line\",{x1:\"10\",x2:\"8\",y1:\"3\",y2:\"21\"}),n.createElement(\"line\",{x1:\"16\",x2:\"14\",y1:\"3\",y2:\"21\"}))}function Cu(e){var t=e.onClick,a=e.translations,i=a.copyButtonTitle,o=void 0===i?\"Copy\":i,s=a.copyButtonCopiedText,c=void 0===s?\"Copied!\":s,l=T(u(!1),2),d=l[0],f=l[1];r(function(){if(d){var e=setTimeout(function(){f(!1)},1500);return function(){return clearTimeout(e)}}},[d]);return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-CopyButton \".concat(d?\"DocSearch-AskAiScreen-CopyButton--copied\":\"\"),disabled:d,title:d?c:o,onClick:function(){t(),f(!0)}},d?n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-check-icon lucide-check\"},n.createElement(\"path\",{d:\"M20 6 9 17l-5-5\"})):n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-copy-icon lucide-copy\"},n.createElement(\"rect\",{width:\"14\",height:\"14\",x:\"8\",y:\"8\",rx:\"2\",ry:\"2\"}),n.createElement(\"path\",{d:\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"})))}function ku(e){var t=e.title,r=e.onClick;return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-LikeButton\",title:t,onClick:r},n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-thumbs-up-icon lucide-thumbs-up\"},n.createElement(\"path\",{d:\"M7 10v12\"}),n.createElement(\"path\",{d:\"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z\"})))}function wu(e){var t=e.title,r=e.onClick;return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-AskAiScreen-ActionButton DocSearch-AskAiScreen-DislikeButton\",title:t,onClick:r},n.createElement(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",className:\"lucide lucide-thumbs-down-icon lucide-thumbs-down\"},n.createElement(\"path\",{d:\"M17 14V2\"}),n.createElement(\"path\",{d:\"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z\"})))}var _u=[\"hit\",\"attribute\",\"tagName\"];function Su(e,t){return t.split(\".\").reduce(function(e,t){return null!=e&&e[t]?e[t]:null},e)}function xu(e){var t=e.hit,n=e.attribute,r=e.tagName,u=void 0===r?\"span\":r,a=x(e,_u);return c(u,S(S({},a),{},{dangerouslySetInnerHTML:{__html:Su(t,\"_snippetResult.\".concat(n,\".value\"))||Su(t,n)}}))}var Bu=[\"item\",\"getItemProps\",\"onItemClick\",\"translations\",\"collection\"];function Iu(e){var t=n.useMemo(function(){return e.title?e.title.replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\").replace(/"/g,'\"').replace(/'/g,\"'\"):null},[e.title]);return e.collection&&0!==e.collection.items.length?\"askAI\"===e.collection.source.sourceId?n.createElement(\"section\",{className:\"DocSearch-AskAi-Section\"},n.createElement(\"ul\",e.getListProps({source:e.collection.source}),n.createElement(Tu,A({item:e.collection.items[0],translations:e.translations},e)))):(e.collection.source.sourceId,n.createElement(\"section\",{className:\"DocSearch-Hits\"},n.createElement(\"div\",{className:\"DocSearch-Hit-source\"},t),n.createElement(\"ul\",e.getListProps({source:e.collection.source}),e.collection.items.map(function(t,r){return n.createElement(Ou,A({key:[e.title,t.objectID].join(\":\"),item:t,index:r},e))})))):null}function Ou(e){var t=e.item,r=e.index,u=e.renderIcon,a=e.renderAction,i=e.getItemProps,o=e.onItemClick,s=e.collection,c=e.hitComponent;return n.createElement(\"li\",A({className:[\"DocSearch-Hit\",t.__docsearch_parent&&\"DocSearch-Hit--Child\"].filter(Boolean).join(\" \")},i({item:t,source:s.source,onClick:function(e){o(t,e)}})),n.createElement(c,{hit:t},n.createElement(\"div\",{className:\"DocSearch-Hit-Container\"},u({item:t,index:r}),t.hierarchy[t.type]&&\"lvl1\"===t.type&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(xu,{className:\"DocSearch-Hit-title\",hit:t,attribute:\"hierarchy.lvl1\"}),t.content&&n.createElement(xu,{className:\"DocSearch-Hit-path\",hit:t,attribute:\"content\"})),\"askAI\"===t.type&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(\"span\",{className:\"DocSearch-Hit-title\"},pu(t.hierarchy.lvl1||\"\"))),t.hierarchy[t.type]&&(\"lvl2\"===t.type||\"lvl3\"===t.type||\"lvl4\"===t.type||\"lvl5\"===t.type||\"lvl6\"===t.type)&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(xu,{className:\"DocSearch-Hit-title\",hit:t,attribute:\"hierarchy.\".concat(t.type)}),n.createElement(xu,{className:\"DocSearch-Hit-path\",hit:t,attribute:\"hierarchy.lvl1\"})),\"content\"===t.type&&n.createElement(\"div\",{className:\"DocSearch-Hit-content-wrapper\"},n.createElement(xu,{className:\"DocSearch-Hit-title\",hit:t,attribute:\"content\"}),n.createElement(xu,{className:\"DocSearch-Hit-path\",hit:t,attribute:\"hierarchy.lvl1\"})),a({item:t}))))}function Tu(e){var t=e.item,r=e.getItemProps,u=e.onItemClick,a=e.translations,i=e.collection,o=x(e,Bu),s=a||{},c=s.askAiPlaceholder,l=void 0===c?\"Ask AI: \":c,d=s.noResultsAskAiPlaceholder,f=void 0===d?\"Didn't find it in the docs? Ask AI to help: \":d,p=1===o.state.collections.length?f:l;return n.createElement(\"li\",A({className:\"DocSearch-Hit\"},r({item:t,source:i.source,onClick:function(e){u(t,e)}})),n.createElement(\"div\",{className:\"DocSearch-Hit--AskAI\"},n.createElement(\"div\",{className:\"DocSearch-Hit-AskAIButton DocSearch-Hit-Container\"},n.createElement(\"div\",{className:\" DocSearch-Hit-AskAIButton-icon DocSearch-Hit-icon\"},n.createElement(xn,null)),n.createElement(\"div\",{className:\"DocSearch-Hit-AskAIButton-title\"},n.createElement(\"span\",{className:\"DocSearch-Hit-AskAIButton-title-highlight\"},p),n.createElement(\"mark\",{className:\"DocSearch-Hit-AskAIButton-title-query\"},String(t.query||\"\"))))))}var Pu=[\"onAskAiToggle\"];function ju(e){var t=e.onAskAiToggle,r=x(e,Pu),u=n.useMemo(function(){return r.state.collections[2]},[r.state]);return n.useEffect(function(){u&&0!==u.items.length||t(!0)},[u,t]),n.createElement(\"div\",{className:\"DocSearch-Dropdown-Container DocSearch-Conversation-History\"},n.createElement(Iu,A({},r,{key:u.source.sourceId,title:\"\",translations:r.translations,collection:u,renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(xn,null))},renderAction:function(e){var t=e.item;return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{type:\"button\",className:\"DocSearch-Hit-action-button\",onClick:function(e){e.preventDefault(),e.stopPropagation(),r.conversations.remove(t),r.refresh()}},n.createElement(In,null)))}})))}function Nu(e){var t=e.translations,r=void 0===t?{}:t,u=r.titleText,a=void 0===u?\"Unable to fetch results\":u,i=r.helpText,o=void 0===i?\"You might want to check your network connection.\":i;return n.createElement(\"div\",{className:\"DocSearch-ErrorScreen\"},n.createElement(\"div\",{className:\"DocSearch-Screen-Icon\"},n.createElement(Zn,null)),n.createElement(\"p\",{className:\"DocSearch-Title\"},a),n.createElement(\"p\",{className:\"DocSearch-Help\"},o))}function zu(e){var t=e.translations,r=void 0===t?{}:t,u=e.suggestedQuestions,a=void 0===u?[]:u,i=e.selectSuggestedQuestion,o=r.newConversationTitle,s=void 0===o?\"How can I help you today?\":o,c=r.newConversationDescription,l=void 0===c?\"I search through your documentation to help you find setup guides, feature details and troubleshooting tips, fast.\":c;return n.createElement(\"div\",{className:\"DocSearch-NewConversationScreen\"},n.createElement(\"h3\",{className:\"DocSearch-NewConversationScreen-Title\"},s),n.createElement(\"p\",{className:\"DocSearch-NewConversationScreen-Description\"},l),n.createElement(\"div\",{className:\"DocSearch-NewConversationScreen-SuggestedQuestions\"},a.map(function(e){return n.createElement(\"button\",{key:e.objectID,type:\"button\",className:\"DocSearch-NewConversationScreen-SuggestedQuestion\",onClick:function(){return i(e)}},e.question)})))}var Ru=[\"translations\"];function Mu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,Ru),a=r.noResultsText,i=void 0===a?\"No results found for\":a,o=r.suggestedQueryText,s=void 0===o?\"Try searching for\":o,c=r.reportMissingResultsText,l=void 0===c?\"Believe this query should return results?\":c,d=r.reportMissingResultsLinkText,f=void 0===d?\"Let us know.\":d,p=u.state.context.searchSuggestions;return n.createElement(\"div\",{className:\"DocSearch-NoResults \".concat(u.canHandleAskAi?\"DocSearch-NoResults--withAskAi\":\"\")},n.createElement(\"div\",{className:\"DocSearch-Screen-Icon\"},n.createElement(Ln,null)),n.createElement(\"p\",{className:\"DocSearch-Title\"},i,' \"',n.createElement(\"strong\",null,u.state.query),'\"'),p&&p.length>0&&n.createElement(\"div\",{className:\"DocSearch-NoResults-Prefill-List\"},n.createElement(\"p\",{className:\"DocSearch-Help\"},s,\":\"),n.createElement(\"div\",{className:\"DocSearch-NoResults-Prefill-List-Items\"},p.slice(0,3).reduce(function(e,t){return[].concat(P(e),[n.createElement(\"p\",{key:t},n.createElement(q,{size:16}),n.createElement(\"button\",{className:\"DocSearch-Prefill\",key:t,type:\"button\",onClick:function(){u.setQuery(t.toLowerCase()+\" \"),u.refresh(),u.inputRef.current.focus()}},t))])},[]))),u.getMissingResultsUrl&&n.createElement(\"p\",{className:\"DocSearch-Help\"},\"\".concat(l,\" \"),n.createElement(\"a\",{href:u.getMissingResultsUrl({query:u.state.query}),target:\"_blank\",rel:\"noopener noreferrer\"},f)))}var Zu=[\"translations\"];function Lu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,Zu);return n.createElement(\"div\",{className:\"DocSearch-Dropdown-Container\"},u.state.collections.map(function(e){if(0===e.items.length)return null;var t=G(e.items[0]);return n.createElement(Iu,A({},u,{key:e.source.sourceId,translations:r,title:t,collection:e,renderIcon:function(t){var r,u=t.item,a=t.index;return n.createElement(n.Fragment,null,u.__docsearch_parent&&n.createElement(\"svg\",{className:\"DocSearch-Hit-Tree\",viewBox:\"0 0 24 54\"},n.createElement(\"g\",{stroke:\"currentColor\",fill:\"none\",fillRule:\"evenodd\",strokeLinecap:\"round\",strokeLinejoin:\"round\"},u.__docsearch_parent!==(null===(r=e.items[a+1])||void 0===r?void 0:r.__docsearch_parent)?n.createElement(\"path\",{d:\"M8 6v21M20 27H8.3\"}):n.createElement(\"path\",{d:\"M8 6v42M20 27H8.3\"}))),n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(jn,{type:u.type})))},renderAction:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(Tn,null))}}))}),u.resultsFooterComponent&&n.createElement(\"section\",{className:\"DocSearch-HitsFooter\"},n.createElement(u.resultsFooterComponent,{state:u.state})))}var $u=[\"translations\"];function qu(e){var t=e.translations,r=void 0===t?{}:t,u=x(e,$u),a=r.recentSearchesTitle,i=void 0===a?\"Recent\":a,o=r.saveRecentSearchButtonTitle,s=void 0===o?\"Save this search\":o,c=r.removeRecentSearchButtonTitle,l=void 0===c?\"Remove this search from history\":c,d=r.favoriteSearchesTitle,f=void 0===d?\"Favorite\":d,p=r.removeFavoriteSearchButtonTitle,h=void 0===p?\"Remove this search from favorites\":p,v=r.recentConversationsTitle,m=void 0===v?\"Recent conversations\":v,D=r.removeRecentConversationButtonTitle,y=void 0===D?\"Remove this conversation from history\":D;return n.createElement(\"div\",{className:\"DocSearch-Dropdown-Container\"},n.createElement(Iu,A({},u,{title:i,collection:u.state.collections[0],renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(Bn,null))},renderAction:function(e){var t=e.item;return n.createElement(n.Fragment,null,n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:s,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.favoriteSearches.add(t),u.recentSearches.remove(t),u.refresh()}},n.createElement(Rn,null))),n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:l,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.recentSearches.remove(t),u.refresh()}},n.createElement(In,null))))}})),n.createElement(Iu,A({},u,{title:f,collection:u.state.collections[1],renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(Rn,null))},renderAction:function(e){var t=e.item;return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:h,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.favoriteSearches.remove(t),u.refresh()}},n.createElement(In,null)))}})),n.createElement(Iu,A({},u,{title:m,collection:u.state.collections[2],renderIcon:function(){return n.createElement(\"div\",{className:\"DocSearch-Hit-icon\"},n.createElement(xn,null))},renderAction:function(e){var t=e.item;return n.createElement(\"div\",{className:\"DocSearch-Hit-action\"},n.createElement(\"button\",{className:\"DocSearch-Hit-action-button\",title:y,type:\"submit\",onClick:function(e){e.preventDefault(),e.stopPropagation(),u.conversations.remove(t),u.refresh()}},n.createElement(In,null)))}})))}var Uu=[\"translations\"],Vu=n.memo(function(e){var t,r=e.translations,u=void 0===r?{}:r,a=x(e,Uu);return a.canHandleAskAi&&a.isAskAiActive&&\"conversation-history\"===a.askAiState?n.createElement(ju,a):a.canHandleAskAi&&a.isAskAiActive&&\"new-conversation\"===a.askAiState?n.createElement(zu,{translations:null==u?void 0:u.newConversation,selectSuggestedQuestion:a.selectSuggestedQuestion,suggestedQuestions:a.suggestedQuestions}):a.isAskAiActive&&a.canHandleAskAi?n.createElement(bu,A({},a,{messages:a.messages,status:a.status,askAiError:a.askAiError,translations:null==u?void 0:u.askAiScreen,agentStudio:a.agentStudio})):\"error\"===(null===(t=a.state)||void 0===t?void 0:t.status)?n.createElement(Nu,{translations:null==u?void 0:u.errorScreen}):a.state.query?a.hasCollections||a.canHandleAskAi?n.createElement(n.Fragment,null,n.createElement(Lu,A({},a,{translations:null==u?void 0:u.resultsScreen})),a.canHandleAskAi&&1===a.state.collections.length&&n.createElement(Mu,A({},a,{translations:null==u?void 0:u.noResultsScreen}))):n.createElement(Mu,A({},a,{translations:null==u?void 0:u.noResultsScreen})):n.createElement(qu,A({},a,{hasCollections:a.hasCollections,translations:null==u?void 0:u.startScreen}))},function(e,t){return\"loading\"===t.state.status||\"stalled\"===t.state.status});function Hu(e){var t=e.size,r=void 0===t?20:t,u=e.color,a=void 0===u?\"currentColor\":u;return n.createElement(\"svg\",{width:r,height:r,className:\"DocSearch-Back-Icon\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:a,strokeWidth:\"1.6\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":\"true\"},n.createElement(\"path\",{d:\"m12 19-7-7 7-7\"}),n.createElement(\"path\",{d:\"M19 12H5\"}))}var Ku=[\"children\",\"className\",\"onClick\"],Wu=n.createContext({open:!1,setOpen:function(e){}});function Ju(e){var t=e.children,r=T(n.useState(!1),2),u=r[0],a=r[1],i=n.useRef(null);return n.useEffect(function(){function e(e){var t;null!==(t=i.current)&&void 0!==t&&t.contains(e.target)||a(!1)}return u&&window.addEventListener(\"click\",e),function(){window.removeEventListener(\"click\",e)}},[u]),n.createElement(Wu.Provider,{value:{open:u,setOpen:a}},n.createElement(\"div\",{ref:i,className:\"DocSearch-Menu\"},t))}function Qu(e){var t=e.heading,r=e.shimmer,u=void 0!==r&&r;return n.createElement(\"span\",{className:\"DocSearch-Modal-heading\".concat(u?\" shimmer\":\"\")},t)}Ju.Trigger=function(e){var t=e.children,r=e.className,u=void 0===r?\"\":r,a=e.disabled,i=n.useContext(Wu),o=i.open,s=i.setOpen;return n.createElement(\"button\",{type:\"button\",className:\"DocSearch-Menu-trigger \".concat(u).concat(a?\" disabled\":\"\"),\"aria-disabled\":a,onClick:function(){a||s(!o)}},t)},Ju.Content=function(e){var t=e.children,r=n.useContext(Wu).open;return n.createElement(\"div\",{className:\"DocSearch-Menu-content\".concat(r?\" open\":\"\")},t)},Ju.Item=function(e){var t=e.children,r=e.className,u=void 0===r?\"\":r,a=e.onClick,i=x(e,Ku),o=n.useContext(Wu).setOpen;return n.createElement(\"button\",A({type:\"button\",className:\"DocSearch-Menu-item \".concat(u),onClick:function(e){a&&(a(e),o(!1))}},i),t)};var Gu=[\"translations\",\"askAiState\",\"onAskAiToggle\",\"setAskAiState\"];function Yu(e){var t=e.translations,r=void 0===t?{}:t,u=e.askAiState,a=e.onAskAiToggle,i=e.setAskAiState,o=x(e,Gu),s=r.clearButtonTitle,c=void 0===s?\"Clear\":s,l=r.clearButtonAriaLabel,d=void 0===l?\"Clear the query\":l,f=r.closeButtonText,p=void 0===f?\"Close\":f,h=r.closeButtonAriaLabel,v=void 0===h?\"Close\":h,m=r.searchInputLabel,D=void 0===m?\"Search\":m,y=r.backToKeywordSearchButtonText,g=void 0===y?\"Back to keyword search\":y,F=r.backToKeywordSearchButtonAriaLabel,E=void 0===F?\"Back to keyword search\":F,b=r.placeholderTextAskAiStreaming,C=void 0===b?\"Answering...\":b,k=r.newConversationPlaceholder,w=void 0===k?\"Ask a question\":k,_=r.conversationHistoryTitle,B=void 0===_?\"My conversation history\":_,I=r.startNewConversationText,O=void 0===I?\"Start a new conversation\":I,T=r.viewConversationHistoryText,P=void 0===T?\"Conversation history\":T,j=r.threadDepthErrorPlaceholder,N=void 0===j?\"Conversation limit reached\":j,z=o.getFormProps({inputElement:o.inputRef.current}).onReset;n.useEffect(function(){o.autoFocus&&o.inputRef.current&&o.inputRef.current.focus()},[o.autoFocus,o.inputRef]),n.useEffect(function(){o.isFromSelection&&o.inputRef.current&&o.inputRef.current.select()},[o.isFromSelection,o.inputRef]);var R=n.useMemo(function(){var e=o.state.collections[2];return!!e&&e.items.length>0},[o.state.collections]),M=o.getInputProps({inputElement:o.inputRef.current,autoFocus:o.autoFocus,maxLength:512}),Z=new Set([\"ArrowUp\",\"ArrowDown\",\"Enter\"]),L=M.onKeyDown,$=M.onChange,U=\"streaming\"===o.askAiStatus||\"submitted\"===o.askAiStatus,V=\"stalled\"===o.state.status,H=o.isAskAiActive&&\"conversation-history\"!==u,K=o.isThreadDepthError||!1,W=o.placeholder;\"new-conversation\"===u&&(W=w),K&&o.isAskAiActive&&(W=N);var J=null;U&&(J=C),\"conversation-history\"===u&&(J=B),n.useEffect(function(){\"streaming\"!==o.askAiStatus&&\"submitted\"!==o.askAiStatus&&o.inputRef.current&&o.inputRef.current.focus()},[o.askAiStatus,o.inputRef]);var Q=S(S({},M),{},{enterKeyHint:o.isAskAiActive?\"enter\":\"search\",onKeyDown:function(e){if(o.isAskAiActive&&Z.has(e.key))return\"Enter\"===e.key&&!U&&o.state.query&&o.onAskAgain(o.state.query),e.preventDefault(),void e.stopPropagation();null==L||L(e)},onChange:function(e){if(o.isAskAiActive)return o.setQuery(e.currentTarget.value),e.preventDefault(),void e.stopPropagation();null==$||$(e)},disabled:U||K&&o.isAskAiActive}),G=n.useCallback(function(){if(!K)return\"conversation-history\"===u?(a(!0),void i(\"initial\")):void a(!1);o.onNewConversation()},[u,K,a,i,o]);return n.createElement(n.Fragment,null,n.createElement(\"form\",{className:\"DocSearch-Form\",onSubmit:function(e){e.preventDefault()},onReset:z},o.isAskAiActive?n.createElement(n.Fragment,null,n.createElement(\"button\",{type:\"button\",tabIndex:0,className:\"DocSearch-Action DocSearch-AskAi-Return\",title:g,\"aria-label\":E,onClick:G},n.createElement(Hu,null))):n.createElement(n.Fragment,null,V&&n.createElement(\"div\",{className:\"DocSearch-LoadingIndicator\"},n.createElement(Sn,null)),!V&&n.createElement(\"label\",A({className:\"DocSearch-MagnifierLabel\"},o.getLabelProps()),n.createElement(q,null),n.createElement(\"span\",{className:\"DocSearch-VisuallyHiddenForAccessibility\"},D))),J&&n.createElement(Qu,{heading:J,shimmer:U}),n.createElement(\"input\",A({className:\"DocSearch-Input\",ref:o.inputRef},Q,{placeholder:W,hidden:Boolean(J)})),n.createElement(\"div\",{className:\"DocSearch-Actions\"},n.createElement(\"button\",{className:\"DocSearch-Clear\",type:\"reset\",\"aria-label\":d,hidden:!o.state.query,tabIndex:o.state.query?0:-1,\"aria-hidden\":o.state.query?\"false\":\"true\"},c),o.state.query&&n.createElement(\"div\",{className:\"DocSearch-Divider\"}),U&&n.createElement(n.Fragment,null,n.createElement(\"button\",{type:\"button\",className:\"DocSearch-Action DocSearch-StopStreaming\",onClick:o.onStopAskAiStreaming},n.createElement(Mn,null)),n.createElement(\"div\",{className:\"DocSearch-Divider\"})),H&&n.createElement(n.Fragment,null,n.createElement(Ju,null,n.createElement(Ju.Trigger,{className:\"DocSearch-Action\"},n.createElement($n,null)),n.createElement(Ju.Content,null,n.createElement(Ju.Item,{onClick:o.onNewConversation},n.createElement(Un,null),O),R&&n.createElement(Ju.Item,{onClick:o.onViewConversationHistory},n.createElement(qn,null),P))),n.createElement(\"div\",{className:\"DocSearch-Divider\"})),n.createElement(\"button\",{type:\"button\",title:p,className:\"DocSearch-Action DocSearch-Close\",\"aria-label\":v,onClick:o.onClose},n.createElement(In,null)))))}function Xu(){if(\"undefined\"!=typeof window&&window.localStorage){var e=[];for(var t in window.localStorage)if(t.includes(\"__DOCSEARCH_\")){var n=window.localStorage[t];e.push({key:t,size:n.length+t.length})}e.sort(function(e,t){return t.size-e.size});for(var r=Math.ceil(e.length/2),u=0;u4194304&&Xu()}}function ta(e){return!1===function(){if(\"undefined\"==typeof window||!(\"localStorage\"in window))return!1;var e=\"__TEST_KEY__\";try{return window.localStorage.setItem(e,\"\"),window.localStorage.removeItem(e),!0}catch(e){return!1}}()?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){!function(e,t){try{window.localStorage.setItem(e,JSON.stringify(t))}catch(n){if(n instanceof DOMException&&\"QuotaExceededError\"===n.name)try{Xu(),window.localStorage.setItem(e,JSON.stringify(t))}catch(e){}}}(e,t)},getItem:function(){var t=window.localStorage.getItem(e);if(null===t)return[];try{var n=JSON.parse(t);return Array.isArray(n)?n:[]}catch(t){return window.localStorage.removeItem(e),[]}}}}var na=[\"_highlightResult\",\"_snippetResult\"];function ra(e){var t=e.key,n=e.limit,r=void 0===n?5:n,u=ta(t),a=u.getItem().slice(0,r);return{add:function(e){var t=e;t._highlightResult,t._snippetResult;var n=x(t,na),i=a.findIndex(function(e){return e.objectID===n.objectID});i>-1&&a.splice(i,1),a.unshift(n),a=a.slice(0,r),u.setItem(a)},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getAll:function(){return a}}}function ua(e){var t=e.key,n=e.limit,r=void 0===n?5:n,u=ta(t),a=u.getItem().slice(0,r);return{add:function(e){var t=e.objectID,n=e.query,i=a.findIndex(function(e){return e.objectID===t||e.query===n});i>-1?a[i]=e:(a.unshift(e),a=a.slice(0,r)),u.setItem(a)},addFeedback:function(e,t){var n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(n&&n.messages){var r=n.messages.find(function(t){return t.id===e});r&&(r.feedback=t,u.setItem(a))}},getOne:function(e){var t,n=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});return null==n||null===(t=n.messages)||void 0===t?void 0:t.find(function(t){return t.id===e})},getAll:function(){return a},remove:function(e){a=a.filter(function(t){return t.objectID!==e.objectID}),u.setItem(a)},getConversation:function(e){var t=a.find(function(t){var n;return null===(n=t.messages)||void 0===n?void 0:n.some(function(t){return t.id===e})});if(t&&t.messages)return t}}}var aa,ia=\"vercel.ai.error\",oa=Symbol.for(ia),sa=class e extends Error{constructor({name:e,message:t,cause:n}){super(t),this[aa]=!0,this.name=e,this.cause=n}static isInstance(t){return e.hasMarker(t,ia)}static hasMarker(e,t){const n=Symbol.for(t);return null!=e&&\"object\"==typeof e&&n in e&&\"boolean\"==typeof e[n]&&!0===e[n]}};aa=oa;var ca=sa;function la(e){return null==e?\"unknown error\":\"string\"==typeof e?e:e instanceof Error?e.message:JSON.stringify(e)}var da,fa=\"AI_InvalidArgumentError\",pa=`vercel.ai.error.${fa}`,ha=Symbol.for(pa),va=class extends ca{constructor({message:e,cause:t,argument:n}){super({name:fa,message:e,cause:t}),this[da]=!0,this.argument=n}static isInstance(e){return ca.hasMarker(e,pa)}};da=ha;var ma,Da=\"AI_JSONParseError\",ya=`vercel.ai.error.${Da}`,ga=Symbol.for(ya),Fa=class extends ca{constructor({text:e,cause:t}){super({name:Da,message:`JSON parsing failed: Text: ${e}.\\nError message: ${la(t)}`,cause:t}),this[ma]=!0,this.text=e}static isInstance(e){return ca.hasMarker(e,ya)}};ma=ga;var Ea,ba=\"AI_TypeValidationError\",Aa=`vercel.ai.error.${ba}`,Ca=Symbol.for(Aa);Ea=Ca;var ka=class e extends ca{constructor({value:e,cause:t}){super({name:ba,message:`Type validation failed: Value: ${JSON.stringify(e)}.\\nError message: ${la(t)}`,cause:t}),this[Ea]=!0,this.value=e}static isInstance(e){return ca.hasMarker(e,Aa)}static wrap({value:t,cause:n}){return e.isInstance(n)&&n.value===t?n:new e({value:t,cause:n})}},wa=function(){function e(t,n){var r;return D(this,e),(r=m(this,e,[t])).name=\"ParseError\",r.type=n.type,r.field=n.field,r.value=n.value,r.line=n.line,r}return k(e,R(Error)),F(e)}();function _a(e){}function Sa(e){if(\"function\"==typeof e)throw new TypeError(\"`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?\");var t,n=e.onEvent,r=void 0===n?_a:n,u=e.onError,a=void 0===u?_a:u,i=e.onRetry,o=void 0===i?_a:i,s=e.onComment,c=\"\",l=!0,d=\"\",f=\"\";function p(e){if(\"\"===e)return d.length>0&&r({id:t,event:f||void 0,data:d.endsWith(\"\\n\")?d.slice(0,-1):d}),t=void 0,d=\"\",void(f=\"\");if(e.startsWith(\":\"))s&&s(e.slice(e.startsWith(\": \")?2:1));else{var n=e.indexOf(\":\");if(-1===n)h(e,\"\",e);else{var u=e.slice(0,n),a=\" \"===e[n+1]?2:1;h(u,e.slice(n+a),e)}}}function h(e,n,r){switch(e){case\"event\":f=n;break;case\"data\":d=\"\".concat(d).concat(n,\"\\n\");break;case\"id\":t=n.includes(\"\\0\")?void 0:n;break;case\"retry\":/^\\d+$/.test(n)?o(parseInt(n,10)):a(new wa('Invalid `retry` value: \"'.concat(n,'\"'),{type:\"invalid-retry\",value:n,line:r}));break;default:a(new wa('Unknown field \"'.concat(e.length>20?\"\".concat(e.slice(0,20),\"…\"):e,'\"'),{type:\"unknown-field\",field:e,value:n,line:r}))}}return{feed:function(e){var t,n=l?e.replace(/^\\xEF\\xBB\\xBF/,\"\"):e,r=function(e){for(var t=[],n=\"\",r=0;r0&&void 0!==arguments[0]?arguments[0]:{}).consume&&p(c),l=!0,t=void 0,d=\"\",f=\"\",c=\"\"}}}var xa=function(){function e(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=n.onError,u=n.onRetry,a=n.onComment;return D(this,e),m(this,e,[{start:function(e){t=Sa({onEvent:function(t){e.enqueue(t)},onError:function(t){\"terminate\"===r?e.error(t):\"function\"==typeof r&&r(t)},onRetry:u,onComment:a})},transform:function(e){t.feed(e)}}])}return k(e,R(TransformStream)),F(e)}();function Ba(e,t,n){var r;function u(n,r){var u,a,o;for(var s in Object.defineProperty(n,\"_zod\",{value:null!==(u=n._zod)&&void 0!==u?u:{},enumerable:!1}),null!==(a=(o=n._zod).traits)&&void 0!==a||(o.traits=new Set),n._zod.traits.add(e),t(n,r),i.prototype)s in n||Object.defineProperty(n,s,{value:i.prototype[s].bind(n)});n._zod.constr=i,n._zod.def=r}var a=function(e){function t(){return D(this,t),m(this,t,arguments)}return k(t,e),F(t)}(null!==(r=null==n?void 0:n.Parent)&&void 0!==r?r:Object);function i(e){var t,r,i=null!=n&&n.Parent?new a:this;u(i,e),null!==(t=(r=i._zod).deferred)&&void 0!==t||(r.deferred=[]);var o,s=E(i._zod.deferred);try{for(s.s();!(o=s.n()).done;){(0,o.value)()}}catch(e){s.e(e)}finally{s.f()}return i}return Object.defineProperty(a,\"name\",{value:e}),Object.defineProperty(i,\"init\",{value:u}),Object.defineProperty(i,Symbol.hasInstance,{value:function(t){var r;return!!(null!=n&&n.Parent&&t instanceof n.Parent)||(null==t||null===(r=t._zod)||void 0===r||null===(r=r.traits)||void 0===r?void 0:r.has(e))}}),Object.defineProperty(i,\"name\",{value:e}),i}var Ia=function(){function e(){return D(this,e),m(this,e,[\"Encountered Promise during synchronous parse. Use .parseAsync() instead.\"])}return k(e,R(Error)),F(e)}(),Oa=function(){function e(t){var n;return D(this,e),(n=m(this,e,[\"Encountered unidirectional transform during encode: \".concat(t)])).name=\"ZodEncodeError\",n}return k(e,R(Error)),F(e)}(),Ta={};function Pa(e){return Ta}function ja(e){var t=Object.values(e).filter(function(e){return\"number\"==typeof e}),n=Object.entries(e).filter(function(e){var n=T(e,2),r=n[0];return n[1],-1===t.indexOf(+r)}).map(function(e){var t=T(e,2);return t[0],t[1]});return n}function Na(e,t){return\"bigint\"==typeof t?t.toString():t}function za(e){return{get value(){var t=e();return Object.defineProperty(this,\"value\",{value:t}),t}}}function Ra(e){return null==e}function Ma(e){var t=e.startsWith(\"^\")?1:0,n=e.endsWith(\"$\")?e.length-1:e.length;return e.slice(t,n)}var Za=Symbol(\"evaluating\");function La(e,t,n){var r=void 0;Object.defineProperty(e,t,{get:function(){if(r!==Za)return void 0===r&&(r=Za,r=n()),r},set:function(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function $a(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function qa(){for(var e={},t=arguments.length,n=new Array(t),r=0;r1&&void 0!==arguments[1]?arguments[1]:0;if(!0===e.aborted)return!0;for(var n=t;nu&&(t.inclusive?r.minimum=t.value:r.exclusiveMinimum=t.value)}),e._zod.check=function(r){(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:\"too_small\",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),no=Ba(\"$ZodCheckMultipleOf\",function(e,t){Yi.init(e,t),e._zod.onattach.push(function(e){var n,r;null!==(n=(r=e._zod.bag).multipleOf)&&void 0!==n||(r.multipleOf=t.value)}),e._zod.check=function(n){if(N(n.value)!==N(t.value))throw new Error(\"Cannot mix number and bigint in multiple_of check.\");(\"bigint\"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){var n=(e.toString().split(\".\")[1]||\"\").length,r=t.toString(),u=(r.split(\".\")[1]||\"\").length;if(0===u&&/\\d?e-\\d?/.test(r)){var a=r.match(/\\d?e-(\\d?)/);null!=a&&a[1]&&(u=Number.parseInt(a[1]))}var i=n>u?n:u;return Number.parseInt(e.toFixed(i).replace(\".\",\"\"))%Number.parseInt(t.toFixed(i).replace(\".\",\"\"))/Math.pow(10,i)}(n.value,t.value))||n.issues.push({origin:N(n.value),code:\"not_multiple_of\",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),ro=Ba(\"$ZodCheckNumberFormat\",function(e,t){var n;Yi.init(e,t),t.format=t.format||\"float64\";var r=null===(n=t.format)||void 0===n?void 0:n.includes(\"int\"),u=r?\"int\":\"number\",a=T(ei[t.format],2),i=a[0],o=a[1];e._zod.onattach.push(function(e){var n=e._zod.bag;n.format=t.format,n.minimum=i,n.maximum=o,r&&(n.pattern=Hi)}),e._zod.check=function(n){var a=n.value;if(r){if(!Number.isInteger(a))return void n.issues.push({expected:u,format:t.format,code:\"invalid_type\",continue:!1,input:a,inst:e});if(!Number.isSafeInteger(a))return void(a>0?n.issues.push({input:a,code:\"too_big\",maximum:Number.MAX_SAFE_INTEGER,note:\"Integers must be within the safe integer range.\",inst:e,origin:u,continue:!t.abort}):n.issues.push({input:a,code:\"too_small\",minimum:Number.MIN_SAFE_INTEGER,note:\"Integers must be within the safe integer range.\",inst:e,origin:u,continue:!t.abort}))}ao&&n.issues.push({origin:\"number\",input:a,code:\"too_big\",maximum:o,inst:e})}}),uo=Ba(\"$ZodCheckMaxSize\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;r.size>=t.minimum||n.issues.push({origin:ai(r),code:\"too_small\",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),io=Ba(\"$ZodCheckSizeEquals\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.size}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.size,n.maximum=t.size,n.size=t.size}),e._zod.check=function(n){var r=n.value,u=r.size;if(u!==t.size){var a=u>t.size;n.issues.push(S(S({origin:ai(r)},a?{code:\"too_big\",maximum:t.size}:{code:\"too_small\",minimum:t.size}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),oo=Ba(\"$ZodCheckMaxLength\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n,r=null!==(n=e._zod.bag.maximum)&&void 0!==n?n:Number.POSITIVE_INFINITY;t.maximumr&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=function(n){var r=n.value;if(!(r.length>=t.minimum)){var u=ii(r);n.issues.push({origin:u,code:\"too_small\",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}}),co=Ba(\"$ZodCheckLengthEquals\",function(e,t){var n,r;Yi.init(e,t),null!==(n=(r=e._zod.def).when)&&void 0!==n||(r.when=function(e){var t=e.value;return!Ra(t)&&void 0!==t.length}),e._zod.onattach.push(function(e){var n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=function(n){var r=n.value,u=r.length;if(u!==t.length){var a=ii(r),i=u>t.length;n.issues.push(S(S({origin:a},i?{code:\"too_big\",maximum:t.length}:{code:\"too_small\",minimum:t.length}),{},{inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort}))}}}),lo=Ba(\"$ZodCheckStringFormat\",function(e,t){var n,r,u,a;Yi.init(e,t),e._zod.onattach.push(function(e){var n,r=e._zod.bag;(r.format=t.format,t.pattern)&&(null!==(n=r.patterns)&&void 0!==n||(r.patterns=new Set),r.patterns.add(t.pattern))}),t.pattern?null!==(n=(u=e._zod).check)&&void 0!==n||(u.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push(S(S({origin:\"string\",code:\"invalid_format\",format:t.format,input:n.value},t.pattern?{pattern:t.pattern.toString()}:{}),{},{inst:e,continue:!t.abort}))}):null!==(r=(a=e._zod).check)&&void 0!==r||(a.check=function(){})}),fo=Ba(\"$ZodCheckRegex\",function(e,t){lo.init(e,t),e._zod.check=function(n){t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"regex\",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),po=Ba(\"$ZodCheckLowerCase\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Qi),lo.init(e,t)}),ho=Ba(\"$ZodCheckUpperCase\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Gi),lo.init(e,t)}),vo=Ba(\"$ZodCheckIncludes\",function(e,t){Yi.init(e,t);var n=Ga(t.includes),r=new RegExp(\"number\"==typeof t.position?\"^.{\".concat(t.position,\"}\").concat(n):n);t.pattern=r,e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.includes(t.includes,t.position)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"includes\",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),mo=Ba(\"$ZodCheckStartsWith\",function(e,t){var n;Yi.init(e,t);var r=new RegExp(\"^\".concat(Ga(t.prefix),\".*\"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.startsWith(t.prefix)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"starts_with\",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Do=Ba(\"$ZodCheckEndsWith\",function(e,t){var n;Yi.init(e,t);var r=new RegExp(\".*\".concat(Ga(t.suffix),\"$\"));null!==(n=t.pattern)&&void 0!==n||(t.pattern=r),e._zod.onattach.push(function(e){var t,n=e._zod.bag;null!==(t=n.patterns)&&void 0!==t||(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=function(n){n.value.endsWith(t.suffix)||n.issues.push({origin:\"string\",code:\"invalid_format\",format:\"ends_with\",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});function yo(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,P(ni(n,e.issues)))}var go=Ba(\"$ZodCheckProperty\",function(e,t){Yi.init(e,t),e._zod.check=function(e){var n=t.schema._zod.run({value:e.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(function(n){return yo(n,e,t.property)});yo(n,e,t.property)}}),Fo=Ba(\"$ZodCheckMimeType\",function(e,t){Yi.init(e,t);var n=new Set(t.mime);e._zod.onattach.push(function(e){e._zod.bag.mime=t.mime}),e._zod.check=function(r){n.has(r.value.type)||r.issues.push({code:\"invalid_value\",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Eo=Ba(\"$ZodCheckOverwrite\",function(e,t){Yi.init(e,t),e._zod.check=function(e){e.value=t.tx(e.value)}}),bo=function(){return F(function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];D(this,e),this.content=[],this.indent=0,this&&(this.args=t)},[{key:\"indented\",value:function(e){this.indent+=1,e(this),this.indent-=1}},{key:\"write\",value:function(e){var t=this;if(\"function\"==typeof e)return e(this,{execution:\"sync\"}),void e(this,{execution:\"async\"});var n,r=e.split(\"\\n\").filter(function(e){return e}),u=Math.min.apply(Math,P(r.map(function(e){return e.length-e.trimStart().length}))),a=r.map(function(e){return e.slice(u)}).map(function(e){return\" \".repeat(2*t.indent)+e}),i=E(a);try{for(i.s();!(n=i.n()).done;){var o=n.value;this.content.push(o)}}catch(e){i.e(e)}finally{i.f()}}},{key:\"compile\",value:function(){var e,t=Function,n=null==this?void 0:this.args,r=P((null!==(e=null==this?void 0:this.content)&&void 0!==e?e:[\"\"]).map(function(e){return\" \".concat(e)}));return y(t,P(n).concat([r.join(\"\\n\")]))}}])}(),Ao={major:4,minor:1,patch:12},Co=Ba(\"$ZodType\",function(e,t){var n,r;null!=e||(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Ao;var u=P(null!==(n=e._zod.def.checks)&&void 0!==n?n:[]);e._zod.traits.has(\"$ZodCheck\")&&u.unshift(e);var a,i=E(u);try{for(i.s();!(a=i.n()).done;){var o,s=E(a.value._zod.onattach);try{for(s.s();!(o=s.n()).done;){(0,o.value)(e)}}catch(e){s.e(e)}finally{s.f()}}}catch(e){i.e(e)}finally{i.f()}if(0===u.length){var c,l;null!==(c=(r=e._zod).deferred)&&void 0!==c||(r.deferred=[]),null===(l=e._zod.deferred)||void 0===l||l.push(function(){e._zod.run=e._zod.parse})}else{var d=function(e,t,n){var r,u,a=ti(e),i=E(t);try{var o=function(){var t=u.value;if(t._zod.def.when){if(!t._zod.def.when(e))return 0}else if(a)return 0;var i=e.issues.length,o=t._zod.check(e);if(o instanceof Promise&&!1===(null==n?void 0:n.async))throw new Ia;if(r||o instanceof Promise)r=(null!=r?r:Promise.resolve()).then(v(B().m(function t(){return B().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,o;case 1:if(e.issues.length!==i){t.n=2;break}return t.a(2);case 2:a||(a=ti(e,i));case 3:return t.a(2)}},t)})));else{if(e.issues.length===i)return 0;a||(a=ti(e,i))}};for(i.s();!(u=i.n()).done;)o()}catch(e){i.e(e)}finally{i.f()}return r?r.then(function(){return e}):e},f=function(t,n,r){if(ti(t))return t.aborted=!0,t;var a=d(n,u,r);if(a instanceof Promise){if(!1===r.async)throw new Ia;return a.then(function(t){return e._zod.parse(t,r)})}return e._zod.parse(a,r)};e._zod.run=function(t,n){if(n.skipChecks)return e._zod.parse(t,n);if(\"backward\"===n.direction){var r=e._zod.parse({value:t.value,issues:[]},S(S({},n),{},{skipChecks:!0}));return r instanceof Promise?r.then(function(e){return f(e,t,n)}):f(r,t,n)}var a=e._zod.parse(t,n);if(a instanceof Promise){if(!1===n.async)throw new Ia;return a.then(function(e){return d(e,u,n)})}return d(a,u,n)}}e[\"~standard\"]={validate:function(t){try{var n,r=hi(e,t);return r.success?{value:r.data}:{issues:null===(n=r.error)||void 0===n?void 0:n.issues}}catch(n){return mi(e,t).then(function(e){var t;return e.success?{value:e.data}:{issues:null===(t=e.error)||void 0===t?void 0:t.issues}})}},vendor:\"zod\",version:1}}),ko=Ba(\"$ZodString\",function(e,t){var n,r,u;Co.init(e,t),e._zod.pattern=null!==(n=P(null!==(r=null==e||null===(u=e._zod.bag)||void 0===u?void 0:u.patterns)&&void 0!==r?r:[]).pop())&&void 0!==n?n:function(e){var t,n,r=e?\"[\\\\s\\\\S]{\".concat(null!==(t=null==e?void 0:e.minimum)&&void 0!==t?t:0,\",\").concat(null!==(n=null==e?void 0:e.maximum)&&void 0!==n?n:\"\",\"}\"):\"[\\\\s\\\\S]*\";return new RegExp(\"^\".concat(r,\"$\"))}(e._zod.bag),e._zod.parse=function(n,r){if(t.coerce)try{n.value=String(n.value)}catch(r){}return\"string\"==typeof n.value||n.issues.push({expected:\"string\",code:\"invalid_type\",input:n.value,inst:e}),n}}),wo=Ba(\"$ZodStringFormat\",function(e,t){lo.init(e,t),ko.init(e,t)}),_o=Ba(\"$ZodGUID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Oi),wo.init(e,t)}),So=Ba(\"$ZodUUID\",function(e,t){var n;if(t.version){var r,u={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===u)throw new Error('Invalid UUID version: \"'.concat(t.version,'\"'));null!==(r=t.pattern)&&void 0!==r||(t.pattern=Ti(u))}else null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ti());wo.init(e,t)}),xo=Ba(\"$ZodEmail\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Pi),wo.init(e,t)}),Bo=Ba(\"$ZodURL\",function(e,t){wo.init(e,t),e._zod.check=function(n){try{var r=n.value.trim(),u=new URL(r);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(u.hostname)||n.issues.push({code:\"invalid_format\",format:\"url\",note:\"Invalid hostname\",pattern:Li.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(u.protocol.endsWith(\":\")?u.protocol.slice(0,-1):u.protocol)||n.issues.push({code:\"invalid_format\",format:\"url\",note:\"Invalid protocol\",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=u.href:n.value=r)}catch(r){n.issues.push({code:\"invalid_format\",format:\"url\",input:n.value,inst:e,continue:!t.abort})}}}),Io=Ba(\"$ZodEmoji\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp(\"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\",\"u\")),wo.init(e,t)}),Oo=Ba(\"$ZodNanoID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Bi),wo.init(e,t)}),To=Ba(\"$ZodCUID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ki),wo.init(e,t)}),Po=Ba(\"$ZodCUID2\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=wi),wo.init(e,t)}),jo=Ba(\"$ZodULID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=_i),wo.init(e,t)}),No=Ba(\"$ZodXID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Si),wo.init(e,t)}),zo=Ba(\"$ZodKSUID\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=xi),wo.init(e,t)}),Ro=Ba(\"$ZodISODateTime\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=function(e){var t=Vi({precision:e.precision}),n=[\"Z\"];e.local&&n.push(\"\"),e.offset&&n.push(\"([+-](?:[01]\\\\d|2[0-3]):[0-5]\\\\d)\");var r=\"\".concat(t,\"(?:\").concat(n.join(\"|\"),\")\");return new RegExp(\"^\".concat(qi,\"T(?:\").concat(r,\")$\"))}(t)),wo.init(e,t)}),Mo=Ba(\"$ZodISODate\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ui),wo.init(e,t)}),Zo=Ba(\"$ZodISOTime\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=new RegExp(\"^\".concat(Vi(t),\"$\"))),wo.init(e,t)}),Lo=Ba(\"$ZodISODuration\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ii),wo.init(e,t)}),$o=Ba(\"$ZodIPv4\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=ji),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format=\"ipv4\"})}),qo=Ba(\"$ZodIPv6\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ni),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.format=\"ipv6\"}),e._zod.check=function(n){try{new URL(\"http://[\".concat(n.value,\"]\"))}catch(r){n.issues.push({code:\"invalid_format\",format:\"ipv6\",input:n.value,inst:e,continue:!t.abort})}}}),Uo=Ba(\"$ZodCIDRv4\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=zi),wo.init(e,t)}),Vo=Ba(\"$ZodCIDRv6\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Ri),wo.init(e,t),e._zod.check=function(n){var r=n.value.split(\"/\");try{if(2!==r.length)throw new Error;var u=T(r,2),a=u[0],i=u[1];if(!i)throw new Error;var o=Number(i);if(\"\".concat(o)!==i)throw new Error;if(o<0||o>128)throw new Error;new URL(\"http://[\".concat(a,\"]\"))}catch(r){n.issues.push({code:\"invalid_format\",format:\"cidrv6\",input:n.value,inst:e,continue:!t.abort})}}});function Ho(e){if(\"\"===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch(e){return!1}}var Ko=Ba(\"$ZodBase64\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Mi),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding=\"base64\"}),e._zod.check=function(n){Ho(n.value)||n.issues.push({code:\"invalid_format\",format:\"base64\",input:n.value,inst:e,continue:!t.abort})}});var Wo=Ba(\"$ZodBase64URL\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=Zi),wo.init(e,t),e._zod.onattach.push(function(e){e._zod.bag.contentEncoding=\"base64url\"}),e._zod.check=function(n){(function(e){if(!Zi.test(e))return!1;var t=e.replace(/[-_]/g,function(e){return\"-\"===e?\"+\":\"/\"});return Ho(t.padEnd(4*Math.ceil(t.length/4),\"=\"))})(n.value)||n.issues.push({code:\"invalid_format\",format:\"base64url\",input:n.value,inst:e,continue:!t.abort})}}),Jo=Ba(\"$ZodE164\",function(e,t){var n;null!==(n=t.pattern)&&void 0!==n||(t.pattern=$i),wo.init(e,t)});var Qo=Ba(\"$ZodJWT\",function(e,t){wo.init(e,t),e._zod.check=function(n){(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;try{var n=e.split(\".\");if(3!==n.length)return!1;var r=T(n,1)[0];if(!r)return!1;var u=JSON.parse(atob(r));return!(\"typ\"in u&&\"JWT\"!==(null==u?void 0:u.typ)||!u.alg||t&&(!(\"alg\"in u)||u.alg!==t))}catch(e){return!1}})(n.value,t.alg)||n.issues.push({code:\"invalid_format\",format:\"jwt\",input:n.value,inst:e,continue:!t.abort})}}),Go=Ba(\"$ZodNumber\",function(e,t){var n;Co.init(e,t),e._zod.pattern=null!==(n=e._zod.bag.pattern)&&void 0!==n?n:Ki,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Number(n.value)}catch(e){}var u=n.value;if(\"number\"==typeof u&&!Number.isNaN(u)&&Number.isFinite(u))return n;var a=\"number\"==typeof u?Number.isNaN(u)?\"NaN\":Number.isFinite(u)?void 0:\"Infinity\":void 0;return n.issues.push(S({expected:\"number\",code:\"invalid_type\",input:u,inst:e},a?{received:a}:{})),n}}),Yo=Ba(\"$ZodNumber\",function(e,t){ro.init(e,t),Go.init(e,t)}),Xo=Ba(\"$ZodBoolean\",function(e,t){Co.init(e,t),e._zod.pattern=Wi,e._zod.parse=function(n,r){if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}var u=n.value;return\"boolean\"==typeof u||n.issues.push({expected:\"boolean\",code:\"invalid_type\",input:u,inst:e}),n}}),es=Ba(\"$ZodNull\",function(e,t){Co.init(e,t),e._zod.pattern=Ji,e._zod.values=new Set([null]),e._zod.parse=function(t,n){var r=t.value;return null===r||t.issues.push({expected:\"null\",code:\"invalid_type\",input:r,inst:e}),t}}),ts=Ba(\"$ZodUnknown\",function(e,t){Co.init(e,t),e._zod.parse=function(e){return e}}),ns=Ba(\"$ZodNever\",function(e,t){Co.init(e,t),e._zod.parse=function(t,n){return t.issues.push({expected:\"never\",code:\"invalid_type\",input:t.value,inst:e}),t}});function rs(e,t,n){var r;e.issues.length&&(r=t.issues).push.apply(r,P(ni(n,e.issues)));t.value[n]=e.value}var us=Ba(\"$ZodArray\",function(e,t){Co.init(e,t),e._zod.parse=function(n,r){var u=n.value;if(!Array.isArray(u))return n.issues.push({expected:\"array\",code:\"invalid_type\",input:u,inst:e}),n;n.value=Array(u.length);for(var a=[],i=function(e){var i=u[e],o=t.element._zod.run({value:i,issues:[]},r);o instanceof Promise?a.push(o.then(function(t){return rs(t,n,e)})):rs(o,n,e)},o=0;o ({\\n ...iss,\\n path: iss.path ? [\").concat(p,\", ...iss.path] : [\").concat(p,\"]\\n })));\\n }\\n \\n \\n if (\").concat(f,\".value === undefined) {\\n if (\").concat(p,\" in input) {\\n newResult[\").concat(p,\"] = undefined;\\n }\\n } else {\\n newResult[\").concat(p,\"] = \").concat(f,\".value;\\n }\\n \\n \"))}}catch(e){l.e(e)}finally{l.f()}t.write(\"payload.value = newResult;\"),t.write(\"return payload;\");var h=t.compile();return function(t,n){return h(e,t,n)}}(t.shape)),l=n(l,d),c?os([],f,l,d,r,e):l):u(l,d):(l.issues.push({expected:\"object\",code:\"invalid_type\",input:f,inst:e}),l)}});function ls(e,t,n,r){var u,a=E(e);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(0===i.issues.length)return t.value=i.value,t}}catch(e){a.e(e)}finally{a.f()}var o=e.filter(function(e){return!ti(e)});return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:\"invalid_union\",input:t.value,inst:n,errors:e.map(function(e){return e.issues.map(function(e){return ui(e,r,Pa())})})}),t)}var ds=Ba(\"$ZodUnion\",function(e,t){Co.init(e,t),La(e._zod,\"optin\",function(){return t.options.some(function(e){return\"optional\"===e._zod.optin})?\"optional\":void 0}),La(e._zod,\"optout\",function(){return t.options.some(function(e){return\"optional\"===e._zod.optout})?\"optional\":void 0}),La(e._zod,\"values\",function(){if(t.options.every(function(e){return e._zod.values}))return new Set(t.options.flatMap(function(e){return Array.from(e._zod.values)}))}),La(e._zod,\"pattern\",function(){if(t.options.every(function(e){return e._zod.pattern})){var e=t.options.map(function(e){return e._zod.pattern});return new RegExp(\"^(\".concat(e.map(function(e){return Ma(e.source)}).join(\"|\"),\")$\"))}});var n=1===t.options.length,r=t.options[0]._zod.run;e._zod.parse=function(u,a){if(n)return r(u,a);var i,o=!1,s=[],c=E(t.options);try{for(c.s();!(i=c.n()).done;){var l=i.value._zod.run({value:u.value,issues:[]},a);if(l instanceof Promise)s.push(l),o=!0;else{if(0===l.issues.length)return l;s.push(l)}}}catch(e){c.e(e)}finally{c.f()}return o?Promise.all(s).then(function(t){return ls(t,u,e,a)}):ls(s,u,e,a)}}),fs=Ba(\"$ZodDiscriminatedUnion\",function(e,t){ds.init(e,t);var n=e._zod.parse;La(e._zod,\"propValues\",function(){var e,n={},r=E(t.options);try{for(r.s();!(e=r.n()).done;){var u=e.value,a=u._zod.propValues;if(!a||0===Object.keys(a).length)throw new Error('Invalid discriminated union option at index \"'.concat(t.options.indexOf(u),'\"'));for(var i=0,o=Object.entries(a);i0&&n.issues.push({code:\"unrecognized_keys\",input:u,inst:e,keys:s})}else{n.value={};var f,p=E(Reflect.ownKeys(u));try{var h=function(){var i=f.value;if(\"__proto__\"===i)return 0;var o=t.keyType._zod.run({value:i,issues:[]},r);if(o instanceof Promise)throw new Error(\"Async schemas not supported in object keys currently\");if(o.issues.length)return n.issues.push({code:\"invalid_key\",origin:\"record\",issues:o.issues.map(function(e){return ui(e,r,Pa())}),input:i,path:[i],inst:e}),n.value[o.value]=o.value,0;var s=t.valueType._zod.run({value:u[i],issues:[]},r);if(s instanceof Promise)a.push(s.then(function(e){var t;e.issues.length&&(t=n.issues).push.apply(t,P(ni(i,e.issues)));n.value[o.value]=e.value}));else{var c;if(s.issues.length)(c=n.issues).push.apply(c,P(ni(i,s.issues)));n.value[o.value]=s.value}};for(p.s();!(f=p.n()).done;)h()}catch(e){p.e(e)}finally{p.f()}}return a.length?Promise.all(a).then(function(){return n}):n}}),Ds=Ba(\"$ZodEnum\",function(e,t){Co.init(e,t);var n=ja(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(\"^(\".concat(n.filter(function(e){return Qa.has(N(e))}).map(function(e){return\"string\"==typeof e?Ga(e):e.toString()}).join(\"|\"),\")$\")),e._zod.parse=function(t,u){var a=t.value;return r.has(a)||t.issues.push({code:\"invalid_value\",values:n,input:a,inst:e}),t}}),ys=Ba(\"$ZodLiteral\",function(e,t){if(Co.init(e,t),0===t.values.length)throw new Error(\"Cannot create literal schema with no valid values\");e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(\"^(\".concat(t.values.map(function(e){return\"string\"==typeof e?Ga(e):e?Ga(e.toString()):String(e)}).join(\"|\"),\")$\")),e._zod.parse=function(n,r){var u=n.value;return e._zod.values.has(u)||n.issues.push({code:\"invalid_value\",values:t.values,input:u,inst:e}),n}}),gs=Ba(\"$ZodTransform\",function(e,t){Co.init(e,t),e._zod.parse=function(n,r){if(\"backward\"===r.direction)throw new Oa(e.constructor.name);var u=t.transform(n.value,n);if(r.async)return(u instanceof Promise?u:Promise.resolve(u)).then(function(e){return n.value=e,n});if(u instanceof Promise)throw new Ia;return n.value=u,n}});function Fs(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}var Es=Ba(\"$ZodOptional\",function(e,t){Co.init(e,t),e._zod.optin=\"optional\",e._zod.optout=\"optional\",La(e._zod,\"values\",function(){return t.innerType._zod.values?new Set([].concat(P(t.innerType._zod.values),[void 0])):void 0}),La(e._zod,\"pattern\",function(){var e=t.innerType._zod.pattern;return e?new RegExp(\"^(\".concat(Ma(e.source),\")?$\")):void 0}),e._zod.parse=function(e,n){if(\"optional\"===t.innerType._zod.optin){var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(t){return Fs(t,e.value)}):Fs(r,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}}),bs=Ba(\"$ZodNullable\",function(e,t){Co.init(e,t),La(e._zod,\"optin\",function(){return t.innerType._zod.optin}),La(e._zod,\"optout\",function(){return t.innerType._zod.optout}),La(e._zod,\"pattern\",function(){var e=t.innerType._zod.pattern;return e?new RegExp(\"^(\".concat(Ma(e.source),\"|null)$\")):void 0}),La(e._zod,\"values\",function(){return t.innerType._zod.values?new Set([].concat(P(t.innerType._zod.values),[null])):void 0}),e._zod.parse=function(e,n){return null===e.value?e:t.innerType._zod.run(e,n)}}),As=Ba(\"$ZodDefault\",function(e,t){Co.init(e,t),e._zod.optin=\"optional\",La(e._zod,\"values\",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if(\"backward\"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(e){return Cs(e,t)}):Cs(r,t)}});function Cs(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}var ks=Ba(\"$ZodPrefault\",function(e,t){Co.init(e,t),e._zod.optin=\"optional\",La(e._zod,\"values\",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){return\"backward\"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n)}}),ws=Ba(\"$ZodNonOptional\",function(e,t){Co.init(e,t),La(e._zod,\"values\",function(){var e=t.innerType._zod.values;return e?new Set(P(e).filter(function(e){return void 0!==e})):void 0}),e._zod.parse=function(n,r){var u=t.innerType._zod.run(n,r);return u instanceof Promise?u.then(function(t){return _s(t,e)}):_s(u,e)}});function _s(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:\"invalid_type\",expected:\"nonoptional\",input:e.value,inst:t}),e}var Ss=Ba(\"$ZodCatch\",function(e,t){Co.init(e,t),La(e._zod,\"optin\",function(){return t.innerType._zod.optin}),La(e._zod,\"optout\",function(){return t.innerType._zod.optout}),La(e._zod,\"values\",function(){return t.innerType._zod.values}),e._zod.parse=function(e,n){if(\"backward\"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(function(r){return e.value=r.value,r.issues.length&&(e.value=t.catchValue(S(S({},e),{},{error:{issues:r.issues.map(function(e){return ui(e,n,Pa())})},input:e.value})),e.issues=[]),e}):(e.value=r.value,r.issues.length&&(e.value=t.catchValue(S(S({},e),{},{error:{issues:r.issues.map(function(e){return ui(e,n,Pa())})},input:e.value})),e.issues=[]),e)}}),xs=Ba(\"$ZodPipe\",function(e,t){Co.init(e,t),La(e._zod,\"values\",function(){return t.in._zod.values}),La(e._zod,\"optin\",function(){return t.in._zod.optin}),La(e._zod,\"optout\",function(){return t.out._zod.optout}),La(e._zod,\"propValues\",function(){return t.in._zod.propValues}),e._zod.parse=function(e,n){if(\"backward\"===n.direction){var r=t.out._zod.run(e,n);return r instanceof Promise?r.then(function(e){return Bs(e,t.in,n)}):Bs(r,t.in,n)}var u=t.in._zod.run(e,n);return u instanceof Promise?u.then(function(e){return Bs(e,t.out,n)}):Bs(u,t.out,n)}});function Bs(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var Is=Ba(\"$ZodReadonly\",function(e,t){Co.init(e,t),La(e._zod,\"propValues\",function(){return t.innerType._zod.propValues}),La(e._zod,\"values\",function(){return t.innerType._zod.values}),La(e._zod,\"optin\",function(){return t.innerType._zod.optin}),La(e._zod,\"optout\",function(){return t.innerType._zod.optout}),e._zod.parse=function(e,n){if(\"backward\"===n.direction)return t.innerType._zod.run(e,n);var r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Os):Os(r)}});function Os(e){return e.value=Object.freeze(e.value),e}var Ts=Ba(\"$ZodLazy\",function(e,t){Co.init(e,t),La(e._zod,\"innerType\",function(){return t.getter()}),La(e._zod,\"pattern\",function(){return e._zod.innerType._zod.pattern}),La(e._zod,\"propValues\",function(){return e._zod.innerType._zod.propValues}),La(e._zod,\"optin\",function(){var t;return null!==(t=e._zod.innerType._zod.optin)&&void 0!==t?t:void 0}),La(e._zod,\"optout\",function(){var t;return null!==(t=e._zod.innerType._zod.optout)&&void 0!==t?t:void 0}),e._zod.parse=function(t,n){return e._zod.innerType._zod.run(t,n)}}),Ps=Ba(\"$ZodCustom\",function(e,t){Yi.init(e,t),Co.init(e,t),e._zod.parse=function(e,t){return e},e._zod.check=function(n){var r=n.value,u=t.fn(r);if(u instanceof Promise)return u.then(function(t){return js(t,n,r,e)});js(u,n,r,e)}});function js(e,t,n,r){if(!e){var u,a={code:\"custom\",input:n,inst:r,path:P(null!==(u=r._zod.def.path)&&void 0!==u?u:[]),continue:!r._zod.def.abort};r._zod.def.params&&(a.params=r._zod.def.params),t.issues.push(oi(a))}}var Ns=function(){return F(function e(){D(this,e),this._map=new WeakMap,this._idmap=new Map},[{key:\"add\",value:function(e){var t=arguments.length<=1?void 0:arguments[1];if(this._map.set(e,t),t&&\"object\"===N(t)&&\"id\"in t){if(this._idmap.has(t.id))throw new Error(\"ID \".concat(t.id,\" already exists in the registry\"));this._idmap.set(t.id,e)}return this}},{key:\"clear\",value:function(){return this._map=new WeakMap,this._idmap=new Map,this}},{key:\"remove\",value:function(e){var t=this._map.get(e);return t&&\"object\"===N(t)&&\"id\"in t&&this._idmap.delete(t.id),this._map.delete(e),this}},{key:\"get\",value:function(e){var t=e._zod.parent;if(t){var n,r=S({},null!==(n=this.get(t))&&void 0!==n?n:{});delete r.id;var u=S(S({},r),this._map.get(e));return Object.keys(u).length?u:void 0}return this._map.get(e)}},{key:\"has\",value:function(e){return this._map.has(e)}}])}();function zs(){return new Ns}var Rs=zs();function Ms(e,t){return new e(S({type:\"string\",format:\"guid\",check:\"string_format\",abort:!1},Xa(t)))}function Zs(e,t){return new eo(S(S({check:\"less_than\"},Xa(t)),{},{value:e,inclusive:!1}))}function Ls(e,t){return new eo(S(S({check:\"less_than\"},Xa(t)),{},{value:e,inclusive:!0}))}function $s(e,t){return new to(S(S({check:\"greater_than\"},Xa(t)),{},{value:e,inclusive:!1}))}function qs(e,t){return new to(S(S({check:\"greater_than\"},Xa(t)),{},{value:e,inclusive:!0}))}function Us(e,t){return new no(S(S({check:\"multiple_of\"},Xa(t)),{},{value:e}))}function Vs(e,t){return new oo(S(S({check:\"max_length\"},Xa(t)),{},{maximum:e}))}function Hs(e,t){return new so(S(S({check:\"min_length\"},Xa(t)),{},{minimum:e}))}function Ks(e,t){return new co(S(S({check:\"length_equals\"},Xa(t)),{},{length:e}))}function Ws(e,t){return new fo(S(S({check:\"string_format\",format:\"regex\"},Xa(t)),{},{pattern:e}))}function Js(e){return new po(S({check:\"string_format\",format:\"lowercase\"},Xa(e)))}function Qs(e){return new ho(S({check:\"string_format\",format:\"uppercase\"},Xa(e)))}function Gs(e,t){return new vo(S(S({check:\"string_format\",format:\"includes\"},Xa(t)),{},{includes:e}))}function Ys(e,t){return new mo(S(S({check:\"string_format\",format:\"starts_with\"},Xa(t)),{},{prefix:e}))}function Xs(e,t){return new Do(S(S({check:\"string_format\",format:\"ends_with\"},Xa(t)),{},{suffix:e}))}function ec(e){return new Eo({check:\"overwrite\",tx:e})}function tc(e){return ec(function(t){return t.normalize(e)})}function nc(){return ec(function(e){return e.trim()})}function rc(){return ec(function(e){return e.toLowerCase()})}function uc(){return ec(function(e){return e.toUpperCase()})}function ac(e){var t=function(e,t){var n=new Yi(S({check:\"custom\"},Xa(t)));return n._zod.check=e,n}(function(n){return n.addIssue=function(e){if(\"string\"==typeof e)n.issues.push(oi(e,n.value,t._zod.def));else{var r,u,a,i,o=e;o.fatal&&(o.continue=!1),null!==(r=o.code)&&void 0!==r||(o.code=\"custom\"),null!==(u=o.input)&&void 0!==u||(o.input=n.value),null!==(a=o.inst)&&void 0!==a||(o.inst=t),null!==(i=o.continue)&&void 0!==i||(o.continue=!t._zod.def.abort),n.issues.push(oi(o))}},e(n.value,n)});return t}var ic=function(){return F(function e(t){var n,r,u,a,i;D(this,e),this.counter=0,this.metadataRegistry=null!==(n=null==t?void 0:t.metadata)&&void 0!==n?n:Rs,this.target=null!==(r=null==t?void 0:t.target)&&void 0!==r?r:\"draft-2020-12\",this.unrepresentable=null!==(u=null==t?void 0:t.unrepresentable)&&void 0!==u?u:\"throw\",this.override=null!==(a=null==t?void 0:t.override)&&void 0!==a?a:function(){},this.io=null!==(i=null==t?void 0:t.io)&&void 0!==i?i:\"output\",this.seen=new Map},[{key:\"process\",value:function(e){var t,n,r,u,a=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{path:[],schemaPath:[]},o=e._zod.def,s=this.seen.get(e);if(s)return s.count++,i.schemaPath.includes(e)&&(s.cycle=i.path),s.schema;var c={schema:{},count:1,cycle:void 0,path:i.path};this.seen.set(e,c);var l=null===(t=(n=e._zod).toJSONSchema)||void 0===t?void 0:t.call(n);if(l)c.schema=l;else{var d=S(S({},i),{},{schemaPath:[].concat(P(i.schemaPath),[e]),path:i.path}),f=e._zod.parent;if(f)c.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{var p=c.schema;switch(o.type){case\"string\":var h=p;h.type=\"string\";var v,m=e._zod.bag,D=m.minimum,y=m.maximum,g=m.format,F=m.patterns,b=m.contentEncoding;if(\"number\"==typeof D&&(h.minLength=D),\"number\"==typeof y&&(h.maxLength=y),g)h.format=null!==(v={guid:\"uuid\",url:\"uri\",datetime:\"date-time\",json_string:\"json-string\",regex:\"\"}[g])&&void 0!==v?v:g,\"\"===h.format&&delete h.format;if(b&&(h.contentEncoding=b),F&&F.size>0){var A=P(F);1===A.length?h.pattern=A[0].source:A.length>1&&(c.schema.allOf=P(A.map(function(e){return S(S({},\"draft-7\"===a.target||\"draft-4\"===a.target||\"openapi-3.0\"===a.target?{type:\"string\"}:{}),{},{pattern:e.source})})))}break;case\"number\":var C=p,k=e._zod.bag,w=k.minimum,_=k.maximum,x=k.format,B=k.multipleOf,I=k.exclusiveMaximum,O=k.exclusiveMinimum;\"string\"==typeof x&&x.includes(\"int\")?C.type=\"integer\":C.type=\"number\",\"number\"==typeof O&&(\"draft-4\"===this.target||\"openapi-3.0\"===this.target?(C.minimum=O,C.exclusiveMinimum=!0):C.exclusiveMinimum=O),\"number\"==typeof w&&(C.minimum=w,\"number\"==typeof O&&\"draft-4\"!==this.target&&(O>=w?delete C.minimum:delete C.exclusiveMinimum)),\"number\"==typeof I&&(\"draft-4\"===this.target||\"openapi-3.0\"===this.target?(C.maximum=I,C.exclusiveMaximum=!0):C.exclusiveMaximum=I),\"number\"==typeof _&&(C.maximum=_,\"number\"==typeof I&&\"draft-4\"!==this.target&&(I<=_?delete C.maximum:delete C.exclusiveMaximum)),\"number\"==typeof B&&(C.multipleOf=B);break;case\"boolean\":p.type=\"boolean\";break;case\"bigint\":if(\"throw\"===this.unrepresentable)throw new Error(\"BigInt cannot be represented in JSON Schema\");break;case\"symbol\":if(\"throw\"===this.unrepresentable)throw new Error(\"Symbols cannot be represented in JSON Schema\");break;case\"null\":\"openapi-3.0\"===this.target?(p.type=\"string\",p.nullable=!0,p.enum=[null]):p.type=\"null\";break;case\"any\":case\"unknown\":break;case\"undefined\":if(\"throw\"===this.unrepresentable)throw new Error(\"Undefined cannot be represented in JSON Schema\");break;case\"void\":if(\"throw\"===this.unrepresentable)throw new Error(\"Void cannot be represented in JSON Schema\");break;case\"never\":p.not={};break;case\"date\":if(\"throw\"===this.unrepresentable)throw new Error(\"Date cannot be represented in JSON Schema\");break;case\"array\":var T=p,j=e._zod.bag,z=j.minimum,R=j.maximum;\"number\"==typeof z&&(T.minItems=z),\"number\"==typeof R&&(T.maxItems=R),T.type=\"array\",T.items=this.process(o.element,S(S({},d),{},{path:[].concat(P(d.path),[\"items\"])}));break;case\"object\":var M,Z=p;Z.type=\"object\",Z.properties={};var L=o.shape;for(var $ in L)Z.properties[$]=this.process(L[$],S(S({},d),{},{path:[].concat(P(d.path),[\"properties\",$])}));var q=new Set(Object.keys(L)),U=new Set(P(q).filter(function(e){var t=o.shape[e]._zod;return\"input\"===a.io?void 0===t.optin:void 0===t.optout}));U.size>0&&(Z.required=Array.from(U)),\"never\"===(null===(M=o.catchall)||void 0===M?void 0:M._zod.def.type)?Z.additionalProperties=!1:o.catchall?o.catchall&&(Z.additionalProperties=this.process(o.catchall,S(S({},d),{},{path:[].concat(P(d.path),[\"additionalProperties\"])}))):\"output\"===this.io&&(Z.additionalProperties=!1);break;case\"union\":var V=p,H=o.options.map(function(e,t){return a.process(e,S(S({},d),{},{path:[].concat(P(d.path),[\"anyOf\",t])}))});V.anyOf=H;break;case\"intersection\":var K=p,W=this.process(o.left,S(S({},d),{},{path:[].concat(P(d.path),[\"allOf\",0])})),J=this.process(o.right,S(S({},d),{},{path:[].concat(P(d.path),[\"allOf\",1])})),Q=function(e){return\"allOf\"in e&&1===Object.keys(e).length},G=[].concat(P(Q(W)?W.allOf:[W]),P(Q(J)?J.allOf:[J]));K.allOf=G;break;case\"tuple\":var Y=p;Y.type=\"array\";var X=\"draft-2020-12\"===this.target?\"prefixItems\":\"items\",ee=\"draft-2020-12\"===this.target||\"openapi-3.0\"===this.target?\"items\":\"additionalItems\",te=o.items.map(function(e,t){return a.process(e,S(S({},d),{},{path:[].concat(P(d.path),[X,t])}))}),ne=o.rest?this.process(o.rest,S(S({},d),{},{path:[].concat(P(d.path),[ee],P(\"openapi-3.0\"===this.target?[o.items.length]:[]))})):null;\"draft-2020-12\"===this.target?(Y.prefixItems=te,ne&&(Y.items=ne)):\"openapi-3.0\"===this.target?(Y.items={anyOf:te},ne&&Y.items.anyOf.push(ne),Y.minItems=te.length,ne||(Y.maxItems=te.length)):(Y.items=te,ne&&(Y.additionalItems=ne));var re=e._zod.bag,ue=re.minimum,ae=re.maximum;\"number\"==typeof ue&&(Y.minItems=ue),\"number\"==typeof ae&&(Y.maxItems=ae);break;case\"record\":var ie=p;ie.type=\"object\",\"draft-7\"!==this.target&&\"draft-2020-12\"!==this.target||(ie.propertyNames=this.process(o.keyType,S(S({},d),{},{path:[].concat(P(d.path),[\"propertyNames\"])}))),ie.additionalProperties=this.process(o.valueType,S(S({},d),{},{path:[].concat(P(d.path),[\"additionalProperties\"])}));break;case\"map\":if(\"throw\"===this.unrepresentable)throw new Error(\"Map cannot be represented in JSON Schema\");break;case\"set\":if(\"throw\"===this.unrepresentable)throw new Error(\"Set cannot be represented in JSON Schema\");break;case\"enum\":var oe=p,se=ja(o.entries);se.every(function(e){return\"number\"==typeof e})&&(oe.type=\"number\"),se.every(function(e){return\"string\"==typeof e})&&(oe.type=\"string\"),oe.enum=se;break;case\"literal\":var ce,le=p,de=[],fe=E(o.values);try{for(fe.s();!(ce=fe.n()).done;){var pe=ce.value;if(void 0===pe){if(\"throw\"===this.unrepresentable)throw new Error(\"Literal `undefined` cannot be represented in JSON Schema\")}else if(\"bigint\"==typeof pe){if(\"throw\"===this.unrepresentable)throw new Error(\"BigInt literals cannot be represented in JSON Schema\");de.push(Number(pe))}else de.push(pe)}}catch(e){fe.e(e)}finally{fe.f()}if(0===de.length);else if(1===de.length){var he=de[0];le.type=null===he?\"null\":N(he),\"draft-4\"===this.target||\"openapi-3.0\"===this.target?le.enum=[he]:le.const=he}else de.every(function(e){return\"number\"==typeof e})&&(le.type=\"number\"),de.every(function(e){return\"string\"==typeof e})&&(le.type=\"string\"),de.every(function(e){return\"boolean\"==typeof e})&&(le.type=\"string\"),de.every(function(e){return null===e})&&(le.type=\"null\"),le.enum=de;break;case\"file\":var ve=p,me={type:\"string\",format:\"binary\",contentEncoding:\"binary\"},De=e._zod.bag,ye=De.minimum,ge=De.maximum,Fe=De.mime;void 0!==ye&&(me.minLength=ye),void 0!==ge&&(me.maxLength=ge),Fe?1===Fe.length?(me.contentMediaType=Fe[0],Object.assign(ve,me)):ve.anyOf=Fe.map(function(e){return S(S({},me),{},{contentMediaType:e})}):Object.assign(ve,me);break;case\"transform\":if(\"throw\"===this.unrepresentable)throw new Error(\"Transforms cannot be represented in JSON Schema\");break;case\"nullable\":var Ee=this.process(o.innerType,d);\"openapi-3.0\"===this.target?(c.ref=o.innerType,p.nullable=!0):p.anyOf=[Ee,{type:\"null\"}];break;case\"nonoptional\":case\"promise\":case\"optional\":this.process(o.innerType,d),c.ref=o.innerType;break;case\"success\":p.type=\"boolean\";break;case\"default\":this.process(o.innerType,d),c.ref=o.innerType,p.default=JSON.parse(JSON.stringify(o.defaultValue));break;case\"prefault\":this.process(o.innerType,d),c.ref=o.innerType,\"input\"===this.io&&(p._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break;case\"catch\":var be;this.process(o.innerType,d),c.ref=o.innerType;try{be=o.catchValue(void 0)}catch(e){throw new Error(\"Dynamic catch values are not supported in JSON Schema\")}p.default=be;break;case\"nan\":if(\"throw\"===this.unrepresentable)throw new Error(\"NaN cannot be represented in JSON Schema\");break;case\"template_literal\":var Ae=p,Ce=e._zod.pattern;if(!Ce)throw new Error(\"Pattern not found in template literal\");Ae.type=\"string\",Ae.pattern=Ce.source;break;case\"pipe\":var ke=\"input\"===this.io?\"transform\"===o.in._zod.def.type?o.out:o.in:o.out;this.process(ke,d),c.ref=ke;break;case\"readonly\":this.process(o.innerType,d),c.ref=o.innerType,p.readOnly=!0;break;case\"lazy\":var we=e._zod.innerType;this.process(we,d),c.ref=we;break;case\"custom\":if(\"throw\"===this.unrepresentable)throw new Error(\"Custom types cannot be represented in JSON Schema\");break;case\"function\":if(\"throw\"===this.unrepresentable)throw new Error(\"Function types cannot be represented in JSON Schema\")}}}var _e=this.metadataRegistry.get(e);return _e&&Object.assign(c.schema,_e),\"input\"===this.io&&oc(e)&&(delete c.schema.examples,delete c.schema.default),\"input\"===this.io&&c.schema._prefault&&(null!==(r=(u=c.schema).default)&&void 0!==r||(u.default=c.schema._prefault)),delete c.schema._prefault,this.seen.get(e).schema}},{key:\"emit\",value:function(e,t){var n,r,u,a,i,o,s=this,c={cycles:null!==(n=null==t?void 0:t.cycles)&&void 0!==n?n:\"ref\",reused:null!==(r=null==t?void 0:t.reused)&&void 0!==r?r:\"inline\",external:null!==(u=null==t?void 0:t.external)&&void 0!==u?u:void 0},l=this.seen.get(e);if(!l)throw new Error(\"Unprocessed schema. This is a bug in Zod.\");var d=function(e){if(!e[1].schema.$ref){var t=e[1],n=function(e){var t,n=\"draft-2020-12\"===s.target?\"$defs\":\"definitions\";if(c.external){var r,u,a,i,o=null===(r=c.external.registry.get(e[0]))||void 0===r?void 0:r.id,d=null!==(u=c.external.uri)&&void 0!==u?u:function(e){return e};if(o)return{ref:d(o)};var f=null!==(a=null!==(i=e[1].defId)&&void 0!==i?i:e[1].schema.id)&&void 0!==a?a:\"schema\".concat(s.counter++);return e[1].defId=f,{defId:f,ref:\"\".concat(d(\"__shared\"),\"#/\").concat(n,\"/\").concat(f)}}if(e[1]===l)return{ref:\"#\"};var p=\"\".concat(\"#\",\"/\").concat(n,\"/\"),h=null!==(t=e[1].schema.id)&&void 0!==t?t:\"__schema\".concat(s.counter++);return{defId:h,ref:p+h}}(e),r=n.ref,u=n.defId;t.def=S({},t.schema),u&&(t.defId=u);var a=t.schema;for(var i in a)delete a[i];a.$ref=r}};if(\"throw\"===c.cycles){var f,p=E(this.seen.entries());try{for(p.s();!(f=p.n()).done;){var h,v=f.value[1];if(v.cycle)throw new Error(\"Cycle detected: \"+\"#/\".concat(null===(h=v.cycle)||void 0===h?void 0:h.join(\"/\"),\"/\")+'\\n\\nSet the `cycles` parameter to `\"ref\"` to resolve cyclical schemas with defs.')}}catch(e){p.e(e)}finally{p.f()}}var m,D=E(this.seen.entries());try{for(D.s();!(m=D.n()).done;){var y,g=m.value,F=g[1];if(e!==g[0]){if(c.external){var b,A=null===(b=c.external.registry.get(g[0]))||void 0===b?void 0:b.id;if(e!==g[0]&&A){d(g);continue}}((null===(y=this.metadataRegistry.get(g[0]))||void 0===y?void 0:y.id)||F.cycle||F.count>1&&\"ref\"===c.reused)&&d(g)}else d(g)}}catch(e){D.e(e)}finally{D.f()}var C,k=function(e,t){var n,r,u=s.seen.get(e),a=null!==(n=u.def)&&void 0!==n?n:u.schema,i=S({},a);if(null!==u.ref){var o=u.ref;if(u.ref=null,o){k(o,t);var c,l=s.seen.get(o).schema;if(!l.$ref||\"draft-7\"!==t.target&&\"draft-4\"!==t.target&&\"openapi-3.0\"!==t.target)Object.assign(a,l),Object.assign(a,i);else a.allOf=null!==(c=a.allOf)&&void 0!==c?c:[],a.allOf.push(l)}u.isParent||s.override({zodSchema:e,jsonSchema:a,path:null!==(r=u.path)&&void 0!==r?r:[]})}},w=E(P(this.seen.entries()).reverse());try{for(w.s();!(C=w.n()).done;){var _=C.value;k(_[0],{target:this.target})}}catch(e){w.e(e)}finally{w.f()}var x={};if(\"draft-2020-12\"===this.target?x.$schema=\"https://json-schema.org/draft/2020-12/schema\":\"draft-7\"===this.target?x.$schema=\"http://json-schema.org/draft-07/schema#\":\"draft-4\"===this.target?x.$schema=\"http://json-schema.org/draft-04/schema#\":\"openapi-3.0\"===this.target||console.warn(\"Invalid target: \".concat(this.target)),null!==(a=c.external)&&void 0!==a&&a.uri){var B,I=null===(B=c.external.registry.get(e))||void 0===B?void 0:B.id;if(!I)throw new Error(\"Schema is missing an `id` property\");x.$id=c.external.uri(I)}Object.assign(x,l.def);var O,T=null!==(i=null===(o=c.external)||void 0===o?void 0:o.defs)&&void 0!==i?i:{},j=E(this.seen.entries());try{for(j.s();!(O=j.n()).done;){var N=O.value[1];N.def&&N.defId&&(T[N.defId]=N.def)}}catch(e){j.e(e)}finally{j.f()}c.external||Object.keys(T).length>0&&(\"draft-2020-12\"===this.target?x.$defs=T:x.definitions=T);try{return JSON.parse(JSON.stringify(x))}catch(e){throw new Error(\"Error converting schema to JSON.\")}}}])}();function oc(e,t){var n=null!=t?t:{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);var r=e._zod.def;switch(r.type){case\"string\":case\"number\":case\"bigint\":case\"boolean\":case\"date\":case\"symbol\":case\"undefined\":case\"null\":case\"any\":case\"unknown\":case\"never\":case\"void\":case\"literal\":case\"enum\":case\"nan\":case\"file\":case\"template_literal\":case\"custom\":case\"success\":case\"catch\":case\"function\":return!1;case\"array\":return oc(r.element,n);case\"object\":for(var u in r.shape)if(oc(r.shape[u],n))return!0;return!1;case\"union\":var a,i=E(r.options);try{for(i.s();!(a=i.n()).done;){if(oc(a.value,n))return!0}}catch(e){i.e(e)}finally{i.f()}return!1;case\"intersection\":return oc(r.left,n)||oc(r.right,n);case\"tuple\":var o,s=E(r.items);try{for(s.s();!(o=s.n()).done;){if(oc(o.value,n))return!0}}catch(e){s.e(e)}finally{s.f()}return!(!r.rest||!oc(r.rest,n));case\"record\":case\"map\":return oc(r.keyType,n)||oc(r.valueType,n);case\"set\":return oc(r.valueType,n);case\"promise\":case\"optional\":case\"nonoptional\":case\"nullable\":case\"readonly\":case\"default\":case\"prefault\":return oc(r.innerType,n);case\"lazy\":return oc(r.getter(),n);case\"transform\":return!0;case\"pipe\":return oc(r.in,n)||oc(r.out,n)}throw new Error(\"Unknown schema type: \".concat(r.type))}var sc=Object.freeze({__proto__:null,endsWith:Xs,gt:$s,gte:qs,includes:Gs,length:Ks,lowercase:Js,lt:Zs,lte:Ls,maxLength:Vs,maxSize:function(e,t){return new uo(S(S({check:\"max_size\"},Xa(t)),{},{maximum:e}))},mime:function(e,t){return new Fo(S({check:\"mime_type\",mime:e},Xa(t)))},minLength:Hs,minSize:function(e,t){return new ao(S(S({check:\"min_size\"},Xa(t)),{},{minimum:e}))},multipleOf:Us,negative:function(e){return Zs(0,e)},nonnegative:function(e){return qs(0,e)},nonpositive:function(e){return Ls(0,e)},normalize:tc,overwrite:ec,positive:function(e){return $s(0,e)},property:function(e,t,n){return new go(S({check:\"property\",property:e,schema:t},Xa(n)))},regex:Ws,size:function(e,t){return new io(S(S({check:\"size_equals\"},Xa(t)),{},{size:e}))},startsWith:Ys,toLowerCase:rc,toUpperCase:uc,trim:nc,uppercase:Qs}),cc=Ba(\"ZodISODateTime\",function(e,t){Ro.init(e,t),Pc.init(e,t)});function lc(e){return function(e,t){return new e(S({type:\"string\",format:\"datetime\",check:\"string_format\",offset:!1,local:!1,precision:null},Xa(t)))}(cc,e)}var dc=Ba(\"ZodISODate\",function(e,t){Mo.init(e,t),Pc.init(e,t)});function fc(e){return function(e,t){return new e(S({type:\"string\",format:\"date\",check:\"string_format\"},Xa(t)))}(dc,e)}var pc=Ba(\"ZodISOTime\",function(e,t){Zo.init(e,t),Pc.init(e,t)});function hc(e){return function(e,t){return new e(S({type:\"string\",format:\"time\",check:\"string_format\",precision:null},Xa(t)))}(pc,e)}var vc=Ba(\"ZodISODuration\",function(e,t){Lo.init(e,t),Pc.init(e,t)});function mc(e){return function(e,t){return new e(S({type:\"string\",format:\"duration\",check:\"string_format\"},Xa(t)))}(vc,e)}var Dc=Ba(\"ZodError\",function(e,t){ci.init(e,t),e.name=\"ZodError\",Object.defineProperties(e,{format:{value:function(t){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},n={_errors:[]},r=function(e){var u,a=E(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(\"invalid_union\"===i.code&&i.errors.length)i.errors.map(function(e){return r({issues:e})});else if(\"invalid_key\"===i.code)r({issues:i.issues});else if(\"invalid_element\"===i.code)r({issues:i.issues});else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s1&&void 0!==arguments[1]?arguments[1]:function(e){return e.message},r={},u=[],a=E(e.issues);try{for(a.s();!(t=a.n()).done;){var i=t.value;i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(n(i))):u.push(n(i))}}catch(e){a.e(e)}finally{a.f()}return{formErrors:u,fieldErrors:r}}(e,t)}},addIssue:{value:function(t){e.issues.push(t),e.message=JSON.stringify(e.issues,Na,2)}},addIssues:{value:function(t){var n;(n=e.issues).push.apply(n,P(t)),e.message=JSON.stringify(e.issues,Na,2)}},isEmpty:{get:function(){return 0===e.issues.length}}})},{Parent:Error}),yc=di(Dc),gc=fi(Dc),Fc=pi(Dc),Ec=vi(Dc),bc=Di(Dc),Ac=yi(Dc),Cc=gi(Dc),kc=Fi(Dc),wc=Ei(Dc),_c=bi(Dc),Sc=Ai(Dc),xc=Ci(Dc),Bc=Ba(\"ZodType\",function(e,t){return Co.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,\"_def\",{value:t}),e.check=function(){for(var n,r=arguments.length,u=new Array(r),a=0;a1&&void 0!==arguments[1]?arguments[1]:{};return function(e,t,n){return new e(S({type:\"custom\",check:\"custom\",fn:t},Xa(n)))}($l,e,t)}(t,n))},e.superRefine=function(t){return e.check(ac(t))},e.overwrite=function(t){return e.check(ec(t))},e.optional=function(){return xl(e)},e.nullable=function(){return Il(e)},e.nullish=function(){return xl(Il(e))},e.nonoptional=function(t){return function(e,t){return new Pl(S({type:\"nonoptional\",innerType:e},Xa(t)))}(e,t)},e.array=function(){return pl(e)},e.or=function(t){return yl([e,t])},e.and=function(t){return new Fl({type:\"intersection\",left:e,right:t})},e.transform=function(t){return zl(e,new _l({type:\"transform\",transform:t}))},e.default=function(t){return n=t,new Ol({type:\"default\",innerType:e,get defaultValue(){return\"function\"==typeof n?n():Ja(n)}});var n},e.prefault=function(t){return n=t,new Tl({type:\"prefault\",innerType:e,get defaultValue(){return\"function\"==typeof n?n():Ja(n)}});var n},e.catch=function(t){return new jl({type:\"catch\",innerType:e,catchValue:\"function\"==typeof(n=t)?n:function(){return n}});var n},e.pipe=function(t){return zl(e,t)},e.readonly=function(){return new Rl({type:\"readonly\",innerType:e})},e.describe=function(t){var n=e.clone();return Rs.add(n,{description:t}),n},Object.defineProperty(e,\"description\",{get:function(){var t;return null===(t=Rs.get(e))||void 0===t?void 0:t.description},configurable:!0}),e.meta=function(){if(0===arguments.length)return Rs.get(e);var t=e.clone();return Rs.add(t,arguments.length<=0?void 0:arguments[0]),t},e.isOptional=function(){return e.safeParse(void 0).success},e.isNullable=function(){return e.safeParse(null).success},e}),Ic=Ba(\"_ZodString\",function(e,t){var n,r,u;ko.init(e,t),Bc.init(e,t);var a=e._zod.bag;e.format=null!==(n=a.format)&&void 0!==n?n:null,e.minLength=null!==(r=a.minimum)&&void 0!==r?r:null,e.maxLength=null!==(u=a.maximum)&&void 0!==u?u:null,e.regex=function(){return e.check(Ws.apply(sc,arguments))},e.includes=function(){return e.check(Gs.apply(sc,arguments))},e.startsWith=function(){return e.check(Ys.apply(sc,arguments))},e.endsWith=function(){return e.check(Xs.apply(sc,arguments))},e.min=function(){return e.check(Hs.apply(sc,arguments))},e.max=function(){return e.check(Vs.apply(sc,arguments))},e.length=function(){return e.check(Ks.apply(sc,arguments))},e.nonempty=function(){for(var t=arguments.length,n=new Array(t),r=0;r0)throw new Error(\"Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.\");var r=qa(e._zod.def,{get shape(){var n=S(S({},e._zod.def.shape),t);return $a(this,\"shape\",n),n},checks:[]});return Ya(e,r)}(e,t)},e.safeExtend=function(t){return function(e,t){if(!Wa(t))throw new Error(\"Invalid input to safeExtend: expected a plain object\");var n=S(S({},e._zod.def),{},{get shape(){var n=S(S({},e._zod.def.shape),t);return $a(this,\"shape\",n),n},checks:e._zod.def.checks});return Ya(e,n)}(e,t)},e.merge=function(t){return function(e,t){var n=qa(e._zod.def,{get shape(){var n=S(S({},e._zod.def.shape),t._zod.def.shape);return $a(this,\"shape\",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Ya(e,n)}(e,t)},e.pick=function(t){return function(e,t){var n=e._zod.def;return Ya(e,qa(e._zod.def,{get shape(){var e={};for(var r in t){if(!(r in n.shape))throw new Error('Unrecognized key: \"'.concat(r,'\"'));t[r]&&(e[r]=n.shape[r])}return $a(this,\"shape\",e),e},checks:[]}))}(e,t)},e.omit=function(t){return function(e,t){var n=e._zod.def,r=qa(e._zod.def,{get shape(){var r=S({},e._zod.def.shape);for(var u in t){if(!(u in n.shape))throw new Error('Unrecognized key: \"'.concat(u,'\"'));t[u]&&delete r[u]}return $a(this,\"shape\",r),r},checks:[]});return Ya(e,r)}(e,t)},e.partial=function(){return function(e,t,n){var r=qa(t._zod.def,{get shape(){var r=t._zod.def.shape,u=S({},r);if(n)for(var a in n){if(!(a in r))throw new Error('Unrecognized key: \"'.concat(a,'\"'));n[a]&&(u[a]=new e({type:\"optional\",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:\"optional\",innerType:r[i]});return $a(this,\"shape\",u),u},checks:[]});return Ya(t,r)}(Sl,e,arguments.length<=0?void 0:arguments[0])},e.required=function(){return function(e,t,n){var r=qa(t._zod.def,{get shape(){var r=t._zod.def.shape,u=S({},r);if(n)for(var a in n){if(!(a in u))throw new Error('Unrecognized key: \"'.concat(a,'\"'));n[a]&&(u[a]=new e({type:\"nonoptional\",innerType:r[a]}))}else for(var i in r)u[i]=new e({type:\"nonoptional\",innerType:r[i]});return $a(this,\"shape\",u),u},checks:[]});return Ya(t,r)}(Pl,e,arguments.length<=0?void 0:arguments[0])}});function vl(e,t){var n=S({type:\"object\",shape:null!=e?e:{}},Xa(t));return new hl(n)}function ml(e,t){return new hl(S({type:\"object\",shape:e,catchall:dl()},Xa(t)))}var Dl=Ba(\"ZodUnion\",function(e,t){ds.init(e,t),Bc.init(e,t),e.options=t.options});function yl(e,t){return new Dl(S({type:\"union\",options:e},Xa(t)))}var gl=Ba(\"ZodDiscriminatedUnion\",function(e,t){Dl.init(e,t),fs.init(e,t)});var Fl=Ba(\"ZodIntersection\",function(e,t){ps.init(e,t),Bc.init(e,t)});var El=Ba(\"ZodRecord\",function(e,t){ms.init(e,t),Bc.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function bl(e,t,n){return new El(S({type:\"record\",keyType:e,valueType:t},Xa(n)))}var Al=Ba(\"ZodEnum\",function(e,t){Ds.init(e,t),Bc.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);var n=new Set(Object.keys(t.entries));e.extract=function(e,r){var u,a={},i=E(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error(\"Key \".concat(o,\" not found in enum\"));a[o]=t.entries[o]}}catch(e){i.e(e)}finally{i.f()}return new Al(S(S(S({},t),{},{checks:[]},Xa(r)),{},{entries:a}))},e.exclude=function(e,r){var u,a=S({},t.entries),i=E(e);try{for(i.s();!(u=i.n()).done;){var o=u.value;if(!n.has(o))throw new Error(\"Key \".concat(o,\" not found in enum\"));delete a[o]}}catch(e){i.e(e)}finally{i.f()}return new Al(S(S(S({},t),{},{checks:[]},Xa(r)),{},{entries:a}))}});function Cl(e,t){var n=Array.isArray(e)?Object.fromEntries(e.map(function(e){return[e,e]})):e;return new Al(S({type:\"enum\",entries:n},Xa(t)))}var kl=Ba(\"ZodLiteral\",function(e,t){ys.init(e,t),Bc.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,\"value\",{get:function(){if(t.values.length>1)throw new Error(\"This schema contains multiple valid literal values. Use `.values` instead.\");return t.values[0]}})});function wl(e,t){return new kl(S({type:\"literal\",values:Array.isArray(e)?e:[e]},Xa(t)))}var _l=Ba(\"ZodTransform\",function(e,t){gs.init(e,t),Bc.init(e,t),e._zod.parse=function(n,r){if(\"backward\"===r.direction)throw new Oa(e.constructor.name);n.addIssue=function(r){if(\"string\"==typeof r)n.issues.push(oi(r,n.value,t));else{var u,a,i,o=r;o.fatal&&(o.continue=!1),null!==(u=o.code)&&void 0!==u||(o.code=\"custom\"),null!==(a=o.input)&&void 0!==a||(o.input=n.value),null!==(i=o.inst)&&void 0!==i||(o.inst=e),n.issues.push(oi(o))}};var u=t.transform(n.value,n);return u instanceof Promise?u.then(function(e){return n.value=e,n}):(n.value=u,n)}});var Sl=Ba(\"ZodOptional\",function(e,t){Es.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function xl(e){return new Sl({type:\"optional\",innerType:e})}var Bl=Ba(\"ZodNullable\",function(e,t){bs.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});function Il(e){return new Bl({type:\"nullable\",innerType:e})}var Ol=Ba(\"ZodDefault\",function(e,t){As.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeDefault=e.unwrap});var Tl=Ba(\"ZodPrefault\",function(e,t){ks.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});var Pl=Ba(\"ZodNonOptional\",function(e,t){ws.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});var jl=Ba(\"ZodCatch\",function(e,t){Ss.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType},e.removeCatch=e.unwrap});var Nl=Ba(\"ZodPipe\",function(e,t){xs.init(e,t),Bc.init(e,t),e.in=t.in,e.out=t.out});function zl(e,t){return new Nl({type:\"pipe\",in:e,out:t})}var Rl=Ba(\"ZodReadonly\",function(e,t){Is.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.innerType}});var Ml=Ba(\"ZodLazy\",function(e,t){Ts.init(e,t),Bc.init(e,t),e.unwrap=function(){return e._zod.def.getter()}});var Zl,Ll,$l=Ba(\"ZodCustom\",function(e,t){Ps.init(e,t),Bc.init(e,t)});function ql(e,t){return function(e,t,n){var r,u=Xa(n);return null!==(r=u.abort)&&void 0!==r||(u.abort=!0),new e(S({type:\"custom\",check:\"custom\",fn:t},u))}($l,null!=e?e:function(){return!0},t)}function Ul(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{error:\"Input not instance of \".concat(e.name)},n=new $l(S({type:\"custom\",check:\"custom\",fn:function(t){return t instanceof e},abort:!0},Xa(t)));return n._zod.bag.Class=e,n}!function(e){e.assertEqual=function(e){},e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=function(e){var t,n={},r=E(e);try{for(r.s();!(t=r.n()).done;){var u=t.value;n[u]=u}}catch(e){r.e(e)}finally{r.f()}return n},e.getValidEnumValues=function(t){var n,r=e.objectKeys(t).filter(function(e){return\"number\"!=typeof t[t[e]]}),u={},a=E(r);try{for(a.s();!(n=a.n()).done;){var i=n.value;u[i]=t[i]}}catch(e){a.e(e)}finally{a.f()}return e.objectValues(u)},e.objectValues=function(t){return e.objectKeys(t).map(function(e){return t[e]})},e.objectKeys=\"function\"==typeof Object.keys?function(e){return Object.keys(e)}:function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=function(e,t){var n,r=E(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if(t(u))return u}}catch(e){r.e(e)}finally{r.f()}},e.isInteger=\"function\"==typeof Number.isInteger?function(e){return Number.isInteger(e)}:function(e){return\"number\"==typeof e&&Number.isFinite(e)&&Math.floor(e)===e},e.joinValues=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\" | \";return e.map(function(e){return\"string\"==typeof e?\"'\".concat(e,\"'\"):e}).join(t)},e.jsonStringifyReplacer=function(e,t){return\"bigint\"==typeof t?t.toString():t}}(Zl||(Zl={})),function(e){e.mergeShapes=function(e,t){return S(S({},e),t)}}(Ll||(Ll={}));var Vl=Zl.arrayToEnum([\"string\",\"nan\",\"number\",\"integer\",\"float\",\"boolean\",\"date\",\"bigint\",\"symbol\",\"function\",\"undefined\",\"null\",\"array\",\"object\",\"unknown\",\"promise\",\"void\",\"never\",\"map\",\"set\"]),Hl=function(e){switch(N(e)){case\"undefined\":return Vl.undefined;case\"string\":return Vl.string;case\"number\":return Number.isNaN(e)?Vl.nan:Vl.number;case\"boolean\":return Vl.boolean;case\"function\":return Vl.function;case\"bigint\":return Vl.bigint;case\"symbol\":return Vl.symbol;case\"object\":return Array.isArray(e)?Vl.array:null===e?Vl.null:e.then&&\"function\"==typeof e.then&&e.catch&&\"function\"==typeof e.catch?Vl.promise:\"undefined\"!=typeof Map&&e instanceof Map?Vl.map:\"undefined\"!=typeof Set&&e instanceof Set?Vl.set:\"undefined\"!=typeof Date&&e instanceof Date?Vl.date:Vl.object;default:return Vl.unknown}},Kl=Zl.arrayToEnum([\"invalid_type\",\"invalid_literal\",\"custom\",\"invalid_union\",\"invalid_union_discriminator\",\"invalid_enum_value\",\"unrecognized_keys\",\"invalid_arguments\",\"invalid_return_type\",\"invalid_date\",\"invalid_string\",\"too_small\",\"too_big\",\"invalid_intersection_types\",\"not_multiple_of\",\"not_finite\"]),Wl=function(){function e(t){var n;D(this,e),(n=m(this,e)).issues=[],n.addIssue=function(e){n.issues=[].concat(P(n.issues),[e])},n.addIssues=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];n.issues=[].concat(P(n.issues),P(e))};var r=(this instanceof e?this.constructor:void 0).prototype;return Object.setPrototypeOf?Object.setPrototypeOf(n,r):n.__proto__=r,n.name=\"ZodError\",n.issues=t,n}return k(e,R(Error)),F(e,[{key:\"errors\",get:function(){return this.issues}},{key:\"format\",value:function(e){var t=e||function(e){return e.message},n={_errors:[]},r=function(e){var u,a=E(e.issues);try{for(a.s();!(u=a.n()).done;){var i=u.value;if(\"invalid_union\"===i.code)i.unionErrors.map(r);else if(\"invalid_return_type\"===i.code)r(i.returnTypeError);else if(\"invalid_arguments\"===i.code)r(i.argumentsError);else if(0===i.path.length)n._errors.push(t(i));else for(var o=n,s=0;s0&&void 0!==arguments[0]?arguments[0]:function(e){return e.message},n=Object.create(null),r=[],u=E(this.issues);try{for(u.s();!(e=u.n()).done;){var a=e.value;if(a.path.length>0){var i=a.path[0];n[i]=n[i]||[],n[i].push(t(a))}else r.push(t(a))}}catch(e){u.e(e)}finally{u.f()}return{formErrors:r,fieldErrors:n}}},{key:\"formErrors\",get:function(){return this.flatten()}}],[{key:\"assert\",value:function(t){if(!(t instanceof e))throw new Error(\"Not a ZodError: \".concat(t))}}])}();Wl.create=function(e){return new Wl(e)};var Jl=function(e,t){var n;switch(e.code){case Kl.invalid_type:n=e.received===Vl.undefined?\"Required\":\"Expected \".concat(e.expected,\", received \").concat(e.received);break;case Kl.invalid_literal:n=\"Invalid literal value, expected \".concat(JSON.stringify(e.expected,Zl.jsonStringifyReplacer));break;case Kl.unrecognized_keys:n=\"Unrecognized key(s) in object: \".concat(Zl.joinValues(e.keys,\", \"));break;case Kl.invalid_union:n=\"Invalid input\";break;case Kl.invalid_union_discriminator:n=\"Invalid discriminator value. Expected \".concat(Zl.joinValues(e.options));break;case Kl.invalid_enum_value:n=\"Invalid enum value. Expected \".concat(Zl.joinValues(e.options),\", received '\").concat(e.received,\"'\");break;case Kl.invalid_arguments:n=\"Invalid function arguments\";break;case Kl.invalid_return_type:n=\"Invalid function return type\";break;case Kl.invalid_date:n=\"Invalid date\";break;case Kl.invalid_string:\"object\"===N(e.validation)?\"includes\"in e.validation?(n='Invalid input: must include \"'.concat(e.validation.includes,'\"'),\"number\"==typeof e.validation.position&&(n=\"\".concat(n,\" at one or more positions greater than or equal to \").concat(e.validation.position))):\"startsWith\"in e.validation?n='Invalid input: must start with \"'.concat(e.validation.startsWith,'\"'):\"endsWith\"in e.validation?n='Invalid input: must end with \"'.concat(e.validation.endsWith,'\"'):Zl.assertNever(e.validation):n=\"regex\"!==e.validation?\"Invalid \".concat(e.validation):\"Invalid\";break;case Kl.too_small:n=\"array\"===e.type?\"Array must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at least\":\"more than\",\" \").concat(e.minimum,\" element(s)\"):\"string\"===e.type?\"String must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at least\":\"over\",\" \").concat(e.minimum,\" character(s)\"):\"number\"===e.type||\"bigint\"===e.type?\"Number must be \".concat(e.exact?\"exactly equal to \":e.inclusive?\"greater than or equal to \":\"greater than \").concat(e.minimum):\"date\"===e.type?\"Date must be \".concat(e.exact?\"exactly equal to \":e.inclusive?\"greater than or equal to \":\"greater than \").concat(new Date(Number(e.minimum))):\"Invalid input\";break;case Kl.too_big:n=\"array\"===e.type?\"Array must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at most\":\"less than\",\" \").concat(e.maximum,\" element(s)\"):\"string\"===e.type?\"String must contain \".concat(e.exact?\"exactly\":e.inclusive?\"at most\":\"under\",\" \").concat(e.maximum,\" character(s)\"):\"number\"===e.type?\"Number must be \".concat(e.exact?\"exactly\":e.inclusive?\"less than or equal to\":\"less than\",\" \").concat(e.maximum):\"bigint\"===e.type?\"BigInt must be \".concat(e.exact?\"exactly\":e.inclusive?\"less than or equal to\":\"less than\",\" \").concat(e.maximum):\"date\"===e.type?\"Date must be \".concat(e.exact?\"exactly\":e.inclusive?\"smaller than or equal to\":\"smaller than\",\" \").concat(new Date(Number(e.maximum))):\"Invalid input\";break;case Kl.custom:n=\"Invalid input\";break;case Kl.invalid_intersection_types:n=\"Intersection results could not be merged\";break;case Kl.not_multiple_of:n=\"Number must be a multiple of \".concat(e.multipleOf);break;case Kl.not_finite:n=\"Number must be finite\";break;default:n=t.defaultError,Zl.assertNever(e)}return{message:n}},Ql=Jl;function Gl(){return Ql}var Yl=function(e){var t=e.data,n=e.path,r=e.errorMaps,u=e.issueData,a=[].concat(P(n),P(u.path||[])),i=S(S({},u),{},{path:a});if(void 0!==u.message)return S(S({},u),{},{path:a,message:u.message});var o,s=\"\",c=r.filter(function(e){return!!e}).slice().reverse(),l=E(c);try{for(l.s();!(o=l.n()).done;){s=(0,o.value)(i,{data:t,defaultError:s}).message}}catch(e){l.e(e)}finally{l.f()}return S(S({},u),{},{path:a,message:s})};function Xl(e,t){var n=Gl(),r=Yl({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===Jl?void 0:Jl].filter(function(e){return!!e})});e.common.issues.push(r)}var ed,td=function(){function e(){D(this,e),this.value=\"valid\"}return F(e,[{key:\"dirty\",value:function(){\"valid\"===this.value&&(this.value=\"dirty\")}},{key:\"abort\",value:function(){\"aborted\"!==this.value&&(this.value=\"aborted\")}}],[{key:\"mergeArray\",value:function(e,t){var n,r=[],u=E(t);try{for(u.s();!(n=u.n()).done;){var a=n.value;if(\"aborted\"===a.status)return nd;\"dirty\"===a.status&&e.dirty(),r.push(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}},{key:\"mergeObjectAsync\",value:(t=v(B().m(function t(n,r){var u,a,i,o,s,c,l;return B().w(function(t){for(;;)switch(t.p=t.n){case 0:u=[],a=E(r),t.p=1,a.s();case 2:if((i=a.n()).done){t.n=6;break}return o=i.value,t.n=3,o.key;case 3:return s=t.v,t.n=4,o.value;case 4:c=t.v,u.push({key:s,value:c});case 5:t.n=2;break;case 6:t.n=8;break;case 7:t.p=7,l=t.v,a.e(l);case 8:return t.p=8,a.f(),t.f(8);case 9:return t.a(2,e.mergeObjectSync(n,u))}},t,null,[[1,7,8,9]])})),function(e,n){return t.apply(this,arguments)})},{key:\"mergeObjectSync\",value:function(e,t){var n,r={},u=E(t);try{for(u.s();!(n=u.n()).done;){var a=n.value,i=a.key,o=a.value;if(\"aborted\"===i.status)return nd;if(\"aborted\"===o.status)return nd;\"dirty\"===i.status&&e.dirty(),\"dirty\"===o.status&&e.dirty(),\"__proto__\"===i.value||void 0===o.value&&!a.alwaysSet||(r[i.value]=o.value)}}catch(e){u.e(e)}finally{u.f()}return{status:e.value,value:r}}}]);var t}(),nd=Object.freeze({status:\"aborted\"}),rd=function(e){return{status:\"dirty\",value:e}},ud=function(e){return{status:\"valid\",value:e}},ad=function(e){return\"aborted\"===e.status},id=function(e){return\"dirty\"===e.status},od=function(e){return\"valid\"===e.status},sd=function(e){return\"undefined\"!=typeof Promise&&e instanceof Promise};!function(e){e.errToObj=function(e){return\"string\"==typeof e?{message:e}:e||{}},e.toString=function(e){return\"string\"==typeof e?e:null==e?void 0:e.message}}(ed||(ed={}));var cd=function(){return F(function e(t,n,r,u){D(this,e),this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=u},[{key:\"path\",get:function(){var e,t;this._cachedPath.length||(Array.isArray(this._key)?(e=this._cachedPath).push.apply(e,P(this._path).concat(P(this._key))):(t=this._cachedPath).push.apply(t,P(this._path).concat([this._key])));return this._cachedPath}}])}(),ld=function(e,t){if(od(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error(\"Validation failed but no issues detected.\");return{success:!1,get error(){if(this._error)return this._error;var t=new Wl(e.common.issues);return this._error=t,this._error}}};function dd(e){if(!e)return{};var t=e.errorMap,n=e.invalid_type_error,r=e.required_error,u=e.description;if(t&&(n||r))throw new Error('Can\\'t use \"invalid_type_error\" or \"required_error\" in conjunction with custom error map.');if(t)return{errorMap:t,description:u};return{errorMap:function(t,u){var a,i,o=e.message;return\"invalid_enum_value\"===t.code?{message:null!=o?o:u.defaultError}:void 0===u.data?{message:null!==(i=null!=o?o:r)&&void 0!==i?i:u.defaultError}:\"invalid_type\"!==t.code?{message:u.defaultError}:{message:null!==(a=null!=o?o:n)&&void 0!==a?a:u.defaultError}},description:u}}var fd,pd=function(){return F(function e(t){var n=this;D(this,e),this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this[\"~standard\"]={version:1,vendor:\"zod\",validate:function(e){return n[\"~validate\"](e)}}},[{key:\"description\",get:function(){return this._def.description}},{key:\"_getType\",value:function(e){return Hl(e.data)}},{key:\"_getOrReturnCtx\",value:function(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Hl(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}},{key:\"_processInputParams\",value:function(e){return{status:new td,ctx:{common:e.parent.common,data:e.data,parsedType:Hl(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}},{key:\"_parseSync\",value:function(e){var t=this._parse(e);if(sd(t))throw new Error(\"Synchronous parse encountered promise.\");return t}},{key:\"_parseAsync\",value:function(e){var t=this._parse(e);return Promise.resolve(t)}},{key:\"parse\",value:function(e,t){var n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}},{key:\"safeParse\",value:function(e,t){var n,r={common:{issues:[],async:null!==(n=null==t?void 0:t.async)&&void 0!==n&&n,contextualErrorMap:null==t?void 0:t.errorMap},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Hl(e)},u=this._parseSync({data:e,path:r.path,parent:r});return ld(r,u)}},{key:\"~validate\",value:function(e){var t={common:{issues:[],async:!!this[\"~standard\"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Hl(e)};if(!this[\"~standard\"].async)try{var n=this._parseSync({data:e,path:[],parent:t});return od(n)?{value:n.value}:{issues:t.common.issues}}catch(e){var r;null!=e&&null!==(r=e.message)&&void 0!==r&&null!==(r=r.toLowerCase())&&void 0!==r&&r.includes(\"encountered\")&&(this[\"~standard\"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(function(e){return od(e)?{value:e.value}:{issues:t.common.issues}})}},{key:\"parseAsync\",value:(e=v(B().m(function e(t,n){var r;return B().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,this.safeParseAsync(t,n);case 1:if(!(r=e.v).success){e.n=2;break}return e.a(2,r.data);case 2:throw r.error;case 3:return e.a(2)}},e,this)})),function(t,n){return e.apply(this,arguments)})},{key:\"safeParseAsync\",value:function(){var e=v(B().m(function e(t,n){var r,u,a;return B().w(function(e){for(;;)switch(e.n){case 0:return r={common:{issues:[],contextualErrorMap:null==n?void 0:n.errorMap,async:!0},path:(null==n?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Hl(t)},u=this._parse({data:t,path:r.path,parent:r}),e.n=1,sd(u)?u:Promise.resolve(u);case 1:return a=e.v,e.a(2,ld(r,a))}},e,this)}));return function(t,n){return e.apply(this,arguments)}}()},{key:\"refine\",value:function(e,t){return this._refinement(function(n,r){var u=e(n),a=function(){return r.addIssue(S({code:Kl.custom},function(e){return\"string\"==typeof t||void 0===t?{message:t}:\"function\"==typeof t?t(e):t}(n)))};return\"undefined\"!=typeof Promise&&u instanceof Promise?u.then(function(e){return!!e||(a(),!1)}):!!u||(a(),!1)})}},{key:\"refinement\",value:function(e,t){return this._refinement(function(n,r){return!!e(n)||(r.addIssue(\"function\"==typeof t?t(n,r):t),!1)})}},{key:\"_refinement\",value:function(e){return new vf({schema:this,typeName:Ef.ZodEffects,effect:{type:\"refinement\",refinement:e}})}},{key:\"superRefine\",value:function(e){return this._refinement(e)}},{key:\"optional\",value:function(){return mf.create(this,this._def)}},{key:\"nullable\",value:function(){return Df.create(this,this._def)}},{key:\"nullish\",value:function(){return this.nullable().optional()}},{key:\"array\",value:function(){return Jd.create(this)}},{key:\"promise\",value:function(){return hf.create(this,this._def)}},{key:\"or\",value:function(e){return Yd.create([this,e],this._def)}},{key:\"and\",value:function(e){return nf.create(this,e,this._def)}},{key:\"transform\",value:function(e){return new vf(S(S({},dd(this._def)),{},{schema:this,typeName:Ef.ZodEffects,effect:{type:\"transform\",transform:e}}))}},{key:\"default\",value:function(e){var t=\"function\"==typeof e?e:function(){return e};return new yf(S(S({},dd(this._def)),{},{innerType:this,defaultValue:t,typeName:Ef.ZodDefault}))}},{key:\"brand\",value:function(){return new bf(S({typeName:Ef.ZodBranded,type:this},dd(this._def)))}},{key:\"catch\",value:function(e){var t=\"function\"==typeof e?e:function(){return e};return new gf(S(S({},dd(this._def)),{},{innerType:this,catchValue:t,typeName:Ef.ZodCatch}))}},{key:\"describe\",value:function(e){return new(0,this.constructor)(S(S({},this._def),{},{description:e}))}},{key:\"pipe\",value:function(e){return Af.create(this,e)}},{key:\"readonly\",value:function(){return Cf.create(this)}},{key:\"isOptional\",value:function(){return this.safeParse(void 0).success}},{key:\"isNullable\",value:function(){return this.safeParse(null).success}}]);var e}(),hd=/^c[^\\s-]{8,}$/i,vd=/^[0-9a-z]+$/,md=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Dd=/^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$/i,yd=/^[a-z0-9_-]{21}$/i,gd=/^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/,Fd=/^[-+]?P(?!$)(?:(?:[-+]?\\d+Y)|(?:[-+]?\\d+[.,]\\d+Y$))?(?:(?:[-+]?\\d+M)|(?:[-+]?\\d+[.,]\\d+M$))?(?:(?:[-+]?\\d+W)|(?:[-+]?\\d+[.,]\\d+W$))?(?:(?:[-+]?\\d+D)|(?:[-+]?\\d+[.,]\\d+D$))?(?:T(?=[\\d+-])(?:(?:[-+]?\\d+H)|(?:[-+]?\\d+[.,]\\d+H$))?(?:(?:[-+]?\\d+M)|(?:[-+]?\\d+[.,]\\d+M$))?(?:[-+]?\\d+(?:[.,]\\d+)?S)?)??$/,Ed=/^(?!\\.)(?!.*\\.\\.)([A-Z0-9_'+\\-\\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\\-]*\\.)+[A-Z]{2,}$/i,bd=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ad=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\/(3[0-2]|[12]?[0-9])$/,Cd=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,kd=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,wd=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,_d=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Sd=\"((\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\\\d|30)|(02)-(0[1-9]|1\\\\d|2[0-8])))\",xd=new RegExp(\"^\".concat(Sd,\"$\"));function Bd(e){var t=\"[0-5]\\\\d\";e.precision?t=\"\".concat(t,\"\\\\.\\\\d{\").concat(e.precision,\"}\"):null==e.precision&&(t=\"\".concat(t,\"(\\\\.\\\\d+)?\"));var n=e.precision?\"+\":\"?\";return\"([01]\\\\d|2[0-3]):[0-5]\\\\d(:\".concat(t,\")\").concat(n)}function Id(e){return new RegExp(\"^\".concat(Bd(e),\"$\"))}function Od(e){var t=\"\".concat(Sd,\"T\").concat(Bd(e)),n=[];return n.push(e.local?\"Z?\":\"Z\"),e.offset&&n.push(\"([+-]\\\\d{2}:?\\\\d{2})\"),t=\"\".concat(t,\"(\").concat(n.join(\"|\"),\")\"),new RegExp(\"^\".concat(t,\"$\"))}function Td(e,t){return!(\"v4\"!==t&&t||!bd.test(e))||!(\"v6\"!==t&&t||!Cd.test(e))}function Pd(e,t){if(!gd.test(e))return!1;try{var n=T(e.split(\".\"),1)[0];if(!n)return!1;var r=n.replace(/-/g,\"+\").replace(/_/g,\"/\").padEnd(n.length+(4-n.length%4)%4,\"=\"),u=JSON.parse(atob(r));return\"object\"===N(u)&&null!==u&&((!(\"typ\"in u)||\"JWT\"===(null==u?void 0:u.typ))&&(!!u.alg&&(!t||u.alg===t)))}catch(e){return!1}}function jd(e,t){return!(\"v4\"!==t&&t||!Ad.test(e))||!(\"v6\"!==t&&t||!kd.test(e))}var Nd=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==Vl.string){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.string,received:t.parsedType}),nd}var n,r=new td,u=void 0,a=E(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(\"min\"===i.kind)e.data.lengthi.value&&(Xl(u=this._getOrReturnCtx(e,u),{code:Kl.too_big,maximum:i.value,type:\"string\",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(\"length\"===i.kind){var o=e.data.length>i.value,s=e.data.lengtht)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:\"maxLength\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valuer?n:r;return Number.parseInt(e.toFixed(u).replace(\".\",\"\"))%Number.parseInt(t.toFixed(u).replace(\".\",\"\"))/Math.pow(10,u)}Nd.create=function(e){var t;return new Nd(S({checks:[],typeName:Ef.ZodString,coerce:null!==(t=null==e?void 0:e.coerce)&&void 0!==t&&t},dd(e)))};var Rd=function(){function e(){var t;return D(this,e),(t=m(this,e,arguments)).min=t.gte,t.max=t.lte,t.step=t.multipleOf,t}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==Vl.number){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.number,received:t.parsedType}),nd}var n,r=void 0,u=new td,a=E(this._def.checks);try{for(a.s();!(n=a.n()).done;){var i=n.value;if(\"int\"===i.kind)Zl.isInteger(e.data)||(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.invalid_type,expected:\"integer\",received:\"float\",message:i.message}),u.dirty());else if(\"min\"===i.kind){(i.inclusive?e.datai.value:e.data>=i.value)&&(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.too_big,maximum:i.value,type:\"number\",inclusive:i.inclusive,exact:!1,message:i.message}),u.dirty())}else\"multipleOf\"===i.kind?0!==zd(e.data,i.value)&&(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.not_multiple_of,multipleOf:i.value,message:i.message}),u.dirty()):\"finite\"===i.kind?Number.isFinite(e.data)||(Xl(r=this._getOrReturnCtx(e,r),{code:Kl.not_finite,message:i.message}),u.dirty()):Zl.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:u.value,value:e.data}}},{key:\"gte\",value:function(e,t){return this.setLimit(\"min\",e,!0,ed.toString(t))}},{key:\"gt\",value:function(e,t){return this.setLimit(\"min\",e,!1,ed.toString(t))}},{key:\"lte\",value:function(e,t){return this.setLimit(\"max\",e,!0,ed.toString(t))}},{key:\"lt\",value:function(e,t){return this.setLimit(\"max\",e,!1,ed.toString(t))}},{key:\"setLimit\",value:function(t,n,r,u){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[{kind:t,value:n,inclusive:r,message:ed.toString(u)}])}))}},{key:\"_addCheck\",value:function(t){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[t])}))}},{key:\"int\",value:function(e){return this._addCheck({kind:\"int\",message:ed.toString(e)})}},{key:\"positive\",value:function(e){return this._addCheck({kind:\"min\",value:0,inclusive:!1,message:ed.toString(e)})}},{key:\"negative\",value:function(e){return this._addCheck({kind:\"max\",value:0,inclusive:!1,message:ed.toString(e)})}},{key:\"nonpositive\",value:function(e){return this._addCheck({kind:\"max\",value:0,inclusive:!0,message:ed.toString(e)})}},{key:\"nonnegative\",value:function(e){return this._addCheck({kind:\"min\",value:0,inclusive:!0,message:ed.toString(e)})}},{key:\"multipleOf\",value:function(e,t){return this._addCheck({kind:\"multipleOf\",value:e,message:ed.toString(t)})}},{key:\"finite\",value:function(e){return this._addCheck({kind:\"finite\",message:ed.toString(e)})}},{key:\"safe\",value:function(e){return this._addCheck({kind:\"min\",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ed.toString(e)})._addCheck({kind:\"max\",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ed.toString(e)})}},{key:\"minValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"min\"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:\"maxValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valuen)&&(n=u.value):\"max\"===u.kind&&(null===t||u.valuea.value:e.data>=a.value)&&(Xl(n=this._getOrReturnCtx(e,n),{code:Kl.too_big,type:\"bigint\",maximum:a.value,inclusive:a.inclusive,message:a.message}),r.dirty())}else\"multipleOf\"===a.kind?e.data%a.value!==BigInt(0)&&(Xl(n=this._getOrReturnCtx(e,n),{code:Kl.not_multiple_of,multipleOf:a.value,message:a.message}),r.dirty()):Zl.assertNever(a)}}catch(e){u.e(e)}finally{u.f()}return{status:r.value,value:e.data}}},{key:\"_getInvalidInput\",value:function(e){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.bigint,received:t.parsedType}),nd}},{key:\"gte\",value:function(e,t){return this.setLimit(\"min\",e,!0,ed.toString(t))}},{key:\"gt\",value:function(e,t){return this.setLimit(\"min\",e,!1,ed.toString(t))}},{key:\"lte\",value:function(e,t){return this.setLimit(\"max\",e,!0,ed.toString(t))}},{key:\"lt\",value:function(e,t){return this.setLimit(\"max\",e,!1,ed.toString(t))}},{key:\"setLimit\",value:function(t,n,r,u){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[{kind:t,value:n,inclusive:r,message:ed.toString(u)}])}))}},{key:\"_addCheck\",value:function(t){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[t])}))}},{key:\"positive\",value:function(e){return this._addCheck({kind:\"min\",value:BigInt(0),inclusive:!1,message:ed.toString(e)})}},{key:\"negative\",value:function(e){return this._addCheck({kind:\"max\",value:BigInt(0),inclusive:!1,message:ed.toString(e)})}},{key:\"nonpositive\",value:function(e){return this._addCheck({kind:\"max\",value:BigInt(0),inclusive:!0,message:ed.toString(e)})}},{key:\"nonnegative\",value:function(e){return this._addCheck({kind:\"min\",value:BigInt(0),inclusive:!0,message:ed.toString(e)})}},{key:\"multipleOf\",value:function(e,t){return this._addCheck({kind:\"multipleOf\",value:e,message:ed.toString(t)})}},{key:\"minValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"min\"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return t}},{key:\"maxValue\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valuei.value&&(Xl(u=this._getOrReturnCtx(e,u),{code:Kl.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:\"date\"}),r.dirty()):Zl.assertNever(i)}}catch(e){a.e(e)}finally{a.f()}return{status:r.value,value:new Date(e.data.getTime())}}},{key:\"_addCheck\",value:function(t){return new e(S(S({},this._def),{},{checks:[].concat(P(this._def.checks),[t])}))}},{key:\"min\",value:function(e,t){return this._addCheck({kind:\"min\",value:e.getTime(),message:ed.toString(t)})}},{key:\"max\",value:function(e,t){return this._addCheck({kind:\"max\",value:e.getTime(),message:ed.toString(t)})}},{key:\"minDate\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"min\"===r.kind&&(null===t||r.value>t)&&(t=r.value)}}catch(e){n.e(e)}finally{n.f()}return null!=t?new Date(t):null}},{key:\"maxDate\",get:function(){var e,t=null,n=E(this._def.checks);try{for(n.s();!(e=n.n()).done;){var r=e.value;\"max\"===r.kind&&(null===t||r.valueu.exactLength.value,i=n.data.lengthu.maxLength.value&&(Xl(n,{code:Kl.too_big,maximum:u.maxLength.value,type:\"array\",inclusive:!0,exact:!1,message:u.maxLength.message}),r.dirty()),n.common.async)return Promise.all(P(n.data).map(function(e,t){return u.type._parseAsync(new cd(n,e,n.path,t))})).then(function(e){return td.mergeArray(r,e)});var o=P(n.data).map(function(e,t){return u.type._parseSync(new cd(n,e,n.path,t))});return td.mergeArray(r,o)}},{key:\"element\",get:function(){return this._def.type}},{key:\"min\",value:function(t,n){return new e(S(S({},this._def),{},{minLength:{value:t,message:ed.toString(n)}}))}},{key:\"max\",value:function(t,n){return new e(S(S({},this._def),{},{maxLength:{value:t,message:ed.toString(n)}}))}},{key:\"length\",value:function(t,n){return new e(S(S({},this._def),{},{exactLength:{value:t,message:ed.toString(n)}}))}},{key:\"nonempty\",value:function(e){return this.min(1,e)}}])}();function Qd(e){if(e instanceof Gd){var t={};for(var n in e.shape){var r=e.shape[n];t[n]=mf.create(Qd(r))}return new Gd(S(S({},e._def),{},{shape:function(){return t}}))}return e instanceof Jd?new Jd(S(S({},e._def),{},{type:Qd(e.element)})):e instanceof mf?mf.create(Qd(e.unwrap())):e instanceof Df?Df.create(Qd(e.unwrap())):e instanceof rf?rf.create(e.items.map(function(e){return Qd(e)})):e}Jd.create=function(e,t){return new Jd(S({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Ef.ZodArray},dd(t)))};var Gd=function(){function e(){var t;return D(this,e),(t=m(this,e,arguments))._cached=null,t.nonstrict=t.passthrough,t.augment=t.extend,t}return k(e,pd),F(e,[{key:\"_getCached\",value:function(){if(null!==this._cached)return this._cached;var e=this._def.shape(),t=Zl.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}},{key:\"_parse\",value:function(e){if(this._getType(e)!==Vl.object){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.object,received:t.parsedType}),nd}var n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._getCached(),i=a.shape,o=a.keys,s=[];if(!(this._def.catchall instanceof Kd&&\"strip\"===this._def.unknownKeys))for(var c in u.data)o.includes(c)||s.push(c);var l,d=[],f=E(o);try{for(f.s();!(l=f.n()).done;){var p=l.value,h=i[p],m=u.data[p];d.push({key:{status:\"valid\",value:p},value:h._parse(new cd(u,m,u.path,p)),alwaysSet:p in u.data})}}catch(e){f.e(e)}finally{f.f()}if(this._def.catchall instanceof Kd){var D=this._def.unknownKeys;if(\"passthrough\"===D){var y,g=E(s);try{for(g.s();!(y=g.n()).done;){var F=y.value;d.push({key:{status:\"valid\",value:F},value:{status:\"valid\",value:u.data[F]}})}}catch(e){g.e(e)}finally{g.f()}}else if(\"strict\"===D)s.length>0&&(Xl(u,{code:Kl.unrecognized_keys,keys:s}),r.dirty());else if(\"strip\"!==D)throw new Error(\"Internal ZodObject error: invalid unknownKeys value.\")}else{var b,A=this._def.catchall,C=E(s);try{for(C.s();!(b=C.n()).done;){var k=b.value,w=u.data[k];d.push({key:{status:\"valid\",value:k},value:A._parse(new cd(u,w,u.path,k)),alwaysSet:k in u.data})}}catch(e){C.e(e)}finally{C.f()}}return u.common.async?Promise.resolve().then(v(B().m(function e(){var t,n,r,u,a,i,o;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:t=[],n=E(d),e.p=1,n.s();case 2:if((r=n.n()).done){e.n=6;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:i=e.v,t.push({key:a,value:i,alwaysSet:u.alwaysSet});case 5:e.n=2;break;case 6:e.n=8;break;case 7:e.p=7,o=e.v,n.e(o);case 8:return e.p=8,n.f(),e.f(8);case 9:return e.a(2,t)}},e,null,[[1,7,8,9]])}))).then(function(e){return td.mergeObjectSync(r,e)}):td.mergeObjectSync(r,d)}},{key:\"shape\",get:function(){return this._def.shape()}},{key:\"strict\",value:function(t){var n=this;return ed.errToObj,new e(S(S({},this._def),{},{unknownKeys:\"strict\"},void 0!==t?{errorMap:function(e,r){var u,a,i,o,s=null!==(u=null===(a=(i=n._def).errorMap)||void 0===a?void 0:a.call(i,e,r).message)&&void 0!==u?u:r.defaultError;return\"unrecognized_keys\"===e.code?{message:null!==(o=ed.errToObj(t).message)&&void 0!==o?o:s}:{message:s}}}:{}))}},{key:\"strip\",value:function(){return new e(S(S({},this._def),{},{unknownKeys:\"strip\"}))}},{key:\"passthrough\",value:function(){return new e(S(S({},this._def),{},{unknownKeys:\"passthrough\"}))}},{key:\"extend\",value:function(t){var n=this;return new e(S(S({},this._def),{},{shape:function(){return S(S({},n._def.shape()),t)}}))}},{key:\"merge\",value:function(t){var n=this;return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:function(){return S(S({},n._def.shape()),t._def.shape())},typeName:Ef.ZodObject})}},{key:\"setKey\",value:function(e,t){return this.augment(b({},e,t))}},{key:\"catchall\",value:function(t){return new e(S(S({},this._def),{},{catchall:t}))}},{key:\"pick\",value:function(t){var n,r={},u=E(Zl.objectKeys(t));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]&&this.shape[a]&&(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"omit\",value:function(t){var n,r={},u=E(Zl.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;t[a]||(r[a]=this.shape[a])}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"deepPartial\",value:function(){return Qd(this)}},{key:\"partial\",value:function(t){var n,r={},u=E(Zl.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value,i=this.shape[a];t&&!t[a]?r[a]=i:r[a]=i.optional()}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"required\",value:function(t){var n,r={},u=E(Zl.objectKeys(this.shape));try{for(u.s();!(n=u.n()).done;){var a=n.value;if(t&&!t[a])r[a]=this.shape[a];else{for(var i=this.shape[a];i instanceof mf;)i=i._def.innerType;r[a]=i}}}catch(e){u.e(e)}finally{u.f()}return new e(S(S({},this._def),{},{shape:function(){return r}}))}},{key:\"keyof\",value:function(){return df(Zl.objectKeys(this.shape))}}])}();Gd.create=function(e,t){return new Gd(S({shape:function(){return e},unknownKeys:\"strip\",catchall:Kd.create(),typeName:Ef.ZodObject},dd(t)))},Gd.strictCreate=function(e,t){return new Gd(S({shape:function(){return e},unknownKeys:\"strict\",catchall:Kd.create(),typeName:Ef.ZodObject},dd(t)))},Gd.lazycreate=function(e,t){return new Gd(S({shape:e,unknownKeys:\"strip\",catchall:Kd.create(),typeName:Ef.ZodObject},dd(t)))};var Yd=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx,n=this._def.options;if(t.common.async)return Promise.all(n.map(function(){var e=v(B().m(function e(n){var r,u,a;return B().w(function(e){for(;;)switch(e.n){case 0:return r=S(S({},t),{},{common:S(S({},t.common),{},{issues:[]}),parent:null}),e.n=1,n._parseAsync({data:t.data,path:t.path,parent:r});case 1:return u=e.v,a=r,e.a(2,{result:u,ctx:a})}},e)}));return function(t){return e.apply(this,arguments)}}())).then(function(e){var n,r=E(e);try{for(r.s();!(n=r.n()).done;){var u=n.value;if(\"valid\"===u.result.status)return u.result}}catch(e){r.e(e)}finally{r.f()}var a,i=E(e);try{for(i.s();!(a=i.n()).done;){var o,s=a.value;if(\"dirty\"===s.result.status)return(o=t.common.issues).push.apply(o,P(s.ctx.common.issues)),s.result}}catch(e){i.e(e)}finally{i.f()}var c=e.map(function(e){return new Wl(e.ctx.common.issues)});return Xl(t,{code:Kl.invalid_union,unionErrors:c}),nd});var r,u,a=void 0,i=[],o=E(n);try{for(o.s();!(r=o.n()).done;){var s=r.value,c=S(S({},t),{},{common:S(S({},t.common),{},{issues:[]}),parent:null}),l=s._parseSync({data:t.data,path:t.path,parent:c});if(\"valid\"===l.status)return l;\"dirty\"!==l.status||a||(a={result:l,ctx:c}),c.common.issues.length&&i.push(c.common.issues)}}catch(e){o.e(e)}finally{o.f()}if(a)return(u=t.common.issues).push.apply(u,P(a.ctx.common.issues)),a.result;var d=i.map(function(e){return new Wl(e)});return Xl(t,{code:Kl.invalid_union,unionErrors:d}),nd}},{key:\"options\",get:function(){return this._def.options}}])}();Yd.create=function(e,t){return new Yd(S({options:e,typeName:Ef.ZodUnion},dd(t)))};var Xd=function(e){return e instanceof cf?Xd(e.schema):e instanceof vf?Xd(e.innerType()):e instanceof lf?[e.value]:e instanceof ff?e.options:e instanceof pf?Zl.objectValues(e.enum):e instanceof yf?Xd(e._def.innerType):e instanceof qd?[void 0]:e instanceof Ud?[null]:e instanceof mf?[void 0].concat(P(Xd(e.unwrap()))):e instanceof Df?[null].concat(P(Xd(e.unwrap()))):e instanceof bf||e instanceof Cf?Xd(e.unwrap()):e instanceof gf?Xd(e._def.innerType):[]},ef=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==Vl.object)return Xl(t,{code:Kl.invalid_type,expected:Vl.object,received:t.parsedType}),nd;var n=this.discriminator,r=t.data[n],u=this.optionsMap.get(r);return u?t.common.async?u._parseAsync({data:t.data,path:t.path,parent:t}):u._parseSync({data:t.data,path:t.path,parent:t}):(Xl(t,{code:Kl.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),nd)}},{key:\"discriminator\",get:function(){return this._def.discriminator}},{key:\"options\",get:function(){return this._def.options}},{key:\"optionsMap\",get:function(){return this._def.optionsMap}}],[{key:\"create\",value:function(t,n,r){var u,a=new Map,i=E(n);try{for(i.s();!(u=i.n()).done;){var o=u.value,s=Xd(o.shape[t]);if(!s.length)throw new Error(\"A discriminator value for key `\".concat(t,\"` could not be extracted from all schema options\"));var c,l=E(s);try{for(l.s();!(c=l.n()).done;){var d=c.value;if(a.has(d))throw new Error(\"Discriminator property \".concat(String(t),\" has duplicate value \").concat(String(d)));a.set(d,o)}}catch(e){l.e(e)}finally{l.f()}}}catch(e){i.e(e)}finally{i.f()}return new e(S({typeName:Ef.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:a},dd(r)))}}])}();function tf(e,t){var n=Hl(e),r=Hl(t);if(e===t)return{valid:!0,data:e};if(n===Vl.object&&r===Vl.object){var u,a=Zl.objectKeys(t),i=Zl.objectKeys(e).filter(function(e){return-1!==a.indexOf(e)}),o=S(S({},e),t),s=E(i);try{for(s.s();!(u=s.n()).done;){var c=u.value,l=tf(e[c],t[c]);if(!l.valid)return{valid:!1};o[c]=l.data}}catch(e){s.e(e)}finally{s.f()}return{valid:!0,data:o}}if(n===Vl.array&&r===Vl.array){if(e.length!==t.length)return{valid:!1};for(var d=[],f=0;fthis._def.items.length&&(Xl(u,{code:Kl.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:\"array\"}),r.dirty());var a=P(u.data).map(function(e,n){var r=t._def.items[n]||t._def.rest;return r?r._parse(new cd(u,e,u.path,n)):null}).filter(function(e){return!!e});return u.common.async?Promise.all(a).then(function(e){return td.mergeArray(r,e)}):td.mergeArray(r,a)}},{key:\"items\",get:function(){return this._def.items}},{key:\"rest\",value:function(t){return new e(S(S({},this._def),{},{rest:t}))}}])}();rf.create=function(e,t){if(!Array.isArray(e))throw new Error(\"You must pass an array of schemas to z.tuple([ ... ])\");return new rf(S({items:e,typeName:Ef.ZodTuple,rest:null},dd(t)))};var uf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"keySchema\",get:function(){return this._def.keyType}},{key:\"valueSchema\",get:function(){return this._def.valueType}},{key:\"_parse\",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==Vl.object)return Xl(r,{code:Kl.invalid_type,expected:Vl.object,received:r.parsedType}),nd;var u=[],a=this._def.keyType,i=this._def.valueType;for(var o in r.data)u.push({key:a._parse(new cd(r,o,r.path,o)),value:i._parse(new cd(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?td.mergeObjectAsync(n,u):td.mergeObjectSync(n,u)}},{key:\"element\",get:function(){return this._def.valueType}}],[{key:\"create\",value:function(t,n,r){return new e(n instanceof pd?S({keyType:t,valueType:n,typeName:Ef.ZodRecord},dd(r)):S({keyType:Nd.create(),valueType:t,typeName:Ef.ZodRecord},dd(n)))}}])}(),af=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"keySchema\",get:function(){return this._def.keyType}},{key:\"valueSchema\",get:function(){return this._def.valueType}},{key:\"_parse\",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==Vl.map)return Xl(r,{code:Kl.invalid_type,expected:Vl.map,received:r.parsedType}),nd;var u=this._def.keyType,a=this._def.valueType,i=P(r.data.entries()).map(function(e,t){var n=T(e,2),i=n[0],o=n[1];return{key:u._parse(new cd(r,i,r.path,[t,\"key\"])),value:a._parse(new cd(r,o,r.path,[t,\"value\"]))}});if(r.common.async){var o=new Map;return Promise.resolve().then(v(B().m(function e(){var t,r,u,a,s,c;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:t=E(i),e.p=1,t.s();case 2:if((r=t.n()).done){e.n=7;break}return u=r.value,e.n=3,u.key;case 3:return a=e.v,e.n=4,u.value;case 4:if(s=e.v,\"aborted\"!==a.status&&\"aborted\"!==s.status){e.n=5;break}return e.a(2,nd);case 5:\"dirty\"!==a.status&&\"dirty\"!==s.status||n.dirty(),o.set(a.value,s.value);case 6:e.n=2;break;case 7:e.n=9;break;case 8:e.p=8,c=e.v,t.e(c);case 9:return e.p=9,t.f(),e.f(9);case 10:return e.a(2,{status:n.value,value:o})}},e,null,[[1,8,9,10]])})))}var s,c=new Map,l=E(i);try{for(l.s();!(s=l.n()).done;){var d=s.value,f=d.key,p=d.value;if(\"aborted\"===f.status||\"aborted\"===p.status)return nd;\"dirty\"!==f.status&&\"dirty\"!==p.status||n.dirty(),c.set(f.value,p.value)}}catch(e){l.e(e)}finally{l.f()}return{status:n.value,value:c}}}])}();af.create=function(e,t,n){return new af(S({valueType:t,keyType:e,typeName:Ef.ZodMap},dd(n)))};var of=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e),n=t.status,r=t.ctx;if(r.parsedType!==Vl.set)return Xl(r,{code:Kl.invalid_type,expected:Vl.set,received:r.parsedType}),nd;var u=this._def;null!==u.minSize&&r.data.sizeu.maxSize.value&&(Xl(r,{code:Kl.too_big,maximum:u.maxSize.value,type:\"set\",inclusive:!0,exact:!1,message:u.maxSize.message}),n.dirty());var a=this._def.valueType;function i(e){var t,r=new Set,u=E(e);try{for(u.s();!(t=u.n()).done;){var a=t.value;if(\"aborted\"===a.status)return nd;\"dirty\"===a.status&&n.dirty(),r.add(a.value)}}catch(e){u.e(e)}finally{u.f()}return{status:n.value,value:r}}var o=P(r.data.values()).map(function(e,t){return a._parse(new cd(r,e,r.path,t))});return r.common.async?Promise.all(o).then(function(e){return i(e)}):i(o)}},{key:\"min\",value:function(t,n){return new e(S(S({},this._def),{},{minSize:{value:t,message:ed.toString(n)}}))}},{key:\"max\",value:function(t,n){return new e(S(S({},this._def),{},{maxSize:{value:t,message:ed.toString(n)}}))}},{key:\"size\",value:function(e,t){return this.min(e,t).max(e,t)}},{key:\"nonempty\",value:function(e){return this.min(1,e)}}])}();of.create=function(e,t){return new of(S({valueType:e,minSize:null,maxSize:null,typeName:Ef.ZodSet},dd(t)))};var sf=function(){function e(){var t;return D(this,e),(t=m(this,e,arguments)).validate=t.implement,t}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx;if(t.parsedType!==Vl.function)return Xl(t,{code:Kl.invalid_type,expected:Vl.function,received:t.parsedType}),nd;function n(e,n){return Yl({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Gl(),Jl].filter(function(e){return!!e}),issueData:{code:Kl.invalid_arguments,argumentsError:n}})}function r(e,n){return Yl({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Gl(),Jl].filter(function(e){return!!e}),issueData:{code:Kl.invalid_return_type,returnTypeError:n}})}var u={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof hf){var i=this;return ud(v(B().m(function e(){var t,o,s,c,l,d,f,p=arguments;return B().w(function(e){for(;;)switch(e.n){case 0:for(t=p.length,o=new Array(t),s=0;s1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(t,S(S({},this._def),n))}},{key:\"exclude\",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return e.create(this.options.filter(function(e){return!t.includes(e)}),S(S({},this._def),n))}}])}();ff.create=df;var pf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=Zl.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==Vl.string&&n.parsedType!==Vl.number){var r=Zl.objectValues(t);return Xl(n,{expected:Zl.joinValues(r),received:n.parsedType,code:Kl.invalid_type}),nd}if(this._cache||(this._cache=new Set(Zl.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){var u=Zl.objectValues(t);return Xl(n,{received:n.data,code:Kl.invalid_enum_value,options:u}),nd}return ud(e.data)}},{key:\"enum\",get:function(){return this._def.values}}])}();pf.create=function(e,t){return new pf(S({values:e,typeName:Ef.ZodNativeEnum},dd(t)))};var hf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"unwrap\",value:function(){return this._def.type}},{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e).ctx;if(n.parsedType!==Vl.promise&&!1===n.common.async)return Xl(n,{code:Kl.invalid_type,expected:Vl.promise,received:n.parsedType}),nd;var r=n.parsedType===Vl.promise?n.data:Promise.resolve(n.data);return ud(r.then(function(e){return t._def.type.parseAsync(e,{path:n.path,errorMap:n.common.contextualErrorMap})}))}}])}();hf.create=function(e,t){return new hf(S({type:e,typeName:Ef.ZodPromise},dd(t)))};var vf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"innerType\",value:function(){return this._def.schema}},{key:\"sourceType\",value:function(){return this._def.schema._def.typeName===Ef.ZodEffects?this._def.schema.sourceType():this._def.schema}},{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx,a=this._def.effect||null,i={addIssue:function(e){Xl(u,e),e.fatal?r.abort():r.dirty()},get path(){return u.path}};if(i.addIssue=i.addIssue.bind(i),\"preprocess\"===a.type){var o=a.transform(u.data,i);if(u.common.async)return Promise.resolve(o).then(function(){var e=v(B().m(function e(n){var a;return B().w(function(e){for(;;)switch(e.n){case 0:if(\"aborted\"!==r.value){e.n=1;break}return e.a(2,nd);case 1:return e.n=2,t._def.schema._parseAsync({data:n,path:u.path,parent:u});case 2:if(\"aborted\"!==(a=e.v).status){e.n=3;break}return e.a(2,nd);case 3:if(\"dirty\"!==a.status){e.n=4;break}return e.a(2,rd(a.value));case 4:if(\"dirty\"!==r.value){e.n=5;break}return e.a(2,rd(a.value));case 5:return e.a(2,a)}},e)}));return function(t){return e.apply(this,arguments)}}());if(\"aborted\"===r.value)return nd;var s=this._def.schema._parseSync({data:o,path:u.path,parent:u});return\"aborted\"===s.status?nd:\"dirty\"===s.status||\"dirty\"===r.value?rd(s.value):s}if(\"refinement\"===a.type){var c=function(e){var t=a.refinement(e,i);if(u.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error(\"Async refinement encountered during synchronous parse operation. Use .parseAsync instead.\");return e};if(!1===u.common.async){var l=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});return\"aborted\"===l.status?nd:(\"dirty\"===l.status&&r.dirty(),c(l.value),{status:r.value,value:l.value})}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return\"aborted\"===e.status?nd:(\"dirty\"===e.status&&r.dirty(),c(e.value).then(function(){return{status:r.value,value:e.value}}))})}if(\"transform\"===a.type){if(!1===u.common.async){var d=this._def.schema._parseSync({data:u.data,path:u.path,parent:u});if(!od(d))return nd;var f=a.transform(d.value,i);if(f instanceof Promise)throw new Error(\"Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.\");return{status:r.value,value:f}}return this._def.schema._parseAsync({data:u.data,path:u.path,parent:u}).then(function(e){return od(e)?Promise.resolve(a.transform(e.value,i)).then(function(e){return{status:r.value,value:e}}):nd})}Zl.assertNever(a)}}])}();vf.create=function(e,t,n){return new vf(S({schema:e,typeName:Ef.ZodEffects,effect:t},dd(n)))},vf.createWithPreprocess=function(e,t,n){return new vf(S({schema:t,effect:{type:\"preprocess\",transform:e},typeName:Ef.ZodEffects},dd(n)))};var mf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){return this._getType(e)===Vl.undefined?ud(void 0):this._def.innerType._parse(e)}},{key:\"unwrap\",value:function(){return this._def.innerType}}])}();mf.create=function(e,t){return new mf(S({innerType:e,typeName:Ef.ZodOptional},dd(t)))};var Df=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){return this._getType(e)===Vl.null?ud(null):this._def.innerType._parse(e)}},{key:\"unwrap\",value:function(){return this._def.innerType}}])}();Df.create=function(e,t){return new Df(S({innerType:e,typeName:Ef.ZodNullable},dd(t)))};var yf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return t.parsedType===Vl.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}},{key:\"removeDefault\",value:function(){return this._def.innerType}}])}();yf.create=function(e,t){return new yf(S({innerType:e,typeName:Ef.ZodDefault,defaultValue:\"function\"==typeof t.default?t.default:function(){return t.default}},dd(t)))};var gf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e).ctx,r=S(S({},n),{},{common:S(S({},n.common),{},{issues:[]})}),u=this._def.innerType._parse({data:r.data,path:r.path,parent:S({},r)});return sd(u)?u.then(function(e){return{status:\"valid\",value:\"valid\"===e.status?e.value:t._def.catchValue({get error(){return new Wl(r.common.issues)},input:r.data})}}):{status:\"valid\",value:\"valid\"===u.status?u.value:this._def.catchValue({get error(){return new Wl(r.common.issues)},input:r.data})}}},{key:\"removeCatch\",value:function(){return this._def.innerType}}])}();gf.create=function(e,t){return new gf(S({innerType:e,typeName:Ef.ZodCatch,catchValue:\"function\"==typeof t.catch?t.catch:function(){return t.catch}},dd(t)))};var Ff=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){if(this._getType(e)!==Vl.nan){var t=this._getOrReturnCtx(e);return Xl(t,{code:Kl.invalid_type,expected:Vl.nan,received:t.parsedType}),nd}return{status:\"valid\",value:e.data}}}])}();Ff.create=function(e){return new Ff(S({typeName:Ef.ZodNaN},dd(e)))};var Ef,bf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._processInputParams(e).ctx,n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}},{key:\"unwrap\",value:function(){return this._def.type}}])}(),Af=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this,n=this._processInputParams(e),r=n.status,u=n.ctx;if(u.common.async){var a=function(){var e=v(B().m(function e(){var n;return B().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,t._def.in._parseAsync({data:u.data,path:u.path,parent:u});case 1:if(\"aborted\"!==(n=e.v).status){e.n=2;break}return e.a(2,nd);case 2:if(\"dirty\"!==n.status){e.n=3;break}return r.dirty(),e.a(2,rd(n.value));case 3:return e.a(2,t._def.out._parseAsync({data:n.value,path:u.path,parent:u}));case 4:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();return a()}var i=this._def.in._parseSync({data:u.data,path:u.path,parent:u});return\"aborted\"===i.status?nd:\"dirty\"===i.status?(r.dirty(),{status:\"dirty\",value:i.value}):this._def.out._parseSync({data:i.value,path:u.path,parent:u})}}],[{key:\"create\",value:function(t,n){return new e({in:t,out:n,typeName:Ef.ZodPipeline})}}])}(),Cf=function(){function e(){return D(this,e),m(this,e,arguments)}return k(e,pd),F(e,[{key:\"_parse\",value:function(e){var t=this._def.innerType._parse(e),n=function(e){return od(e)&&(e.value=Object.freeze(e.value)),e};return sd(t)?t.then(function(e){return n(e)}):n(t)}},{key:\"unwrap\",value:function(){return this._def.innerType}}])}();Cf.create=function(e,t){return new Cf(S({innerType:e,typeName:Ef.ZodReadonly},dd(t)))},Gd.lazycreate,function(e){e.ZodString=\"ZodString\",e.ZodNumber=\"ZodNumber\",e.ZodNaN=\"ZodNaN\",e.ZodBigInt=\"ZodBigInt\",e.ZodBoolean=\"ZodBoolean\",e.ZodDate=\"ZodDate\",e.ZodSymbol=\"ZodSymbol\",e.ZodUndefined=\"ZodUndefined\",e.ZodNull=\"ZodNull\",e.ZodAny=\"ZodAny\",e.ZodUnknown=\"ZodUnknown\",e.ZodNever=\"ZodNever\",e.ZodVoid=\"ZodVoid\",e.ZodArray=\"ZodArray\",e.ZodObject=\"ZodObject\",e.ZodUnion=\"ZodUnion\",e.ZodDiscriminatedUnion=\"ZodDiscriminatedUnion\",e.ZodIntersection=\"ZodIntersection\",e.ZodTuple=\"ZodTuple\",e.ZodRecord=\"ZodRecord\",e.ZodMap=\"ZodMap\",e.ZodSet=\"ZodSet\",e.ZodFunction=\"ZodFunction\",e.ZodLazy=\"ZodLazy\",e.ZodLiteral=\"ZodLiteral\",e.ZodEnum=\"ZodEnum\",e.ZodEffects=\"ZodEffects\",e.ZodNativeEnum=\"ZodNativeEnum\",e.ZodOptional=\"ZodOptional\",e.ZodNullable=\"ZodNullable\",e.ZodDefault=\"ZodDefault\",e.ZodCatch=\"ZodCatch\",e.ZodPromise=\"ZodPromise\",e.ZodBranded=\"ZodBranded\",e.ZodPipeline=\"ZodPipeline\",e.ZodReadonly=\"ZodReadonly\"}(Ef||(Ef={})),Nd.create,Rd.create,Ff.create,Md.create,Zd.create,Ld.create,$d.create,qd.create,Ud.create,Vd.create,Hd.create,Kd.create,Wd.create,Jd.create,Gd.create,Gd.strictCreate,Yd.create,ef.create,nf.create,rf.create,uf.create,af.create,of.create,sf.create,cf.create,lf.create,ff.create,pf.create,hf.create,vf.create,mf.create,Df.create,vf.createWithPreprocess,Af.create;var kf=({prefix:e,size:t=16,alphabet:n=\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\",separator:r=\"-\"}={})=>{const u=()=>{const e=n.length,r=new Array(t);for(let u=0;u`${e}${r}${u()}`},wf=kf();function _f(e=globalThis){var t,n,r;return e.window?\"runtime/browser\":(null==(t=e.navigator)?void 0:t.userAgent)?`runtime/${e.navigator.userAgent.toLowerCase()}`:(null==(r=null==(n=e.process)?void 0:n.versions)?void 0:r.node)?`runtime/node.js/${e.process.version.substring(0)}`:e.EdgeRuntime?\"runtime/vercel-edge\":\"runtime/unknown\"}function Sf(e){if(null==e)return{};const t={};if(e instanceof Headers)e.forEach((e,n)=>{t[n.toLowerCase()]=e});else{Array.isArray(e)||(e=Object.entries(e));for(const[n,r]of e)null!=r&&(t[n.toLowerCase()]=r)}return t}function xf(e,...t){const n=new Headers(Sf(e)),r=n.get(\"user-agent\")||\"\";return n.set(\"user-agent\",[r,...t].filter(Boolean).join(\" \")),Object.fromEntries(n.entries())}var Bf=/\"__proto__\"\\s*:/,If=/\"constructor\"\\s*:/;function Of(e){const t=JSON.parse(e);return null===t||\"object\"!=typeof t||!1===Bf.test(e)&&!1===If.test(e)?t:function(e){let t=[e];for(;t.length;){const e=t;t=[];for(const n of e){if(Object.prototype.hasOwnProperty.call(n,\"__proto__\"))throw new SyntaxError(\"Object contains forbidden prototype property\");if(Object.prototype.hasOwnProperty.call(n,\"constructor\")&&Object.prototype.hasOwnProperty.call(n.constructor,\"prototype\"))throw new SyntaxError(\"Object contains forbidden prototype property\");for(const e in n){const r=n[e];r&&\"object\"==typeof r&&t.push(r)}}}return e}(t)}var Tf=Symbol.for(\"vercel.ai.validator\");function Pf(e){return function(e){return\"object\"==typeof e&&null!==e&&Tf in e&&!0===e[Tf]&&\"validate\"in e}(e)?e:\"function\"==typeof e?e():(t=e,n=async e=>{const n=await t[\"~standard\"].validate(e);return null==n.issues?{success:!0,value:n.value}:{success:!1,error:new ka({value:e,cause:n.issues})}},{[Tf]:!0,validate:n});var t,n}async function jf({value:e,schema:t}){const n=await Nf({value:e,schema:t});if(!n.success)throw ka.wrap({value:e,cause:n.error});return n.value}async function Nf({value:e,schema:t}){const n=Pf(t);try{if(null==n.validate)return{success:!0,value:e,rawValue:e};const t=await n.validate(e);return t.success?{success:!0,value:t.value,rawValue:e}:{success:!1,error:ka.wrap({value:e,cause:t.error}),rawValue:e}}catch(t){return{success:!1,error:ka.wrap({value:e,cause:t}),rawValue:e}}}async function zf({text:e,schema:t}){try{const n=function(e){const{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(t){return Of(e)}try{return Of(e)}finally{Error.stackTraceLimit=t}}(e);return null==t?{success:!0,value:n,rawValue:n}:await Nf({value:n,schema:t})}catch(t){return{success:!1,error:Fa.isInstance(t)?t:new Fa({text:e,cause:t}),rawValue:void 0}}}async function Rf(e){return\"function\"==typeof e&&(e=e()),Promise.resolve(e)}var Mf=(e,t)=>{let n=0;for(;nqf(e,t,n))};switch(r){case\"string\":case\"format:date-time\":return{type:\"string\",format:\"date-time\"};case\"format:date\":return{type:\"string\",format:\"date\"};case\"integer\":return Uf(e)}}var Uf=e=>{const t={type:\"integer\",format:\"unix-time\"};for(const n of e.checks)switch(n.kind){case\"min\":t.minimum=n.value;break;case\"max\":t.maximum=n.value}return t};var Vf=void 0,Hf=/^[cC][^\\s-]{8,}$/,Kf=/^[0-9a-z]+$/,Wf=/^[0-9A-HJKMNP-TV-Z]{26}$/,Jf=/^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_'+\\-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$/,Qf=()=>(void 0===Vf&&(Vf=RegExp(\"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\",\"u\")),Vf),Gf=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\/(3[0-2]|[12]?[0-9])$/,Yf=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Xf=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ep=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,tp=/^[a-zA-Z0-9_-]{21}$/,np=/^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/;function rp(e,t){const n={type:\"string\"};if(e.checks)for(const r of e.checks)switch(r.kind){case\"min\":n.minLength=\"number\"==typeof n.minLength?Math.max(n.minLength,r.value):r.value;break;case\"max\":n.maxLength=\"number\"==typeof n.maxLength?Math.min(n.maxLength,r.value):r.value;break;case\"email\":switch(t.emailStrategy){case\"format:email\":ip(n,\"email\",r.message,t);break;case\"format:idn-email\":ip(n,\"idn-email\",r.message,t);break;case\"pattern:zod\":op(n,Jf,r.message,t)}break;case\"url\":ip(n,\"uri\",r.message,t);break;case\"uuid\":ip(n,\"uuid\",r.message,t);break;case\"regex\":op(n,r.regex,r.message,t);break;case\"cuid\":op(n,Hf,r.message,t);break;case\"cuid2\":op(n,Kf,r.message,t);break;case\"startsWith\":op(n,RegExp(`^${up(r.value,t)}`),r.message,t);break;case\"endsWith\":op(n,RegExp(`${up(r.value,t)}$`),r.message,t);break;case\"datetime\":ip(n,\"date-time\",r.message,t);break;case\"date\":ip(n,\"date\",r.message,t);break;case\"time\":ip(n,\"time\",r.message,t);break;case\"duration\":ip(n,\"duration\",r.message,t);break;case\"length\":n.minLength=\"number\"==typeof n.minLength?Math.max(n.minLength,r.value):r.value,n.maxLength=\"number\"==typeof n.maxLength?Math.min(n.maxLength,r.value):r.value;break;case\"includes\":op(n,RegExp(up(r.value,t)),r.message,t);break;case\"ip\":\"v6\"!==r.version&&ip(n,\"ipv4\",r.message,t),\"v4\"!==r.version&&ip(n,\"ipv6\",r.message,t);break;case\"base64url\":op(n,ep,r.message,t);break;case\"jwt\":op(n,np,r.message,t);break;case\"cidr\":\"v6\"!==r.version&&op(n,Gf,r.message,t),\"v4\"!==r.version&&op(n,Yf,r.message,t);break;case\"emoji\":op(n,Qf(),r.message,t);break;case\"ulid\":op(n,Wf,r.message,t);break;case\"base64\":switch(t.base64Strategy){case\"format:binary\":ip(n,\"binary\",r.message,t);break;case\"contentEncoding:base64\":n.contentEncoding=\"base64\";break;case\"pattern:zod\":op(n,Xf,r.message,t)}break;case\"nanoid\":op(n,tp,r.message,t)}return n}function up(e,t){return\"escape\"===t.patternStrategy?function(e){let t=\"\";for(let n=0;ne.format))?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format}),delete e.format),e.anyOf.push({format:t,...n&&r.errorMessages&&{errorMessage:{format:n}}})):e.format=t}function op(e,t,n,r){var u;e.pattern||(null==(u=e.allOf)?void 0:u.some(e=>e.pattern))?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern}),delete e.pattern),e.allOf.push({pattern:sp(t,r),...n&&r.errorMessages&&{errorMessage:{pattern:n}}})):e.pattern=sp(t,r)}function sp(e,t){var n;if(!t.applyRegexFlags||!e.flags)return e.source;const r=e.flags.includes(\"i\"),u=e.flags.includes(\"m\"),a=e.flags.includes(\"s\"),i=r?e.source.toLowerCase():e.source;let o=\"\",s=!1,c=!1,l=!1;for(let e=0;e{const n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((e,n)=>vp(e._def,{...t,currentPath:[...t.currentPath,\"anyOf\",`${n}`]})).filter(e=>!!e&&(!t.strictUnions||\"object\"==typeof e&&Object.keys(e).length>0));return n.length?{anyOf:n}:void 0};function fp(e,t){const n={type:\"object\",properties:{}},r=[],u=e.shape();for(const e in u){let a=u[e];if(void 0===a||void 0===a._def)continue;const i=pp(a),o=vp(a._def,{...t,currentPath:[...t.currentPath,\"properties\",e],propertyPath:[...t.currentPath,\"properties\",e]});void 0!==o&&(n.properties[e]=o,i||r.push(e))}r.length&&(n.required=r);const a=function(e,t){if(\"ZodNever\"!==e.catchall._def.typeName)return vp(e.catchall._def,{...t,currentPath:[...t.currentPath,\"additionalProperties\"]});switch(e.unknownKeys){case\"passthrough\":return t.allowedAdditionalProperties;case\"strict\":return t.rejectedAdditionalProperties;case\"strip\":return\"strict\"===t.removeAdditionalStrategy?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}(e,t);return void 0!==a&&(n.additionalProperties=a),n}function pp(e){try{return e.isOptional()}catch(e){return!0}}var hp=(e,t,n)=>{switch(t){case Ef.ZodString:return rp(e,n);case Ef.ZodNumber:return function(e){const t={type:\"number\"};if(!e.checks)return t;for(const n of e.checks)switch(n.kind){case\"int\":t.type=\"integer\";break;case\"min\":n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case\"max\":n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case\"multipleOf\":t.multipleOf=n.value}return t}(e);case Ef.ZodObject:return fp(e,n);case Ef.ZodBigInt:return function(e){const t={type:\"integer\",format:\"int64\"};if(!e.checks)return t;for(const n of e.checks)switch(n.kind){case\"min\":n.inclusive?t.minimum=n.value:t.exclusiveMinimum=n.value;break;case\"max\":n.inclusive?t.maximum=n.value:t.exclusiveMaximum=n.value;break;case\"multipleOf\":t.multipleOf=n.value}return t}(e);case Ef.ZodBoolean:return{type:\"boolean\"};case Ef.ZodDate:return qf(e,n);case Ef.ZodUndefined:return{not:{}};case Ef.ZodNull:return{type:\"null\"};case Ef.ZodArray:return function(e,t){var n,r,u;const a={type:\"array\"};return(null==(n=e.type)?void 0:n._def)&&(null==(u=null==(r=e.type)?void 0:r._def)?void 0:u.typeName)!==Ef.ZodAny&&(a.items=vp(e.type._def,{...t,currentPath:[...t.currentPath,\"items\"]})),e.minLength&&(a.minItems=e.minLength.value),e.maxLength&&(a.maxItems=e.maxLength.value),e.exactLength&&(a.minItems=e.exactLength.value,a.maxItems=e.exactLength.value),a}(e,n);case Ef.ZodUnion:case Ef.ZodDiscriminatedUnion:return function(e,t){const n=e.options instanceof Map?Array.from(e.options.values()):e.options;if(n.every(e=>e._def.typeName in lp&&(!e._def.checks||!e._def.checks.length))){const e=n.reduce((e,t)=>{const n=lp[t._def.typeName];return n&&!e.includes(n)?[...e,n]:e},[]);return{type:e.length>1?e:e[0]}}if(n.every(e=>\"ZodLiteral\"===e._def.typeName&&!e.description)){const e=n.reduce((e,t)=>{const n=typeof t._def.value;switch(n){case\"string\":case\"number\":case\"boolean\":return[...e,n];case\"bigint\":return[...e,\"integer\"];case\"object\":if(null===t._def.value)return[...e,\"null\"];default:return e}},[]);if(e.length===n.length){const t=e.filter((e,t,n)=>n.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:n.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(n.every(e=>\"ZodEnum\"===e._def.typeName))return{type:\"string\",enum:n.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return dp(e,t)}(e,n);case Ef.ZodIntersection:return function(e,t){const n=[vp(e.left._def,{...t,currentPath:[...t.currentPath,\"allOf\",\"0\"]}),vp(e.right._def,{...t,currentPath:[...t.currentPath,\"allOf\",\"1\"]})].filter(e=>!!e),r=[];return n.forEach(e=>{if(\"type\"in(t=e)&&\"string\"===t.type||!(\"allOf\"in t)){let t=e;if(\"additionalProperties\"in e&&!1===e.additionalProperties){const{additionalProperties:n,...r}=e;t=r}r.push(t)}else r.push(...e.allOf);var t}),r.length?{allOf:r}:void 0}(e,n);case Ef.ZodTuple:return function(e,t){return e.rest?{type:\"array\",minItems:e.items.length,items:e.items.map((e,n)=>vp(e._def,{...t,currentPath:[...t.currentPath,\"items\",`${n}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[]),additionalItems:vp(e.rest._def,{...t,currentPath:[...t.currentPath,\"additionalItems\"]})}:{type:\"array\",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,n)=>vp(e._def,{...t,currentPath:[...t.currentPath,\"items\",`${n}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[])}}(e,n);case Ef.ZodRecord:return cp(e,n);case Ef.ZodLiteral:return function(e){const t=typeof e.value;return\"bigint\"!==t&&\"number\"!==t&&\"boolean\"!==t&&\"string\"!==t?{type:Array.isArray(e.value)?\"array\":\"object\"}:{type:\"bigint\"===t?\"integer\":t,const:e.value}}(e);case Ef.ZodEnum:return function(e){return{type:\"string\",enum:Array.from(e.values)}}(e);case Ef.ZodNativeEnum:return function(e){const t=e.values,n=Object.keys(e.values).filter(e=>\"number\"!=typeof t[t[e]]).map(e=>t[e]),r=Array.from(new Set(n.map(e=>typeof e)));return{type:1===r.length?\"string\"===r[0]?\"string\":\"number\":[\"string\",\"number\"],enum:n}}(e);case Ef.ZodNullable:return function(e,t){if([\"ZodString\",\"ZodNumber\",\"ZodBigInt\",\"ZodBoolean\",\"ZodNull\"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[lp[e.innerType._def.typeName],\"null\"]};const n=vp(e.innerType._def,{...t,currentPath:[...t.currentPath,\"anyOf\",\"0\"]});return n&&{anyOf:[n,{type:\"null\"}]}}(e,n);case Ef.ZodOptional:return((e,t)=>{var n;if(t.currentPath.toString()===(null==(n=t.propertyPath)?void 0:n.toString()))return vp(e.innerType._def,t);const r=vp(e.innerType._def,{...t,currentPath:[...t.currentPath,\"anyOf\",\"1\"]});return r?{anyOf:[{not:{}},r]}:{}})(e,n);case Ef.ZodMap:return function(e,t){return\"record\"===t.mapStrategy?cp(e,t):{type:\"array\",maxItems:125,items:{type:\"array\",items:[vp(e.keyType._def,{...t,currentPath:[...t.currentPath,\"items\",\"items\",\"0\"]})||{},vp(e.valueType._def,{...t,currentPath:[...t.currentPath,\"items\",\"items\",\"1\"]})||{}],minItems:2,maxItems:2}}}(e,n);case Ef.ZodSet:return function(e,t){const n={type:\"array\",uniqueItems:!0,items:vp(e.valueType._def,{...t,currentPath:[...t.currentPath,\"items\"]})};return e.minSize&&(n.minItems=e.minSize.value),e.maxSize&&(n.maxItems=e.maxSize.value),n}(e,n);case Ef.ZodLazy:return()=>e.getter()._def;case Ef.ZodPromise:return function(e,t){return vp(e.type._def,t)}(e,n);case Ef.ZodNaN:case Ef.ZodNever:return{not:{}};case Ef.ZodEffects:return function(e,t){return\"input\"===t.effectStrategy?vp(e.schema._def,t):{}}(e,n);case Ef.ZodAny:case Ef.ZodUnknown:return{};case Ef.ZodDefault:return function(e,t){return{...vp(e.innerType._def,t),default:e.defaultValue()}}(e,n);case Ef.ZodBranded:return $f(e,n);case Ef.ZodReadonly:case Ef.ZodCatch:return((e,t)=>vp(e.innerType._def,t))(e,n);case Ef.ZodPipeline:return((e,t)=>{if(\"input\"===t.pipeStrategy)return vp(e.in._def,t);if(\"output\"===t.pipeStrategy)return vp(e.out._def,t);const n=vp(e.in._def,{...t,currentPath:[...t.currentPath,\"allOf\",\"0\"]});return{allOf:[n,vp(e.out._def,{...t,currentPath:[...t.currentPath,\"allOf\",n?\"1\":\"0\"]})].filter(e=>void 0!==e)}})(e,n);case Ef.ZodFunction:case Ef.ZodVoid:case Ef.ZodSymbol:default:return}};function vp(e,t,n=!1){var r;const u=t.seen.get(e);if(t.override){const a=null==(r=t.override)?void 0:r.call(t,e,t,u,n);if(a!==Zf)return a}if(u&&!n){const e=mp(u,t);if(void 0!==e)return e}const a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);const i=hp(e,e.typeName,t),o=\"function\"==typeof i?vp(i(),t):i;if(o&&Dp(e,t,o),t.postProcess){const n=t.postProcess(o,e,t);return a.jsonSchema=o,n}return a.jsonSchema=o,o}var mp=(e,t)=>{switch(t.$refStrategy){case\"root\":return{$ref:e.path.join(\"/\")};case\"relative\":return{$ref:Mf(t.currentPath,e.path)};case\"none\":case\"seen\":return e.path.lengtht.currentPath[n]===e)?(console.warn(`Recursive reference detected at ${t.currentPath.join(\"/\")}! Defaulting to any`),{}):\"seen\"===t.$refStrategy?{}:void 0}},Dp=(e,t,n)=>(e.description&&(n.description=e.description),n),yp=e=>{const t=(e=>\"string\"==typeof e?{...Lf,name:e}:{...Lf,...e})(e),n=void 0!==t.name?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([e,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,e],jsonSchema:void 0}]))}},gp=(e,t)=>{var n;const r=yp(t);let u=\"object\"==typeof t&&t.definitions?Object.entries(t.definitions).reduce((e,[t,n])=>{var u;return{...e,[t]:null!=(u=vp(n._def,{...r,currentPath:[...r.basePath,r.definitionPath,t]},!0))?u:{}}},{}):void 0;const a=\"string\"==typeof t?t:\"title\"===(null==t?void 0:t.nameStrategy)||null==t?void 0:t.name,i=null!=(n=vp(e._def,void 0===a?r:{...r,currentPath:[...r.basePath,r.definitionPath,a]},!1))?n:{},o=\"object\"==typeof t&&void 0!==t.name&&\"title\"===t.nameStrategy?t.name:void 0;void 0!==o&&(i.title=o);const s=void 0===a?u?{...i,[r.definitionPath]:u}:i:{$ref:[...\"relative\"===r.$refStrategy?[]:r.basePath,r.definitionPath,a].join(\"/\"),[r.definitionPath]:{...u,[a]:i}};return s.$schema=\"http://json-schema.org/draft-07/schema#\",s};function Fp(e,t){const n=null!=void 0&&undefined;return Ap(()=>function(e,t){if(e instanceof Ns){var n,r=new ic(t),u={},a=E(e._idmap.entries());try{for(a.s();!(n=a.n()).done;){var i=T(n.value,2),o=(i[0],i[1]);r.process(o)}}catch(e){a.e(e)}finally{a.f()}var s,c={},l={registry:e,uri:null==t?void 0:t.uri,defs:u},d=E(e._idmap.entries());try{for(d.s();!(s=d.n()).done;){var f=T(s.value,2),p=f[0],h=f[1];c[p]=r.emit(h,S(S({},t),{},{external:l}))}}catch(e){d.e(e)}finally{d.f()}if(Object.keys(u).length>0){var v=\"draft-2020-12\"===r.target?\"$defs\":\"definitions\";c.__shared=b({},v,u)}return{schemas:c}}var m=new ic(t);return m.process(e),m.emit(e,t)}(e,{target:\"draft-7\",io:\"output\",reused:n?\"ref\":\"inline\"}),{validate:async t=>{const n=await Ec(e,t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}function Ep(e,t){return function(e){return\"_zod\"in e}(e)?Fp(e):function(e){const t=!1;return Ap(()=>gp(e,{$refStrategy:t?\"root\":\"none\"}),{validate:async t=>{const n=await e.safeParseAsync(t);return n.success?{success:!0,value:n.data}:{success:!1,error:n.error}}})}(e)}var bp=Symbol.for(\"vercel.ai.schema\");function Ap(e,{validate:t}={}){return{[bp]:!0,_type:void 0,[Tf]:!0,get jsonSchema(){return\"function\"==typeof e&&(e=e()),e},validate:t}}function Cp(e){return null==e?Ap({properties:{},additionalProperties:!1}):\"object\"==typeof(t=e)&&null!==t&&bp in t&&!0===t[bp]&&\"jsonSchema\"in t&&\"validate\"in t?e:\"function\"==typeof e?e():Ep(e);var t}function kp(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}var wp,_p=Object.defineProperty,Sp=\"AI_NoObjectGeneratedError\",xp=`vercel.ai.error.${Sp}`,Bp=Symbol.for(xp),Ip=class extends ca{constructor({message:e=\"No object generated.\",cause:t,text:n,response:r,usage:u,finishReason:a}){super({name:Sp,message:e,cause:t}),this[wp]=!0,this.text=n,this.response=r,this.usage=u,this.finishReason=a}static isInstance(e){return ca.hasMarker(e,xp)}};wp=Bp;var Op,Tp,Pp,jp=\"5.0.93\",Np=yl([Tc(),Ul(Uint8Array),Ul(ArrayBuffer),ql(e=>{var t,n;return null!=(n=null==(t=globalThis.Buffer)?void 0:t.isBuffer(e))&&n},{message:\"Must be a Buffer\"})]),zp=new Ml({type:\"lazy\",getter:()=>yl([ol(),Tc(),tl(),al(),bl(Tc(),zp),pl(zp)])}),Rp=bl(Tc(),bl(Tc(),zp)),Mp=vl({type:wl(\"text\"),text:Tc(),providerOptions:Rp.optional()}),Zp=vl({type:wl(\"image\"),image:yl([Np,Ul(URL)]),mediaType:Tc().optional(),providerOptions:Rp.optional()}),Lp=vl({type:wl(\"file\"),data:yl([Np,Ul(URL)]),filename:Tc().optional(),mediaType:Tc(),providerOptions:Rp.optional()}),$p=vl({type:wl(\"reasoning\"),text:Tc(),providerOptions:Rp.optional()}),qp=vl({type:wl(\"tool-call\"),toolCallId:Tc(),toolName:Tc(),input:cl(),providerOptions:Rp.optional(),providerExecuted:al().optional()}),Up=(Op=\"type\",Tp=[vl({type:wl(\"text\"),value:Tc()}),vl({type:wl(\"json\"),value:zp}),vl({type:wl(\"error-text\"),value:Tc()}),vl({type:wl(\"error-json\"),value:zp}),vl({type:wl(\"content\"),value:pl(yl([vl({type:wl(\"text\"),text:Tc()}),vl({type:wl(\"media\"),data:Tc(),mediaType:Tc()})]))})],new gl(S({type:\"union\",options:Tp,discriminator:Op},Xa(Pp)))),Vp=vl({type:wl(\"tool-result\"),toolCallId:Tc(),toolName:Tc(),output:Up,providerOptions:Rp.optional()}),Hp=vl({role:wl(\"system\"),content:Tc(),providerOptions:Rp.optional()}),Kp=vl({role:wl(\"user\"),content:yl([Tc(),pl(yl([Mp,Zp,Lp]))]),providerOptions:Rp.optional()}),Wp=vl({role:wl(\"assistant\"),content:yl([Tc(),pl(yl([Mp,Lp,$p,qp,Vp]))]),providerOptions:Rp.optional()});yl([Hp,Kp,Wp,vl({role:wl(\"tool\"),content:pl(Vp),providerOptions:Rp.optional()})]),kf({prefix:\"aitxt\",size:24}),TransformStream;var Jp=function(e){let t;return()=>(null==t&&(t=e()),t)}(()=>Ep(yl([ml({type:wl(\"text-start\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"text-delta\"),id:Tc(),delta:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"text-end\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"error\"),errorText:Tc()}),ml({type:wl(\"tool-input-start\"),toolCallId:Tc(),toolName:Tc(),providerExecuted:al().optional(),dynamic:al().optional()}),ml({type:wl(\"tool-input-delta\"),toolCallId:Tc(),inputTextDelta:Tc()}),ml({type:wl(\"tool-input-available\"),toolCallId:Tc(),toolName:Tc(),input:cl(),providerExecuted:al().optional(),providerMetadata:Rp.optional(),dynamic:al().optional()}),ml({type:wl(\"tool-input-error\"),toolCallId:Tc(),toolName:Tc(),input:cl(),providerExecuted:al().optional(),providerMetadata:Rp.optional(),dynamic:al().optional(),errorText:Tc()}),ml({type:wl(\"tool-output-available\"),toolCallId:Tc(),output:cl(),providerExecuted:al().optional(),dynamic:al().optional(),preliminary:al().optional()}),ml({type:wl(\"tool-output-error\"),toolCallId:Tc(),errorText:Tc(),providerExecuted:al().optional(),dynamic:al().optional()}),ml({type:wl(\"reasoning-start\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"reasoning-delta\"),id:Tc(),delta:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"reasoning-end\"),id:Tc(),providerMetadata:Rp.optional()}),ml({type:wl(\"source-url\"),sourceId:Tc(),url:Tc(),title:Tc().optional(),providerMetadata:Rp.optional()}),ml({type:wl(\"source-document\"),sourceId:Tc(),mediaType:Tc(),title:Tc(),filename:Tc().optional(),providerMetadata:Rp.optional()}),ml({type:wl(\"file\"),url:Tc(),mediaType:Tc(),providerMetadata:Rp.optional()}),ml({type:ql(e=>\"string\"==typeof e&&e.startsWith(\"data-\"),{message:'Type must start with \"data-\"'}),id:Tc().optional(),data:cl(),transient:al().optional()}),ml({type:wl(\"start-step\")}),ml({type:wl(\"finish-step\")}),ml({type:wl(\"start\"),messageId:Tc().optional(),messageMetadata:cl().optional()}),ml({type:wl(\"finish\"),finishReason:Cl([\"stop\",\"length\",\"content-filter\",\"tool-calls\",\"error\",\"other\",\"unknown\"]).optional(),messageMetadata:cl().optional()}),ml({type:wl(\"abort\")}),ml({type:wl(\"message-metadata\"),messageMetadata:cl()})])));function Qp(e,t){if(void 0===e&&void 0===t)return;if(void 0===e)return t;if(void 0===t)return e;const n={...e};for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const u=t[r];if(void 0===u)continue;const a=r in e?e[r]:void 0,i=!(null===u||\"object\"!=typeof u||Array.isArray(u)||u instanceof Date||u instanceof RegExp),o=!(null==a||\"object\"!=typeof a||Array.isArray(a)||a instanceof Date||a instanceof RegExp);n[r]=i&&o?Qp(a,u):u}return n}function Gp(e){const t=[\"ROOT\"];let n=-1,r=null;function u(e,u,a){switch(e){case'\"':n=u,t.pop(),t.push(a),t.push(\"INSIDE_STRING\");break;case\"f\":case\"t\":case\"n\":n=u,r=u,t.pop(),t.push(a),t.push(\"INSIDE_LITERAL\");break;case\"-\":t.pop(),t.push(a),t.push(\"INSIDE_NUMBER\");break;case\"0\":case\"1\":case\"2\":case\"3\":case\"4\":case\"5\":case\"6\":case\"7\":case\"8\":case\"9\":n=u,t.pop(),t.push(a),t.push(\"INSIDE_NUMBER\");break;case\"{\":n=u,t.pop(),t.push(a),t.push(\"INSIDE_OBJECT_START\");break;case\"[\":n=u,t.pop(),t.push(a),t.push(\"INSIDE_ARRAY_START\")}}function a(e,r){switch(e){case\",\":t.pop(),t.push(\"INSIDE_OBJECT_AFTER_COMMA\");break;case\"}\":n=r,t.pop()}}function i(e,r){switch(e){case\",\":t.pop(),t.push(\"INSIDE_ARRAY_AFTER_COMMA\");break;case\"]\":n=r,t.pop()}}for(let o=0;o=0;n--){switch(t[n]){case\"INSIDE_STRING\":o+='\"';break;case\"INSIDE_OBJECT_KEY\":case\"INSIDE_OBJECT_AFTER_KEY\":case\"INSIDE_OBJECT_AFTER_COMMA\":case\"INSIDE_OBJECT_START\":case\"INSIDE_OBJECT_BEFORE_VALUE\":case\"INSIDE_OBJECT_AFTER_VALUE\":o+=\"}\";break;case\"INSIDE_ARRAY_START\":case\"INSIDE_ARRAY_AFTER_COMMA\":case\"INSIDE_ARRAY_AFTER_VALUE\":o+=\"]\";break;case\"INSIDE_LITERAL\":{const t=e.substring(r,e.length);\"true\".startsWith(t)?o+=\"true\".slice(t.length):\"false\".startsWith(t)?o+=\"false\".slice(t.length):\"null\".startsWith(t)&&(o+=\"null\".slice(t.length))}}}return o}async function Yp(e){if(void 0===e)return{value:void 0,state:\"undefined-input\"};let t=await zf({text:e});return t.success?{value:t.value,state:\"successful-parse\"}:(t=await zf({text:Gp(e)}),t.success?{value:t.value,state:\"repaired-parse\"}:{value:void 0,state:\"failed-parse\"})}function Xp(e){return e.type.startsWith(\"tool-\")}function eh(e){return Xp(e)||function(e){return\"dynamic-tool\"===e.type}(e)}function th(e){return e.type.split(\"-\").slice(1).join(\"-\")}function nh({lastMessage:e,messageId:t}){return{message:\"assistant\"===(null==e?void 0:e.role)?e:{id:t,metadata:void 0,role:\"assistant\",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function rh({stream:e,messageMetadataSchema:t,dataPartSchemas:n,runUpdateMessageJob:r,onError:u,onToolCall:a,onData:i}){return e.pipeThrough(new TransformStream({async transform(e,o){await r(async({state:r,write:s})=>{var c,l,d,f;function p(e){const t=r.message.parts.filter(Xp).find(t=>t.toolCallId===e);if(null==t)throw new Error(\"tool-output-error must be preceded by a tool-input-available\");return t}function h(e){const t=r.message.parts.filter(e=>\"dynamic-tool\"===e.type).find(t=>t.toolCallId===e);if(null==t)throw new Error(\"tool-output-error must be preceded by a tool-input-available\");return t}function v(e){var t;const n=r.message.parts.find(t=>Xp(t)&&t.toolCallId===e.toolCallId),u=e,a=n;null!=n?(n.state=e.state,a.input=u.input,a.output=u.output,a.errorText=u.errorText,a.rawInput=u.rawInput,a.preliminary=u.preliminary,a.providerExecuted=null!=(t=u.providerExecuted)?t:n.providerExecuted,null!=u.providerMetadata&&\"input-available\"===n.state&&(n.callProviderMetadata=u.providerMetadata)):r.message.parts.push({type:`tool-${e.toolName}`,toolCallId:e.toolCallId,state:e.state,input:u.input,output:u.output,rawInput:u.rawInput,errorText:u.errorText,providerExecuted:u.providerExecuted,preliminary:u.preliminary,...null!=u.providerMetadata?{callProviderMetadata:u.providerMetadata}:{}})}function m(e){var t,n;const u=r.message.parts.find(t=>\"dynamic-tool\"===t.type&&t.toolCallId===e.toolCallId),a=e,i=u;null!=u?(u.state=e.state,i.toolName=e.toolName,i.input=a.input,i.output=a.output,i.errorText=a.errorText,i.rawInput=null!=(t=a.rawInput)?t:i.rawInput,i.preliminary=a.preliminary,i.providerExecuted=null!=(n=a.providerExecuted)?n:u.providerExecuted,null!=a.providerMetadata&&\"input-available\"===u.state&&(u.callProviderMetadata=a.providerMetadata)):r.message.parts.push({type:\"dynamic-tool\",toolName:e.toolName,toolCallId:e.toolCallId,state:e.state,input:a.input,output:a.output,errorText:a.errorText,preliminary:a.preliminary,providerExecuted:a.providerExecuted,...null!=a.providerMetadata?{callProviderMetadata:a.providerMetadata}:{}})}async function D(e){if(null!=e){const n=null!=r.message.metadata?Qp(r.message.metadata,e):e;null!=t&&await jf({value:n,schema:t}),r.message.metadata=n}}switch(e.type){case\"text-start\":{const t={type:\"text\",text:\"\",providerMetadata:e.providerMetadata,state:\"streaming\"};r.activeTextParts[e.id]=t,r.message.parts.push(t),s();break}case\"text-delta\":{const t=r.activeTextParts[e.id];t.text+=e.delta,t.providerMetadata=null!=(c=e.providerMetadata)?c:t.providerMetadata,s();break}case\"text-end\":{const t=r.activeTextParts[e.id];t.state=\"done\",t.providerMetadata=null!=(l=e.providerMetadata)?l:t.providerMetadata,delete r.activeTextParts[e.id],s();break}case\"reasoning-start\":{const t={type:\"reasoning\",text:\"\",providerMetadata:e.providerMetadata,state:\"streaming\"};r.activeReasoningParts[e.id]=t,r.message.parts.push(t),s();break}case\"reasoning-delta\":{const t=r.activeReasoningParts[e.id];t.text+=e.delta,t.providerMetadata=null!=(d=e.providerMetadata)?d:t.providerMetadata,s();break}case\"reasoning-end\":{const t=r.activeReasoningParts[e.id];t.providerMetadata=null!=(f=e.providerMetadata)?f:t.providerMetadata,t.state=\"done\",delete r.activeReasoningParts[e.id],s();break}case\"file\":r.message.parts.push({type:\"file\",mediaType:e.mediaType,url:e.url}),s();break;case\"source-url\":r.message.parts.push({type:\"source-url\",sourceId:e.sourceId,url:e.url,title:e.title,providerMetadata:e.providerMetadata}),s();break;case\"source-document\":r.message.parts.push({type:\"source-document\",sourceId:e.sourceId,mediaType:e.mediaType,title:e.title,filename:e.filename,providerMetadata:e.providerMetadata}),s();break;case\"tool-input-start\":{const t=r.message.parts.filter(Xp);r.partialToolCalls[e.toolCallId]={text:\"\",toolName:e.toolName,index:t.length,dynamic:e.dynamic},e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-streaming\",input:void 0,providerExecuted:e.providerExecuted}):v({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-streaming\",input:void 0,providerExecuted:e.providerExecuted}),s();break}case\"tool-input-delta\":{const t=r.partialToolCalls[e.toolCallId];t.text+=e.inputTextDelta;const{value:n}=await Yp(t.text);t.dynamic?m({toolCallId:e.toolCallId,toolName:t.toolName,state:\"input-streaming\",input:n}):v({toolCallId:e.toolCallId,toolName:t.toolName,state:\"input-streaming\",input:n}),s();break}case\"tool-input-available\":e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-available\",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):v({toolCallId:e.toolCallId,toolName:e.toolName,state:\"input-available\",input:e.input,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),s(),a&&!e.providerExecuted&&await a({toolCall:e});break;case\"tool-input-error\":e.dynamic?m({toolCallId:e.toolCallId,toolName:e.toolName,state:\"output-error\",input:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}):v({toolCallId:e.toolCallId,toolName:e.toolName,state:\"output-error\",input:void 0,rawInput:e.input,errorText:e.errorText,providerExecuted:e.providerExecuted,providerMetadata:e.providerMetadata}),s();break;case\"tool-output-available\":if(e.dynamic){const t=h(e.toolCallId);m({toolCallId:e.toolCallId,toolName:t.toolName,state:\"output-available\",input:t.input,output:e.output,preliminary:e.preliminary})}else{const t=p(e.toolCallId);v({toolCallId:e.toolCallId,toolName:th(t),state:\"output-available\",input:t.input,output:e.output,providerExecuted:e.providerExecuted,preliminary:e.preliminary})}s();break;case\"tool-output-error\":if(e.dynamic){const t=h(e.toolCallId);m({toolCallId:e.toolCallId,toolName:t.toolName,state:\"output-error\",input:t.input,errorText:e.errorText,providerExecuted:e.providerExecuted})}else{const t=p(e.toolCallId);v({toolCallId:e.toolCallId,toolName:th(t),state:\"output-error\",input:t.input,rawInput:t.rawInput,errorText:e.errorText,providerExecuted:e.providerExecuted})}s();break;case\"start-step\":r.message.parts.push({type:\"step-start\"});break;case\"finish-step\":r.activeTextParts={},r.activeReasoningParts={};break;case\"start\":null!=e.messageId&&(r.message.id=e.messageId),await D(e.messageMetadata),null==e.messageId&&null==e.messageMetadata||s();break;case\"finish\":null!=e.finishReason&&(r.finishReason=e.finishReason),await D(e.messageMetadata),null!=e.messageMetadata&&s();break;case\"message-metadata\":await D(e.messageMetadata),null!=e.messageMetadata&&s();break;case\"error\":null==u||u(new Error(e.errorText));break;default:if(function(e){return e.type.startsWith(\"data-\")}(e)){null!=(null==n?void 0:n[e.type])&&await jf({value:e.data,schema:n[e.type]});const t=e;if(t.transient){null==i||i(t);break}const u=null!=t.id?r.message.parts.find(e=>t.type===e.type&&t.id===e.id):void 0;null!=u?u.data=t.data:r.message.parts.push(t),null==i||i(t),s()}}o.enqueue(e)})}}))}kf({prefix:\"aitxt\",size:24}),kf({prefix:\"aiobj\",size:24});var uh=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,n)=>{this.queue.push(async()=>{try{await e(),t()}catch(e){n(e)}}),this.processQueue()})}};kf({prefix:\"aiobj\",size:24});((e,t)=>{for(var n in t)_p(e,n,{get:t[n],enumerable:!0})})({},{object:()=>ih,text:()=>ah});var ah=()=>({type:\"text\",responseFormat:{type:\"text\"},parsePartial:async({text:e})=>({partial:e}),parseOutput:async({text:e})=>e}),ih=({schema:e})=>{const t=Cp(e);return{type:\"object\",responseFormat:{type:\"json\",schema:t.jsonSchema},async parsePartial({text:e}){const t=await Yp(e);switch(t.state){case\"failed-parse\":case\"undefined-input\":return;case\"repaired-parse\":case\"successful-parse\":return{partial:t.value};default:{const e=t.state;throw new Error(`Unsupported parse state: ${e}`)}}},async parseOutput({text:e},n){const r=await zf({text:e});if(!r.success)throw new Ip({message:\"No object generated: could not parse the response.\",cause:r.error,text:e,response:n.response,usage:n.usage,finishReason:n.finishReason});const u=await Nf({value:r.value,schema:t});if(!u.success)throw new Ip({message:\"No object generated: response did not match schema.\",cause:u.error,text:e,response:n.response,usage:n.usage,finishReason:n.finishReason});return u.value}}};var oh,sh,ch=class{constructor({api:e=\"/api/chat\",credentials:t,headers:n,body:r,fetch:u,prepareSendMessagesRequest:a,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=n,this.body=r,this.fetch=u,this.prepareSendMessagesRequest=a,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var n,r,u,a,i;const o=await Rf(this.body),s=await Rf(this.headers),c=await Rf(this.credentials),l={...Sf(s),...Sf(t.headers)},d=await(null==(n=this.prepareSendMessagesRequest)?void 0:n.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...o,...t.body},headers:l,credentials:c,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),f=null!=(r=null==d?void 0:d.api)?r:this.api,p=void 0!==(null==d?void 0:d.headers)?Sf(d.headers):l,h=void 0!==(null==d?void 0:d.body)?d.body:{...o,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},v=null!=(u=null==d?void 0:d.credentials)?u:c,m=null!=(a=this.fetch)?a:globalThis.fetch,D=await m(f,{method:\"POST\",headers:xf({\"Content-Type\":\"application/json\",...p},`ai-sdk/${jp}`,_f()),body:JSON.stringify(h),credentials:v,signal:e});if(!D.ok)throw new Error(null!=(i=await D.text())?i:\"Failed to fetch the chat response.\");if(!D.body)throw new Error(\"The response body is empty.\");return this.processResponseStream(D.body)}async reconnectToStream(e){var t,n,r,u,a;const i=await Rf(this.body),o=await Rf(this.headers),s=await Rf(this.credentials),c={...Sf(o),...Sf(e.headers)},l=await(null==(t=this.prepareReconnectToStreamRequest)?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...i,...e.body},headers:c,credentials:s,requestMetadata:e.metadata})),d=null!=(n=null==l?void 0:l.api)?n:`${this.api}/${e.chatId}/stream`,f=void 0!==(null==l?void 0:l.headers)?Sf(l.headers):c,p=null!=(r=null==l?void 0:l.credentials)?r:s,h=null!=(u=this.fetch)?u:globalThis.fetch,v=await h(d,{method:\"GET\",headers:xf(f,`ai-sdk/${jp}`,_f()),credentials:p});if(204===v.status)return null;if(!v.ok)throw new Error(null!=(a=await v.text())?a:\"Failed to fetch the chat response.\");if(!v.body)throw new Error(\"The response body is empty.\");return this.processResponseStream(v.body)}},lh=class extends ch{constructor(e={}){super(e)}processResponseStream(e){return function({stream:e,schema:t}){return e.pipeThrough(new TextDecoderStream).pipeThrough(new xa).pipeThrough(new TransformStream({async transform({data:e},n){\"[DONE]\"!==e&&n.enqueue(await zf({text:e,schema:t}))}}))}({stream:e,schema:Jp}).pipeThrough(new TransformStream({async transform(e,t){if(!e.success)throw e.error;t.enqueue(e.value)}}))}},dh=class{constructor({generateId:e=wf,id:t=e(),transport:n=new lh,messageMetadataSchema:r,dataPartSchemas:u,state:a,onError:i,onToolCall:o,onFinish:s,onData:c,sendAutomaticallyWhen:l}){this.activeResponse=void 0,this.jobExecutor=new uh,this.sendMessage=async(e,t)=>{var n,r,u,a;if(null==e)return void await this.makeRequest({trigger:\"submit-message\",messageId:null==(n=this.lastMessage)?void 0:n.id,...t});let i;if(\"text\"in e||\"files\"in e){const t=Array.isArray(e.files)?e.files:await async function(e){if(null==e)return[];if(!(globalThis.FileList&&e instanceof globalThis.FileList))throw new Error(\"FileList is not supported in the current environment\");return Promise.all(Array.from(e).map(async e=>{const{name:t,type:n}=e;return{type:\"file\",mediaType:n,filename:t,url:await new Promise((t,n)=>{const r=new FileReader;r.onload=e=>{var n;t(null==(n=e.target)?void 0:n.result)},r.onerror=e=>n(e),r.readAsDataURL(e)})}}))}(e.files);i={parts:[...t,...\"text\"in e&&null!=e.text?[{type:\"text\",text:e.text}]:[]]}}else i=e;if(null!=e.messageId){const t=this.state.messages.findIndex(t=>t.id===e.messageId);if(-1===t)throw new Error(`message with id ${e.messageId} not found`);if(\"user\"!==this.state.messages[t].role)throw new Error(`message with id ${e.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,t+1),this.state.replaceMessage(t,{...i,id:e.messageId,role:null!=(r=i.role)?r:\"user\",metadata:e.metadata})}else this.state.pushMessage({...i,id:null!=(u=i.id)?u:this.generateId(),role:null!=(a=i.role)?a:\"user\",metadata:e.metadata});await this.makeRequest({trigger:\"submit-message\",messageId:e.messageId,...t})},this.regenerate=async({messageId:e,...t}={})=>{const n=null==e?this.state.messages.length-1:this.state.messages.findIndex(t=>t.id===e);if(-1===n)throw new Error(`message ${e} not found`);this.state.messages=this.state.messages.slice(0,\"assistant\"===this.messages[n].role?n:n+1),await this.makeRequest({trigger:\"regenerate-message\",messageId:e,...t})},this.resumeStream=async(e={})=>{await this.makeRequest({trigger:\"resume-stream\",...e})},this.clearError=()=>{\"error\"===this.status&&(this.state.error=void 0,this.setStatus({status:\"ready\"}))},this.addToolOutput=async({state:e=\"output-available\",tool:t,toolCallId:n,output:r,errorText:u})=>this.jobExecutor.run(async()=>{var t,a;const i=this.state.messages,o=i[i.length-1];this.state.replaceMessage(i.length-1,{...o,parts:o.parts.map(t=>eh(t)&&t.toolCallId===n?{...t,state:e,output:r,errorText:u}:t)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(t=>eh(t)&&t.toolCallId===n?{...t,state:e,output:r,errorText:u}:t)),\"streaming\"!==this.status&&\"submitted\"!==this.status&&(null==(t=this.sendAutomaticallyWhen)?void 0:t.call(this,{messages:this.state.messages}))&&this.makeRequest({trigger:\"submit-message\",messageId:null==(a=this.lastMessage)?void 0:a.id})}),this.addToolResult=this.addToolOutput,this.stop=async()=>{var e;\"streaming\"!==this.status&&\"submitted\"!==this.status||(null==(e=this.activeResponse)?void 0:e.abortController)&&this.activeResponse.abortController.abort()},this.id=t,this.transport=n,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=u,this.state=a,this.onError=i,this.onToolCall=o,this.onFinish=s,this.onData=c,this.sendAutomaticallyWhen=l}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async makeRequest({trigger:e,metadata:t,headers:n,body:r,messageId:u}){var a,i,o,s;this.setStatus({status:\"submitted\",error:void 0});const c=this.lastMessage;let l=!1,d=!1,f=!1;try{const a={state:nh({lastMessage:this.state.snapshot(c),messageId:this.generateId()}),abortController:new AbortController};let i;if(a.abortController.signal.addEventListener(\"abort\",()=>{l=!0}),this.activeResponse=a,\"resume-stream\"===e){const e=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:n,body:r});if(null==e)return void this.setStatus({status:\"ready\"});i=e}else i=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:a.abortController.signal,metadata:t,headers:n,body:r,trigger:e,messageId:u});const o=e=>this.jobExecutor.run(()=>e({state:a.state,write:()=>{var e;this.setStatus({status:\"streaming\"});a.state.message.id===(null==(e=this.lastMessage)?void 0:e.id)?this.state.replaceMessage(this.state.messages.length-1,a.state.message):this.state.pushMessage(a.state.message)}}));await async function({stream:e,onError:t}){const n=e.getReader();try{for(;;){const{done:e}=await n.read();if(e)break}}catch(e){null==t||t(e)}finally{n.releaseLock()}}({stream:rh({stream:i,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:o,onError:e=>{throw e}}),onError:e=>{throw e}}),this.setStatus({status:\"ready\"})}catch(e){if(l||\"AbortError\"===e.name)return l=!0,this.setStatus({status:\"ready\"}),null;f=!0,e instanceof TypeError&&(e.message.toLowerCase().includes(\"fetch\")||e.message.toLowerCase().includes(\"network\"))&&(d=!0),this.onError&&e instanceof Error&&this.onError(e),this.setStatus({status:\"error\",error:e})}finally{try{null==(i=this.onFinish)||i.call(this,{message:this.activeResponse.state.message,messages:this.state.messages,isAbort:l,isDisconnect:d,isError:f,finishReason:null==(a=this.activeResponse)?void 0:a.state.finishReason})}catch(e){console.error(e)}this.activeResponse=void 0}(null==(o=this.sendAutomaticallyWhen)?void 0:o.call(this,{messages:this.state.messages}))&&!f&&await this.makeRequest({trigger:\"submit-message\",messageId:null==(s=this.lastMessage)?void 0:s.id,metadata:t,headers:n,body:r})}};function fh({messages:e}){const t=e[e.length-1];if(!t)return!1;if(\"assistant\"!==t.role)return!1;const n=t.parts.reduce((e,t,n)=>\"step-start\"===t.type?n:e,-1),r=t.parts.slice(n+1).filter(eh).filter(e=>!e.providerExecuted);return r.length>0&&r.every(e=>\"output-available\"===e.state||\"output-error\"===e.state)}function ph(){if(sh)return oh;return sh=1,oh=function(e,t){if(\"function\"!=typeof e)throw new TypeError(\"Expected the first argument to be a `function`, got `\".concat(N(e),\"`.\"));var n,r=0;return function(){for(var u=this,a=arguments.length,i=new Array(a),o=0;o{if(!t.has(e))throw TypeError(\"Cannot \"+n)},kh=(e,t,n)=>(Ch(e,t,\"read from private field\"),n?n.call(e):t.get(e)),wh=(e,t,n)=>{if(t.has(e))throw TypeError(\"Cannot add the same private member more than once\");t instanceof WeakSet?t.add(e):t.set(e,n)},_h=(e,t,n,r)=>(Ch(e,t,\"write to private field\"),t.set(e,n),n);var Sh,xh=class{constructor(e=[]){wh(this,hh,void 0),wh(this,vh,\"ready\"),wh(this,mh,void 0),wh(this,Dh,new Set),wh(this,yh,new Set),wh(this,gh,new Set),this.pushMessage=e=>{_h(this,hh,kh(this,hh).concat(e)),kh(this,Fh).call(this)},this.popMessage=()=>{_h(this,hh,kh(this,hh).slice(0,-1)),kh(this,Fh).call(this)},this.replaceMessage=(e,t)=>{_h(this,hh,[...kh(this,hh).slice(0,e),this.snapshot(t),...kh(this,hh).slice(e+1)]),kh(this,Fh).call(this)},this.snapshot=e=>structuredClone(e),this[\"~registerMessagesCallback\"]=(e,t)=>{const n=t?(r=e,null!=(u=t)?Ah(r,u):r):e;var r,u;return kh(this,Dh).add(n),()=>{kh(this,Dh).delete(n)}},this[\"~registerStatusCallback\"]=e=>(kh(this,yh).add(e),()=>{kh(this,yh).delete(e)}),this[\"~registerErrorCallback\"]=e=>(kh(this,gh).add(e),()=>{kh(this,gh).delete(e)}),wh(this,Fh,()=>{kh(this,Dh).forEach(e=>e())}),wh(this,Eh,()=>{kh(this,yh).forEach(e=>e())}),wh(this,bh,()=>{kh(this,gh).forEach(e=>e())}),_h(this,hh,e)}get status(){return kh(this,vh)}set status(e){_h(this,vh,e),kh(this,Eh).call(this)}get error(){return kh(this,mh)}set error(e){_h(this,mh,e),kh(this,bh).call(this)}get messages(){return kh(this,hh)}set messages(e){_h(this,hh,[...e]),kh(this,Fh).call(this)}};hh=new WeakMap,vh=new WeakMap,mh=new WeakMap,Dh=new WeakMap,yh=new WeakMap,gh=new WeakMap,Fh=new WeakMap,Eh=new WeakMap,bh=new WeakMap;var Bh=class extends dh{constructor({messages:e,...t}){const n=new xh(e);super({...t,state:n}),wh(this,Sh,void 0),this[\"~registerMessagesCallback\"]=(e,t)=>kh(this,Sh)[\"~registerMessagesCallback\"](e,t),this[\"~registerStatusCallback\"]=e=>kh(this,Sh)[\"~registerStatusCallback\"](e),this[\"~registerErrorCallback\"]=e=>kh(this,Sh)[\"~registerErrorCallback\"](e),_h(this,Sh,n)}};Sh=new WeakMap;var Ih=\"askai_token\",Oh=function(e){if(!e)return!0;try{var t=function(e){var t=T(e.split(\".\"),1)[0];return JSON.parse(atob(t))}(e),n=t.exp;return Date.now()/1e3>n-30}catch(e){return!0}},Th=null,Ph=function(){var e=v(B().m(function e(t){var n,r,u,a,i,o;return B().w(function(e){for(;;)switch(e.n){case 0:if(n=t.assistantId,r=t.abortSignal,u=t.useStagingEnv,a=void 0!==u&&u,i=sessionStorage.getItem(Ih),Oh(i)){e.n=1;break}return e.a(2,i);case 1:return o=a?An:bn,Th||(Th=fetch(\"\".concat(o,\"/token\"),{method:\"POST\",headers:{\"x-algolia-assistant-id\":n,\"content-type\":\"application/json\"},signal:r}).then(function(e){return e.json()}).then(function(e){var t=e.token,n=e.success,r=e.message;if(!n&&r)throw new Error(r);return sessionStorage.setItem(Ih,t),t}).finally(function(){return Th=null})),e.a(2,Th)}},e)}));return function(t){return e.apply(this,arguments)}}(),jh=function(){var e=v(B().m(function e(t){var n,r,u,a,i,o,s,c,l,d;return B().w(function(e){for(;;)switch(e.n){case 0:return n=t.assistantId,r=t.thumbs,u=t.messageId,a=t.appId,i=t.abortSignal,o=t.useStagingEnv,s=void 0!==o&&o,(c=new Headers).set(\"x-algolia-assistant-id\",n),c.set(\"content-type\",\"application/json\"),e.n=1,Ph({assistantId:n,abortSignal:i,useStagingEnv:s});case 1:return l=e.v,c.set(\"authorization\",\"TOKEN \".concat(l)),d=s?An:bn,e.a(2,fetch(\"\".concat(d,\"/feedback\"),{method:\"POST\",body:JSON.stringify({appId:a,messageId:u,thumbs:r}),headers:c}))}},e)}));return function(t){return e.apply(this,arguments)}}(),Nh=[\"assistantId\",\"apiKey\",\"appId\",\"indexName\",\"useStagingEnv\"],zh=function(e){var t=e.assistantId,n=e.apiKey,u=e.appId,a=e.indexName,i=e.useStagingEnv,c=void 0!==i&&i,f=x(e,Nh),p=s(new AbortController),h=o(function(){return f.agentStudio?function(e){var t=e.appId,n=e.apiKey,r=e.assistantId,u=e.searchParameters;return new lh({api:\"https://\".concat(t,\".algolia.net/agent-studio/1/agents/\").concat(r,\"/completions?stream=true&compatibilityMode=ai-sdk-5\"),headers:{\"x-algolia-application-id\":t,\"x-algolia-api-key\":n},body:u?{algolia:{searchParameters:u}}:{}})}({apiKey:n,appId:u,assistantId:null!=t?t:\"\",searchParameters:f.searchParameters}):function(e){var t,n=e.assistantId,r=e.apiKey,u=e.indexName,a=e.searchParameters,i=e.appId,o=e.abortController,s=e.useStagingEnv;return new lh({api:s?An:bn,headers:(t=v(B().m(function e(){var t;return B().w(function(e){for(;;)switch(e.n){case 0:if(n){e.n=1;break}throw new Error(\"Ask AI assistant ID is required\");case 1:return e.n=2,Ph({assistantId:n,abortSignal:o.signal,useStagingEnv:s});case 2:return t=e.v,e.a(2,S(S({},t?{authorization:\"TOKEN \".concat(t)}:{}),{},{\"X-Algolia-API-Key\":r,\"X-Algolia-Application-Id\":i,\"X-Algolia-Index-Name\":u,\"X-Algolia-Assistant-Id\":n||\"\",\"X-AI-SDK-Version\":\"v5\"}))}},e)})),function(){return t.apply(this,arguments)}),body:a?{searchParameters:a}:{}})}({assistantId:null!=t?t:\"\",apiKey:n,appId:u,indexName:a,searchParameters:f.searchParameters,abortController:p.current,useStagingEnv:c})},[n,u,t,a,c,f]),m=function({experimental_throttle:e,resume:t=!1,...n}={}){const u=s(\"chat\"in n?n.chat:new Bh(n));(\"chat\"in n&&n.chat!==u.current||\"id\"in n&&u.current.id!==n.id)&&(u.current=\"chat\"in n?n.chat:new Bh(n));const a=\"id\"in n?n.id:null,i=l(t=>u.current[\"~registerMessagesCallback\"](t,e),[e,a]),o=d(i,()=>u.current.messages,()=>u.current.messages),c=d(u.current[\"~registerStatusCallback\"],()=>u.current.status,()=>u.current.status),f=d(u.current[\"~registerErrorCallback\"],()=>u.current.error,()=>u.current.error),p=l(e=>{\"function\"==typeof e&&(e=e(u.current.messages)),u.current.messages=e},[u]);return r(()=>{t&&u.current.resumeStream()},[t,u]),{id:u.current.id,messages:o,setMessages:p,sendMessage:u.current.sendMessage,regenerate:u.current.regenerate,clearError:u.current.clearError,stop:u.current.stop,error:f,resumeStream:u.current.resumeStream,status:c,addToolResult:u.current.addToolOutput,addToolOutput:u.current.addToolOutput}}({sendAutomaticallyWhen:fh,transport:h}),D=m.messages,y=m.sendMessage,g=m.status,F=m.setMessages,E=m.error,b=m.stop,A=s(ua({key:\"__DOCSEARCH_ASKAI_CONVERSATIONS__\".concat(a),limit:10})).current,C=l(function(){var e=v(B().m(function e(n,r){var a;return B().w(function(e){for(;;)switch(e.n){case 0:if(t){e.n=1;break}return e.a(2);case 1:return e.n=2,jh({assistantId:t,thumbs:r,messageId:n,appId:u,abortSignal:p.current.signal,useStagingEnv:c});case 2:if(!(e.v.status>=300)){e.n=3;break}throw new Error(\"Failed, try again later.\");case 3:null===(a=A.addFeedback)||void 0===a||a.call(A,n,1===r?\"like\":\"dislike\");case 4:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[t,u,A,c]),k=function(){var e=v(B().m(function e(){return B().w(function(e){for(;;)switch(e.n){case 0:return p.current.abort(),e.n=1,b();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),w=o(function(){for(var e=[],t=0;t0){var u=r.detail[0],a=u.msg,i=u.loc.at(-1);t=\"\".concat(a,\": \").concat(i)}}else t=n.message}catch(e){}return new Error(t)}(E):E},[E,f.agentStudio]);return{messages:D,sendMessage:y,status:g,setMessages:F,askAiError:I,stopAskAiStreaming:k,isStreaming:_,exchanges:w,conversations:A,sendFeedback:C}};function Rh(e){var t,n=\"algolia-client-js-\".concat(e.key);function r(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function u(){return JSON.parse(r().getItem(n)||\"{}\")}function a(e){r().setItem(n,JSON.stringify(e))}return{get:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){var n,r,i;return n=e.timeToLive?1e3*e.timeToLive:null,r=u(),a(i=Object.fromEntries(Object.entries(r).filter(function(e){return void 0!==T(e,2)[1].timestamp}))),n&&a(Object.fromEntries(Object.entries(i).filter(function(e){var t=T(e,2)[1],r=(new Date).getTime();return!(t.timestamp+n2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then(function(e){return Promise.all([e,n.miss(e)])}).then(function(e){return T(e,1)[0]})},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return n.get(e,r,u).catch(function(){return Mh({caches:t}).get(e,r,u)})},set:function(e,r){return n.set(e,r).catch(function(){return Mh({caches:t}).set(e,r)})},delete:function(e){return n.delete(e).catch(function(){return Mh({caches:t}).delete(e)})},clear:function(){return n.clear().catch(function(){return Mh({caches:t}).clear()})}}}function Zh(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(n,r){var u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},a=JSON.stringify(n);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);var i=r();return i.then(function(e){return u.miss(e)}).then(function(){return i})},set:function(n,r){return t[JSON.stringify(n)]=e.serializable?JSON.stringify(r):r,Promise.resolve(r)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Lh(e){var t=e.algoliaAgents,n=e.client,r=e.version,u=function(e){var t={value:\"Algolia for JavaScript (\".concat(e,\")\"),add:function(e){var n=\"; \".concat(e.segment).concat(void 0!==e.version?\" (\".concat(e.version,\")\"):\"\");return-1===t.value.indexOf(n)&&(t.value=\"\".concat(t.value).concat(n)),t}};return t}(r).add({segment:n,version:r});return t.forEach(function(e){return u.add(e)}),u}var $h=12e4;function qh(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"up\",n=Date.now();return S(S({},e),{},{status:t,lastUpdate:n,isUp:function(){return\"up\"===t||Date.now()-n>$h},isTimedOut:function(){return\"timed out\"===t&&Date.now()-n<=$h}})}var Uh=function(){function e(t,n){var r;return D(this,e),b(r=m(this,e,[t]),\"name\",\"AlgoliaError\"),n&&(r.name=n),r}return k(e,R(Error)),F(e)}(),Vh=function(){function e(t,n,r){var u;return D(this,e),b(u=m(this,e,[t,r]),\"stackTrace\",void 0),u.stackTrace=n,u}return k(e,Uh),F(e)}(),Hh=function(){function e(t){return D(this,e),m(this,e,[\"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\",t,\"RetryError\"])}return k(e,Vh),F(e)}(),Kh=function(){function e(t,n,r){var u,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"ApiError\";return D(this,e),b(u=m(this,e,[t,r,a]),\"status\",void 0),u.status=n,u}return k(e,Vh),F(e)}(),Wh=function(){function e(t,n){var r;return D(this,e),b(r=m(this,e,[t,\"DeserializationError\"]),\"response\",void 0),r.response=n,r}return k(e,Uh),F(e)}(),Jh=function(){function e(t,n,r,u){var a;return D(this,e),b(a=m(this,e,[t,n,u,\"DetailedApiError\"]),\"error\",void 0),a.error=r,a}return k(e,Kh),F(e)}();function Qh(e,t,n){var r,u=(r=n,Object.keys(r).filter(function(e){return void 0!==r[e]}).sort().map(function(e){return\"\".concat(e,\"=\").concat(encodeURIComponent(\"[object Array]\"===Object.prototype.toString.call(r[e])?r[e].join(\",\"):r[e]).replace(/\\+/g,\"%20\"))}).join(\"&\")),a=\"\".concat(e.protocol,\"://\").concat(e.url).concat(e.port?\":\".concat(e.port):\"\",\"/\").concat(\"/\"===t.charAt(0)?t.substring(1):t);return u.length&&(a+=\"?\".concat(u)),a}function Gh(e,t){if(\"GET\"!==e.method&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:S(S({},e.data),t.data);return JSON.stringify(n)}}function Yh(e,t,n){var r=S(S(S({Accept:\"application/json\"},e),t),n),u={};return Object.keys(r).forEach(function(e){var t=r[e];u[e.toLowerCase()]=t}),u}function Xh(e){try{return JSON.parse(e.content)}catch(t){throw new Wh(t.message,e)}}function ev(e,t){var n=e.content,r=e.status;try{var u=JSON.parse(n);return\"error\"in u?new Jh(u.message,r,u.error,t):new Kh(u.message,r,t)}catch(e){}return new Kh(n,r,t)}function tv(e){var t=e.isTimedOut,n=e.status;return t||function(e){var t=e.isTimedOut,n=e.status;return!t&&0===~~n}({isTimedOut:t,status:n})||2!=~~(n/100)&&4!=~~(n/100)}function nv(e){return 2==~~(e.status/100)}function rv(e){return e.map(function(e){return uv(e)})}function uv(e){var t=e.request.headers[\"x-algolia-api-key\"]?{\"x-algolia-api-key\":\"*****\"}:{};return S(S({},e),{},{request:S(S({},e.request),{},{headers:S(S({},e.request.headers),t)})})}var av=[\"appId\",\"apiKey\",\"authMode\",\"algoliaAgents\"],iv=[\"params\"],ov=\"5.43.0\";function sv(e){return[{url:\"\".concat(e,\"-dsn.algolia.net\"),accept:\"read\",protocol:\"https\"},{url:\"\".concat(e,\".algolia.net\"),accept:\"write\",protocol:\"https\"}].concat(function(e){for(var t=e,n=e.length-1;n>0;n--){var r=Math.floor(Math.random()*(n+1)),u=e[n];t[n]=e[r],t[r]=u}return t}([{url:\"\".concat(e,\"-1.algolianet.com\"),accept:\"readWrite\",protocol:\"https\"},{url:\"\".concat(e,\"-2.algolianet.com\"),accept:\"readWrite\",protocol:\"https\"},{url:\"\".concat(e,\"-3.algolianet.com\"),accept:\"readWrite\",protocol:\"https\"}]))}function cv(e){var t=e.appId,n=e.apiKey,r=e.authMode,u=e.algoliaAgents,a=x(e,av),i=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"WithinHeaders\",r={\"x-algolia-api-key\":t,\"x-algolia-application-id\":e};return{headers:function(){return\"WithinHeaders\"===n?r:{}},queryParameters:function(){return\"WithinQueryParameters\"===n?r:{}}}}(t,n,r),o=function(e){var t=e.hosts,n=e.hostsCache,r=e.baseHeaders,u=e.logger,a=e.baseQueryParameters,i=e.algoliaAgent,o=e.timeouts,s=e.requester,c=e.requestsCache,l=e.responsesCache;function d(e){return f.apply(this,arguments)}function f(){return(f=v(B().m(function e(t){var r,u,a,i,o;return B().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,Promise.all(t.map(function(e){return n.get(e,function(){return Promise.resolve(qh(e))})}));case 1:return r=e.v,u=r.filter(function(e){return e.isUp()}),a=r.filter(function(e){return e.isTimedOut()}),i=[].concat(P(u),P(a)),o=i.length>0?i:t,e.a(2,{hosts:o,getTimeout:function(e,t){return(0===a.length&&0===e?1:a.length+3+e)*t}})}},e)}))).apply(this,arguments)}function p(e,t){return h.apply(this,arguments)}function h(){return h=v(B().m(function e(c,l){var f,p,h,m,D,y,g,F,E,b,A,C,k,w=arguments;return B().w(function(e){for(;;)switch(e.n){case 0:if(f=!(w.length>2&&void 0!==w[2])||w[2],p=[],h=Gh(c,l),m=Yh(r,c.headers,l.headers),D=\"GET\"===c.method?S(S({},c.data),l.data):{},y=S(S(S({},a),c.queryParameters),D),i.value&&(y[\"x-algolia-agent\"]=i.value),l&&l.queryParameters)for(g=0,F=Object.keys(l.queryParameters);g1&&void 0!==arguments[1]?arguments[1]:{},n=e.useReadTransporter||\"GET\"===e.method;if(!n)return p(e,t,n);var u=function(){return p(e,t)};if(!0!==(t.cacheable||e.cacheable))return u();var i={request:e,requestOptions:t,transporter:{queryParameters:a,headers:r}};return l.get(i,function(){return c.get(i,function(){return c.set(i,u()).then(function(e){return Promise.all([c.delete(i),e])},function(e){return Promise.all([c.delete(i),Promise.reject(e)])}).then(function(e){var t=T(e,2);return t[0],t[1]})})},{miss:function(e){return l.set(i,e)}})},requestsCache:c,responsesCache:l}}(S(S({hosts:sv(t)},a),{},{algoliaAgent:Lh({algoliaAgents:u,client:\"Lite\",version:ov}),baseHeaders:S(S({\"content-type\":\"text/plain\"},i.headers()),a.baseHeaders),baseQueryParameters:S(S({},i.queryParameters()),a.baseQueryParameters)}));return{transporter:o,appId:t,apiKey:n,clearCache:function(){return Promise.all([o.requestsCache.clear(),o.responsesCache.clear()]).then(function(){})},get _ua(){return o.algoliaAgent.value},addAlgoliaAgent:function(e,t){o.algoliaAgent.add({segment:e,version:t})},setClientApiKey:function(e){var t=e.apiKey;r&&\"WithinHeaders\"!==r?o.baseQueryParameters[\"x-algolia-api-key\"]=t:o.baseHeaders[\"x-algolia-api-key\"]=t},searchForHits:function(e,t){return this.search(e,t)},searchForFacets:function(e,t){return this.search(e,t)},customPost:function(e,t){var n=e.path,r=e.parameters,u=e.body;if(!n)throw new Error(\"Parameter `path` is required when calling `customPost`.\");var a={method:\"POST\",path:\"/{path}\".replace(\"{path}\",n),queryParameters:r||{},headers:{},data:u||{}};return o.request(a,t)},getRecommendations:function(e,t){e&&Array.isArray(e)&&(e={requests:e});if(!e)throw new Error(\"Parameter `getRecommendationsParams` is required when calling `getRecommendations`.\");if(!e.requests)throw new Error(\"Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.\");var n={method:\"POST\",path:\"/1/indexes/*/recommendations\",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(n,t)},search:function(e,t){if(e&&Array.isArray(e)){var n={requests:e.map(function(e){var t=e.params,n=x(e,iv);return\"facet\"===n.type?S(S(S({},n),t),{},{type:\"facet\"}):S(S(S({},n),t),{},{facet:void 0,maxFacetHits:void 0,facetQuery:void 0})})};e=n}if(!e)throw new Error(\"Parameter `searchMethodParams` is required when calling `search`.\");if(!e.requests)throw new Error(\"Parameter `searchMethodParams.requests` is required when calling `search`.\");var r={method:\"POST\",path:\"/1/indexes/*/queries\",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return o.request(r,t)}}}var lv=\"4.5.4\";function dv(e,t,r){var u=n.useMemo(function(){var n=function(e,t,n){if(!e||\"string\"!=typeof e)throw new Error(\"`appId` is missing.\");if(!t||\"string\"!=typeof t)throw new Error(\"`apiKey` is missing.\");return cv(S({appId:e,apiKey:t,timeouts:{connect:1e3,read:2e3,write:3e4},logger:{debug:function(e,t){return Promise.resolve()},info:function(e,t){return Promise.resolve()},error:function(e,t){return Promise.resolve()}},requester:{send:function(e){return new Promise(function(t){var n=new XMLHttpRequest;n.open(e.method,e.url,!0),Object.keys(e.headers).forEach(function(t){return n.setRequestHeader(t,e.headers[t])});var r,u=function(e,r){return setTimeout(function(){n.abort(),t({status:0,content:r,isTimedOut:!0})},e)},a=u(e.connectTimeout,\"Connection timeout\");n.onreadystatechange=function(){n.readyState>n.OPENED&&void 0===r&&(clearTimeout(a),r=u(e.responseTimeout,\"Socket timeout\"))},n.onerror=function(){0===n.status&&(clearTimeout(a),clearTimeout(r),t({content:n.responseText||\"Network request failed\",status:n.status,isTimedOut:!1}))},n.onload=function(){clearTimeout(a),clearTimeout(r),t({content:n.responseText,status:n.status,isTimedOut:!1})},n.send(e.data)})}},algoliaAgents:[{segment:\"Browser\"}],authMode:\"WithinQueryParameters\",responsesCache:Zh(),requestsCache:Zh({serializable:!1}),hostsCache:Mh({caches:[Rh({key:\"\".concat(ov,\"-\").concat(e)}),Zh()]})},n))}(e,t);return n.addAlgoliaAgent(\"docsearch\",lv),!1===/docsearch.js \\(.*\\)/.test(n.transporter.algoliaAgent.value)&&n.addAlgoliaAgent(\"docsearch-react\",lv),r(n)},[e,t,r]);return u}var fv=[\"appId\",\"apiKey\",\"askAi\",\"maxResultsPerGroup\",\"theme\",\"onClose\",\"transformItems\",\"hitComponent\",\"resultsFooterComponent\",\"navigator\",\"initialScrollY\",\"transformSearchClient\",\"disableUserPersonalization\",\"initialQuery\",\"translations\",\"getMissingResultsUrl\",\"insights\",\"onAskAiToggle\",\"interceptAskAiEvent\",\"isAskAiActive\",\"recentSearchesLimit\",\"recentSearchesWithFavoritesLimit\",\"indices\",\"indexName\",\"searchParameters\",\"isHybridModeSupported\"],pv=[\"footer\",\"searchBox\"],hv=function(){var e=v(B().m(function e(t){var n,r,u,a,i,o,s,c,l,d,f,p,h,v,m,D,y,g,F;return B().w(function(e){for(;;)switch(e.p=e.n){case 0:return n=t.query,r=t.state,u=t.setContext,a=t.setStatus,i=t.searchClient,o=t.indexes,s=t.snippetLength,c=t.insights,l=t.appId,d=t.apiKey,f=t.maxResultsPerGroup,p=t.transformItems,h=void 0===p?V:p,v=t.saveRecentSearch,m=t.onClose,D=c,e.p=1,e.n=2,i.search({requests:o.map(function(e){var t,r,u,a,i,o,c,l=\"string\"==typeof e?e:e.name,d=\"string\"==typeof e?{}:e.searchParameters;return S({query:n,indexName:l,attributesToRetrieve:null!==(t=null==d?void 0:d.attributesToRetrieve)&&void 0!==t?t:[\"hierarchy.lvl0\",\"hierarchy.lvl1\",\"hierarchy.lvl2\",\"hierarchy.lvl3\",\"hierarchy.lvl4\",\"hierarchy.lvl5\",\"hierarchy.lvl6\",\"content\",\"type\",\"url\"],attributesToSnippet:null!==(r=null==d?void 0:d.attributesToSnippet)&&void 0!==r?r:[\"hierarchy.lvl1:\".concat(s.current),\"hierarchy.lvl2:\".concat(s.current),\"hierarchy.lvl3:\".concat(s.current),\"hierarchy.lvl4:\".concat(s.current),\"hierarchy.lvl5:\".concat(s.current),\"hierarchy.lvl6:\".concat(s.current),\"content:\".concat(s.current)],snippetEllipsisText:null!==(u=null==d?void 0:d.snippetEllipsisText)&&void 0!==u?u:\"…\",highlightPreTag:null!==(a=null==d?void 0:d.highlightPreTag)&&void 0!==a?a:\"\",highlightPostTag:null!==(i=null==d?void 0:d.highlightPostTag)&&void 0!==i?i:\"\",hitsPerPage:null!==(o=null==d?void 0:d.hitsPerPage)&&void 0!==o?o:20,clickAnalytics:null!==(c=null==d?void 0:d.clickAnalytics)&&void 0!==c?c:D},null!=d?d:{})})});case 2:return y=e.v,g=y.results,e.a(2,g.flatMap(function(e){var t,n=e,a=n.hits,i=n.nbHits,o=U(h(a),function(e){return G(e)},f);r.context.searchSuggestions.length0&&re.forEach(function(e){je.push(\"string\"==typeof e?{name:e}:e)}),je.length<1)throw new Error(\"Must supply either `indexName` or `indices` for DocSearch to work\");var Ne=je[0].name,ze=n.useRef(ua({key:\"__DOCSEARCH_ASKAI_CONVERSATIONS__\".concat((null==we?void 0:we.indexName)||Ne),limit:10})).current,Re=n.useRef(ra({key:\"__DOCSEARCH_FAVORITE_SEARCHES__\".concat(Ne),limit:10})).current,Me=n.useRef(ra({key:\"__DOCSEARCH_RECENT_SEARCHES__\".concat(Ne),limit:0===Re.getAll().length?X:te})).current,Ze=T(n.useState(!1),2),Le=Ze[0],$e=Ze[1],qe=zh({assistantId:_e,apiKey:(null==we?void 0:we.apiKey)||c,appId:(null==we?void 0:we.appId)||s,indexName:(null==we?void 0:we.indexName)||Ne,searchParameters:Se,useStagingEnv:xe,agentStudio:Pe}),Ue=qe.messages,Ve=qe.status,He=qe.setMessages,Ke=qe.sendMessage,We=qe.stopAskAiStreaming,Je=qe.askAiError,Qe=qe.sendFeedback,Ge=n.useRef(Ve);n.useEffect(function(){if(!j){if(\"streaming\"===Ge.current&&\"ready\"===Ve){Le&&Ue.at(-1)&&(Ue.at(-1).metadata={stopped:!0});var e,t=E(Ue[0].parts);try{for(t.s();!(e=t.n()).done;){var n=e.value;\"text\"===n.type&&ze.add(hu(n.text,Ue))}}catch(e){t.e(e)}finally{t.f()}}Ge.current=Ve}},[Ve,Ue,ze,j,Le]);var Ye=n.useMemo(function(){return\"error\"===Ve&&mu(Je)},[Ve,Je]),Xe=n.useCallback(function(e){var t=e.hierarchy,n=[\"lvl6\",\"lvl5\",\"lvl4\",\"lvl3\",\"lvl2\",\"lvl1\",\"lvl0\"].find(function(e){return t[e]});return S(S({},e),{},{type:n||\"lvl0\",content:null})},[]),et=n.useCallback(function(e){if(!j){var t=\"content\"===e.type?e.__docsearch_parent||Xe(e):e;t&&-1===Re.getAll().findIndex(function(e){return e.objectID===t.objectID})&&Me.add(t)}},[Re,Me,j,Xe]),tt=n.useCallback(function(e){if(pe.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,n={eventName:\"Item Selected\",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};pe.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(n)}},[pe.context.algoliaInsightsPlugin]),nt=n.useRef(void 0),rt=n.useCallback(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;if(e){var r={query:t,suggestedQuestionId:null==n?void 0:n.objectID};if(null!=J&&J(r))return void(nt.current&&nt.current.setQuery(\"\"))}if(e&&\"new-conversation\"===Ie&&Oe(\"initial\"),K(e,{query:t,suggestedQuestionId:null==n?void 0:n.objectID}),!oe){$e(!1);var u={};if(n&&(u.body={suggestedQuestionId:n.objectID}),Ke({role:\"user\",parts:[{type:\"text\",text:t}]},u),Fe.current){var a=Fe.current;\"function\"==typeof a.scrollTo?a.scrollTo({top:0,behavior:\"smooth\"}):a.scrollTop=0}nt.current&&nt.current.setQuery(\"\")}},[K,J,Ke,Ie,Oe,oe]),ut=n.useCallback(function(){var e=v(B().m(function e(t,n){return B().w(function(e){for(;;)switch(e.n){case 0:if(_e&&s){e.n=1;break}return e.a(2);case 1:return e.n=2,Qe(t,n);case 2:return e.a(2)}},e)}));return function(t,n){return e.apply(this,arguments)}}(),[_e,s,Qe]);nt.current||(nt.current=En({id:\"docsearch\",defaultActiveItemId:0,openOnFocus:!0,initialState:{query:Ce,context:{searchSuggestions:[]}},insights:Boolean(U),navigator:C,onStateChange:function(e){he(e.state)},getSources:function(e){var t=e.query,n=e.state,r=e.setContext,u=e.setStatus;if(!t){var a=function(e){var t=e.recentSearches,n=e.favoriteSearches,r=e.saveRecentSearch,u=e.onClose;return e.disableUserPersonalization?[]:[{sourceId:\"recentSearches\",onSelect:function(e){var t=e.item,n=e.event;r(t),H(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return t.getAll()}},{sourceId:\"favoriteSearches\",onSelect:function(e){var t=e.item,n=e.event;r(t),H(n)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return n.getAll()}}]}({recentSearches:Me,favoriteSearches:Re,saveRecentSearch:et,onClose:h,disableUserPersonalization:j,canHandleAskAi:ve}),i=ve?[{sourceId:\"recentConversations\",getItems:function(){return j?[]:ze.getAll()},onSelect:function(e){var t=e.item;t.messages&&(He(t.messages),K(!0))}}]:[];return[].concat(P(a),i)}var o={context:n.context},l=hv({query:t,state:o,setContext:r,setStatus:u,searchClient:ke,indexes:je,snippetLength:be,insights:Boolean(U),appId:s,apiKey:c,maxResultsPerGroup:d,transformItems:D,saveRecentSearch:et,onClose:h}),f=ve?[{sourceId:\"askAI\",getItems:function(){return[{type:\"askAI\",query:t,url_without_anchor:\"\",objectID:\"ask-ai-button\",content:null,url:\"\",anchor:null,hierarchy:{lvl0:\"Ask AI\",lvl1:t,lvl2:null,lvl3:null,lvl4:null,lvl5:null,lvl6:null},_highlightResult:{},_snippetResult:{},__docsearch_parent:null}]},onSelect:function(e){var t=e.item;\"askAI\"===t.type&&t.query&&rt(!0,t.query)}}]:[];return l.then(function(e){return[].concat(f,P(e))})}}));var at,it,ot=nt.current,st=ot.getEnvironmentProps,ct=ot.getRootProps,lt=ot.refresh;!function(e){var t=e.getEnvironmentProps,r=e.panelElement,u=e.formElement,a=e.inputElement;n.useEffect(function(){if(r&&u&&a){var e=t({panelElement:r,formElement:u,inputElement:a}),n=e.onTouchStart,i=e.onTouchMove;return window.addEventListener(\"touchstart\",n),window.addEventListener(\"touchmove\",i),function(){window.removeEventListener(\"touchstart\",n),window.removeEventListener(\"touchmove\",i)}}},[t,r,u,a])}({getEnvironmentProps:st,panelElement:Fe.current,formElement:ge.current,inputElement:Ee.current}),at={container:De.current},it=at.container,n.useEffect(function(){if(it){var e=it.querySelectorAll(\"a[href]:not([disabled]), button:not([disabled]), input:not([disabled])\"),t=e[0],n=e[e.length-1];return it.addEventListener(\"keydown\",r),function(){it.removeEventListener(\"keydown\",r)}}function r(e){\"Tab\"===e.key&&(e.shiftKey?document.activeElement===t&&(e.preventDefault(),n.focus()):document.activeElement===n&&(e.preventDefault(),t.focus()))}},[it]),Z({theme:f}),n.useEffect(function(){return document.body.classList.add(\"DocSearch--active\"),function(){var e,t;document.body.classList.remove(\"DocSearch--active\"),null===(e=(t=window).scrollTo)||void 0===e||e.call(t,0,w)}},[]),n.useEffect(function(){ea()},[]),n.useLayoutEffect(function(){var e=window.innerWidth-document.body.clientWidth;return document.body.style.marginInlineEnd=\"\".concat(e,\"px\"),function(){document.body.style.marginInlineEnd=\"0px\"}},[]),n.useEffect(function(){window.matchMedia(\"(max-width: 768px)\").matches&&(be.current=5)},[]),n.useEffect(function(){var e;Fe.current&&!G&&(\"function\"==typeof(e=Fe.current).scrollTo?e.scrollTo({top:0,behavior:\"smooth\"}):e.scrollTop=0)},[pe.query,G]),n.useEffect(function(){Ce.length>0&&(lt(),Ee.current&&Ee.current.focus())},[Ce,lt]),n.useEffect(function(){function e(){if(ye.current){var e=.01*window.innerHeight;ye.current.style.setProperty(\"--docsearch-vh\",\"\".concat(e,\"px\"))}}return e(),window.addEventListener(\"resize\",e),function(){window.removeEventListener(\"resize\",e)}},[]),n.useEffect(function(){G||(ot.refresh(),He([]))},[G,ot,He]),n.useEffect(function(){Oe(\"initial\")},[G,Oe]);var dt=function(){var e=v(B().m(function e(){return B().w(function(e){for(;;)switch(e.n){case 0:return $e(!0),e.n=1,We();case 1:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}(),ft=function(){He([]),Oe(\"new-conversation\")},pt=!0,ht=pe.collections.some(function(e){return e.items.length>0});return\"idle\"!==pe.status||!1!==ht||0!==pe.query.length||G||(pt=!1),n.createElement(\"div\",A({ref:De},ct({\"aria-expanded\":!0}),{className:[\"DocSearch\",\"DocSearch-Container\",\"stalled\"===pe.status&&\"DocSearch-Container--Stalled\",\"error\"===pe.status&&\"DocSearch-Container--Errored\"].filter(Boolean).join(\" \"),role:\"button\",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&h()}}),n.createElement(\"div\",{className:\"DocSearch-Modal\",ref:ye},n.createElement(\"header\",{className:\"DocSearch-SearchBar\",ref:ge},n.createElement(Yu,A({},ot,{state:pe,placeholder:me||\"Search docs\",autoFocus:0===Ce.length,inputRef:Ee,isFromSelection:Boolean(Ce)&&Ce===Ae,translations:le,isAskAiActive:G,askAiStatus:Ve,askAiError:Je,askAiState:Ie,setAskAiState:Oe,isThreadDepthError:Ye&&\"new-conversation\"!==Ie,onClose:h,onAskAiToggle:K,onAskAgain:function(e){rt(!0,e)},onStopAskAiStreaming:dt,onNewConversation:ft,onViewConversationHistory:function(){Oe(\"conversation-history\")}}))),pt&&n.createElement(\"div\",{className:\"DocSearch-Dropdown\",ref:Fe},n.createElement(Vu,A({},ot,{indexName:Ne,state:pe,hitComponent:g,resultsFooterComponent:b,disableUserPersonalization:j,recentSearches:Me,favoriteSearches:Re,conversations:ze,inputRef:Ee,translations:de,getMissingResultsUrl:$,isAskAiActive:G,canHandleAskAi:ve,messages:Ue,askAiError:Je,status:Ve,hasCollections:ht,askAiState:Ie,selectAskAiQuestion:rt,suggestedQuestions:Te,selectSuggestedQuestion:function(e){rt(!0,e.question,e)},agentStudio:Pe,onAskAiToggle:K,onNewConversation:ft,onItemClick:function(e,t){if(\"askAI\"===e.type&&e.query){if(\"stored\"===e.anchor&&\"messages\"in e){He(e.messages);var n={query:e.query,messageId:e.messages[0].id};if(null!=J&&J(n))return nt.current&&nt.current.setQuery(\"\"),void t.preventDefault();K(!0,n)}else rt(!0,e.query);return Oe(\"initial\"),void t.preventDefault()}tt(e),et(e),H(t)||h()},onFeedback:ut}))),n.createElement(\"footer\",{className:\"DocSearch-Footer\"},n.createElement(wn,{translations:ce,isAskAiActive:G}))))}var mv=n.forwardRef(function(e,r){return n.createElement(t,A({},e,{ref:r}),n.createElement(Dv,e))});function Dv(t){var r,u,a,i=e(),o=i.searchButtonRef,s=i.keyboardShortcuts,c=i.isModalActive,l=i.isAskAiActive,d=i.initialQuery,p=i.onAskAiToggle,h=i.openModal,v=i.closeModal;return n.createElement(n.Fragment,null,n.createElement(X,{keyboardShortcuts:s,ref:o,translations:null===(r=t.translations)||void 0===r?void 0:r.button,onClick:h}),c&&f(n.createElement(vv,A({},t,{initialScrollY:window.scrollY,initialQuery:d,translations:null==t||null===(u=t.translations)||void 0===u?void 0:u.modal,isAskAiActive:l,onAskAiToggle:p,onClose:v})),null!==(a=t.portalContainer)&&void 0!==a?a:document.body))}function yv(e){var t=e.isOpen,r=e.onOpen,u=e.onClose,a=e.isAskAiActive,i=e.onAskAiToggle,o=$(e.keyboardShortcuts);n.useEffect(function(){function e(e){var n;if(t&&\"Escape\"===e.code&&a)i(!1);else{var s=o[\"Ctrl/Cmd+K\"]&&\"k\"===(null===(n=e.key)||void 0===n?void 0:n.toLowerCase())&&(e.metaKey||e.ctrlKey),c=o[\"/\"]&&\"/\"===e.key;(\"Escape\"===e.code&&t||s||!function(e){var t=e.composedPath()[0],n=t.tagName;return t.isContentEditable||\"INPUT\"===n||\"SELECT\"===n||\"TEXTAREA\"===n}(e)&&c&&!t)&&(e.preventDefault(),t?u():document.body.classList.contains(\"DocSearch--active\")||r())}}return window.addEventListener(\"keydown\",e),function(){window.removeEventListener(\"keydown\",e)}},[t,r,u,a,i,o])}export{mv as DocSearch,X as DocSearchButton,Dv as DocSearchInner,vv as DocSearchModal,yv as useDocSearchKeyboardEvents,lv as version};\n","var n=function(t,s,r,e){var u;s[0]=0;for(var h=1;h=5&&((e||!n&&5===r)&&(h.push(r,0,e,s),r=6),n&&(h.push(r,n,0,s),r=6)),e=\"\"},a=0;a\"===t?(r=1,e=\"\"):e=t+e[0]:u?t===u?u=\"\":e+=t:'\"'===t||\"'\"===t?u=t:\">\"===t?(p(),r=1):r&&(\"=\"===t?(r=5,s=e,e=\"\"):\"/\"===t&&(r<5||\">\"===n[a][l+1])?(p(),3===r&&(h=h[0]),r=h,(h=h[0]).push(2,0,r),r=0):\" \"===t||\"\\t\"===t||\"\\n\"===t||\"\\r\"===t?(p(),r=2):e+=t),3===r&&\"!--\"===e&&(r=4,h=h[0])}return p(),h}(s)),r),arguments,[])).length>1?r:r[0]}\n","import type { DocSearchRef, InitialAskAiMessage } from '@docsearch/core';\nimport type { DocSearchProps as DocSearchComponentProps } from '@docsearch/react';\nimport { DocSearch, version as docSearchVersion } from '@docsearch/react';\nimport htm from 'htm';\nimport type { JSX } from 'preact';\nimport { createElement, render, isValidElement, unmountComponentAtNode, createRef } from 'preact/compat';\n\n/**\n * Instance returned by docsearch() for programmatic control.\n */\nexport interface DocSearchInstance {\n /** Returns true once the component is mounted and ready. */\n readonly isReady: boolean;\n /** Returns true if the modal is currently open. */\n readonly isOpen: boolean;\n /** Opens the search modal. */\n open(): void;\n /** Closes the search modal. */\n close(): void;\n /** Opens Ask AI mode (modal). */\n openAskAi(initialMessage?: InitialAskAiMessage): void;\n /** Unmounts the DocSearch component and cleans up. */\n destroy(): void;\n}\n\n/**\n * Lifecycle callbacks for the DocSearch instance.\n */\nexport interface DocSearchCallbacks {\n /** Called once DocSearch is mounted and ready for interaction. */\n onReady?: () => void;\n /** Called when the modal opens. */\n onOpen?: () => void;\n /** Called when the modal closes. */\n onClose?: () => void;\n interceptAskAiEvent?: (initialMessage: InitialAskAiMessage) => boolean | void;\n}\n\nexport type DocSearchProps = DocSearchCallbacks &\n Omit & {\n container: HTMLElement | string;\n environment?: typeof window;\n };\n\nfunction getHTMLElement(value: HTMLElement | string, env: typeof window | undefined): HTMLElement {\n if (typeof value !== 'string') return value;\n if (!env) throw new Error('Cannot resolve a selector without a browser environment.');\n const el = env.document.querySelector(value);\n if (!el) throw new Error(`Container selector did not match any element: \"${value}\"`);\n return el;\n}\n\n// Tiny `html` helper bound to Preact createElement\nconst html = htm.bind(createElement) as unknown as (strings: TemplateStringsArray, ...values: unknown[]) => JSX.Element;\n\nexport type TemplateHelpers = Record & { html: typeof html };\n\nfunction createTemplateFunction

    , R = JSX.Element | string | (() => JSX.Element)>(\n original: ((props: P, helpers?: TemplateHelpers) => R) | undefined,\n): ((props: P) => JSX.Element) | undefined {\n if (!original) return undefined;\n return (props: P) => {\n const out = original(props, { html });\n\n // Element, return as is\n if (isValidElement(out)) return out;\n\n // Component function, call with same props\n if (typeof out === 'function') return out(props);\n\n // String, render as plain text to avoid XSS\n if (typeof out === 'string') return createElement('span', null, out);\n\n // Fallback\n return out as JSX.Element;\n };\n}\n\nexport function docsearch(allProps: DocSearchProps): DocSearchInstance {\n const { container, environment, transformSearchClient, hitComponent, resultsFooterComponent, ...rest } = allProps;\n const containerEl = getHTMLElement(container, environment || (typeof window !== 'undefined' ? window : undefined));\n const ref = createRef();\n let isReady = false;\n\n const props = {\n ...rest,\n ref,\n hitComponent: createTemplateFunction(hitComponent),\n resultsFooterComponent: createTemplateFunction(resultsFooterComponent),\n transformSearchClient: (searchClient: any): any => {\n if (searchClient?.addAlgoliaAgent) {\n searchClient.addAlgoliaAgent('docsearch.js', docSearchVersion);\n }\n return typeof transformSearchClient === 'function' ? transformSearchClient(searchClient) : searchClient;\n },\n } satisfies DocSearchComponentProps & { ref: typeof ref };\n\n render(createElement(DocSearch, props), containerEl);\n\n // Mark as ready after render completes\n isReady = true;\n\n return {\n open(): void {\n ref.current?.open();\n },\n close(): void {\n ref.current?.close();\n },\n openAskAi(initialMessage?: InitialAskAiMessage): void {\n ref.current?.openAskAi(initialMessage);\n },\n get isReady(): boolean {\n return isReady;\n },\n get isOpen(): boolean {\n return ref.current?.isOpen ?? false;\n },\n destroy(): void {\n unmountComponentAtNode(containerEl);\n isReady = false;\n },\n };\n}\n"],"names":["n","l","t","i","r","f","e","o","c","s","a","h","p","v","Array","isArray","y","slice","w","Object","assign","d","parentNode","remove","_","u","arguments","length","children","call","g","type","props","key","ref","__k","__","__b","__e","__c","constructor","undefined","__v","__i","__u","vnode","b","current","k","m","this","context","__g","M","S","$","push","debounceRendering","queueMicrotask","x","sort","shift","__P","q","__n","namespaceURI","ownerDocument","P","C","String","I","D","j","B","A","nextSibling","insertBefore","nodeType","H","some","L","setProperty","O","style","cssText","replace","toLowerCase","__l","addEventListener","removeEventListener","removeAttribute","setAttribute","T","event","F","__z","prototype","render","contextType","value","E","sub","state","__h","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","componentDidUpdate","__r","getChildContext","getSnapshotBeforeUpdate","V","then","data","indexOf","N","localName","createTextNode","createElementNS","is","__m","childNodes","attributes","name","__html","innerHTML","content","z","diffed","forEach","map","unmount","componentWillUnmount","document","documentElement","firstChild","J","getDerivedStateFromError","setState","componentDidCatch","forceUpdate","__H","__N","__f","filter","every","concat","useDebugValue","requestAnimationFrame","clearTimeout","cancelAnimationFrame","setTimeout","R","displayName","isReactComponent","isPureReactComponent","Symbol","for","bind","count","only","toArray","U","appendChild","W","containerInfo","__R","__a","__O","pop","createElement","fallback","Z","Y","G","test","textContent","defineProperty","configurable","get","set","writable","Q","X","nn","cancelBubble","en","defaultPrevented","persist","isPropagationStopped","isDefaultPrevented","nativeEvent","tn","rn","enumerable","class","un","multiple","selected","defaultValue","className","defaultProps","$$typeof","on","ln","cn","ReactCurrentDispatcher","readContext","useCallback","useContext","useDeferredValue","useEffect","useId","useImperativeHandle","useInsertionEffect","useLayoutEffect","useMemo","useReducer","useRef","useState","useSyncExternalStore","useTransition","sn","hn","En","startTransition","version","Children","hydrate","unmountComponentAtNode","createPortal","createContext","Set","add","delete","Provider","Consumer","createFactory","cloneElement","apply","createRef","Fragment","isValidElement","isElement","isFragment","isMemo","startsWith","findDOMNode","Component","PureComponent","memo","forwardRef","flushSync","unstable_batchedUpdates","StrictMode","Suspense","lazy","default","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","_typeof","toPrimitive","TypeError","keys","getOwnPropertySymbols","getOwnPropertyDescriptor","getOwnPropertyDescriptors","defineProperties","iterator","next","done","return","toString","from","isOpen","isAskAiActive","onAskAiToggle","onClose","onOpen","keyboardShortcuts","code","metaKey","ctrlKey","composedPath","tagName","isContentEditable","preventDefault","body","classList","contains","window","theme","onReady","onSidepanelOpen","onSidepanelClose","hasOwnProperty","propertyIsEnumerable","initialQuery","matchMedia","matches","includes","has","K","focus","open","close","openAskAi","openSidepanel","isReady","isSidepanelOpen","isSidepanelSupported","dataset","onInput","searchButtonRef","docsearchState","setDocsearchState","openModal","closeModal","isModalActive","initialAskAiMessage","registerView","isHybridModeSupported","p$1","Promise","resolve","ReferenceError","Reflect","construct","setPrototypeOf","getPrototypeOf","__proto__","create","Boolean","valueOf","toStringTag","_invoke","Map","Function","RegExp","WeakMap","reduce","exec","groups","indices","join","size","color","width","height","viewBox","cx","cy","stroke","fill","strokeWidth","strokeLinecap","strokeLinejoin","button","altKey","shiftKey","source","__docsearch_parent","_highlightResult","hierarchy","lvl0","translations","buttonText","buttonAriaLabel","navigator","platform","ee","reactsToKey","te","ne","re","ue","collections","items","ae","ie","oe","se","segment","ce","item","index","__autocomplete_indexName","positions","findIndex","objectID","queryID","__autocomplete_queryID","algoliaSource","de","fe","pe","he","ve","me","De","ye","ge","Fe","Ee","objectIDs","be","le","split","Number","__autocomplete_algoliaCredentials","appId","apiKey","headers","init","setAuthenticatedUserToken","setUserToken","clickedObjectIDsAfterSearch","clickedObjectIDs","clickedFilters","convertedObjectIDsAfterSearch","convertedObjectIDs","convertedFilters","viewedObjectIDs","payload","viewedFilters","Ae","Ce","ke","we","_e","Se","xe","Be","Ie","Oe","Te","onItemsChange","insights","insightsEvents","eventName","Pe","je","onSelect","onActive","__autocomplete_clickAnalytics","insightsClient","insightsInitParams","AlgoliaAnalyticsObject","queue","async","src","onerror","console","error","partial","subscribe","setContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","userToken","Ne","getItems","onStateChange","__autocomplete_pluginOptions","__automaticInsights","ze","Me","catch","finally","onCancelList","cancel","isCanceled","Re","Ze","Le","$e","qe","Ue","Ve","He","We","Je","Ke","awaitSubmit","wait","Math","max","Qe","activeItemId","collection","itemInputValue","getItemInputValue","itemUrl","getItemUrl","Ge","sourceId","Ye","Xe","et","tt","nt","ut","at","it","ot","st","lt","dt","ft","pt","ht","plugins","debug","openOnFocus","enterKeyHint","ignoreCompositionEvents","placeholder","autoFocus","defaultActiveItemId","stallThreshold","environment","shouldPanelOpen","reshape","sources","id","initialState","query","completion","status","onSubmit","onReset","getSources","all","ct","Error","JSON","stringify","setIsOpen","onResolve","__default","navigate","location","navigateNewTab","navigateNewWindow","vt","mt","Dt","yt","gt","Ft","Et","bt","At","Ct","kt","execute","_t","searchClient","requesterId","requests","find","xt","Bt","It","Ot","Tt","jt","Nt","zt","Rt","Mt","Zt","nextState","refresh","store","Pt","setCollections","setQuery","setActiveItemId","setStatus","getState","pendingRequests","queries","params","transformResponse","wt","_automaticInsights","results","hits","facetHits","label","highlighted","St","sourcesBySourceId","values","Lt","$t","qt","Ut","Vt","Kt","Wt","Jt","Qt","Gt","Yt","Xt","getEnvironmentProps","inputElement","formElement","panelElement","isEmpty","target","dispatch","cancelAll","onTouchStart","onMouseDown","onTouchMove","activeElement","blur","getRootProps","role","getFormProps","action","noValidate","getLabelProps","htmlFor","getInputProps","maxLength","match","userAgent","autoComplete","autoCorrect","autoCapitalize","spellCheck","onChange","currentTarget","isComposing","onCompositionEnd","onKeyDown","Ht","getElementById","scrollIntoViewIfNeeded","scrollIntoView","nextActiveItemId","onFocus","onBlur","onClick","getPanelProps","onMouseLeave","getListProps","getItemProps","__autocomplete_id","onMouseMove","an","options","__autocomplete_metadata","userAgents","ua","dn","fn","pn","vn","mn","Dn","yn","gn","Fn","prevState","race","rt","Event","metadata","querySelector","bn","An","Cn","poweredByText","href","hostname","rel","xmlns","rx","ry","kn","ariaLabel","wn","selectText","selectKeyAriaLabel","submitQuestionText","navigateText","navigateUpKeyAriaLabel","navigateDownKeyAriaLabel","closeText","backToSearchText","closeKeyAriaLabel","points","_n","hit","url","Sn","strokeOpacity","fillRule","transform","attributeName","to","dur","repeatCount","xn","Bn","In","On","Tn","Pn","jn","zn","Nn","x1","x2","y1","y2","Rn","Mn","clipRule","Zn","Ln","$n","qn","Un","Vn","Hn","before","separator","lastSeparator","after","Kn","onSearchQueryClick","aggregatedToolCallNode","aggregatedToolCallText","tabIndex","Jn","breaks","extensions","gfm","hooks","pedantic","renderer","silent","tokenizer","walkTokens","Qn","Gn","Yn","er","caret","getRegex","Xn","codeRemoveIndent","outputLinkReplace","indentCodeCompensation","beginningSpace","endingHash","startingSpaceChar","endingSpaceChar","nonSpaceChar","newLineCharGlobal","tabCharGlobal","multipleSpaceGlobal","blankLine","doubleBlankLine","blockquoteStart","blockquoteSetextReplace","blockquoteSetextReplace2","listReplaceTabs","listReplaceNesting","listIsTask","listReplaceTask","anyLine","hrefBrackets","tableDelimiter","tableAlignChars","tableRowBlankLine","tableAlignRight","tableAlignCenter","tableAlignLeft","startATag","endATag","startPreScriptTag","endPreScriptTag","startAngleBracket","endAngleBracket","pedanticHrefTitle","unicodeAlphaNumeric","escapeTest","escapeReplace","escapeTestNoEncode","escapeReplaceNoEncode","unescapeTest","percentDecode","findPipe","splitPipe","slashPipe","carriageReturn","spaceLine","notSpaceStart","endingNewline","listItemRegex","nextBulletRegex","min","hrRegex","fencesBeginRegex","headingBeginRegex","htmlBeginRegex","tr","nr","rr","ur","ar","ir","or","sr","cr","lr","dr","fr","pr","hr","blockquote","def","fences","heading","html","lheading","list","newline","paragraph","table","text","vr","mr","Dr","yr","gr","Fr","Er","br","Ar","Cr","kr","wr","_r","Sr","xr","Br","Ir","Or","Tr","Pr","jr","Nr","zr","Rr","Mr","Zr","Lr","_backpedal","anyPunctuation","autolink","blockSkip","del","emStrongLDelim","emStrongRDelimAst","emStrongRDelimUnd","escape","link","nolink","punctuation","reflink","reflinkSearch","tag","$r","qr","Ur","Vr","normal","Hr","Kr","Wr","Jr","Qr","encodeURI","Gr","trim","splice","Yr","charAt","Xr","title","other","inLink","raw","tokens","inlineTokens","eu","rules","block","codeBlockStyle","lang","inline","depth","lexer","top","blockTokens","substring","ordered","start","loose","repeat","trimStart","search","task","checked","trimEnd","pre","header","align","rows","inRawBlock","lastIndex","escaped","tu","links","inlineQueue","space","endsWith","startBlock","charCodeAt","lastIndexOf","emStrongMask","emStrong","codespan","startInline","inlineText","lex","nu","parser","parse","parseInline","listitem","checkbox","unshift","tablecell","tablerow","textRenderer","ru","uu","renderers","image","strong","em","au","lexInline","iu","setOptions","parseMarkdown","use","defaults","childTokens","flat","level","passThroughHooks","passThroughHooksRespectAsync","onError","preprocess","provideLexer","processAllTokens","provideParser","postprocess","message","reject","ou","su","cu","getDefaults","Parser","Renderer","TextRenderer","Lexer","Tokenizer","Hooks","lu","encodeURIComponent","du","copyButtonText","copyButtonCopiedText","isStreaming","querySelectorAll","closest","getAttribute","clipboard","writeText","decodeURIComponent","dangerouslySetInnerHTML","fu","part","searchingText","preToolCallText","toolCallResultText","input","output","nbHits","pu","hu","parts","messages","anchor","lvl1","lvl2","lvl3","lvl4","lvl5","lvl6","url_without_anchor","vu","mu","Du","yu","disclaimerText","gu","exchange","askAiError","isLastExchange","loadingStatus","conversations","onFeedback","agentStudio","userMessage","assistantMessage","stoppedStreamingText","errorTitleText","afterToolCallText","duringToolCallText","matchAll","stopped","thinkingText","Fu","showActions","latestAssistantMessageContent","Eu","urlsToDisplay","relatedSourcesText","getOne","feedback","likeButtonTitle","dislikeButtonTitle","thanksForFeedbackText","ku","wu","Cu","Au","bu","threadDepthExceededMessage","startNewConversationButtonText","onNewConversation","reverse","copyButtonTitle","disabled","_u","Su","xu","attribute","Bu","Iu","Tu","Ou","renderIcon","renderAction","onItemClick","hitComponent","askAiPlaceholder","noResultsAskAiPlaceholder","Pu","ju","stopPropagation","Nu","titleText","helpText","zu","suggestedQuestions","selectSuggestedQuestion","newConversationTitle","newConversationDescription","question","Ru","Mu","noResultsText","suggestedQueryText","reportMissingResultsText","reportMissingResultsLinkText","searchSuggestions","canHandleAskAi","inputRef","getMissingResultsUrl","Zu","Lu","resultsFooterComponent","$u","qu","recentSearchesTitle","saveRecentSearchButtonTitle","removeRecentSearchButtonTitle","favoriteSearchesTitle","removeFavoriteSearchButtonTitle","recentConversationsTitle","removeRecentConversationButtonTitle","favoriteSearches","recentSearches","Uu","Vu","askAiState","newConversation","askAiScreen","errorScreen","hasCollections","resultsScreen","noResultsScreen","startScreen","Hu","Ku","Wu","setOpen","Ju","Qu","shimmer","Trigger","Content","Item","Gu","Yu","setAskAiState","clearButtonTitle","clearButtonAriaLabel","closeButtonText","closeButtonAriaLabel","searchInputLabel","backToKeywordSearchButtonText","backToKeywordSearchButtonAriaLabel","placeholderTextAskAiStreaming","newConversationPlaceholder","conversationHistoryTitle","startNewConversationText","viewConversationHistoryText","threadDepthErrorPlaceholder","isFromSelection","select","askAiStatus","isThreadDepthError","onAskAgain","hidden","onStopAskAiStreaming","onViewConversationHistory","Xu","localStorage","ceil","removeItem","ta","setItem","getItem","DOMException","na","ra","limit","_snippetResult","getAll","addFeedback","getConversation","aa","ia","oa","sa","_Error","_ref","_this","cause","_classCallCheck","_callSuper","_inherits","_createClass","isInstance","hasMarker","_wrapNativeSuper","ca","la","da","fa","pa","ha","va","_ca","_ref2","_this2","argument","ma","Da","ya","ga","Fa","_ca2","_ref3","_this3","Ea","ba","Aa","Ca","ka","_ca3","_ref4","_this4","wrap","_ref5","wa","field","line","_a","xa","onRetry","onComment","onEvent","parseInt","feed","reset","consume","Sa","enqueue","TransformStream","Ba","_zod","traits","constr","Parent","deferred","hasInstance","Ia","Oa","Ta","Pa","ja","entries","Na","za","Ra","Ma","Za","La","$a","qa","Ua","Va","captureStackTrace","Ha","Ka","Wa","Ja","Qa","Ga","Ya","parent","Xa","ei","safeint","MIN_SAFE_INTEGER","MAX_SAFE_INTEGER","int32","uint32","float32","float64","MAX_VALUE","ti","aborted","issues","continue","ni","path","ri","ui","inst","customError","localeError","reportInput","ai","File","ii","oi","si","ci","li","di","run","Err","callee","fi","pi","success","hi","vi","mi","ki","wi","_i","Si","xi","Bi","Ii","Oi","Ti","Pi","ji","Ni","zi","Ri","Mi","Zi","Li","$i","qi","Ui","Vi","precision","Hi","Ki","Wi","Ji","Qi","Gi","Yi","onattach","Xi","number","bigint","object","eo","bag","inclusive","maximum","exclusiveMaximum","POSITIVE_INFINITY","check","origin","abort","minimum","exclusiveMinimum","NEGATIVE_INFINITY","no","multipleOf","BigInt","toFixed","pow","divisor","ro","format","pattern","isInteger","expected","isSafeInteger","note","uo","when","ao","io","exact","oo","so","co","lo","patterns","fo","po","ho","vo","position","mo","prefix","Do","suffix","yo","go","schema","property","Fo","mime","Eo","tx","bo","indent","args","execution","Ao","major","minor","patch","Co","checks","skipChecks","direction","validate","vendor","ko","coerce","wo","_o","So","v1","v2","v3","v4","v5","v6","v7","v8","xo","Bo","URL","protocol","normalize","Io","Oo","To","Po","jo","No","zo","Ro","local","offset","Mo","Zo","Lo","$o","qo","Uo","Vo","Ho","atob","Ko","contentEncoding","Wo","padEnd","Jo","Qo","typ","alg","Go","isNaN","isFinite","received","Yo","Xo","es","ts","ns","rs","us","element","as","shape","optin","optout","keySet","numKeys","optionalKeys","os","catchall","ss","cs","jitless","write","compile","ls","errors","ds","flatMap","fs","propValues","discriminator","unionFallback","ps","left","right","vs","hs","valid","Date","mergeErrorPath","ms","keyType","valueType","ownKeys","Ds","ys","gs","Fs","Es","innerType","bs","As","Cs","ks","ws","_s","Ss","catchValue","xs","in","out","Bs","Is","Os","freeze","Ts","getter","Ps","js","Ns","_map","_idmap","Rs","Ms","Zs","Ls","$s","qs","Us","Vs","Hs","Ks","Ws","Js","Qs","Gs","Ys","Xs","ec","tc","nc","rc","uc","toUpperCase","ic","counter","metadataRegistry","unrepresentable","override","seen","schemaPath","cycle","toJSONSchema","process","isParent","minLength","guid","datetime","json_string","regex","allOf","nullable","enum","not","minItems","maxItems","properties","required","additionalProperties","anyOf","rest","prefixItems","additionalItems","propertyNames","const","contentMediaType","_prefault","readOnly","oc","examples","cycles","reused","external","$ref","registry","uri","defId","zodSchema","jsonSchema","$schema","warn","$id","defs","$defs","definitions","sc","gte","lowercase","lte","maxSize","minSize","negative","nonnegative","nonpositive","overwrite","positive","uppercase","cc","Pc","dc","pc","vc","Dc","_errors","flatten","formErrors","fieldErrors","addIssue","addIssues","yc","gc","Fc","Ec","bc","Di","Ac","yi","Cc","gi","kc","Fi","wc","Ei","_c","bi","Sc","Ai","xc","Ci","Bc","clone","brand","register","safeParse","parseAsync","safeParseAsync","spa","encode","decode","encodeAsync","decodeAsync","safeEncode","safeDecode","safeEncodeAsync","safeDecodeAsync","refine","$l","superRefine","fatal","ac","optional","xl","Il","nullish","nonoptional","Pl","array","pl","yl","and","Fl","zl","_l","Ol","prefault","Tl","jl","pipe","readonly","Rl","describe","description","meta","isOptional","isNullable","Ic","nonempty","Oc","email","jc","Rc","jwt","Xc","emoji","Mc","Nc","uuid","zc","uuidv4","uuidv6","uuidv7","nanoid","Zc","cuid","Lc","cuid2","$c","ulid","qc","base64","Qc","base64url","Gc","xid","Uc","ksuid","Vc","ipv4","Hc","ipv6","Kc","cidrv4","Wc","cidrv6","Jc","e164","Yc","lc","date","fc","time","hc","duration","mc","Tc","el","int","rl","safe","step","finite","minValue","maxValue","isInt","tl","nl","ul","al","il","ol","sl","cl","ll","dl","fl","unwrap","hl","keyof","Cl","passthrough","strict","strip","extend","safeExtend","merge","pick","omit","Sl","vl","ml","Dl","gl","El","bl","Al","extract","exclude","fromEntries","kl","wl","Bl","removeDefault","removeCatch","Nl","Zl","Ll","Ml","ql","Ul","Class","assertEqual","assertIs","assertNever","arrayToEnum","getValidEnumValues","objectKeys","objectValues","floor","joinValues","jsonStringifyReplacer","mergeShapes","Vl","Hl","string","nan","boolean","function","symbol","null","promise","unknown","Kl","Wl","unionErrors","returnTypeError","argumentsError","Jl","invalid_type","invalid_literal","unrecognized_keys","invalid_union","invalid_union_discriminator","invalid_enum_value","invalid_arguments","invalid_return_type","invalid_date","invalid_string","validation","too_small","too_big","custom","invalid_intersection_types","not_multiple_of","not_finite","defaultError","Ql","Gl","Yl","errorMaps","issueData","Xl","common","contextualErrorMap","schemaErrorMap","ed","td","nd","dirty","mergeObjectSync","alwaysSet","rd","ud","ad","od","sd","errToObj","cd","_cachedPath","_path","_key","ld","_error","dd","errorMap","invalid_type_error","required_error","fd","pd","_def","refinement","parsedType","ctx","_parse","_parseSync","_parseAsync","_refinement","vf","typeName","Ef","ZodEffects","effect","mf","Df","Jd","hf","Yd","nf","yf","ZodDefault","bf","ZodBranded","gf","ZodCatch","Af","Cf","hd","vd","md","Dd","yd","gd","Fd","Ed","bd","Ad","Cd","kd","wd","_d","Sd","xd","Bd","Id","Od","Td","Pd","jd","Nd","_getType","_getOrReturnCtx","kind","_addCheck","zd","ZodString","Rd","setLimit","ZodNumber","Md","_getInvalidInput","ZodBigInt","Zd","ZodBoolean","Ld","getTime","ZodDate","$d","ZodSymbol","qd","ZodUndefined","Ud","ZodNull","Vd","_any","ZodAny","Hd","_unknown","ZodUnknown","Kd","never","ZodNever","Wd","void","ZodVoid","_processInputParams","exactLength","mergeArray","Qd","Gd","rf","ZodArray","_cached","nonstrict","augment","_getCached","unknownKeys","ZodObject","df","strictCreate","lazycreate","result","ZodUnion","Xd","cf","lf","ff","pf","ef","optionsMap","ZodDiscriminatedUnion","tf","ZodIntersection","ZodTuple","uf","mergeObjectAsync","ZodRecord","af","ZodMap","of","ZodSet","sf","implement","returns","ZodFunction","ZodLazy","ZodEnum","ZodLiteral","_cache","ZodNativeEnum","ZodPromise","sourceType","createWithPreprocess","ZodOptional","ZodNullable","Ff","ZodNaN","ZodPipeline","ZodReadonly","kf","_ref6","_ref6$size","_ref6$alphabet","alphabet","_ref6$separator","random","wf","_f","globalThis","versions","node","EdgeRuntime","Sf","Headers","_step","_iterator","_createForOfIteratorHelper","_step$value","_slicedToArray","err","xf","_len","Bf","If","Of","_step2","_iterator2","SyntaxError","Tf","Pf","_ref7","_asyncToGenerator","_regenerator","_callee","_context","_x","_defineProperty","jf","_x2","_jf","_callee26","_ref9","_context26","Nf","_x3","_Nf","_callee27","_ref0","_t41","_t42","_context27","rawValue","zf","_x4","_zf","_callee28","_ref1","_t43","_t44","_context28","stackTraceLimit","Rf","_x5","_Rf","_callee29","_context29","Mf","_toConsumableArray","Zf","Lf","$refStrategy","basePath","effectStrategy","pipeStrategy","dateStrategy","mapStrategy","removeAdditionalStrategy","allowedAdditionalProperties","rejectedAdditionalProperties","definitionPath","strictUnions","errorMessages","patternStrategy","applyRegexFlags","emailStrategy","base64Strategy","nameStrategy","$f","vp","qf","Uf","_step3","_iterator3","Vf","Hf","Kf","Wf","Jf","Qf","Gf","Yf","Xf","ep","tp","np","rp","_step4","_iterator4","ip","op","up","ap","_objectSpread","errorMessage","sp","flags","currentPath","cp","_rp","_objectWithoutProperties","_excluded","_$f","_excluded2","lp","pp","hp","_step5","_iterator5","propertyPath","fp","_step6","_iterator6","dp","_excluded3","uniqueItems","mp","Dp","postProcess","gp","_ref10","_ref11","yp","_ref12","_ref13","Ep","Ap","emit","__shared","schemas","_validate","_callee2","_context2","_x6","Fp","_validate2","_callee3","_context3","_x7","bp","_defineAccessor","wp","_p","Sp","xp","Bp","Ip","_ca4","_ref17","_this5","_ref17$message","response","usage","finishReason","jp","Np","Uint8Array","ArrayBuffer","Buffer","isBuffer","zp","Rp","Mp","providerOptions","Zp","mediaType","Lp","filename","$p","qp","toolCallId","toolName","providerExecuted","Up","Pp","Vp","Hp","Kp","Wp","Jp","providerMetadata","delta","errorText","dynamic","inputTextDelta","preliminary","transient","messageId","messageMetadata","Qp","Gp","Yp","_x8","_Yp","_callee30","_t45","_context30","Xp","eh","th","nh","_ref18","lastMessage","activeTextParts","activeReasoningParts","partialToolCalls","rh","_ref19","stream","messageMetadataSchema","dataPartSchemas","runUpdateMessageJob","onToolCall","onData","pipeThrough","_callee6","_context6","_ref21","_callee5","_ref20","_D","_t5","_t6","_t7","_t8","_t9","_t0","_t1","_t10","_yield$Yp","_n13","_t11","_t12","_t13","_t14","_t15","_u5","_t17","_context5","_callee4","_n14","_context4","_x0","rawInput","callProviderMetadata","toolCall","_x9","uh","isProcessing","_processQueue","_callee7","_context7","_run","_callee9","_this6","_context9","_callee8","_t20","_context8","processQueue","_x1","ih","ah","oh","sh","responseFormat","parsePartial","_parsePartial","_callee0","_ref23","_context0","_x10","parseOutput","_parseOutput","_callee1","_ref24","_context1","_x11","_ref25","Cp","_ref26","_callee10","_e15","_t21","_context10","_ref27","_callee11","_context11","ch","_ref28","_ref28$api","api","credentials","fetch","prepareSendMessagesRequest","prepareReconnectToStreamRequest","_sendMessages","_callee12","_ref29","_t22","_t24","_context12","abortSignal","_excluded4","chatId","requestMetadata","trigger","method","signal","ok","processResponseStream","_x12","_reconnectToStream","_callee13","_t26","_t28","_context13","_x13","lh","_ch","_ref30","TextDecoderStream","_ref31","_callee14","_t31","_context14","_callee15","_context15","dh","_ref32","_this7","_ref32$generateId","generateId","_ref32$id","_ref32$transport","transport","onFinish","sendAutomaticallyWhen","activeResponse","jobExecutor","sendMessage","_ref33","_callee18","_t36","_t37","_context18","makeRequest","files","_ref34","_callee17","_context17","FileList","_ref35","_callee16","_t33","_t34","_t35","_context16","FileReader","onload","readAsDataURL","_x17","_x16","replaceMessage","pushMessage","_x14","_x15","regenerate","_callee19","_ref37","_args19","_context19","_excluded5","resumeStream","_callee20","_args20","_context20","clearError","addToolOutput","_ref40","_callee22","_ref39","_ref39$state","_context22","tool","_callee21","_context21","_x18","addToolResult","stop","_callee23","_context23","abortController","_ref43","_makeRequest","_callee25","_ref44","_a5","_i4","_e16","_o5","_t39","_this8","_context25","snapshot","AbortController","reconnectToStream","sendMessages","_ref46","_callee24","_ref45","_t38","_context24","getReader","read","releaseLock","_x20","isAbort","isDisconnect","isError","_x19","fh","_ref47","hh","vh","mh","Dh","yh","gh","Fh","Eh","bh","Sh","Ah","__esModule","kp","now","Ch","kh","wh","WeakSet","_h","xh","_this9","popMessage","structuredClone","Bh","_dh","_ref48","_this0","_excluded6","_assertThisInitialized","Ih","Oh","exp","Th","Ph","assistantId","useStagingEnv","sessionStorage","json","token","jh","thumbs","Nh","Rh","miss","timeToLive","timestamp","clear","Mh","caches","Zh","serializable","Lh","algoliaAgents","client","$h","qh","lastUpdate","isUp","isTimedOut","Uh","Vh","stackTrace","Hh","Kh","Wh","Jh","Qh","port","Gh","Yh","Accept","Xh","ev","tv","nv","rv","uv","request","av","iv","ov","sv","accept","lv","dv","authMode","queryParameters","hosts","hostsCache","baseHeaders","logger","baseQueryParameters","algoliaAgent","timeouts","requester","requestsCache","responsesCache","getTimeout","connectTimeout","connect","responseTimeout","host","triesLeft","send","info","useReadTransporter","cacheable","requestOptions","transporter","clearCache","_ua","addAlgoliaAgent","setClientApiKey","searchForHits","searchForFacets","customPost","parameters","getRecommendations","facet","maxFacetHits","facetQuery","cv","XMLHttpRequest","setRequestHeader","onreadystatechange","readyState","OPENED","responseText","fv","pv","hv","indexes","snippetLength","maxResultsPerGroup","transformItems","saveRecentSearch","searchParameters","indexName","attributesToRetrieve","attributesToSnippet","snippetEllipsisText","highlightPreTag","highlightPostTag","hitsPerPage","vv","askAi","initialScrollY","transformSearchClient","disableUserPersonalization","interceptAskAiEvent","recentSearchesLimit","recentSearchesWithFavoritesLimit","footer","searchBox","placeholderText","placeholderTextAskAi","getSelection","suggestedQuestionsEnabled","filters","algolia","authorization","_ref49","experimental_throttle","_ref49$resume","resume","_excluded7","chat","setMessages","detail","msg","loc","stopAskAiStreaming","exchanges","sendFeedback","zh","suggestedQuestionId","scrollTo","behavior","scrollTop","container","innerWidth","clientWidth","marginInlineEnd","innerHeight","selectAskAiQuestion","mv","Dv","scrollY","modal","portalContainer","createTemplateFunction","original","allProps","containerEl","env","getHTMLElement","docSearchVersion","DocSearch","_ref$current","_ref$current2","initialMessage","_ref$current3","_ref$current$isOpen","_ref$current4","destroy"],"mappings":"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","x_google_ignoreList":[0,1,2,5]} \ No newline at end of file diff --git a/node_modules/@docsearch/js/package.json b/node_modules/@docsearch/js/package.json deleted file mode 100644 index 2386685..0000000 --- a/node_modules/@docsearch/js/package.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "name": "@docsearch/js", - "description": "JavaScript package for DocSearch, the best search experience for docs.", - "version": "4.5.4", - "license": "MIT", - "homepage": "https://docsearch.algolia.com", - "repository": { - "type": "git", - "url": "git+https://github.com/algolia/docsearch.git", - "directory": "packages/docsearch-js" - }, - "author": { - "name": "Algolia, Inc.", - "url": "https://www.algolia.com" - }, - "sideEffects": false, - "files": [ - "dist/" - ], - "source": "src/index.ts", - "types": "dist/esm/index.d.ts", - "module": "dist/esm/index.js", - "main": "dist/umd/index.js", - "umd:main": "dist/umd/index.js", - "unpkg": "dist/umd/index.js", - "jsdelivr": "dist/umd/index.js", - "scripts": { - "build:clean": "rm -rf ./dist", - "build:types": "tsc -p ./tsconfig.declaration.json --outDir ./dist/esm/types", - "build:clean-types": "rm -rf ./dist/esm/types", - "build:source": "rollup --config --bundleConfigAsCjs", - "build:dts": "rollup --config rollup.dts.config.js --bundleConfigAsCjs", - "build": "yarn build:clean && yarn build:types && yarn build:source && yarn build:dts && yarn build:clean-types", - "on:change": "yarn build", - "watch": "nodemon --watch src --exec \"yarn on:change\" --ignore dist/ --ext ts,tsx" - }, - "devDependencies": { - "@docsearch/react": "4.5.4", - "@rollup/plugin-replace": "6.0.3", - "htm": "3.1.1", - "nodemon": "^3.1.11", - "preact": "11.0.0-beta.0", - "rollup-plugin-dts": "^6.3.0" - }, - "nx": { - "implicitDependencies": [ - "@docsearch/react" - ] - } -} diff --git a/node_modules/@docsearch/react/README.md b/node_modules/@docsearch/react/README.md deleted file mode 100644 index 85069ac..0000000 --- a/node_modules/@docsearch/react/README.md +++ /dev/null @@ -1,43 +0,0 @@ -# @docsearch/react - -React package for [DocSearch](http://docsearch.algolia.com/), the best search experience for docs. - -## Installation - -```bash -yarn add @docsearch/react@3 -# or -npm install @docsearch/react@3 -``` - -If you don’t want to use a package manager, you can use a standalone endpoint: - -```html - -``` - -## Get started - -DocSearch generates a fully accessible search box for you. - -```jsx App.js -import { DocSearch } from '@docsearch/react'; - -import '@docsearch/css'; - -function App() { - return ( - - ); -} - -export default App; -``` - -## Documentation - -[Read documentation →](https://docsearch.algolia.com/docs/docsearch-v3) diff --git a/node_modules/@docsearch/react/button.js b/node_modules/@docsearch/react/button.js deleted file mode 100644 index 6df05f2..0000000 --- a/node_modules/@docsearch/react/button.js +++ /dev/null @@ -1 +0,0 @@ -export { DocSearchButton } from './dist/esm'; diff --git a/node_modules/@docsearch/react/dist/esm/index.d.ts b/node_modules/@docsearch/react/dist/esm/index.d.ts deleted file mode 100644 index 1e027ef..0000000 --- a/node_modules/@docsearch/react/dist/esm/index.d.ts +++ /dev/null @@ -1,208 +0,0 @@ -import { BaseItem, AutocompleteState, AutocompleteContext, AutocompleteInsightsApi, AutocompleteOptions } from '@algolia/autocomplete-core'; -import { LiteClient, SearchParamsObject } from 'algoliasearch/lite'; -import React from 'react'; - -type ContentType = 'content' | 'lvl0' | 'lvl1' | 'lvl2' | 'lvl3' | 'lvl4' | 'lvl5' | 'lvl6'; -interface DocSearchHitAttributeHighlightResult { - value: string; - matchLevel: 'full' | 'none' | 'partial'; - matchedWords: string[]; - fullyHighlighted?: boolean; -} -interface DocSearchHitHighlightResultHierarchy { - lvl0: DocSearchHitAttributeHighlightResult; - lvl1: DocSearchHitAttributeHighlightResult; - lvl2: DocSearchHitAttributeHighlightResult; - lvl3: DocSearchHitAttributeHighlightResult; - lvl4: DocSearchHitAttributeHighlightResult; - lvl5: DocSearchHitAttributeHighlightResult; - lvl6: DocSearchHitAttributeHighlightResult; -} -interface DocSearchHitHighlightResult { - content: DocSearchHitAttributeHighlightResult; - hierarchy: DocSearchHitHighlightResultHierarchy; - hierarchy_camel: DocSearchHitHighlightResultHierarchy[]; -} -interface DocSearchHitAttributeSnippetResult { - value: string; - matchLevel: 'full' | 'none' | 'partial'; -} -interface DocSearchHitSnippetResult { - content: DocSearchHitAttributeSnippetResult; - hierarchy: DocSearchHitHighlightResultHierarchy; - hierarchy_camel: DocSearchHitHighlightResultHierarchy[]; -} -declare type DocSearchHit = { - objectID: string; - content: string | null; - url: string; - url_without_anchor: string; - type: ContentType; - anchor: string | null; - hierarchy: { - lvl0: string; - lvl1: string; - lvl2: string | null; - lvl3: string | null; - lvl4: string | null; - lvl5: string | null; - lvl6: string | null; - }; - _highlightResult: DocSearchHitHighlightResult; - _snippetResult: DocSearchHitSnippetResult; - _rankingInfo?: { - promoted: boolean; - nbTypos: number; - firstMatchedWord: number; - proximityDistance?: number; - geoDistance: number; - geoPrecision?: number; - nbExactWords: number; - words: number; - filters: number; - userScore: number; - matchedGeoLocation?: { - lat: number; - lng: number; - distance: number; - }; - }; - _distinctSeqID?: number; - __autocomplete_indexName?: string; - __autocomplete_queryID?: string; - __autocomplete_algoliaCredentials?: { - appId: string; - apiKey: string; - }; - __autocomplete_id?: number; -}; - -interface DocSearchContext extends AutocompleteContext { - algoliaInsightsPlugin?: { - insights: AutocompleteInsightsApi; - }; -} -interface DocSearchState extends AutocompleteState { - context: DocSearchContext; -} - -type InternalDocSearchHit = DocSearchHit & { - __docsearch_parent: InternalDocSearchHit | null; -}; - -type StoredDocSearchHit = Omit; - -type DocSearchTranslations = Partial<{ - button: ButtonTranslations; - modal: ModalTranslations; -}>; -type DocSearchTransformClient = { - search: LiteClient['search']; - addAlgoliaAgent: LiteClient['addAlgoliaAgent']; - transporter: Pick; -}; -interface DocSearchProps { - appId: string; - apiKey: string; - indexName: string; - placeholder?: string; - searchParameters?: SearchParamsObject; - maxResultsPerGroup?: number; - transformItems?: (items: DocSearchHit[]) => DocSearchHit[]; - hitComponent?: (props: { - hit: InternalDocSearchHit | StoredDocSearchHit; - children: React.ReactNode; - }) => JSX.Element; - resultsFooterComponent?: (props: { - state: AutocompleteState; - }) => JSX.Element | null; - transformSearchClient?: (searchClient: DocSearchTransformClient) => DocSearchTransformClient; - disableUserPersonalization?: boolean; - initialQuery?: string; - navigator?: AutocompleteOptions['navigator']; - translations?: DocSearchTranslations; - getMissingResultsUrl?: ({ query }: { - query: string; - }) => string; - insights?: AutocompleteOptions['insights']; -} -declare function DocSearch(props: DocSearchProps): JSX.Element; - -type ButtonTranslations = Partial<{ - buttonText: string; - buttonAriaLabel: string; -}>; -type DocSearchButtonProps = React.ComponentProps<'button'> & { - translations?: ButtonTranslations; -}; -declare const DocSearchButton: React.ForwardRefExoticComponent & React.RefAttributes>; - -type FooterTranslations = Partial<{ - selectText: string; - selectKeyAriaLabel: string; - navigateText: string; - navigateUpKeyAriaLabel: string; - navigateDownKeyAriaLabel: string; - closeText: string; - closeKeyAriaLabel: string; - searchByText: string; -}>; - -type ErrorScreenTranslations = Partial<{ - titleText: string; - helpText: string; -}>; - -type NoResultsScreenTranslations = Partial<{ - noResultsText: string; - suggestedQueryText: string; - reportMissingResultsText: string; - reportMissingResultsLinkText: string; -}>; - -type StartScreenTranslations = Partial<{ - recentSearchesTitle: string; - noRecentSearchesText: string; - saveRecentSearchButtonTitle: string; - removeRecentSearchButtonTitle: string; - favoriteSearchesTitle: string; - removeFavoriteSearchButtonTitle: string; -}>; - -type ScreenStateTranslations = Partial<{ - errorScreen: ErrorScreenTranslations; - startScreen: StartScreenTranslations; - noResultsScreen: NoResultsScreenTranslations; -}>; - -type SearchBoxTranslations = Partial<{ - resetButtonTitle: string; - resetButtonAriaLabel: string; - cancelButtonText: string; - cancelButtonAriaLabel: string; - searchInputLabel: string; -}>; - -type ModalTranslations = Partial<{ - searchBox: SearchBoxTranslations; - footer: FooterTranslations; -}> & ScreenStateTranslations; -type DocSearchModalProps = DocSearchProps & { - initialScrollY: number; - onClose?: () => void; - translations?: ModalTranslations; -}; -declare function DocSearchModal({ appId, apiKey, indexName, placeholder, searchParameters, maxResultsPerGroup, onClose, transformItems, hitComponent, resultsFooterComponent, navigator, initialScrollY, transformSearchClient, disableUserPersonalization, initialQuery: initialQueryFromProp, translations, getMissingResultsUrl, insights, }: DocSearchModalProps): JSX.Element; - -interface UseDocSearchKeyboardEventsProps { - isOpen: boolean; - onOpen: () => void; - onClose: () => void; - onInput?: (event: KeyboardEvent) => void; - searchButtonRef?: React.RefObject; -} -declare function useDocSearchKeyboardEvents({ isOpen, onOpen, onClose, onInput, searchButtonRef, }: UseDocSearchKeyboardEventsProps): void; - -declare const version = "3.8.2"; - -export { type ButtonTranslations, DocSearch, DocSearchButton, type DocSearchButtonProps, type DocSearchHit, DocSearchModal, type DocSearchModalProps, type DocSearchProps, type DocSearchState, type DocSearchTransformClient, type DocSearchTranslations, type InternalDocSearchHit, type ModalTranslations, type StoredDocSearchHit, type UseDocSearchKeyboardEventsProps, useDocSearchKeyboardEvents, version }; diff --git a/node_modules/@docsearch/react/dist/esm/index.js b/node_modules/@docsearch/react/dist/esm/index.js deleted file mode 100644 index 533d9c2..0000000 --- a/node_modules/@docsearch/react/dist/esm/index.js +++ /dev/null @@ -1 +0,0 @@ -import e,{useState as t,useEffect as r,createElement as n}from"react";import{createPortal as o}from"react-dom";function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(u&&l){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),_(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;_(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:C(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function S(e,t){return S=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},S(e,t)}function O(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);u=!0);}catch(e){l=!0,o=e}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(e,t)||E(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e){return function(e){if(Array.isArray(e))return i(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||E(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e,t){if(e){if("string"==typeof e)return i(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?i(e,t):void 0}}function j(e){var t="function"==typeof Map?new Map:void 0;return j=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return function(e,t,r){if(d())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var o=new(e.bind.apply(e,n));return r&&S(o,r.prototype),o}(e,arguments,p(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),S(r,e)},j(e)}function P(){return e.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},e.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function I(){return e.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20","aria-hidden":"true"},e.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var D=["translations"],k="Ctrl";var A=e.forwardRef((function(n,o){var i=n.translations,a=void 0===i?{}:i,c=g(n,D),u=a.buttonText,l=void 0===u?"Search":u,s=a.buttonAriaLabel,f=void 0===s?"Search":s,p=O(t(null),2),v=p[0],d=p[1];r((function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?d("⌘"):d(k))}),[]);var h=O(v===k?[k,"Ctrl",e.createElement(P,null)]:["Meta","Command",v],3),y=h[0],b=h[1],S=h[2];return e.createElement("button",m({type:"button",className:"DocSearch DocSearch-Button","aria-label":"".concat(f," (").concat(b,"+K)")},c,{ref:o}),e.createElement("span",{className:"DocSearch-Button-Container"},e.createElement(I,null),e.createElement("span",{className:"DocSearch-Button-Placeholder"},l)),e.createElement("span",{className:"DocSearch-Button-Keys"},null!==v&&e.createElement(e.Fragment,null,e.createElement(_,{reactsToKey:y},S),e.createElement(_,{reactsToKey:"k"},"K"))))}));function _(n){var o=n.reactsToKey,i=n.children,a=O(t(!1),2),c=a[0],u=a[1];return r((function(){if(o)return window.addEventListener("keydown",e),window.addEventListener("keyup",t),function(){window.removeEventListener("keydown",e),window.removeEventListener("keyup",t)};function e(e){e.key===o&&u(!0)}function t(e){e.key!==o&&"Meta"!==e.key||u(!1)}}),[o]),e.createElement("kbd",{className:c?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"},i)}function x(e,t){var r=void 0;return function(){for(var n=arguments.length,o=new Array(n),i=0;ie.length)&&(t=e.length);for(var r=0,n=new Array(t);re.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function W(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Z(e){for(var t=1;t=3||2===r&&n>=4||1===r&&n>=10);function i(t,r,n){if(o&&void 0!==n){var i=n[0].__autocomplete_algoliaCredentials,a={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(z(r),[{headers:a}]))}else e.apply(void 0,[t].concat(z(r)))}return{init:function(t,r){e("init",{appId:t,apiKey:r})},setAuthenticatedUserToken:function(t){e("setAuthenticatedUserToken",t)},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("clickedObjectIDsAfterSearch",Y(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("clickedObjectIDs",Y(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,r=new Array(t),n=0;n0&&e.apply(void 0,["clickedFilters"].concat(r))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("convertedObjectIDsAfterSearch",Y(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("convertedObjectIDs",Y(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,r=new Array(t),n=0;n0&&e.apply(void 0,["convertedFilters"].concat(r))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&t.reduce((function(e,t){var r=t.items,n=Q(t,K);return[].concat(z(e),z(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,r=[],n=0;n0&&e.apply(void 0,["viewedFilters"].concat(r))}}}function X(e){var t=e.items.reduce((function(e,t){var r;return e[t.__autocomplete_indexName]=(null!==(r=e[t.__autocomplete_indexName])&&void 0!==r?r:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function ee(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function te(e){return te="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},te(e)}function re(e){return function(e){if(Array.isArray(e))return ne(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ne(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ne(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ne(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&le({onItemsChange:o,items:r,insights:l,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,r=e.onSelect,n=e.onActive,o=!1;function s(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:ie(ie({},c?{clickAnalytics:!0}:{}),e?{userToken:me(e)}:{}),insights:l}})}u("addAlgoliaAgent","insights-plugin"),s(),u("onUserTokenChange",(function(e){o||s(e)})),u("getUserToken",null,(function(e,t){o||s(t)})),u("onAuthenticatedUserTokenChange",(function(e){e?(o=!0,s(e)):(o=!1,u("getUserToken",null,(function(e,t){return s(t)})))})),u("getAuthenticatedUserToken",null,(function(e,t){t&&(o=!0,s(t))})),r((function(e){var t=e.item,r=e.state,n=e.event,o=e.source;ee(t)&&i({state:r,event:n,insights:l,item:t,insightsEvents:[ie({eventName:"Item Selected"},H({item:t,items:o.getItems().filter(ee)}))]})})),n((function(e){var t=e.item,r=e.source,n=e.state,o=e.event;ee(t)&&a({state:n,event:o,insights:l,item:t,insightsEvents:[ie({eventName:"Item Active"},H({item:t,items:r.getItems().filter(ee)}))]})}))},onStateChange:function(e){var t=e.state;f({state:t})},__autocomplete_pluginOptions:e}}function fe(){var e,t=arguments.length>1?arguments[1]:void 0;return[].concat(re(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),["autocomplete-internal"],re(null!==(e=t.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}function me(e){return"number"==typeof e?e.toString():e}function pe(e,t){var r=t;return{then:function(t,n){return pe(e.then(de(t,r,e),de(n,r,e)),r)},catch:function(t){return pe(e.catch(de(t,r,e)),r)},finally:function(t){return t&&r.onCancelList.push(t),pe(e.finally(de(t&&function(){return r.onCancelList=[],t()},r,e)),r)},cancel:function(){r.isCanceled=!0;var e=r.onCancelList;r.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===r.isCanceled}}}function ve(e){return pe(e,{isCanceled:!1,onCancelList:[]})}function de(e,t,r){return e?function(r){return t.isCanceled?r:e(r)}:r}function he(e,t,r,n){if(!r)return null;if(e<0&&(null===t||null!==n&&0===t))return r+e;var o=(null===t?-1:t)+e;return o<=-1||o>=r?null===n?null:0:o}function ye(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ge(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0},reshape:function(e){return e.sources}},e),{},{id:null!==(r=e.id)&&void 0!==r?r:"autocomplete-".concat(N++),plugins:o,initialState:qe({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var r;null===(r=e.onStateChange)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onStateChange)||void 0===r?void 0:r.call(e,t)}))},onSubmit:function(t){var r;null===(r=e.onSubmit)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onSubmit)||void 0===r?void 0:r.call(e,t)}))},onReset:function(t){var r;null===(r=e.onReset)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onReset)||void 0===r?void 0:r.call(e,t)}))},getSources:function(r){return Promise.all([].concat(Te(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var r=[];return Promise.resolve(e(t)).then((function(e){return Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,r.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));r.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:q,onResolve:q};Object.keys(t).forEach((function(e){t[e].__default=!0}));var n=ge(ge({},t),e);return Promise.resolve(n)})))}))}(e,r)}))).then((function(e){return C(e)})).then((function(e){return e.map((function(e){return qe(qe({},e),{},{onSelect:function(r){e.onSelect(r),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,r)}))},onActive:function(r){e.onActive(r),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,r)}))},onResolve:function(r){e.onResolve(r),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,r)}))}})}))}))},navigator:qe({navigate:function(e){var t=e.itemUrl;n.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,r=n.open(t,"_blank","noopener");null==r||r.focus()},navigateNewWindow:function(e){var t=e.itemUrl;n.open(t,"_blank","noopener")}},e.navigator)})}function Be(e){return Be="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Be(e)}function Fe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ue(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var at,ct,ut,lt=null,st=(at=-1,ct=-1,ut=void 0,function(e){var t=++at;return Promise.resolve(e).then((function(e){return ut&&t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function gt(e){return gt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gt(e)}var bt=["props","refresh","store"],St=["inputElement","formElement","panelElement"],Ot=["inputElement"],wt=["inputElement","maxLength"],Et=["source"],jt=["item","source"];function Pt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function It(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function At(e){var t=e.props,r=e.refresh,n=e.store,o=kt(e,bt);return{getEnvironmentProps:function(e){var r=e.inputElement,o=e.formElement,i=e.panelElement;function a(e){!n.getState().isOpen&&n.pendingRequests.isEmpty()||e.target===r||!1===[o,i].some((function(t){return r=t,n=e.target,r===n||r.contains(n);var r,n}))&&(n.dispatch("blur",null),t.debug||n.pendingRequests.cancelAll())}return It({onTouchStart:a,onMouseDown:a,onTouchMove:function(e){!1!==n.getState().isOpen&&r===t.environment.document.activeElement&&e.target!==r&&r.blur()}},kt(e,St))},getRootProps:function(e){return It({role:"combobox","aria-expanded":n.getState().isOpen,"aria-haspopup":"listbox","aria-controls":n.getState().isOpen?n.getState().collections.map((function(e){var r=e.source;return we(t.id,"list",r)})).join(" "):void 0,"aria-labelledby":we(t.id,"label")},e)},getFormProps:function(e){return e.inputElement,It({action:"",noValidate:!0,role:"search",onSubmit:function(i){var a;i.preventDefault(),t.onSubmit(It({event:i,refresh:r,state:n.getState()},o)),n.dispatch("submit",null),null===(a=e.inputElement)||void 0===a||a.blur()},onReset:function(i){var a;i.preventDefault(),t.onReset(It({event:i,refresh:r,state:n.getState()},o)),n.dispatch("reset",null),null===(a=e.inputElement)||void 0===a||a.focus()}},kt(e,Ot))},getLabelProps:function(e){return It({htmlFor:we(t.id,"input"),id:we(t.id,"label")},e)},getInputProps:function(e){var i;function a(e){(t.openOnFocus||Boolean(n.getState().query))&&ft(It({event:e,props:t,query:n.getState().completion||n.getState().query,refresh:r,store:n},o)),n.dispatch("focus",null)}var c=e||{};c.inputElement;var u=c.maxLength,l=void 0===u?512:u,s=kt(c,wt),f=Oe(n.getState()),m=function(e){return Boolean(e&&e.match(Ee))}((null===(i=t.environment.navigator)||void 0===i?void 0:i.userAgent)||""),p=t.enterKeyHint||(null!=f&&f.itemUrl&&!m?"go":"search");return It({"aria-autocomplete":"both","aria-activedescendant":n.getState().isOpen&&null!==n.getState().activeItemId?we(t.id,"item-".concat(n.getState().activeItemId),null==f?void 0:f.source):void 0,"aria-controls":n.getState().isOpen?n.getState().collections.map((function(e){var r=e.source;return we(t.id,"list",r)})).join(" "):void 0,"aria-labelledby":we(t.id,"label"),value:n.getState().completion||n.getState().query,id:we(t.id,"input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:p,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:l,type:"search",onChange:function(e){var i=e.currentTarget.value;t.ignoreCompositionEvents&&je(e).isComposing?o.setQuery(i):ft(It({event:e,props:t,query:i.slice(0,l),refresh:r,store:n},o))},onCompositionEnd:function(e){ft(It({event:e,props:t,query:e.currentTarget.value.slice(0,l),refresh:r,store:n},o))},onKeyDown:function(e){je(e).isComposing||function(e){var t=e.event,r=e.props,n=e.refresh,o=e.store,i=yt(e,pt);if("ArrowUp"===t.key||"ArrowDown"===t.key){var a=function(){var e=Oe(o.getState()),t=r.environment.document.getElementById(we(r.id,"item-".concat(o.getState().activeItemId),null==e?void 0:e.source));t&&(t.scrollIntoViewIfNeeded?t.scrollIntoViewIfNeeded(!1):t.scrollIntoView(!1))},c=function(){var e=Oe(o.getState());if(null!==o.getState().activeItemId&&e){var r=e.item,a=e.itemInputValue,c=e.itemUrl,u=e.source;u.onActive(dt({event:t,item:r,itemInputValue:a,itemUrl:c,refresh:n,source:u,state:o.getState()},i))}};t.preventDefault(),!1===o.getState().isOpen&&(r.openOnFocus||Boolean(o.getState().query))?ft(dt({event:t,props:r,query:o.getState().query,refresh:n,store:o},i)).then((function(){o.dispatch(t.key,{nextActiveItemId:r.defaultActiveItemId}),c(),setTimeout(a,0)})):(o.dispatch(t.key,{}),c(),a())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Tab"===t.key)o.dispatch("blur",null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return void(r.debug||o.pendingRequests.cancelAll());t.preventDefault();var u=Oe(o.getState()),l=u.item,s=u.itemInputValue,f=u.itemUrl,m=u.source;if(t.metaKey||t.ctrlKey)void 0!==f&&(m.onSelect(dt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),r.navigator.navigateNewTab({itemUrl:f,item:l,state:o.getState()}));else if(t.shiftKey)void 0!==f&&(m.onSelect(dt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),r.navigator.navigateNewWindow({itemUrl:f,item:l,state:o.getState()}));else if(t.altKey);else{if(void 0!==f)return m.onSelect(dt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),void r.navigator.navigate({itemUrl:f,item:l,state:o.getState()});ft(dt({event:t,nextState:{isOpen:!1},props:r,query:s,refresh:n,store:o},i)).then((function(){m.onSelect(dt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i))}))}}}(It({event:e,props:t,refresh:r,store:n},o))},onFocus:a,onBlur:q,onClick:function(r){e.inputElement!==t.environment.document.activeElement||n.getState().isOpen||a(r)}},s)},getPanelProps:function(e){return It({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){n.dispatch("mouseleave",null)}},e)},getListProps:function(e){var r=e||{},n=r.source,o=kt(r,Et);return It({role:"listbox","aria-labelledby":we(t.id,"label"),id:we(t.id,"list",n)},o)},getItemProps:function(e){var i=e.item,a=e.source,c=kt(e,jt);return It({id:we(t.id,"item-".concat(i.__autocomplete_id),a),role:"option","aria-selected":n.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){if(i.__autocomplete_id!==n.getState().activeItemId){n.dispatch("mousemove",i.__autocomplete_id);var t=Oe(n.getState());if(null!==n.getState().activeItemId&&t){var a=t.item,c=t.itemInputValue,u=t.itemUrl,l=t.source;l.onActive(It({event:e,item:a,itemInputValue:c,itemUrl:u,refresh:r,source:l,state:n.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var c=a.getItemInputValue({item:i,state:n.getState()}),u=a.getItemUrl({item:i,state:n.getState()});(u?Promise.resolve():ft(It({event:e,nextState:{isOpen:!1},props:t,query:c,refresh:r,store:n},o))).then((function(){a.onSelect(It({event:e,item:i,itemInputValue:c,itemUrl:u,refresh:r,source:a,state:n.getState()},o))}))}},c)}}}function _t(e){return _t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_t(e)}function xt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ct(e){for(var t=1;t0&&e.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},e.createElement("p",{className:"DocSearch-Help"},u,":"),e.createElement("ul",null,p.slice(0,3).reduce((function(t,r){return[].concat(w(t),[e.createElement("li",{key:r},e.createElement("button",{className:"DocSearch-Prefill",key:r,type:"button",onClick:function(){o.setQuery(r.toLowerCase()+" "),o.refresh(),o.inputRef.current.focus()}},r))])}),[]))),o.getMissingResultsUrl&&e.createElement("p",{className:"DocSearch-Help"},"".concat(s," "),e.createElement("a",{href:o.getMissingResultsUrl({query:o.state.query}),target:"_blank",rel:"noopener noreferrer"},m)))}var sr=["hit","attribute","tagName"];function fr(e,t){return t.split(".").reduce((function(e,t){return null!=e&&e[t]?e[t]:null}),e)}function mr(e){var t=e.hit,r=e.attribute,o=e.tagName,i=void 0===o?"span":o,a=g(e,sr);return n(i,y(y({},a),{},{dangerouslySetInnerHTML:{__html:fr(t,"_snippetResult.".concat(r,".value"))||fr(t,r)}}))}function pr(t){return t.collection&&0!==t.collection.items.length?e.createElement("section",{className:"DocSearch-Hits"},e.createElement("div",{className:"DocSearch-Hit-source"},t.title),e.createElement("ul",t.getListProps(),t.collection.items.map((function(r,n){return e.createElement(vr,m({key:[t.title,r.objectID].join(":"),item:r,index:n},t))})))):null}function vr(t){var r=t.item,n=t.index,o=t.renderIcon,i=t.renderAction,a=t.getItemProps,c=t.onItemClick,u=t.collection,l=t.hitComponent,s=O(e.useState(!1),2),f=s[0],p=s[1],v=O(e.useState(!1),2),d=v[0],h=v[1],y=e.useRef(null),g=l;return e.createElement("li",m({className:["DocSearch-Hit",r.__docsearch_parent&&"DocSearch-Hit--Child",f&&"DocSearch-Hit--deleting",d&&"DocSearch-Hit--favoriting"].filter(Boolean).join(" "),onTransitionEnd:function(){y.current&&y.current()}},a({item:r,source:u.source,onClick:function(e){c(r,e)}})),e.createElement(g,{hit:r},e.createElement("div",{className:"DocSearch-Hit-Container"},o({item:r,index:n}),r.hierarchy[r.type]&&"lvl1"===r.type&&e.createElement("div",{className:"DocSearch-Hit-content-wrapper"},e.createElement(mr,{className:"DocSearch-Hit-title",hit:r,attribute:"hierarchy.lvl1"}),r.content&&e.createElement(mr,{className:"DocSearch-Hit-path",hit:r,attribute:"content"})),r.hierarchy[r.type]&&("lvl2"===r.type||"lvl3"===r.type||"lvl4"===r.type||"lvl5"===r.type||"lvl6"===r.type)&&e.createElement("div",{className:"DocSearch-Hit-content-wrapper"},e.createElement(mr,{className:"DocSearch-Hit-title",hit:r,attribute:"hierarchy.".concat(r.type)}),e.createElement(mr,{className:"DocSearch-Hit-path",hit:r,attribute:"hierarchy.lvl1"})),"content"===r.type&&e.createElement("div",{className:"DocSearch-Hit-content-wrapper"},e.createElement(mr,{className:"DocSearch-Hit-title",hit:r,attribute:"content"}),e.createElement(mr,{className:"DocSearch-Hit-path",hit:r,attribute:"hierarchy.lvl1"})),i({item:r,runDeleteTransition:function(e){p(!0),y.current=e},runFavoriteTransition:function(e){h(!0),y.current=e}}))))}function dr(e,t,r){return e.reduce((function(e,n){var o=t(n);return e.hasOwnProperty(o)||(e[o]=[]),e[o].length<(r||5)&&e[o].push(n),e}),{})}function hr(e){return e}function yr(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}function gr(){}var br=/(|<\/mark>)/g,Sr=RegExp(br.source);function Or(e){var t,r,n=e;if(!n.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var o=n.__docsearch_parent?null===(t=n.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(r=e._highlightResult)||void 0===r||null===(r=r.hierarchy)||void 0===r?void 0:r.lvl0;return o?o.value&&Sr.test(o.value)?o.value.replace(br,""):o.value:e.hierarchy.lvl0}function wr(t){return e.createElement("div",{className:"DocSearch-Dropdown-Container"},t.state.collections.map((function(r){if(0===r.items.length)return null;var n=Or(r.items[0]);return e.createElement(pr,m({},t,{key:r.source.sourceId,title:n,collection:r,renderIcon:function(t){var n,o=t.item,i=t.index;return e.createElement(e.Fragment,null,o.__docsearch_parent&&e.createElement("svg",{className:"DocSearch-Hit-Tree",viewBox:"0 0 24 54"},e.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},o.__docsearch_parent!==(null===(n=r.items[i+1])||void 0===n?void 0:n.__docsearch_parent)?e.createElement("path",{d:"M8 6v21M20 27H8.3"}):e.createElement("path",{d:"M8 6v42M20 27H8.3"}))),e.createElement("div",{className:"DocSearch-Hit-icon"},e.createElement(tr,{type:o.type})))},renderAction:function(){return e.createElement("div",{className:"DocSearch-Hit-action"},e.createElement(Xt,null))}}))})),t.resultsFooterComponent&&e.createElement("section",{className:"DocSearch-HitsFooter"},e.createElement(t.resultsFooterComponent,{state:t.state})))}var Er=["translations"];function jr(t){var r=t.translations,n=void 0===r?{}:r,o=g(t,Er),i=n.recentSearchesTitle,a=void 0===i?"Recent":i,c=n.noRecentSearchesText,u=void 0===c?"No recent searches":c,l=n.saveRecentSearchButtonTitle,s=void 0===l?"Save this search":l,f=n.removeRecentSearchButtonTitle,p=void 0===f?"Remove this search from history":f,v=n.favoriteSearchesTitle,d=void 0===v?"Favorite":v,h=n.removeFavoriteSearchButtonTitle,y=void 0===h?"Remove this search from favorites":h;return"idle"===o.state.status&&!1===o.hasCollections?o.disableUserPersonalization?null:e.createElement("div",{className:"DocSearch-StartScreen"},e.createElement("p",{className:"DocSearch-Help"},u)):!1===o.hasCollections?null:e.createElement("div",{className:"DocSearch-Dropdown-Container"},e.createElement(pr,m({},o,{title:a,collection:o.state.collections[0],renderIcon:function(){return e.createElement("div",{className:"DocSearch-Hit-icon"},e.createElement(Yt,null))},renderAction:function(t){var r=t.item,n=t.runFavoriteTransition,i=t.runDeleteTransition;return e.createElement(e.Fragment,null,e.createElement("div",{className:"DocSearch-Hit-action"},e.createElement("button",{className:"DocSearch-Hit-action-button",title:s,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.add(r),o.recentSearches.remove(r),o.refresh()}))}},e.createElement(or,null))),e.createElement("div",{className:"DocSearch-Hit-action"},e.createElement("button",{className:"DocSearch-Hit-action-button",title:p,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),i((function(){o.recentSearches.remove(r),o.refresh()}))}},e.createElement($t,null))))}})),e.createElement(pr,m({},o,{title:d,collection:o.state.collections[1],renderIcon:function(){return e.createElement("div",{className:"DocSearch-Hit-icon"},e.createElement(or,null))},renderAction:function(t){var r=t.item,n=t.runDeleteTransition;return e.createElement("div",{className:"DocSearch-Hit-action"},e.createElement("button",{className:"DocSearch-Hit-action-button",title:y,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.remove(r),o.refresh()}))}},e.createElement($t,null)))}})))}var Pr=["translations"],Ir=e.memo((function(t){var r=t.translations,n=void 0===r?{}:r,o=g(t,Pr);if("error"===o.state.status)return e.createElement(cr,{translations:null==n?void 0:n.errorScreen});var i=o.state.collections.some((function(e){return e.items.length>0}));return o.state.query?!1===i?e.createElement(lr,m({},o,{translations:null==n?void 0:n.noResultsScreen})):e.createElement(wr,o):e.createElement(jr,m({},o,{hasCollections:i,translations:null==n?void 0:n.startScreen}))}),(function(e,t){return"loading"===t.state.status||"stalled"===t.state.status})),Dr=["translations"];function kr(t){var r=t.translations,n=void 0===r?{}:r,o=g(t,Dr),i=n.resetButtonTitle,a=void 0===i?"Clear the query":i,c=n.resetButtonAriaLabel,u=void 0===c?"Clear the query":c,l=n.cancelButtonText,s=void 0===l?"Cancel":l,f=n.cancelButtonAriaLabel,p=void 0===f?"Cancel":f,v=n.searchInputLabel,d=void 0===v?"Search":v,h=o.getFormProps({inputElement:o.inputRef.current}).onReset;return e.useEffect((function(){o.autoFocus&&o.inputRef.current&&o.inputRef.current.focus()}),[o.autoFocus,o.inputRef]),e.useEffect((function(){o.isFromSelection&&o.inputRef.current&&o.inputRef.current.select()}),[o.isFromSelection,o.inputRef]),e.createElement(e.Fragment,null,e.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:h},e.createElement("label",m({className:"DocSearch-MagnifierLabel"},o.getLabelProps()),e.createElement(I,null),e.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},d)),e.createElement("div",{className:"DocSearch-LoadingIndicator"},e.createElement(Gt,null)),e.createElement("input",m({className:"DocSearch-Input",ref:o.inputRef},o.getInputProps({inputElement:o.inputRef.current,autoFocus:o.autoFocus,maxLength:64}))),e.createElement("button",{type:"reset",title:a,className:"DocSearch-Reset","aria-label":u,hidden:!o.state.query},e.createElement($t,null))),e.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":p,onClick:o.onClose},s))}var Ar=["_highlightResult","_snippetResult"];function _r(e){return!1===function(){var e="__TEST_KEY__";try{return localStorage.setItem(e,""),localStorage.removeItem(e),!0}catch(e){return!1}}()?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){return window.localStorage.setItem(e,JSON.stringify(t))},getItem:function(){var t=window.localStorage.getItem(e);return t?JSON.parse(t):[]}}}function xr(e){var t=e.key,r=e.limit,n=void 0===r?5:r,o=_r(t),i=o.getItem().slice(0,n);return{add:function(e){var t=e;t._highlightResult,t._snippetResult;var r=g(t,Ar),a=i.findIndex((function(e){return e.objectID===r.objectID}));a>-1&&i.splice(a,1),i.unshift(r),i=i.slice(0,n),o.setItem(i)},remove:function(e){i=i.filter((function(t){return t.objectID!==e.objectID})),o.setItem(i)},getAll:function(){return i}}}function Cr(e){var t,r="algolia-client-js-".concat(e.key);function n(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function o(){return JSON.parse(n().getItem(r)||"{}")}function i(e){n().setItem(r,JSON.stringify(e))}return{get:function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){var r,n,a;return r=e.timeToLive?1e3*e.timeToLive:null,n=o(),i(a=Object.fromEntries(Object.entries(n).filter((function(e){return void 0!==O(e,2)[1].timestamp})))),r&&i(Object.fromEntries(Object.entries(a).filter((function(e){var t=O(e,2)[1],n=(new Date).getTime();return!(t.timestamp+r2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then((function(e){return Promise.all([e,r.miss(e)])})).then((function(e){return O(e,1)[0]}))},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,n){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(e,n,o).catch((function(){return Nr({caches:t}).get(e,n,o)}))},set:function(e,n){return r.set(e,n).catch((function(){return Nr({caches:t}).set(e,n)}))},delete:function(e){return r.delete(e).catch((function(){return Nr({caches:t}).delete(e)}))},clear:function(){return r.clear().catch((function(){return Nr({caches:t}).clear()}))}}}function Tr(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(r,n){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},i=JSON.stringify(r);if(i in t)return Promise.resolve(e.serializable?JSON.parse(t[i]):t[i]);var a=n();return a.then((function(e){return o.miss(e)})).then((function(){return a}))},set:function(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Lr(e){var t=e.algoliaAgents,r=e.client,n=e.version,o=function(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var r="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(r)&&(t.value="".concat(t.value).concat(r)),t}};return t}(n).add({segment:r,version:n});return t.forEach((function(e){return o.add(e)})),o}var Rr=12e4;function qr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"up",r=Date.now();return y(y({},e),{},{status:t,lastUpdate:r,isUp:function(){return"up"===t||Date.now()-r>Rr},isTimedOut:function(){return"timed out"===t&&Date.now()-r<=Rr}})}var Mr=function(){function e(t,r){var n;return l(this,e),f(n=u(this,e,[t]),"name","AlgoliaError"),r&&(n.name=r),n}return v(e,j(Error)),s(e)}(),Hr=function(){function e(t,r,n){var o;return l(this,e),f(o=u(this,e,[t,n]),"stackTrace",void 0),o.stackTrace=r,o}return v(e,Mr),s(e)}(),Br=function(){function e(t){return l(this,e),u(this,e,["Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support.",t,"RetryError"])}return v(e,Hr),s(e)}(),Fr=function(){function e(t,r,n){var o,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"ApiError";return l(this,e),f(o=u(this,e,[t,n,i]),"status",void 0),o.status=r,o}return v(e,Hr),s(e)}(),Ur=function(){function e(t,r){var n;return l(this,e),f(n=u(this,e,[t,"DeserializationError"]),"response",void 0),n.response=r,n}return v(e,Mr),s(e)}(),Kr=function(){function e(t,r,n,o){var i;return l(this,e),f(i=u(this,e,[t,r,o,"DetailedApiError"]),"error",void 0),i.error=n,i}return v(e,Fr),s(e)}();function Vr(e,t,r){var n,o=(n=r,Object.keys(n).filter((function(e){return void 0!==n[e]})).sort().map((function(e){return"".concat(e,"=").concat(encodeURIComponent("[object Array]"===Object.prototype.toString.call(n[e])?n[e].join(","):n[e]).replace(/\+/g,"%20"))})).join("&")),i="".concat(e.protocol,"://").concat(e.url).concat(e.port?":".concat(e.port):"","/").concat("/"===t.charAt(0)?t.substring(1):t);return o.length&&(i+="?".concat(o)),i}function zr(e,t){if("GET"!==e.method&&(void 0!==e.data||void 0!==t.data)){var r=Array.isArray(e.data)?e.data:y(y({},e.data),t.data);return JSON.stringify(r)}}function Jr(e,t,r){var n=y(y(y({Accept:"application/json"},e),t),r),o={};return Object.keys(n).forEach((function(e){var t=n[e];o[e.toLowerCase()]=t})),o}function Qr(e){try{return JSON.parse(e.content)}catch(t){throw new Ur(t.message,e)}}function Wr(e,t){var r=e.content,n=e.status;try{var o=JSON.parse(r);return"error"in o?new Kr(o.message,n,o.error,t):new Fr(o.message,n,t)}catch(e){}return new Fr(r,n,t)}function Zr(e){return e.map((function(e){return Gr(e)}))}function Gr(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return y(y({},e),{},{request:y(y({},e.request),{},{headers:y(y({},e.request.headers),t)})})}var Yr=["appId","apiKey","authMode","algoliaAgents"],$r=["params"],Xr="5.14.2";function en(e){return[{url:"".concat(e,"-dsn.algolia.net"),accept:"read",protocol:"https"},{url:"".concat(e,".algolia.net"),accept:"write",protocol:"https"}].concat(function(e){for(var t=e,r=e.length-1;r>0;r--){var n=Math.floor(Math.random()*(r+1)),o=e[r];t[r]=e[n],t[n]=o}return t}([{url:"".concat(e,"-1.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-2.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-3.algolianet.com"),accept:"readWrite",protocol:"https"}]))}function tn(e){var t=e.appId,r=e.apiKey,n=e.authMode,o=e.algoliaAgents,i=g(e,Yr),a=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"WithinHeaders",n={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers:function(){return"WithinHeaders"===r?n:{}},queryParameters:function(){return"WithinQueryParameters"===r?n:{}}}}(t,r,n),u=function(e){var t=e.hosts,r=e.hostsCache,n=e.baseHeaders,o=e.logger,i=e.baseQueryParameters,a=e.algoliaAgent,u=e.timeouts,l=e.requester,s=e.requestsCache,f=e.responsesCache;function m(e){return p.apply(this,arguments)}function p(){return(p=c(b().mark((function e(t){var n,o,i,a,c;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all(t.map((function(e){return r.get(e,(function(){return Promise.resolve(qr(e))}))})));case 2:return n=e.sent,o=n.filter((function(e){return e.isUp()})),i=n.filter((function(e){return e.isTimedOut()})),a=[].concat(w(o),w(i)),c=a.length>0?a:t,e.abrupt("return",{hosts:c,getTimeout:function(e,t){return(0===i.length&&0===e?1:i.length+3+e)*t}});case 8:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function v(e,t){return d.apply(this,arguments)}function d(){return d=c(b().mark((function e(s,f){var p,v,d,h,g,S,O,E,j,P,I,D,k,A=arguments;return b().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(p=!(A.length>2&&void 0!==A[2])||A[2],v=[],d=zr(s,f),h=Jr(n,s.headers,f.headers),g="GET"===s.method?y(y({},s.data),f.data):{},S=y(y(y({},i),s.queryParameters),g),a.value&&(S["x-algolia-agent"]=a.value),f&&f.queryParameters)for(O=0,E=Object.keys(f.queryParameters);O1&&void 0!==arguments[1]?arguments[1]:{},r=e.useReadTransporter||"GET"===e.method;if(!r)return v(e,t,r);var o=function(){return v(e,t)};if(!0!==(t.cacheable||e.cacheable))return o();var a={request:e,requestOptions:t,transporter:{queryParameters:i,headers:n}};return f.get(a,(function(){return s.get(a,(function(){return s.set(a,o()).then((function(e){return Promise.all([s.delete(a),e])}),(function(e){return Promise.all([s.delete(a),Promise.reject(e)])})).then((function(e){var t=O(e,2);return t[0],t[1]}))}))}),{miss:function(e){return f.set(a,e)}})},requestsCache:s,responsesCache:f}}(y(y({hosts:en(t)},i),{},{algoliaAgent:Lr({algoliaAgents:o,client:"Lite",version:Xr}),baseHeaders:y(y({"content-type":"text/plain"},a.headers()),i.baseHeaders),baseQueryParameters:y(y({},a.queryParameters()),i.baseQueryParameters)}));return{transporter:u,appId:t,clearCache:function(){return Promise.all([u.requestsCache.clear(),u.responsesCache.clear()]).then((function(){}))},get _ua(){return u.algoliaAgent.value},addAlgoliaAgent:function(e,t){u.algoliaAgent.add({segment:e,version:t})},setClientApiKey:function(e){var t=e.apiKey;n&&"WithinHeaders"!==n?u.baseQueryParameters["x-algolia-api-key"]=t:u.baseHeaders["x-algolia-api-key"]=t},searchForHits:function(e,t){return this.search(e,t)},searchForFacets:function(e,t){return this.search(e,t)},customPost:function(e,t){var r=e.path,n=e.parameters,o=e.body;if(!r)throw new Error("Parameter `path` is required when calling `customPost`.");var i={method:"POST",path:"/{path}".replace("{path}",r),queryParameters:n||{},headers:{},data:o||{}};return u.request(i,t)},getRecommendations:function(e,t){e&&Array.isArray(e)&&(e={requests:e});if(!e)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!e.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");var r={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return u.request(r,t)},search:function(e,t){if(e&&Array.isArray(e)){var r={requests:e.map((function(e){var t=e.params,r=g(e,$r);return"facet"===r.type?y(y(y({},r),t),{},{type:"facet"}):y(y(y({},r),t),{},{facet:void 0,maxFacetHits:void 0,facetQuery:void 0})}))};e=r}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");var n={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return u.request(n,t)}}}var rn="3.8.2";function nn(t,r,n){return e.useMemo((function(){var e=function(e,t,r){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!t||"string"!=typeof t)throw new Error("`apiKey` is missing.");return tn(y({appId:e,apiKey:t,timeouts:{connect:1e3,read:2e3,write:3e4},logger:{debug:function(e,t){return Promise.resolve()},info:function(e,t){return Promise.resolve()},error:function(e,t){return Promise.resolve()}},requester:{send:function(e){return new Promise((function(t){var r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((function(t){return r.setRequestHeader(t,e.headers[t])}));var n,o=function(e,n){return setTimeout((function(){r.abort(),t({status:0,content:n,isTimedOut:!0})}),e)},i=o(e.connectTimeout,"Connection timeout");r.onreadystatechange=function(){r.readyState>r.OPENED&&void 0===n&&(clearTimeout(i),n=o(e.responseTimeout,"Socket timeout"))},r.onerror=function(){0===r.status&&(clearTimeout(i),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=function(){clearTimeout(i),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:Tr(),requestsCache:Tr({serializable:!1}),hostsCache:Nr({caches:[Cr({key:"".concat(Xr,"-").concat(e)}),Tr()]})},r))}(t,r);return e.addAlgoliaAgent("docsearch",rn),!1===/docsearch.js \(.*\)/.test(e.transporter.algoliaAgent.value)&&e.addAlgoliaAgent("docsearch-react",rn),n(e)}),[t,r,n])}var on=["footer","searchBox"];function an(t){var r=t.appId,n=t.apiKey,o=t.indexName,i=t.placeholder,a=void 0===i?"Search docs":i,c=t.searchParameters,u=t.maxResultsPerGroup,l=t.onClose,s=void 0===l?gr:l,f=t.transformItems,p=void 0===f?hr:f,v=t.hitComponent,d=void 0===v?Zt:v,h=t.resultsFooterComponent,b=void 0===h?function(){return null}:h,S=t.navigator,w=t.initialScrollY,E=void 0===w?0:w,j=t.transformSearchClient,P=void 0===j?hr:j,I=t.disableUserPersonalization,D=void 0!==I&&I,k=t.initialQuery,A=void 0===k?"":k,_=t.translations,x=void 0===_?{}:_,C=t.getMissingResultsUrl,N=t.insights,T=void 0!==N&&N,L=x.footer,R=x.searchBox,q=g(x,on),M=O(e.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),H=M[0],B=M[1],F=e.useRef(null),U=e.useRef(null),K=e.useRef(null),V=e.useRef(null),z=e.useRef(null),J=e.useRef(10),Q=e.useRef("undefined"!=typeof window?window.getSelection().toString().slice(0,64):"").current,W=e.useRef(A||Q).current,Z=nn(r,n,P),G=e.useRef(xr({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(o),limit:10})).current,Y=e.useRef(xr({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(o),limit:0===G.getAll().length?7:4})).current,$=e.useCallback((function(e){if(!D){var t="content"===e.type?e.__docsearch_parent:e;t&&-1===G.getAll().findIndex((function(e){return e.objectID===t.objectID}))&&Y.add(t)}}),[G,Y,D]),X=e.useCallback((function(e){if(H.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,r={eventName:"Item Selected",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};H.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(r)}}),[H.context.algoliaInsightsPlugin]),ee=e.useMemo((function(){return zt({id:"docsearch",defaultActiveItemId:0,placeholder:a,openOnFocus:!0,initialState:{query:W,context:{searchSuggestions:[]}},insights:T,navigator:S,onStateChange:function(e){B(e.state)},getSources:function(e){var t=e.query,i=e.state,a=e.setContext,l=e.setStatus;if(!t)return D?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,r=e.event;$(t),yr(r)||s()},getItemUrl:function(e){return e.item.url},getItems:function(){return Y.getAll()}},{sourceId:"favoriteSearches",onSelect:function(e){var t=e.item,r=e.event;$(t),yr(r)||s()},getItemUrl:function(e){return e.item.url},getItems:function(){return G.getAll()}}];var f=Boolean(T);return Z.search({requests:[y({query:t,indexName:o,attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat(J.current),"hierarchy.lvl2:".concat(J.current),"hierarchy.lvl3:".concat(J.current),"hierarchy.lvl4:".concat(J.current),"hierarchy.lvl5:".concat(J.current),"hierarchy.lvl6:".concat(J.current),"content:".concat(J.current)],snippetEllipsisText:"…",highlightPreTag:"",highlightPostTag:"",hitsPerPage:20,clickAnalytics:f},c)]}).catch((function(e){throw"RetryError"===e.name&&l("error"),e})).then((function(e){var t=e.results[0],c=t.hits,l=t.nbHits,m=dr(c,(function(e){return Or(e)}),u);i.context.searchSuggestions.length0&&(ne(),z.current&&z.current.focus())}),[W,ne]),e.useEffect((function(){function e(){if(U.current){var e=.01*window.innerHeight;U.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[]),e.createElement("div",m({ref:F},re({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===H.status&&"DocSearch-Container--Stalled","error"===H.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&s()}}),e.createElement("div",{className:"DocSearch-Modal",ref:U},e.createElement("header",{className:"DocSearch-SearchBar",ref:K},e.createElement(kr,m({},ee,{state:H,autoFocus:0===W.length,inputRef:z,isFromSelection:Boolean(W)&&W===Q,translations:R,onClose:s}))),e.createElement("div",{className:"DocSearch-Dropdown",ref:V},e.createElement(Ir,m({},ee,{indexName:o,state:H,hitComponent:d,resultsFooterComponent:b,disableUserPersonalization:D,recentSearches:Y,favoriteSearches:G,inputRef:z,translations:q,getMissingResultsUrl:C,onItemClick:function(e,t){X(e),$(e),yr(t)||s()}}))),e.createElement("footer",{className:"DocSearch-Footer"},e.createElement(Wt,{translations:L}))))}function cn(t){var r=t.isOpen,n=t.onOpen,o=t.onClose,i=t.onInput,a=t.searchButtonRef;e.useEffect((function(){function e(e){var t;if("Escape"===e.code&&r||"k"===(null===(t=e.key)||void 0===t?void 0:t.toLowerCase())&&(e.metaKey||e.ctrlKey)||!function(e){var t=e.target,r=t.tagName;return t.isContentEditable||"INPUT"===r||"SELECT"===r||"TEXTAREA"===r}(e)&&"/"===e.key&&!r)return e.preventDefault(),void(r?o():document.body.classList.contains("DocSearch--active")||n());a&&a.current===document.activeElement&&i&&/[a-zA-Z0-9]/.test(String.fromCharCode(e.keyCode))&&i(e)}return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[r,n,o,i,a])}function un(t){var r,n,i=e.useRef(null),a=O(e.useState(!1),2),c=a[0],u=a[1],l=O(e.useState((null==t?void 0:t.initialQuery)||void 0),2),s=l[0],f=l[1],p=e.useCallback((function(){u(!0)}),[u]),v=e.useCallback((function(){u(!1),f(null==t?void 0:t.initialQuery)}),[u,t.initialQuery]);return cn({isOpen:c,onOpen:p,onClose:v,onInput:e.useCallback((function(e){u(!0),f(e.key)}),[u,f]),searchButtonRef:i}),e.createElement(e.Fragment,null,e.createElement(A,{ref:i,translations:null==t||null===(r=t.translations)||void 0===r?void 0:r.button,onClick:p}),c&&o(e.createElement(an,m({},t,{initialScrollY:window.scrollY,initialQuery:s,translations:null==t||null===(n=t.translations)||void 0===n?void 0:n.modal,onClose:v})),document.body))}export{un as DocSearch,A as DocSearchButton,an as DocSearchModal,cn as useDocSearchKeyboardEvents,rn as version}; diff --git a/node_modules/@docsearch/react/dist/umd/index.js b/node_modules/@docsearch/react/dist/umd/index.js deleted file mode 100644 index ba09a64..0000000 --- a/node_modules/@docsearch/react/dist/umd/index.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! @docsearch/react 3.8.2 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("react-dom")):"function"==typeof define&&define.amd?define(["exports","react","react-dom"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@docsearch/react"]={},e.React,e.ReactDOM)}(this,(function(e,t,r){"use strict";function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(u&&l){if(this.prev=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),_(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;_(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:C(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function g(e,t){return g=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},g(e,t)}function b(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);u=!0);}catch(e){l=!0,o=e}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(e,t)||O(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e){return function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||O(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function O(e,t){if(e){if("string"==typeof e)return n(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}function w(e){var t="function"==typeof Map?new Map:void 0;return w=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return function(e,t,r){if(p())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var o=new(e.bind.apply(e,n));return r&&g(o,r.prototype),o}(e,arguments,f(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),g(r,e)},w(e)}function E(){return t.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},t.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function j(){return t.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20","aria-hidden":"true"},t.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var P=["translations"],I="Ctrl";var D=t.forwardRef((function(e,r){var n=e.translations,o=void 0===n?{}:n,i=h(e,P),a=o.buttonText,c=void 0===a?"Search":a,u=o.buttonAriaLabel,l=void 0===u?"Search":u,f=b(t.useState(null),2),m=f[0],p=f[1];t.useEffect((function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?p("⌘"):p(I))}),[]);var v=b(m===I?[I,"Ctrl",t.createElement(E,null)]:["Meta","Command",m],3),d=v[0],y=v[1],g=v[2];return t.createElement("button",s({type:"button",className:"DocSearch DocSearch-Button","aria-label":"".concat(l," (").concat(y,"+K)")},i,{ref:r}),t.createElement("span",{className:"DocSearch-Button-Container"},t.createElement(j,null),t.createElement("span",{className:"DocSearch-Button-Placeholder"},c)),t.createElement("span",{className:"DocSearch-Button-Keys"},null!==m&&t.createElement(t.Fragment,null,t.createElement(k,{reactsToKey:d},g),t.createElement(k,{reactsToKey:"k"},"K"))))}));function k(e){var r=e.reactsToKey,n=e.children,o=b(t.useState(!1),2),i=o[0],a=o[1];return t.useEffect((function(){if(r)return window.addEventListener("keydown",e),window.addEventListener("keyup",t),function(){window.removeEventListener("keydown",e),window.removeEventListener("keyup",t)};function e(e){e.key===r&&a(!0)}function t(e){e.key!==r&&"Meta"!==e.key||a(!1)}}),[r]),t.createElement("kbd",{className:i?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"},n)}function A(e,t){var r=void 0;return function(){for(var n=arguments.length,o=new Array(n),i=0;ie.length)&&(t=e.length);for(var r=0,n=new Array(t);re.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function J(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Q(e){for(var t=1;t=3||2===r&&n>=4||1===r&&n>=10);function i(t,r,n){if(o&&void 0!==n){var i=n[0].__autocomplete_algoliaCredentials,a={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(K(r),[{headers:a}]))}else e.apply(void 0,[t].concat(K(r)))}return{init:function(t,r){e("init",{appId:t,apiKey:r})},setAuthenticatedUserToken:function(t){e("setAuthenticatedUserToken",t)},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("clickedObjectIDsAfterSearch",Z(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("clickedObjectIDs",Z(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,r=new Array(t),n=0;n0&&e.apply(void 0,["clickedFilters"].concat(r))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("convertedObjectIDsAfterSearch",Z(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&i("convertedObjectIDs",Z(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,r=new Array(t),n=0;n0&&e.apply(void 0,["convertedFilters"].concat(r))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&t.reduce((function(e,t){var r=t.items,n=z(t,F);return[].concat(K(e),K(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,r=[],n=0;n0&&e.apply(void 0,["viewedFilters"].concat(r))}}}function Y(e){var t=e.items.reduce((function(e,t){var r;return e[t.__autocomplete_indexName]=(null!==(r=e[t.__autocomplete_indexName])&&void 0!==r?r:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function $(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function X(e){return X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},X(e)}function ee(e){return function(e){if(Array.isArray(e))return te(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return te(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return te(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function te(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&ce({onItemsChange:o,items:r,insights:l,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,r=e.onSelect,n=e.onActive,o=!1;function s(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:ne(ne({},c?{clickAnalytics:!0}:{}),e?{userToken:se(e)}:{}),insights:l}})}u("addAlgoliaAgent","insights-plugin"),s(),u("onUserTokenChange",(function(e){o||s(e)})),u("getUserToken",null,(function(e,t){o||s(t)})),u("onAuthenticatedUserTokenChange",(function(e){e?(o=!0,s(e)):(o=!1,u("getUserToken",null,(function(e,t){return s(t)})))})),u("getAuthenticatedUserToken",null,(function(e,t){t&&(o=!0,s(t))})),r((function(e){var t=e.item,r=e.state,n=e.event,o=e.source;$(t)&&i({state:r,event:n,insights:l,item:t,insightsEvents:[ne({eventName:"Item Selected"},q({item:t,items:o.getItems().filter($)}))]})})),n((function(e){var t=e.item,r=e.source,n=e.state,o=e.event;$(t)&&a({state:n,event:o,insights:l,item:t,insightsEvents:[ne({eventName:"Item Active"},q({item:t,items:r.getItems().filter($)}))]})}))},onStateChange:function(e){var t=e.state;f({state:t})},__autocomplete_pluginOptions:e}}function le(){var e,t=arguments.length>1?arguments[1]:void 0;return[].concat(ee(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]),["autocomplete-internal"],ee(null!==(e=t.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}function se(e){return"number"==typeof e?e.toString():e}function fe(e,t){var r=t;return{then:function(t,n){return fe(e.then(pe(t,r,e),pe(n,r,e)),r)},catch:function(t){return fe(e.catch(pe(t,r,e)),r)},finally:function(t){return t&&r.onCancelList.push(t),fe(e.finally(pe(t&&function(){return r.onCancelList=[],t()},r,e)),r)},cancel:function(){r.isCanceled=!0;var e=r.onCancelList;r.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===r.isCanceled}}}function me(e){return fe(e,{isCanceled:!1,onCancelList:[]})}function pe(e,t,r){return e?function(r){return t.isCanceled?r:e(r)}:r}function ve(e,t,r,n){if(!r)return null;if(e<0&&(null===t||null!==n&&0===t))return r+e;var o=(null===t?-1:t)+e;return o<=-1||o>=r?null===n?null:0:o}function de(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function he(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0},reshape:function(e){return e.sources}},e),{},{id:null!==(r=e.id)&&void 0!==r?r:"autocomplete-".concat(x++),plugins:o,initialState:Le({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var r;null===(r=e.onStateChange)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onStateChange)||void 0===r?void 0:r.call(e,t)}))},onSubmit:function(t){var r;null===(r=e.onSubmit)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onSubmit)||void 0===r?void 0:r.call(e,t)}))},onReset:function(t){var r;null===(r=e.onReset)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onReset)||void 0===r?void 0:r.call(e,t)}))},getSources:function(r){return Promise.all([].concat(Ce(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var r=[];return Promise.resolve(e(t)).then((function(e){return Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,r.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));r.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:L,onResolve:L};Object.keys(t).forEach((function(e){t[e].__default=!0}));var n=he(he({},t),e);return Promise.resolve(n)})))}))}(e,r)}))).then((function(e){return _(e)})).then((function(e){return e.map((function(e){return Le(Le({},e),{},{onSelect:function(r){e.onSelect(r),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,r)}))},onActive:function(r){e.onActive(r),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,r)}))},onResolve:function(r){e.onResolve(r),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,r)}))}})}))}))},navigator:Le({navigate:function(e){var t=e.itemUrl;n.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,r=n.open(t,"_blank","noopener");null==r||r.focus()},navigateNewWindow:function(e){var t=e.itemUrl;n.open(t,"_blank","noopener")}},e.navigator)})}function Me(e){return Me="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Me(e)}function He(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Be(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var ot,it,at,ct=null,ut=(ot=-1,it=-1,at=void 0,function(e){var t=++ot;return Promise.resolve(e).then((function(e){return at&&t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function ht(e){return ht="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ht(e)}var yt=["props","refresh","store"],gt=["inputElement","formElement","panelElement"],bt=["inputElement"],St=["inputElement","maxLength"],Ot=["source"],wt=["item","source"];function Et(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function jt(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Dt(e){var t=e.props,r=e.refresh,n=e.store,o=It(e,yt);return{getEnvironmentProps:function(e){var r=e.inputElement,o=e.formElement,i=e.panelElement;function a(e){!n.getState().isOpen&&n.pendingRequests.isEmpty()||e.target===r||!1===[o,i].some((function(t){return r=t,n=e.target,r===n||r.contains(n);var r,n}))&&(n.dispatch("blur",null),t.debug||n.pendingRequests.cancelAll())}return jt({onTouchStart:a,onMouseDown:a,onTouchMove:function(e){!1!==n.getState().isOpen&&r===t.environment.document.activeElement&&e.target!==r&&r.blur()}},It(e,gt))},getRootProps:function(e){return jt({role:"combobox","aria-expanded":n.getState().isOpen,"aria-haspopup":"listbox","aria-controls":n.getState().isOpen?n.getState().collections.map((function(e){var r=e.source;return Se(t.id,"list",r)})).join(" "):void 0,"aria-labelledby":Se(t.id,"label")},e)},getFormProps:function(e){return e.inputElement,jt({action:"",noValidate:!0,role:"search",onSubmit:function(i){var a;i.preventDefault(),t.onSubmit(jt({event:i,refresh:r,state:n.getState()},o)),n.dispatch("submit",null),null===(a=e.inputElement)||void 0===a||a.blur()},onReset:function(i){var a;i.preventDefault(),t.onReset(jt({event:i,refresh:r,state:n.getState()},o)),n.dispatch("reset",null),null===(a=e.inputElement)||void 0===a||a.focus()}},It(e,bt))},getLabelProps:function(e){return jt({htmlFor:Se(t.id,"input"),id:Se(t.id,"label")},e)},getInputProps:function(e){var i;function a(e){(t.openOnFocus||Boolean(n.getState().query))&<(jt({event:e,props:t,query:n.getState().completion||n.getState().query,refresh:r,store:n},o)),n.dispatch("focus",null)}var c=e||{};c.inputElement;var u=c.maxLength,l=void 0===u?512:u,s=It(c,St),f=be(n.getState()),m=function(e){return Boolean(e&&e.match(Oe))}((null===(i=t.environment.navigator)||void 0===i?void 0:i.userAgent)||""),p=t.enterKeyHint||(null!=f&&f.itemUrl&&!m?"go":"search");return jt({"aria-autocomplete":"both","aria-activedescendant":n.getState().isOpen&&null!==n.getState().activeItemId?Se(t.id,"item-".concat(n.getState().activeItemId),null==f?void 0:f.source):void 0,"aria-controls":n.getState().isOpen?n.getState().collections.map((function(e){var r=e.source;return Se(t.id,"list",r)})).join(" "):void 0,"aria-labelledby":Se(t.id,"label"),value:n.getState().completion||n.getState().query,id:Se(t.id,"input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:p,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:l,type:"search",onChange:function(e){var i=e.currentTarget.value;t.ignoreCompositionEvents&&we(e).isComposing?o.setQuery(i):lt(jt({event:e,props:t,query:i.slice(0,l),refresh:r,store:n},o))},onCompositionEnd:function(e){lt(jt({event:e,props:t,query:e.currentTarget.value.slice(0,l),refresh:r,store:n},o))},onKeyDown:function(e){we(e).isComposing||function(e){var t=e.event,r=e.props,n=e.refresh,o=e.store,i=dt(e,ft);if("ArrowUp"===t.key||"ArrowDown"===t.key){var a=function(){var e=be(o.getState()),t=r.environment.document.getElementById(Se(r.id,"item-".concat(o.getState().activeItemId),null==e?void 0:e.source));t&&(t.scrollIntoViewIfNeeded?t.scrollIntoViewIfNeeded(!1):t.scrollIntoView(!1))},c=function(){var e=be(o.getState());if(null!==o.getState().activeItemId&&e){var r=e.item,a=e.itemInputValue,c=e.itemUrl,u=e.source;u.onActive(pt({event:t,item:r,itemInputValue:a,itemUrl:c,refresh:n,source:u,state:o.getState()},i))}};t.preventDefault(),!1===o.getState().isOpen&&(r.openOnFocus||Boolean(o.getState().query))?lt(pt({event:t,props:r,query:o.getState().query,refresh:n,store:o},i)).then((function(){o.dispatch(t.key,{nextActiveItemId:r.defaultActiveItemId}),c(),setTimeout(a,0)})):(o.dispatch(t.key,{}),c(),a())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Tab"===t.key)o.dispatch("blur",null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return void(r.debug||o.pendingRequests.cancelAll());t.preventDefault();var u=be(o.getState()),l=u.item,s=u.itemInputValue,f=u.itemUrl,m=u.source;if(t.metaKey||t.ctrlKey)void 0!==f&&(m.onSelect(pt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),r.navigator.navigateNewTab({itemUrl:f,item:l,state:o.getState()}));else if(t.shiftKey)void 0!==f&&(m.onSelect(pt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),r.navigator.navigateNewWindow({itemUrl:f,item:l,state:o.getState()}));else if(t.altKey);else{if(void 0!==f)return m.onSelect(pt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),void r.navigator.navigate({itemUrl:f,item:l,state:o.getState()});lt(pt({event:t,nextState:{isOpen:!1},props:r,query:s,refresh:n,store:o},i)).then((function(){m.onSelect(pt({event:t,item:l,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i))}))}}}(jt({event:e,props:t,refresh:r,store:n},o))},onFocus:a,onBlur:L,onClick:function(r){e.inputElement!==t.environment.document.activeElement||n.getState().isOpen||a(r)}},s)},getPanelProps:function(e){return jt({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){n.dispatch("mouseleave",null)}},e)},getListProps:function(e){var r=e||{},n=r.source,o=It(r,Ot);return jt({role:"listbox","aria-labelledby":Se(t.id,"label"),id:Se(t.id,"list",n)},o)},getItemProps:function(e){var i=e.item,a=e.source,c=It(e,wt);return jt({id:Se(t.id,"item-".concat(i.__autocomplete_id),a),role:"option","aria-selected":n.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){if(i.__autocomplete_id!==n.getState().activeItemId){n.dispatch("mousemove",i.__autocomplete_id);var t=be(n.getState());if(null!==n.getState().activeItemId&&t){var a=t.item,c=t.itemInputValue,u=t.itemUrl,l=t.source;l.onActive(jt({event:e,item:a,itemInputValue:c,itemUrl:u,refresh:r,source:l,state:n.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var c=a.getItemInputValue({item:i,state:n.getState()}),u=a.getItemUrl({item:i,state:n.getState()});(u?Promise.resolve():lt(jt({event:e,nextState:{isOpen:!1},props:t,query:c,refresh:r,store:n},o))).then((function(){a.onSelect(jt({event:e,item:i,itemInputValue:c,itemUrl:u,refresh:r,source:a,state:n.getState()},o))}))}},c)}}}function kt(e){return kt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},kt(e)}function At(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function _t(e){for(var t=1;t0&&t.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},t.createElement("p",{className:"DocSearch-Help"},u,":"),t.createElement("ul",null,p.slice(0,3).reduce((function(e,r){return[].concat(S(e),[t.createElement("li",{key:r},t.createElement("button",{className:"DocSearch-Prefill",key:r,type:"button",onClick:function(){o.setQuery(r.toLowerCase()+" "),o.refresh(),o.inputRef.current.focus()}},r))])}),[]))),o.getMissingResultsUrl&&t.createElement("p",{className:"DocSearch-Help"},"".concat(s," "),t.createElement("a",{href:o.getMissingResultsUrl({query:o.state.query}),target:"_blank",rel:"noopener noreferrer"},m)))}var ur=["hit","attribute","tagName"];function lr(e,t){return t.split(".").reduce((function(e,t){return null!=e&&e[t]?e[t]:null}),e)}function sr(e){var r=e.hit,n=e.attribute,o=e.tagName,i=void 0===o?"span":o,a=h(e,ur);return t.createElement(i,d(d({},a),{},{dangerouslySetInnerHTML:{__html:lr(r,"_snippetResult.".concat(n,".value"))||lr(r,n)}}))}function fr(e){return e.collection&&0!==e.collection.items.length?t.createElement("section",{className:"DocSearch-Hits"},t.createElement("div",{className:"DocSearch-Hit-source"},e.title),t.createElement("ul",e.getListProps(),e.collection.items.map((function(r,n){return t.createElement(mr,s({key:[e.title,r.objectID].join(":"),item:r,index:n},e))})))):null}function mr(e){var r=e.item,n=e.index,o=e.renderIcon,i=e.renderAction,a=e.getItemProps,c=e.onItemClick,u=e.collection,l=e.hitComponent,f=b(t.useState(!1),2),m=f[0],p=f[1],v=b(t.useState(!1),2),d=v[0],h=v[1],y=t.useRef(null),g=l;return t.createElement("li",s({className:["DocSearch-Hit",r.__docsearch_parent&&"DocSearch-Hit--Child",m&&"DocSearch-Hit--deleting",d&&"DocSearch-Hit--favoriting"].filter(Boolean).join(" "),onTransitionEnd:function(){y.current&&y.current()}},a({item:r,source:u.source,onClick:function(e){c(r,e)}})),t.createElement(g,{hit:r},t.createElement("div",{className:"DocSearch-Hit-Container"},o({item:r,index:n}),r.hierarchy[r.type]&&"lvl1"===r.type&&t.createElement("div",{className:"DocSearch-Hit-content-wrapper"},t.createElement(sr,{className:"DocSearch-Hit-title",hit:r,attribute:"hierarchy.lvl1"}),r.content&&t.createElement(sr,{className:"DocSearch-Hit-path",hit:r,attribute:"content"})),r.hierarchy[r.type]&&("lvl2"===r.type||"lvl3"===r.type||"lvl4"===r.type||"lvl5"===r.type||"lvl6"===r.type)&&t.createElement("div",{className:"DocSearch-Hit-content-wrapper"},t.createElement(sr,{className:"DocSearch-Hit-title",hit:r,attribute:"hierarchy.".concat(r.type)}),t.createElement(sr,{className:"DocSearch-Hit-path",hit:r,attribute:"hierarchy.lvl1"})),"content"===r.type&&t.createElement("div",{className:"DocSearch-Hit-content-wrapper"},t.createElement(sr,{className:"DocSearch-Hit-title",hit:r,attribute:"content"}),t.createElement(sr,{className:"DocSearch-Hit-path",hit:r,attribute:"hierarchy.lvl1"})),i({item:r,runDeleteTransition:function(e){p(!0),y.current=e},runFavoriteTransition:function(e){h(!0),y.current=e}}))))}function pr(e,t,r){return e.reduce((function(e,n){var o=t(n);return e.hasOwnProperty(o)||(e[o]=[]),e[o].length<(r||5)&&e[o].push(n),e}),{})}function vr(e){return e}function dr(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}function hr(){}var yr=/(|<\/mark>)/g,gr=RegExp(yr.source);function br(e){var t,r,n=e;if(!n.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var o=n.__docsearch_parent?null===(t=n.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(r=e._highlightResult)||void 0===r||null===(r=r.hierarchy)||void 0===r?void 0:r.lvl0;return o?o.value&&gr.test(o.value)?o.value.replace(yr,""):o.value:e.hierarchy.lvl0}function Sr(e){return t.createElement("div",{className:"DocSearch-Dropdown-Container"},e.state.collections.map((function(r){if(0===r.items.length)return null;var n=br(r.items[0]);return t.createElement(fr,s({},e,{key:r.source.sourceId,title:n,collection:r,renderIcon:function(e){var n,o=e.item,i=e.index;return t.createElement(t.Fragment,null,o.__docsearch_parent&&t.createElement("svg",{className:"DocSearch-Hit-Tree",viewBox:"0 0 24 54"},t.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},o.__docsearch_parent!==(null===(n=r.items[i+1])||void 0===n?void 0:n.__docsearch_parent)?t.createElement("path",{d:"M8 6v21M20 27H8.3"}):t.createElement("path",{d:"M8 6v42M20 27H8.3"}))),t.createElement("div",{className:"DocSearch-Hit-icon"},t.createElement(Xt,{type:o.type})))},renderAction:function(){return t.createElement("div",{className:"DocSearch-Hit-action"},t.createElement(Yt,null))}}))})),e.resultsFooterComponent&&t.createElement("section",{className:"DocSearch-HitsFooter"},t.createElement(e.resultsFooterComponent,{state:e.state})))}var Or=["translations"];function wr(e){var r=e.translations,n=void 0===r?{}:r,o=h(e,Or),i=n.recentSearchesTitle,a=void 0===i?"Recent":i,c=n.noRecentSearchesText,u=void 0===c?"No recent searches":c,l=n.saveRecentSearchButtonTitle,f=void 0===l?"Save this search":l,m=n.removeRecentSearchButtonTitle,p=void 0===m?"Remove this search from history":m,v=n.favoriteSearchesTitle,d=void 0===v?"Favorite":v,y=n.removeFavoriteSearchButtonTitle,g=void 0===y?"Remove this search from favorites":y;return"idle"===o.state.status&&!1===o.hasCollections?o.disableUserPersonalization?null:t.createElement("div",{className:"DocSearch-StartScreen"},t.createElement("p",{className:"DocSearch-Help"},u)):!1===o.hasCollections?null:t.createElement("div",{className:"DocSearch-Dropdown-Container"},t.createElement(fr,s({},o,{title:a,collection:o.state.collections[0],renderIcon:function(){return t.createElement("div",{className:"DocSearch-Hit-icon"},t.createElement(Zt,null))},renderAction:function(e){var r=e.item,n=e.runFavoriteTransition,i=e.runDeleteTransition;return t.createElement(t.Fragment,null,t.createElement("div",{className:"DocSearch-Hit-action"},t.createElement("button",{className:"DocSearch-Hit-action-button",title:f,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.add(r),o.recentSearches.remove(r),o.refresh()}))}},t.createElement(rr,null))),t.createElement("div",{className:"DocSearch-Hit-action"},t.createElement("button",{className:"DocSearch-Hit-action-button",title:p,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),i((function(){o.recentSearches.remove(r),o.refresh()}))}},t.createElement(Gt,null))))}})),t.createElement(fr,s({},o,{title:d,collection:o.state.collections[1],renderIcon:function(){return t.createElement("div",{className:"DocSearch-Hit-icon"},t.createElement(rr,null))},renderAction:function(e){var r=e.item,n=e.runDeleteTransition;return t.createElement("div",{className:"DocSearch-Hit-action"},t.createElement("button",{className:"DocSearch-Hit-action-button",title:g,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),n((function(){o.favoriteSearches.remove(r),o.refresh()}))}},t.createElement(Gt,null)))}})))}var Er=["translations"],jr=t.memo((function(e){var r=e.translations,n=void 0===r?{}:r,o=h(e,Er);if("error"===o.state.status)return t.createElement(ir,{translations:null==n?void 0:n.errorScreen});var i=o.state.collections.some((function(e){return e.items.length>0}));return o.state.query?!1===i?t.createElement(cr,s({},o,{translations:null==n?void 0:n.noResultsScreen})):t.createElement(Sr,o):t.createElement(wr,s({},o,{hasCollections:i,translations:null==n?void 0:n.startScreen}))}),(function(e,t){return"loading"===t.state.status||"stalled"===t.state.status})),Pr=["translations"];function Ir(e){var r=e.translations,n=void 0===r?{}:r,o=h(e,Pr),i=n.resetButtonTitle,a=void 0===i?"Clear the query":i,c=n.resetButtonAriaLabel,u=void 0===c?"Clear the query":c,l=n.cancelButtonText,f=void 0===l?"Cancel":l,m=n.cancelButtonAriaLabel,p=void 0===m?"Cancel":m,v=n.searchInputLabel,d=void 0===v?"Search":v,y=o.getFormProps({inputElement:o.inputRef.current}).onReset;return t.useEffect((function(){o.autoFocus&&o.inputRef.current&&o.inputRef.current.focus()}),[o.autoFocus,o.inputRef]),t.useEffect((function(){o.isFromSelection&&o.inputRef.current&&o.inputRef.current.select()}),[o.isFromSelection,o.inputRef]),t.createElement(t.Fragment,null,t.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:y},t.createElement("label",s({className:"DocSearch-MagnifierLabel"},o.getLabelProps()),t.createElement(j,null),t.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},d)),t.createElement("div",{className:"DocSearch-LoadingIndicator"},t.createElement(Wt,null)),t.createElement("input",s({className:"DocSearch-Input",ref:o.inputRef},o.getInputProps({inputElement:o.inputRef.current,autoFocus:o.autoFocus,maxLength:64}))),t.createElement("button",{type:"reset",title:a,className:"DocSearch-Reset","aria-label":u,hidden:!o.state.query},t.createElement(Gt,null))),t.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":p,onClick:o.onClose},f))}var Dr=["_highlightResult","_snippetResult"];function kr(e){return!1===function(){var e="__TEST_KEY__";try{return localStorage.setItem(e,""),localStorage.removeItem(e),!0}catch(e){return!1}}()?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){return window.localStorage.setItem(e,JSON.stringify(t))},getItem:function(){var t=window.localStorage.getItem(e);return t?JSON.parse(t):[]}}}function Ar(e){var t=e.key,r=e.limit,n=void 0===r?5:r,o=kr(t),i=o.getItem().slice(0,n);return{add:function(e){var t=e;t._highlightResult,t._snippetResult;var r=h(t,Dr),a=i.findIndex((function(e){return e.objectID===r.objectID}));a>-1&&i.splice(a,1),i.unshift(r),i=i.slice(0,n),o.setItem(i)},remove:function(e){i=i.filter((function(t){return t.objectID!==e.objectID})),o.setItem(i)},getAll:function(){return i}}}function _r(e){var t,r="algolia-client-js-".concat(e.key);function n(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function o(){return JSON.parse(n().getItem(r)||"{}")}function i(e){n().setItem(r,JSON.stringify(e))}return{get:function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){var r,n,a;return r=e.timeToLive?1e3*e.timeToLive:null,n=o(),i(a=Object.fromEntries(Object.entries(n).filter((function(e){return void 0!==b(e,2)[1].timestamp})))),r&&i(Object.fromEntries(Object.entries(a).filter((function(e){var t=b(e,2)[1],n=(new Date).getTime();return!(t.timestamp+r2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then((function(e){return Promise.all([e,r.miss(e)])})).then((function(e){return b(e,1)[0]}))},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,n){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(e,n,o).catch((function(){return xr({caches:t}).get(e,n,o)}))},set:function(e,n){return r.set(e,n).catch((function(){return xr({caches:t}).set(e,n)}))},delete:function(e){return r.delete(e).catch((function(){return xr({caches:t}).delete(e)}))},clear:function(){return r.clear().catch((function(){return xr({caches:t}).clear()}))}}}function Cr(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(r,n){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},i=JSON.stringify(r);if(i in t)return Promise.resolve(e.serializable?JSON.parse(t[i]):t[i]);var a=n();return a.then((function(e){return o.miss(e)})).then((function(){return a}))},set:function(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function Tr(e){var t=e.algoliaAgents,r=e.client,n=e.version,o=function(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var r="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(r)&&(t.value="".concat(t.value).concat(r)),t}};return t}(n).add({segment:r,version:n});return t.forEach((function(e){return o.add(e)})),o}var Nr=12e4;function Lr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"up",r=Date.now();return d(d({},e),{},{status:t,lastUpdate:r,isUp:function(){return"up"===t||Date.now()-r>Nr},isTimedOut:function(){return"timed out"===t&&Date.now()-r<=Nr}})}var Rr=function(e){function t(e,r){var n;return c(this,t),l(n=a(this,t,[e]),"name","AlgoliaError"),r&&(n.name=r),n}return m(t,e),u(t)}(w(Error)),qr=function(e){function t(e,r,n){var o;return c(this,t),l(o=a(this,t,[e,n]),"stackTrace",void 0),o.stackTrace=r,o}return m(t,e),u(t)}(Rr),Mr=function(e){function t(e){return c(this,t),a(this,t,["Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support.",e,"RetryError"])}return m(t,e),u(t)}(qr),Hr=function(e){function t(e,r,n){var o,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"ApiError";return c(this,t),l(o=a(this,t,[e,n,i]),"status",void 0),o.status=r,o}return m(t,e),u(t)}(qr),Br=function(e){function t(e,r){var n;return c(this,t),l(n=a(this,t,[e,"DeserializationError"]),"response",void 0),n.response=r,n}return m(t,e),u(t)}(Rr),Fr=function(e){function t(e,r,n,o){var i;return c(this,t),l(i=a(this,t,[e,r,o,"DetailedApiError"]),"error",void 0),i.error=n,i}return m(t,e),u(t)}(Hr);function Ur(e,t,r){var n,o=(n=r,Object.keys(n).filter((function(e){return void 0!==n[e]})).sort().map((function(e){return"".concat(e,"=").concat(encodeURIComponent("[object Array]"===Object.prototype.toString.call(n[e])?n[e].join(","):n[e]).replace(/\+/g,"%20"))})).join("&")),i="".concat(e.protocol,"://").concat(e.url).concat(e.port?":".concat(e.port):"","/").concat("/"===t.charAt(0)?t.substring(1):t);return o.length&&(i+="?".concat(o)),i}function Kr(e,t){if("GET"!==e.method&&(void 0!==e.data||void 0!==t.data)){var r=Array.isArray(e.data)?e.data:d(d({},e.data),t.data);return JSON.stringify(r)}}function Vr(e,t,r){var n=d(d(d({Accept:"application/json"},e),t),r),o={};return Object.keys(n).forEach((function(e){var t=n[e];o[e.toLowerCase()]=t})),o}function zr(e){try{return JSON.parse(e.content)}catch(t){throw new Br(t.message,e)}}function Jr(e,t){var r=e.content,n=e.status;try{var o=JSON.parse(r);return"error"in o?new Fr(o.message,n,o.error,t):new Hr(o.message,n,t)}catch(e){}return new Hr(r,n,t)}function Qr(e){return e.map((function(e){return Wr(e)}))}function Wr(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return d(d({},e),{},{request:d(d({},e.request),{},{headers:d(d({},e.request.headers),t)})})}var Zr=["appId","apiKey","authMode","algoliaAgents"],Gr=["params"],Yr="5.14.2";function $r(e){return[{url:"".concat(e,"-dsn.algolia.net"),accept:"read",protocol:"https"},{url:"".concat(e,".algolia.net"),accept:"write",protocol:"https"}].concat(function(e){for(var t=e,r=e.length-1;r>0;r--){var n=Math.floor(Math.random()*(r+1)),o=e[r];t[r]=e[n],t[n]=o}return t}([{url:"".concat(e,"-1.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-2.algolianet.com"),accept:"readWrite",protocol:"https"},{url:"".concat(e,"-3.algolianet.com"),accept:"readWrite",protocol:"https"}]))}function Xr(e){var t=e.appId,r=e.apiKey,n=e.authMode,o=e.algoliaAgents,a=h(e,Zr),c=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"WithinHeaders",n={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers:function(){return"WithinHeaders"===r?n:{}},queryParameters:function(){return"WithinQueryParameters"===r?n:{}}}}(t,r,n),u=function(e){var t=e.hosts,r=e.hostsCache,n=e.baseHeaders,o=e.logger,a=e.baseQueryParameters,c=e.algoliaAgent,u=e.timeouts,l=e.requester,s=e.requestsCache,f=e.responsesCache;function m(e){return p.apply(this,arguments)}function p(){return(p=i(y().mark((function e(t){var n,o,i,a,c;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all(t.map((function(e){return r.get(e,(function(){return Promise.resolve(Lr(e))}))})));case 2:return n=e.sent,o=n.filter((function(e){return e.isUp()})),i=n.filter((function(e){return e.isTimedOut()})),a=[].concat(S(o),S(i)),c=a.length>0?a:t,e.abrupt("return",{hosts:c,getTimeout:function(e,t){return(0===i.length&&0===e?1:i.length+3+e)*t}});case 8:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function v(e,t){return h.apply(this,arguments)}function h(){return h=i(y().mark((function e(s,f){var p,v,h,g,b,O,w,E,j,P,I,D,k,A=arguments;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(p=!(A.length>2&&void 0!==A[2])||A[2],v=[],h=Kr(s,f),g=Vr(n,s.headers,f.headers),b="GET"===s.method?d(d({},s.data),f.data):{},O=d(d(d({},a),s.queryParameters),b),c.value&&(O["x-algolia-agent"]=c.value),f&&f.queryParameters)for(w=0,E=Object.keys(f.queryParameters);w1&&void 0!==arguments[1]?arguments[1]:{},r=e.useReadTransporter||"GET"===e.method;if(!r)return v(e,t,r);var o=function(){return v(e,t)};if(!0!==(t.cacheable||e.cacheable))return o();var i={request:e,requestOptions:t,transporter:{queryParameters:a,headers:n}};return f.get(i,(function(){return s.get(i,(function(){return s.set(i,o()).then((function(e){return Promise.all([s.delete(i),e])}),(function(e){return Promise.all([s.delete(i),Promise.reject(e)])})).then((function(e){var t=b(e,2);return t[0],t[1]}))}))}),{miss:function(e){return f.set(i,e)}})},requestsCache:s,responsesCache:f}}(d(d({hosts:$r(t)},a),{},{algoliaAgent:Tr({algoliaAgents:o,client:"Lite",version:Yr}),baseHeaders:d(d({"content-type":"text/plain"},c.headers()),a.baseHeaders),baseQueryParameters:d(d({},c.queryParameters()),a.baseQueryParameters)}));return{transporter:u,appId:t,clearCache:function(){return Promise.all([u.requestsCache.clear(),u.responsesCache.clear()]).then((function(){}))},get _ua(){return u.algoliaAgent.value},addAlgoliaAgent:function(e,t){u.algoliaAgent.add({segment:e,version:t})},setClientApiKey:function(e){var t=e.apiKey;n&&"WithinHeaders"!==n?u.baseQueryParameters["x-algolia-api-key"]=t:u.baseHeaders["x-algolia-api-key"]=t},searchForHits:function(e,t){return this.search(e,t)},searchForFacets:function(e,t){return this.search(e,t)},customPost:function(e,t){var r=e.path,n=e.parameters,o=e.body;if(!r)throw new Error("Parameter `path` is required when calling `customPost`.");var i={method:"POST",path:"/{path}".replace("{path}",r),queryParameters:n||{},headers:{},data:o||{}};return u.request(i,t)},getRecommendations:function(e,t){e&&Array.isArray(e)&&(e={requests:e});if(!e)throw new Error("Parameter `getRecommendationsParams` is required when calling `getRecommendations`.");if(!e.requests)throw new Error("Parameter `getRecommendationsParams.requests` is required when calling `getRecommendations`.");var r={method:"POST",path:"/1/indexes/*/recommendations",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return u.request(r,t)},search:function(e,t){if(e&&Array.isArray(e)){var r={requests:e.map((function(e){var t=e.params,r=h(e,Gr);return"facet"===r.type?d(d(d({},r),t),{},{type:"facet"}):d(d(d({},r),t),{},{facet:void 0,maxFacetHits:void 0,facetQuery:void 0})}))};e=r}if(!e)throw new Error("Parameter `searchMethodParams` is required when calling `search`.");if(!e.requests)throw new Error("Parameter `searchMethodParams.requests` is required when calling `search`.");var n={method:"POST",path:"/1/indexes/*/queries",queryParameters:{},headers:{},data:e,useReadTransporter:!0,cacheable:!0};return u.request(n,t)}}}var en="3.8.2";function tn(e,r,n){return t.useMemo((function(){var t=function(e,t,r){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!t||"string"!=typeof t)throw new Error("`apiKey` is missing.");return Xr(d({appId:e,apiKey:t,timeouts:{connect:1e3,read:2e3,write:3e4},logger:{debug:function(e,t){return Promise.resolve()},info:function(e,t){return Promise.resolve()},error:function(e,t){return Promise.resolve()}},requester:{send:function(e){return new Promise((function(t){var r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((function(t){return r.setRequestHeader(t,e.headers[t])}));var n,o=function(e,n){return setTimeout((function(){r.abort(),t({status:0,content:n,isTimedOut:!0})}),e)},i=o(e.connectTimeout,"Connection timeout");r.onreadystatechange=function(){r.readyState>r.OPENED&&void 0===n&&(clearTimeout(i),n=o(e.responseTimeout,"Socket timeout"))},r.onerror=function(){0===r.status&&(clearTimeout(i),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=function(){clearTimeout(i),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:Cr(),requestsCache:Cr({serializable:!1}),hostsCache:xr({caches:[_r({key:"".concat(Yr,"-").concat(e)}),Cr()]})},r))}(e,r);return t.addAlgoliaAgent("docsearch",en),!1===/docsearch.js \(.*\)/.test(t.transporter.algoliaAgent.value)&&t.addAlgoliaAgent("docsearch-react",en),n(t)}),[e,r,n])}var rn=["footer","searchBox"];function nn(e){var r=e.appId,n=e.apiKey,o=e.indexName,i=e.placeholder,a=void 0===i?"Search docs":i,c=e.searchParameters,u=e.maxResultsPerGroup,l=e.onClose,f=void 0===l?hr:l,m=e.transformItems,p=void 0===m?vr:m,v=e.hitComponent,y=void 0===v?Qt:v,g=e.resultsFooterComponent,S=void 0===g?function(){return null}:g,O=e.navigator,w=e.initialScrollY,E=void 0===w?0:w,j=e.transformSearchClient,P=void 0===j?vr:j,I=e.disableUserPersonalization,D=void 0!==I&&I,k=e.initialQuery,A=void 0===k?"":k,_=e.translations,x=void 0===_?{}:_,C=e.getMissingResultsUrl,T=e.insights,N=void 0!==T&&T,L=x.footer,R=x.searchBox,q=h(x,rn),M=b(t.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),H=M[0],B=M[1],F=t.useRef(null),U=t.useRef(null),K=t.useRef(null),V=t.useRef(null),z=t.useRef(null),J=t.useRef(10),Q=t.useRef("undefined"!=typeof window?window.getSelection().toString().slice(0,64):"").current,W=t.useRef(A||Q).current,Z=tn(r,n,P),G=t.useRef(Ar({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(o),limit:10})).current,Y=t.useRef(Ar({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(o),limit:0===G.getAll().length?7:4})).current,$=t.useCallback((function(e){if(!D){var t="content"===e.type?e.__docsearch_parent:e;t&&-1===G.getAll().findIndex((function(e){return e.objectID===t.objectID}))&&Y.add(t)}}),[G,Y,D]),X=t.useCallback((function(e){if(H.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,r={eventName:"Item Selected",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};H.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(r)}}),[H.context.algoliaInsightsPlugin]),ee=t.useMemo((function(){return Kt({id:"docsearch",defaultActiveItemId:0,placeholder:a,openOnFocus:!0,initialState:{query:W,context:{searchSuggestions:[]}},insights:N,navigator:O,onStateChange:function(e){B(e.state)},getSources:function(e){var t=e.query,i=e.state,a=e.setContext,l=e.setStatus;if(!t)return D?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,r=e.event;$(t),dr(r)||f()},getItemUrl:function(e){return e.item.url},getItems:function(){return Y.getAll()}},{sourceId:"favoriteSearches",onSelect:function(e){var t=e.item,r=e.event;$(t),dr(r)||f()},getItemUrl:function(e){return e.item.url},getItems:function(){return G.getAll()}}];var s=Boolean(N);return Z.search({requests:[d({query:t,indexName:o,attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat(J.current),"hierarchy.lvl2:".concat(J.current),"hierarchy.lvl3:".concat(J.current),"hierarchy.lvl4:".concat(J.current),"hierarchy.lvl5:".concat(J.current),"hierarchy.lvl6:".concat(J.current),"content:".concat(J.current)],snippetEllipsisText:"…",highlightPreTag:"",highlightPostTag:"",hitsPerPage:20,clickAnalytics:s},c)]}).catch((function(e){throw"RetryError"===e.name&&l("error"),e})).then((function(e){var t=e.results[0],c=t.hits,l=t.nbHits,m=pr(c,(function(e){return br(e)}),u);i.context.searchSuggestions.length0&&(ne(),z.current&&z.current.focus())}),[W,ne]),t.useEffect((function(){function e(){if(U.current){var e=.01*window.innerHeight;U.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[]),t.createElement("div",s({ref:F},re({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===H.status&&"DocSearch-Container--Stalled","error"===H.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&f()}}),t.createElement("div",{className:"DocSearch-Modal",ref:U},t.createElement("header",{className:"DocSearch-SearchBar",ref:K},t.createElement(Ir,s({},ee,{state:H,autoFocus:0===W.length,inputRef:z,isFromSelection:Boolean(W)&&W===Q,translations:R,onClose:f}))),t.createElement("div",{className:"DocSearch-Dropdown",ref:V},t.createElement(jr,s({},ee,{indexName:o,state:H,hitComponent:y,resultsFooterComponent:S,disableUserPersonalization:D,recentSearches:Y,favoriteSearches:G,inputRef:z,translations:q,getMissingResultsUrl:C,onItemClick:function(e,t){X(e),$(e),dr(t)||f()}}))),t.createElement("footer",{className:"DocSearch-Footer"},t.createElement(Jt,{translations:L}))))}function on(e){var r=e.isOpen,n=e.onOpen,o=e.onClose,i=e.onInput,a=e.searchButtonRef;t.useEffect((function(){function e(e){var t;if("Escape"===e.code&&r||"k"===(null===(t=e.key)||void 0===t?void 0:t.toLowerCase())&&(e.metaKey||e.ctrlKey)||!function(e){var t=e.target,r=t.tagName;return t.isContentEditable||"INPUT"===r||"SELECT"===r||"TEXTAREA"===r}(e)&&"/"===e.key&&!r)return e.preventDefault(),void(r?o():document.body.classList.contains("DocSearch--active")||n());a&&a.current===document.activeElement&&i&&/[a-zA-Z0-9]/.test(String.fromCharCode(e.keyCode))&&i(e)}return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[r,n,o,i,a])}e.DocSearch=function(e){var n,o,i=t.useRef(null),a=b(t.useState(!1),2),c=a[0],u=a[1],l=b(t.useState((null==e?void 0:e.initialQuery)||void 0),2),f=l[0],m=l[1],p=t.useCallback((function(){u(!0)}),[u]),v=t.useCallback((function(){u(!1),m(null==e?void 0:e.initialQuery)}),[u,e.initialQuery]);return on({isOpen:c,onOpen:p,onClose:v,onInput:t.useCallback((function(e){u(!0),m(e.key)}),[u,m]),searchButtonRef:i}),t.createElement(t.Fragment,null,t.createElement(D,{ref:i,translations:null==e||null===(n=e.translations)||void 0===n?void 0:n.button,onClick:p}),c&&r.createPortal(t.createElement(nn,s({},e,{initialScrollY:window.scrollY,initialQuery:f,translations:null==e||null===(o=e.translations)||void 0===o?void 0:o.modal,onClose:v})),document.body))},e.DocSearchButton=D,e.DocSearchModal=nn,e.useDocSearchKeyboardEvents=on,e.version=en})); -//# sourceMappingURL=index.js.map diff --git a/node_modules/@docsearch/react/dist/umd/index.js.map b/node_modules/@docsearch/react/dist/umd/index.js.map deleted file mode 100644 index 9e5c03d..0000000 --- a/node_modules/@docsearch/react/dist/umd/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sources":["../../src/icons/ControlKeyIcon.tsx","../../src/icons/SearchIcon.tsx","../../src/DocSearchButton.tsx","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/debounce.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/flatten.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/noop.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/version.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.js","../../../../node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.js","../../../../node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.js","../../../../node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.js","../../../../node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.js","../../../../node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.js","../../../../node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../../../node_modules/@algolia/autocomplete-shared/dist/esm/createRef.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/getAutocompleteElementId.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/getNativeEvent.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/createStore.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/reshape.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/resolve.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/onInput.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/metadata.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.js","../../../../node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.js","../../src/AlgoliaLogo.tsx","../../src/Footer.tsx","../../src/Hit.tsx","../../src/icons/LoadingIcon.tsx","../../src/icons/RecentIcon.tsx","../../src/icons/ResetIcon.tsx","../../src/icons/SelectIcon.tsx","../../src/icons/SourceIcon.tsx","../../src/icons/StarIcon.tsx","../../src/icons/ErrorIcon.tsx","../../src/icons/NoResultsIcon.tsx","../../src/ErrorScreen.tsx","../../src/NoResultsScreen.tsx","../../src/Snippet.tsx","../../src/Results.tsx","../../src/utils/groupBy.ts","../../src/utils/identity.ts","../../src/utils/isModifierEvent.ts","../../src/utils/noop.ts","../../src/utils/removeHighlightTags.ts","../../src/ResultsScreen.tsx","../../src/StartScreen.tsx","../../src/ScreenState.tsx","../../src/SearchBox.tsx","../../src/constants.ts","../../src/stored-searches.ts","../../../../node_modules/@algolia/client-common/dist/common.js","../../src/version.ts","../../src/useSearchClient.ts","../../../../node_modules/algoliasearch/dist/lite/builds/browser.js","../../../../node_modules/@algolia/requester-browser-xhr/dist/requester.xhr.js","../../src/DocSearchModal.tsx","../../src/useTouchEvents.ts","../../src/useTrapFocus.ts","../../src/useDocSearchKeyboardEvents.ts","../../src/DocSearch.tsx"],"sourcesContent":["import React from 'react';\n\nexport function ControlKeyIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n","import React from 'react';\n\nexport function SearchIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n","import React, { useEffect, useState } from 'react';\n\nimport { ControlKeyIcon } from './icons/ControlKeyIcon';\nimport { SearchIcon } from './icons/SearchIcon';\n\nexport type ButtonTranslations = Partial<{\n buttonText: string;\n buttonAriaLabel: string;\n}>;\n\nexport type DocSearchButtonProps = React.ComponentProps<'button'> & {\n translations?: ButtonTranslations;\n};\n\nconst ACTION_KEY_DEFAULT = 'Ctrl' as const;\nconst ACTION_KEY_APPLE = '⌘' as const;\n\nfunction isAppleDevice(): boolean {\n return /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform);\n}\n\nexport const DocSearchButton = React.forwardRef(\n ({ translations = {}, ...props }, ref) => {\n const { buttonText = 'Search', buttonAriaLabel = 'Search' } = translations;\n\n const [key, setKey] = useState(null);\n\n useEffect(() => {\n if (typeof navigator !== 'undefined') {\n isAppleDevice() ? setKey(ACTION_KEY_APPLE) : setKey(ACTION_KEY_DEFAULT);\n }\n }, []);\n\n const [actionKeyReactsTo, actionKeyAltText, actionKeyChild] =\n key === ACTION_KEY_DEFAULT\n ? // eslint-disable-next-line react/jsx-key -- false flag\n ([ACTION_KEY_DEFAULT, 'Ctrl', ] as const)\n : (['Meta', 'Command', key] as const);\n\n return (\n \n \n \n {buttonText}\n \n\n \n {key !== null && (\n <>\n {actionKeyChild}\n K\n \n )}\n \n \n );\n },\n);\n\ntype DocSearchButtonKeyProps = {\n reactsToKey?: string;\n};\n\nfunction DocSearchButtonKey({ reactsToKey, children }: React.PropsWithChildren): JSX.Element {\n const [isKeyDown, setIsKeyDown] = useState(false);\n\n useEffect(() => {\n if (!reactsToKey) {\n return undefined;\n }\n\n function handleKeyDown(e: KeyboardEvent): void {\n if (e.key === reactsToKey) {\n setIsKeyDown(true);\n }\n }\n\n function handleKeyUp(e: KeyboardEvent): void {\n if (\n e.key === reactsToKey ||\n // keyup doesn't fire when Command is held down,\n // workaround is to mark key as also released when Command is released\n // See https://stackoverflow.com/a/73419500\n e.key === 'Meta'\n ) {\n setIsKeyDown(false);\n }\n }\n\n window.addEventListener('keydown', handleKeyDown);\n window.addEventListener('keyup', handleKeyUp);\n\n return (): void => {\n window.removeEventListener('keydown', handleKeyDown);\n window.removeEventListener('keyup', handleKeyUp);\n };\n }, [reactsToKey]);\n\n return (\n \n {children}\n \n );\n}\n","export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","export function flatten(values) {\n return values.reduce(function (a, b) {\n return a.concat(b);\n }, []);\n}","var autocompleteId = 0;\nexport function generateAutocompleteId() {\n return \"autocomplete-\".concat(autocompleteId++);\n}","export function getItemsCount(state) {\n if (state.collections.length === 0) {\n return 0;\n }\n return state.collections.reduce(function (sum, collection) {\n return sum + collection.items.length;\n }, 0);\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","export var version = '1.17.7';","import { version } from './version';\nexport var userAgents = [{\n segment: 'autocomplete-core',\n version: version\n}];","export function createClickedEvent(_ref) {\n var item = _ref.item,\n _ref$items = _ref.items,\n items = _ref$items === void 0 ? [] : _ref$items;\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex(function (x) {\n return x.objectID === item.objectID;\n })],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete']\n };\n}","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * Determines if a given insights `client` supports the optional call to `init`\n * and the ability to set credentials via extra parameters when sending events.\n */\nexport function isModernInsightsClient(client) {\n var _split$map = (client.version || '').split('.').map(Number),\n _split$map2 = _slicedToArray(_split$map, 2),\n major = _split$map2[0],\n minor = _split$map2[1];\n\n /* eslint-disable @typescript-eslint/camelcase */\n var v3 = major >= 3;\n var v2_4 = major === 2 && minor >= 4;\n var v1_10 = major === 1 && minor >= 10;\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}","var _excluded = [\"items\"],\n _excluded2 = [\"items\"];\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { isModernInsightsClient } from './isModernInsightsClient';\nfunction chunk(item) {\n var chunkSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20;\n var chunks = [];\n for (var i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push(_objectSpread(_objectSpread({}, item), {}, {\n objectIDs: item.objectIDs.slice(i, i + chunkSize)\n }));\n }\n return chunks;\n}\nfunction mapToInsightsParamsApi(params) {\n return params.map(function (_ref) {\n var items = _ref.items,\n param = _objectWithoutProperties(_ref, _excluded);\n return _objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref2) {\n var objectID = _ref2.objectID;\n return objectID;\n })) || param.objectIDs\n });\n });\n}\nexport function createSearchInsightsApi(searchInsights) {\n var canSendHeaders = isModernInsightsClient(searchInsights);\n function sendToInsights(method, payloads, items) {\n if (canSendHeaders && typeof items !== 'undefined') {\n var _items$0$__autocomple = items[0].__autocomplete_algoliaCredentials,\n appId = _items$0$__autocomple.appId,\n apiKey = _items$0$__autocomple.apiKey;\n var headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey\n };\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads), [{\n headers: headers\n }]));\n } else {\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads)));\n }\n }\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init: function init(appId, apiKey) {\n searchInsights('init', {\n appId: appId,\n apiKey: apiKey\n });\n },\n /**\n * Sets the authenticated user token to attach to events.\n * Unsets the authenticated token by passing `undefined`.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/\n */\n setAuthenticatedUserToken: function setAuthenticatedUserToken(authenticatedUserToken) {\n searchInsights('setAuthenticatedUserToken', authenticatedUserToken);\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken: function setUserToken(userToken) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch: function clickedObjectIDsAfterSearch() {\n for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {\n params[_key] = arguments[_key];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs: function clickedObjectIDs() {\n for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n params[_key2] = arguments[_key2];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters: function clickedFilters() {\n for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n params[_key3] = arguments[_key3];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['clickedFilters'].concat(params));\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch: function convertedObjectIDsAfterSearch() {\n for (var _len4 = arguments.length, params = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n params[_key4] = arguments[_key4];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs: function convertedObjectIDs() {\n for (var _len5 = arguments.length, params = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n params[_key5] = arguments[_key5];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters: function convertedFilters() {\n for (var _len6 = arguments.length, params = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n params[_key6] = arguments[_key6];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['convertedFilters'].concat(params));\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs: function viewedObjectIDs() {\n for (var _len7 = arguments.length, params = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n params[_key7] = arguments[_key7];\n }\n if (params.length > 0) {\n params.reduce(function (acc, _ref3) {\n var items = _ref3.items,\n param = _objectWithoutProperties(_ref3, _excluded2);\n return [].concat(_toConsumableArray(acc), _toConsumableArray(chunk(_objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref4) {\n var objectID = _ref4.objectID;\n return objectID;\n })) || param.objectIDs\n })).map(function (payload) {\n return {\n items: items,\n payload: payload\n };\n })));\n }, []).forEach(function (_ref5) {\n var items = _ref5.items,\n payload = _ref5.payload;\n return sendToInsights('viewedObjectIDs', [payload], items);\n });\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters: function viewedFilters() {\n for (var _len8 = arguments.length, params = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n params[_key8] = arguments[_key8];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['viewedFilters'].concat(params));\n }\n }\n };\n}","export function createViewedEvents(_ref) {\n var items = _ref.items;\n var itemsByIndexName = items.reduce(function (acc, current) {\n var _acc$current$__autoco;\n acc[current.__autocomplete_indexName] = ((_acc$current$__autoco = acc[current.__autocomplete_indexName]) !== null && _acc$current$__autoco !== void 0 ? _acc$current$__autoco : []).concat(current);\n return acc;\n }, {});\n return Object.keys(itemsByIndexName).map(function (indexName) {\n var items = itemsByIndexName[indexName];\n return {\n index: indexName,\n items: items,\n algoliaSource: ['autocomplete']\n };\n });\n}","export function isAlgoliaInsightsHit(hit) {\n return hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID;\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { createRef, debounce, isEqual, noop, safelyRunOnBrowser } from '@algolia/autocomplete-shared';\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nvar VIEW_EVENT_DELAY = 400;\nvar ALGOLIA_INSIGHTS_VERSION = '2.15.0';\nvar ALGOLIA_INSIGHTS_SRC = \"https://cdn.jsdelivr.net/npm/search-insights@\".concat(ALGOLIA_INSIGHTS_VERSION, \"/dist/search-insights.min.js\");\nvar sendViewedObjectIDs = debounce(function (_ref) {\n var onItemsChange = _ref.onItemsChange,\n items = _ref.items,\n insights = _ref.insights,\n state = _ref.state;\n onItemsChange({\n insights: insights,\n insightsEvents: createViewedEvents({\n items: items\n }).map(function (event) {\n return _objectSpread({\n eventName: 'Items Viewed'\n }, event);\n }),\n state: state\n });\n}, VIEW_EVENT_DELAY);\nexport function createAlgoliaInsightsPlugin(options) {\n var _getOptions = getOptions(options),\n providedInsightsClient = _getOptions.insightsClient,\n insightsInitParams = _getOptions.insightsInitParams,\n onItemsChange = _getOptions.onItemsChange,\n onSelectEvent = _getOptions.onSelect,\n onActiveEvent = _getOptions.onActive,\n __autocomplete_clickAnalytics = _getOptions.__autocomplete_clickAnalytics;\n var insightsClient = providedInsightsClient;\n if (!providedInsightsClient) {\n safelyRunOnBrowser(function (_ref2) {\n var window = _ref2.window;\n var pointer = window.AlgoliaAnalyticsObject || 'aa';\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n if (!window[pointer]) {\n window[pointer] = function () {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n window[pointer].queue.push(args);\n };\n }\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n insightsClient = window[pointer];\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n if (insightsInitParams) {\n insightsClient('init', _objectSpread({\n partial: true\n }, insightsInitParams));\n }\n var insights = createSearchInsightsApi(insightsClient);\n var previousItems = createRef([]);\n var debouncedOnStateChange = debounce(function (_ref3) {\n var state = _ref3.state;\n if (!state.isOpen) {\n return;\n }\n var items = state.collections.reduce(function (acc, current) {\n return [].concat(_toConsumableArray(acc), _toConsumableArray(current.items));\n }, []).filter(isAlgoliaInsightsHit);\n if (!isEqual(previousItems.current.map(function (x) {\n return x.objectID;\n }), items.map(function (x) {\n return x.objectID;\n }))) {\n previousItems.current = items;\n if (items.length > 0) {\n sendViewedObjectIDs({\n onItemsChange: onItemsChange,\n items: items,\n insights: insights,\n state: state\n });\n }\n }\n }, 0);\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe: function subscribe(_ref4) {\n var setContext = _ref4.setContext,\n onSelect = _ref4.onSelect,\n onActive = _ref4.onActive;\n var isAuthenticatedToken = false;\n function setInsightsContext(userToken) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: _objectSpread(_objectSpread({}, __autocomplete_clickAnalytics ? {\n clickAnalytics: true\n } : {}), userToken ? {\n userToken: normalizeUserToken(userToken)\n } : {}),\n insights: insights\n }\n });\n }\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n setInsightsContext();\n\n // Handles user token changes\n insightsClient('onUserTokenChange', function (userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n insightsClient('getUserToken', null, function (_error, userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n\n // Handles authenticated user token changes\n insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n } else {\n isAuthenticatedToken = false;\n insightsClient('getUserToken', null, function (_error, userToken) {\n return setInsightsContext(userToken);\n });\n }\n });\n insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n }\n });\n onSelect(function (_ref5) {\n var item = _ref5.item,\n state = _ref5.state,\n event = _ref5.event,\n source = _ref5.source;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onSelectEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Selected'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n onActive(function (_ref6) {\n var item = _ref6.item,\n source = _ref6.source,\n state = _ref6.state,\n event = _ref6.event;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onActiveEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Active'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n },\n onStateChange: function onStateChange(_ref7) {\n var state = _ref7.state;\n debouncedOnStateChange({\n state: state\n });\n },\n __autocomplete_pluginOptions: options\n };\n}\nfunction getAlgoliaSources() {\n var _context$algoliaInsig;\n var algoliaSourceBase = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var context = arguments.length > 1 ? arguments[1] : undefined;\n return [].concat(_toConsumableArray(algoliaSourceBase), ['autocomplete-internal'], _toConsumableArray((_context$algoliaInsig = context.algoliaInsightsPlugin) !== null && _context$algoliaInsig !== void 0 && _context$algoliaInsig.__automaticInsights ? ['autocomplete-automatic'] : []));\n}\nfunction getOptions(options) {\n return _objectSpread({\n onItemsChange: function onItemsChange(_ref8) {\n var insights = _ref8.insights,\n insightsEvents = _ref8.insightsEvents,\n state = _ref8.state;\n insights.viewedObjectIDs.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onSelect: function onSelect(_ref9) {\n var insights = _ref9.insights,\n insightsEvents = _ref9.insightsEvents,\n state = _ref9.state;\n insights.clickedObjectIDsAfterSearch.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true\n }, options);\n}\nfunction loadInsights(environment) {\n var errorMessage = \"[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete\";\n try {\n var script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n script.onerror = function () {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n\n/**\n * While `search-insights` supports both string and number user tokens,\n * the Search API only accepts strings. This function normalizes the user token.\n */\nfunction normalizeUserToken(userToken) {\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","function createInternalCancelablePromise(promise, initialState) {\n var state = initialState;\n return {\n then: function then(onfulfilled, onrejected) {\n return createInternalCancelablePromise(promise.then(createCallback(onfulfilled, state, promise), createCallback(onrejected, state, promise)), state);\n },\n catch: function _catch(onrejected) {\n return createInternalCancelablePromise(promise.catch(createCallback(onrejected, state, promise)), state);\n },\n finally: function _finally(onfinally) {\n if (onfinally) {\n state.onCancelList.push(onfinally);\n }\n return createInternalCancelablePromise(promise.finally(createCallback(onfinally && function () {\n state.onCancelList = [];\n return onfinally();\n }, state, promise)), state);\n },\n cancel: function cancel() {\n state.isCanceled = true;\n var callbacks = state.onCancelList;\n state.onCancelList = [];\n callbacks.forEach(function (callback) {\n callback();\n });\n },\n isCanceled: function isCanceled() {\n return state.isCanceled === true;\n }\n };\n}\nexport function createCancelablePromise(executor) {\n return createInternalCancelablePromise(new Promise(function (resolve, reject) {\n return executor(resolve, reject);\n }), {\n isCanceled: false,\n onCancelList: []\n });\n}\ncreateCancelablePromise.resolve = function (value) {\n return cancelable(Promise.resolve(value));\n};\ncreateCancelablePromise.reject = function (reason) {\n return cancelable(Promise.reject(reason));\n};\nexport function cancelable(promise) {\n return createInternalCancelablePromise(promise, {\n isCanceled: false,\n onCancelList: []\n });\n}\nfunction createCallback(onResult, state, fallback) {\n if (!onResult) {\n return fallback;\n }\n return function callback(arg) {\n if (state.isCanceled) {\n return arg;\n }\n return onResult(arg);\n };\n}","/**\n * Returns the next active item ID from the current state.\n *\n * We allow circular keyboard navigation from the base index.\n * The base index can either be `null` (nothing is highlighted) or `0`\n * (the first item is highlighted).\n * The base index is allowed to get assigned `null` only if\n * `props.defaultActiveItemId` is `null`. This pattern allows to \"stop\"\n * by the actual query before navigating to other suggestions as seen on\n * Google or Amazon.\n *\n * @param moveAmount The offset to increment (or decrement) the last index\n * @param baseIndex The current index to compute the next index from\n * @param itemCount The number of items\n * @param defaultActiveItemId The default active index to fallback to\n */\nexport function getNextActiveItemId(moveAmount, baseIndex, itemCount, defaultActiveItemId) {\n if (!itemCount) {\n return null;\n }\n if (moveAmount < 0 && (baseIndex === null || defaultActiveItemId !== null && baseIndex === 0)) {\n return itemCount + moveAmount;\n }\n var numericIndex = (baseIndex === null ? -1 : baseIndex) + moveAmount;\n if (numericIndex <= -1 || numericIndex >= itemCount) {\n return defaultActiveItemId === null ? null : 0;\n }\n return numericIndex;\n}","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nimport { invariant, decycle, noop } from '@algolia/autocomplete-shared';\nexport function getNormalizedSources(getSources, params) {\n var seenSourceIds = [];\n return Promise.resolve(getSources(params)).then(function (sources) {\n invariant(Array.isArray(sources), function () {\n return \"The `getSources` function must return an array of sources but returned type \".concat(JSON.stringify(_typeof(sources)), \":\\n\\n\").concat(JSON.stringify(decycle(sources), null, 2));\n });\n return Promise.all(sources\n // We allow `undefined` and `false` sources to allow users to use\n // `Boolean(query) && source` (=> `false`).\n // We need to remove these values at this point.\n .filter(function (maybeSource) {\n return Boolean(maybeSource);\n }).map(function (source) {\n invariant(typeof source.sourceId === 'string', 'A source must provide a `sourceId` string.');\n if (seenSourceIds.includes(source.sourceId)) {\n throw new Error(\"[Autocomplete] The `sourceId` \".concat(JSON.stringify(source.sourceId), \" is not unique.\"));\n }\n seenSourceIds.push(source.sourceId);\n var defaultSource = {\n getItemInputValue: function getItemInputValue(_ref) {\n var state = _ref.state;\n return state.query;\n },\n getItemUrl: function getItemUrl() {\n return undefined;\n },\n onSelect: function onSelect(_ref2) {\n var setIsOpen = _ref2.setIsOpen;\n setIsOpen(false);\n },\n onActive: noop,\n onResolve: noop\n };\n Object.keys(defaultSource).forEach(function (key) {\n defaultSource[key].__default = true;\n });\n var normalizedSource = _objectSpread(_objectSpread({}, defaultSource), source);\n return Promise.resolve(normalizedSource);\n }));\n });\n}","// We don't have access to the autocomplete source when we call `onKeyDown`\n// or `onClick` because those are native browser events.\n// However, we can get the source from the suggestion index.\nfunction getCollectionFromActiveItemId(state) {\n // Given 3 sources with respectively 1, 2 and 3 suggestions: [1, 2, 3]\n // We want to get the accumulated counts:\n // [1, 1 + 2, 1 + 2 + 3] = [1, 3, 3 + 3] = [1, 3, 6]\n var accumulatedCollectionsCount = state.collections.map(function (collections) {\n return collections.items.length;\n }).reduce(function (acc, collectionsCount, index) {\n var previousValue = acc[index - 1] || 0;\n var nextValue = previousValue + collectionsCount;\n acc.push(nextValue);\n return acc;\n }, []);\n\n // Based on the accumulated counts, we can infer the index of the suggestion.\n var collectionIndex = accumulatedCollectionsCount.reduce(function (acc, current) {\n if (current <= state.activeItemId) {\n return acc + 1;\n }\n return acc;\n }, 0);\n return state.collections[collectionIndex];\n}\n\n/**\n * Gets the highlighted index relative to a suggestion object (not the absolute\n * highlighted index).\n *\n * Example:\n * [['a', 'b'], ['c', 'd', 'e'], ['f']]\n * ↑\n * (absolute: 3, relative: 1)\n */\nfunction getRelativeActiveItemId(_ref) {\n var state = _ref.state,\n collection = _ref.collection;\n var isOffsetFound = false;\n var counter = 0;\n var previousItemsOffset = 0;\n while (isOffsetFound === false) {\n var currentCollection = state.collections[counter];\n if (currentCollection === collection) {\n isOffsetFound = true;\n break;\n }\n previousItemsOffset += currentCollection.items.length;\n counter++;\n }\n return state.activeItemId - previousItemsOffset;\n}\nexport function getActiveItem(state) {\n var collection = getCollectionFromActiveItemId(state);\n if (!collection) {\n return null;\n }\n var item = collection.items[getRelativeActiveItemId({\n state: state,\n collection: collection\n })];\n var source = collection.source;\n var itemInputValue = source.getItemInputValue({\n item: item,\n state: state\n });\n var itemUrl = source.getItemUrl({\n item: item,\n state: state\n });\n return {\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n source: source\n };\n}","/**\n * Returns a full element id for an autocomplete element.\n *\n * @param autocompleteInstanceId The id of the autocomplete instance\n * @param elementId The specific element id\n * @param source The source of the element, when it needs to be scoped\n */\nexport function getAutocompleteElementId(autocompleteInstanceId, elementId, source) {\n return [autocompleteInstanceId, source === null || source === void 0 ? void 0 : source.sourceId, elementId].filter(Boolean).join('-').replace(/\\s/g, '');\n}","var regex = /((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;\nexport function isSamsung(userAgent) {\n return Boolean(userAgent && userAgent.match(regex));\n}","export function getNativeEvent(event) {\n return event.nativeEvent || event;\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { createCancelablePromiseList } from './utils';\nexport function createStore(reducer, props, onStoreStateChange) {\n var state = props.initialState;\n return {\n getState: function getState() {\n return state;\n },\n dispatch: function dispatch(action, payload) {\n var prevState = _objectSpread({}, state);\n state = reducer(state, {\n type: action,\n props: props,\n payload: payload\n });\n onStoreStateChange({\n state: state,\n prevState: prevState\n });\n },\n pendingRequests: createCancelablePromiseList()\n };\n}","export function createCancelablePromiseList() {\n var list = [];\n return {\n add: function add(cancelablePromise) {\n list.push(cancelablePromise);\n return cancelablePromise.finally(function () {\n list = list.filter(function (item) {\n return item !== cancelablePromise;\n });\n });\n },\n cancelAll: function cancelAll() {\n list.forEach(function (promise) {\n return promise.cancel();\n });\n },\n isEmpty: function isEmpty() {\n return list.length === 0;\n }\n };\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { flatten } from '@algolia/autocomplete-shared';\nexport function getAutocompleteSetters(_ref) {\n var store = _ref.store;\n var setActiveItemId = function setActiveItemId(value) {\n store.dispatch('setActiveItemId', value);\n };\n var setQuery = function setQuery(value) {\n store.dispatch('setQuery', value);\n };\n var setCollections = function setCollections(rawValue) {\n var baseItemId = 0;\n var value = rawValue.map(function (collection) {\n return _objectSpread(_objectSpread({}, collection), {}, {\n // We flatten the stored items to support calling `getAlgoliaResults`\n // from the source itself.\n items: flatten(collection.items).map(function (item) {\n return _objectSpread(_objectSpread({}, item), {}, {\n __autocomplete_id: baseItemId++\n });\n })\n });\n });\n store.dispatch('setCollections', value);\n };\n var setIsOpen = function setIsOpen(value) {\n store.dispatch('setIsOpen', value);\n };\n var setStatus = function setStatus(value) {\n store.dispatch('setStatus', value);\n };\n var setContext = function setContext(value) {\n store.dispatch('setContext', value);\n };\n return {\n setActiveItemId: setActiveItemId,\n setQuery: setQuery,\n setCollections: setCollections,\n setIsOpen: setIsOpen,\n setStatus: setStatus,\n setContext: setContext\n };\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { getItemsCount, generateAutocompleteId, flatten } from '@algolia/autocomplete-shared';\nimport { getNormalizedSources } from './utils';\nexport function getDefaultProps(props, pluginSubscribers) {\n var _props$id;\n /* eslint-disable no-restricted-globals */\n var environment = typeof window !== 'undefined' ? window : {};\n /* eslint-enable no-restricted-globals */\n var plugins = props.plugins || [];\n return _objectSpread(_objectSpread({\n debug: false,\n openOnFocus: false,\n enterKeyHint: undefined,\n ignoreCompositionEvents: false,\n placeholder: '',\n autoFocus: false,\n defaultActiveItemId: null,\n stallThreshold: 300,\n insights: undefined,\n environment: environment,\n shouldPanelOpen: function shouldPanelOpen(_ref) {\n var state = _ref.state;\n return getItemsCount(state) > 0;\n },\n reshape: function reshape(_ref2) {\n var sources = _ref2.sources;\n return sources;\n }\n }, props), {}, {\n // Since `generateAutocompleteId` triggers a side effect (it increments\n // an internal counter), we don't want to execute it if unnecessary.\n id: (_props$id = props.id) !== null && _props$id !== void 0 ? _props$id : generateAutocompleteId(),\n plugins: plugins,\n // The following props need to be deeply defaulted.\n initialState: _objectSpread({\n activeItemId: null,\n query: '',\n completion: null,\n collections: [],\n isOpen: false,\n status: 'idle',\n context: {}\n }, props.initialState),\n onStateChange: function onStateChange(params) {\n var _props$onStateChange;\n (_props$onStateChange = props.onStateChange) === null || _props$onStateChange === void 0 ? void 0 : _props$onStateChange.call(props, params);\n plugins.forEach(function (x) {\n var _x$onStateChange;\n return (_x$onStateChange = x.onStateChange) === null || _x$onStateChange === void 0 ? void 0 : _x$onStateChange.call(x, params);\n });\n },\n onSubmit: function onSubmit(params) {\n var _props$onSubmit;\n (_props$onSubmit = props.onSubmit) === null || _props$onSubmit === void 0 ? void 0 : _props$onSubmit.call(props, params);\n plugins.forEach(function (x) {\n var _x$onSubmit;\n return (_x$onSubmit = x.onSubmit) === null || _x$onSubmit === void 0 ? void 0 : _x$onSubmit.call(x, params);\n });\n },\n onReset: function onReset(params) {\n var _props$onReset;\n (_props$onReset = props.onReset) === null || _props$onReset === void 0 ? void 0 : _props$onReset.call(props, params);\n plugins.forEach(function (x) {\n var _x$onReset;\n return (_x$onReset = x.onReset) === null || _x$onReset === void 0 ? void 0 : _x$onReset.call(x, params);\n });\n },\n getSources: function getSources(params) {\n return Promise.all([].concat(_toConsumableArray(plugins.map(function (plugin) {\n return plugin.getSources;\n })), [props.getSources]).filter(Boolean).map(function (getSources) {\n return getNormalizedSources(getSources, params);\n })).then(function (nested) {\n return flatten(nested);\n }).then(function (sources) {\n return sources.map(function (source) {\n return _objectSpread(_objectSpread({}, source), {}, {\n onSelect: function onSelect(params) {\n source.onSelect(params);\n pluginSubscribers.forEach(function (x) {\n var _x$onSelect;\n return (_x$onSelect = x.onSelect) === null || _x$onSelect === void 0 ? void 0 : _x$onSelect.call(x, params);\n });\n },\n onActive: function onActive(params) {\n source.onActive(params);\n pluginSubscribers.forEach(function (x) {\n var _x$onActive;\n return (_x$onActive = x.onActive) === null || _x$onActive === void 0 ? void 0 : _x$onActive.call(x, params);\n });\n },\n onResolve: function onResolve(params) {\n source.onResolve(params);\n pluginSubscribers.forEach(function (x) {\n var _x$onResolve;\n return (_x$onResolve = x.onResolve) === null || _x$onResolve === void 0 ? void 0 : _x$onResolve.call(x, params);\n });\n }\n });\n });\n });\n },\n navigator: _objectSpread({\n navigate: function navigate(_ref3) {\n var itemUrl = _ref3.itemUrl;\n environment.location.assign(itemUrl);\n },\n navigateNewTab: function navigateNewTab(_ref4) {\n var itemUrl = _ref4.itemUrl;\n var windowReference = environment.open(itemUrl, '_blank', 'noopener');\n windowReference === null || windowReference === void 0 ? void 0 : windowReference.focus();\n },\n navigateNewWindow: function navigateNewWindow(_ref5) {\n var itemUrl = _ref5.itemUrl;\n environment.open(itemUrl, '_blank', 'noopener');\n }\n }, props.navigator)\n });\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { flatten } from '@algolia/autocomplete-shared';\nexport function reshape(_ref) {\n var collections = _ref.collections,\n props = _ref.props,\n state = _ref.state;\n // Sources are grouped by `sourceId` to conveniently pick them via destructuring.\n // Example: `const { recentSearchesPlugin } = sourcesBySourceId`\n var originalSourcesBySourceId = collections.reduce(function (acc, collection) {\n return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, collection.source.sourceId, _objectSpread(_objectSpread({}, collection.source), {}, {\n getItems: function getItems() {\n // We provide the resolved items from the collection to the `reshape` prop.\n return flatten(collection.items);\n }\n })));\n }, {});\n var _props$plugins$reduce = props.plugins.reduce(function (acc, plugin) {\n if (plugin.reshape) {\n return plugin.reshape(acc);\n }\n return acc;\n }, {\n sourcesBySourceId: originalSourcesBySourceId,\n state: state\n }),\n sourcesBySourceId = _props$plugins$reduce.sourcesBySourceId;\n var reshapeSources = props.reshape({\n sourcesBySourceId: sourcesBySourceId,\n sources: Object.values(sourcesBySourceId),\n state: state\n });\n\n // We reconstruct the collections with the items modified by the `reshape` prop.\n return flatten(reshapeSources).filter(Boolean).map(function (source) {\n return {\n source: source,\n items: source.getItems()\n };\n });\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nimport { decycle, flatten, invariant } from '@algolia/autocomplete-shared';\nimport { mapToAlgoliaResponse } from './utils';\nfunction isDescription(item) {\n return Boolean(item.execute);\n}\nfunction isRequesterDescription(description) {\n return Boolean(description === null || description === void 0 ? void 0 : description.execute);\n}\nexport function preResolve(itemsOrDescription, sourceId, state) {\n if (isRequesterDescription(itemsOrDescription)) {\n var contextParameters = itemsOrDescription.requesterId === 'algolia' ? Object.assign.apply(Object, [{}].concat(_toConsumableArray(Object.keys(state.context).map(function (key) {\n var _state$context$key;\n return (_state$context$key = state.context[key]) === null || _state$context$key === void 0 ? void 0 : _state$context$key.__algoliaSearchParameters;\n })))) : {};\n return _objectSpread(_objectSpread({}, itemsOrDescription), {}, {\n requests: itemsOrDescription.queries.map(function (query) {\n return {\n query: itemsOrDescription.requesterId === 'algolia' ? _objectSpread(_objectSpread({}, query), {}, {\n params: _objectSpread(_objectSpread({}, contextParameters), query.params)\n }) : query,\n sourceId: sourceId,\n transformResponse: itemsOrDescription.transformResponse\n };\n })\n });\n }\n return {\n items: itemsOrDescription,\n sourceId: sourceId\n };\n}\nexport function resolve(items) {\n var packed = items.reduce(function (acc, current) {\n if (!isDescription(current)) {\n acc.push(current);\n return acc;\n }\n var searchClient = current.searchClient,\n execute = current.execute,\n requesterId = current.requesterId,\n requests = current.requests;\n var container = acc.find(function (item) {\n return isDescription(current) && isDescription(item) && item.searchClient === searchClient && Boolean(requesterId) && item.requesterId === requesterId;\n });\n if (container) {\n var _container$items;\n (_container$items = container.items).push.apply(_container$items, _toConsumableArray(requests));\n } else {\n var request = {\n execute: execute,\n requesterId: requesterId,\n items: requests,\n searchClient: searchClient\n };\n acc.push(request);\n }\n return acc;\n }, []);\n var values = packed.map(function (maybeDescription) {\n if (!isDescription(maybeDescription)) {\n return Promise.resolve(maybeDescription);\n }\n var _ref = maybeDescription,\n execute = _ref.execute,\n items = _ref.items,\n searchClient = _ref.searchClient;\n return execute({\n searchClient: searchClient,\n requests: items\n });\n });\n return Promise.all(values).then(function (responses) {\n return flatten(responses);\n });\n}\nexport function postResolve(responses, sources, store) {\n return sources.map(function (source) {\n var matches = responses.filter(function (response) {\n return response.sourceId === source.sourceId;\n });\n var results = matches.map(function (_ref2) {\n var items = _ref2.items;\n return items;\n });\n var transform = matches[0].transformResponse;\n var items = transform ? transform(mapToAlgoliaResponse(results)) : results;\n source.onResolve({\n source: source,\n results: results,\n items: items,\n state: store.getState()\n });\n invariant(Array.isArray(items), function () {\n return \"The `getItems` function from source \\\"\".concat(source.sourceId, \"\\\" must return an array of items but returned type \").concat(JSON.stringify(_typeof(items)), \":\\n\\n\").concat(JSON.stringify(decycle(items), null, 2), \".\\n\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems\");\n });\n invariant(items.every(Boolean), \"The `getItems` function from source \\\"\".concat(source.sourceId, \"\\\" must return an array of items but returned \").concat(JSON.stringify(undefined), \".\\n\\nDid you forget to return items?\\n\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems\"));\n return {\n source: source,\n items: items\n };\n });\n}","export function mapToAlgoliaResponse(rawResults) {\n return {\n results: rawResults,\n hits: rawResults.map(function (result) {\n return result.hits;\n }).filter(Boolean),\n facetHits: rawResults.map(function (result) {\n var _facetHits;\n return (_facetHits = result.facetHits) === null || _facetHits === void 0 ? void 0 : _facetHits.map(function (facetHit) {\n // Bring support for the highlighting components.\n return {\n label: facetHit.value,\n count: facetHit.count,\n _highlightResult: {\n label: {\n value: facetHit.highlighted\n }\n }\n };\n });\n }).filter(Boolean)\n };\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nvar _excluded = [\"event\", \"nextState\", \"props\", \"query\", \"refresh\", \"store\"];\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { reshape } from './reshape';\nimport { preResolve, resolve, postResolve } from './resolve';\nimport { cancelable, createConcurrentSafePromise, getActiveItem } from './utils';\nvar lastStalledId = null;\nvar runConcurrentSafePromise = createConcurrentSafePromise();\nexport function onInput(_ref) {\n var event = _ref.event,\n _ref$nextState = _ref.nextState,\n nextState = _ref$nextState === void 0 ? {} : _ref$nextState,\n props = _ref.props,\n query = _ref.query,\n refresh = _ref.refresh,\n store = _ref.store,\n setters = _objectWithoutProperties(_ref, _excluded);\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n var setCollections = setters.setCollections,\n setIsOpen = setters.setIsOpen,\n setQuery = setters.setQuery,\n setActiveItemId = setters.setActiveItemId,\n setStatus = setters.setStatus,\n setContext = setters.setContext;\n setQuery(query);\n setActiveItemId(props.defaultActiveItemId);\n if (!query && props.openOnFocus === false) {\n var _nextState$isOpen;\n var collections = store.getState().collections.map(function (collection) {\n return _objectSpread(_objectSpread({}, collection), {}, {\n items: []\n });\n });\n setStatus('idle');\n setCollections(collections);\n setIsOpen((_nextState$isOpen = nextState.isOpen) !== null && _nextState$isOpen !== void 0 ? _nextState$isOpen : props.shouldPanelOpen({\n state: store.getState()\n }));\n\n // We make sure to update the latest resolved value of the tracked\n // promises to keep late resolving promises from \"cancelling\" the state\n // updates performed in this code path.\n // We chain with a void promise to respect `onInput`'s expected return type.\n var _request = cancelable(runConcurrentSafePromise(collections).then(function () {\n return Promise.resolve();\n }));\n return store.pendingRequests.add(_request);\n }\n setStatus('loading');\n lastStalledId = props.environment.setTimeout(function () {\n setStatus('stalled');\n }, props.stallThreshold);\n\n // We track the entire promise chain triggered by `onInput` before mutating\n // the Autocomplete state to make sure that any state manipulation is based on\n // fresh data regardless of when promises individually resolve.\n // We don't track nested promises and only rely on the full chain resolution,\n // meaning we should only ever manipulate the state once this concurrent-safe\n // promise is resolved.\n var request = cancelable(runConcurrentSafePromise(props.getSources(_objectSpread({\n query: query,\n refresh: refresh,\n state: store.getState()\n }, setters)).then(function (sources) {\n return Promise.all(sources.map(function (source) {\n return Promise.resolve(source.getItems(_objectSpread({\n query: query,\n refresh: refresh,\n state: store.getState()\n }, setters))).then(function (itemsOrDescription) {\n return preResolve(itemsOrDescription, source.sourceId, store.getState());\n });\n })).then(resolve).then(function (responses) {\n var __automaticInsights = responses.some(function (_ref2) {\n var items = _ref2.items;\n return isSearchResponseWithAutomaticInsightsFlag(items);\n });\n\n // No need to pollute the context if `__automaticInsights=false`\n if (__automaticInsights) {\n var _store$getState$conte;\n setContext({\n algoliaInsightsPlugin: _objectSpread(_objectSpread({}, ((_store$getState$conte = store.getState().context) === null || _store$getState$conte === void 0 ? void 0 : _store$getState$conte.algoliaInsightsPlugin) || {}), {}, {\n __automaticInsights: __automaticInsights\n })\n });\n }\n return postResolve(responses, sources, store);\n }).then(function (collections) {\n return reshape({\n collections: collections,\n props: props,\n state: store.getState()\n });\n });\n }))).then(function (collections) {\n var _nextState$isOpen2;\n // Parameters passed to `onInput` could be stale when the following code\n // executes, because `onInput` calls may not resolve in order.\n // If it becomes a problem we'll need to save the last passed parameters.\n // See: https://codesandbox.io/s/agitated-cookies-y290z\n\n setStatus('idle');\n setCollections(collections);\n var isPanelOpen = props.shouldPanelOpen({\n state: store.getState()\n });\n setIsOpen((_nextState$isOpen2 = nextState.isOpen) !== null && _nextState$isOpen2 !== void 0 ? _nextState$isOpen2 : props.openOnFocus && !query && isPanelOpen || isPanelOpen);\n var highlightedItem = getActiveItem(store.getState());\n if (store.getState().activeItemId !== null && highlightedItem) {\n var item = highlightedItem.item,\n itemInputValue = highlightedItem.itemInputValue,\n itemUrl = highlightedItem.itemUrl,\n source = highlightedItem.source;\n source.onActive(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n }\n }).finally(function () {\n setStatus('idle');\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n });\n return store.pendingRequests.add(request);\n}\nfunction isSearchResponseWithAutomaticInsightsFlag(items) {\n return !Array.isArray(items) && Boolean(items === null || items === void 0 ? void 0 : items._automaticInsights);\n}","/**\n * Creates a runner that executes promises in a concurrent-safe way.\n *\n * This is useful to prevent older promises to resolve after a newer promise,\n * otherwise resulting in stale resolved values.\n */\nexport function createConcurrentSafePromise() {\n var basePromiseId = -1;\n var latestResolvedId = -1;\n var latestResolvedValue = undefined;\n return function runConcurrentSafePromise(promise) {\n basePromiseId++;\n var currentPromiseId = basePromiseId;\n return Promise.resolve(promise).then(function (x) {\n // The promise might take too long to resolve and get outdated. This would\n // result in resolving stale values.\n // When this happens, we ignore the promise value and return the one\n // coming from the latest resolved value.\n //\n // +----------------------------------+\n // | 100ms |\n // | run(1) +---> R1 |\n // | 300ms |\n // | run(2) +-------------> R2 (SKIP) |\n // | 200ms |\n // | run(3) +--------> R3 |\n // +----------------------------------+\n if (latestResolvedValue && currentPromiseId < latestResolvedId) {\n return latestResolvedValue;\n }\n latestResolvedId = currentPromiseId;\n latestResolvedValue = x;\n return x;\n });\n };\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nvar _excluded = [\"event\", \"props\", \"refresh\", \"store\"];\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { onInput } from './onInput';\nimport { getActiveItem, getAutocompleteElementId } from './utils';\nexport function onKeyDown(_ref) {\n var event = _ref.event,\n props = _ref.props,\n refresh = _ref.refresh,\n store = _ref.store,\n setters = _objectWithoutProperties(_ref, _excluded);\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n // eslint-disable-next-line no-inner-declarations\n var triggerScrollIntoView = function triggerScrollIntoView() {\n var highlightedItem = getActiveItem(store.getState());\n var nodeItem = props.environment.document.getElementById(getAutocompleteElementId(props.id, \"item-\".concat(store.getState().activeItemId), highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.source));\n if (nodeItem) {\n if (nodeItem.scrollIntoViewIfNeeded) {\n nodeItem.scrollIntoViewIfNeeded(false);\n } else {\n nodeItem.scrollIntoView(false);\n }\n }\n }; // eslint-disable-next-line no-inner-declarations\n var triggerOnActive = function triggerOnActive() {\n var highlightedItem = getActiveItem(store.getState());\n if (store.getState().activeItemId !== null && highlightedItem) {\n var item = highlightedItem.item,\n itemInputValue = highlightedItem.itemInputValue,\n itemUrl = highlightedItem.itemUrl,\n source = highlightedItem.source;\n source.onActive(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n }\n }; // Default browser behavior changes the caret placement on ArrowUp and\n // ArrowDown.\n event.preventDefault();\n\n // When re-opening the panel, we need to split the logic to keep the actions\n // synchronized as `onInput` returns a promise.\n if (store.getState().isOpen === false && (props.openOnFocus || Boolean(store.getState().query))) {\n onInput(_objectSpread({\n event: event,\n props: props,\n query: store.getState().query,\n refresh: refresh,\n store: store\n }, setters)).then(function () {\n store.dispatch(event.key, {\n nextActiveItemId: props.defaultActiveItemId\n });\n triggerOnActive();\n // Since we rely on the DOM, we need to wait for all the micro tasks to\n // finish (which include re-opening the panel) to make sure all the\n // elements are available.\n setTimeout(triggerScrollIntoView, 0);\n });\n } else {\n store.dispatch(event.key, {});\n triggerOnActive();\n triggerScrollIntoView();\n }\n } else if (event.key === 'Escape') {\n // This prevents the default browser behavior on `input[type=\"search\"]`\n // from removing the query right away because we first want to close the\n // panel.\n event.preventDefault();\n store.dispatch(event.key, null);\n\n // Hitting the `Escape` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Tab') {\n store.dispatch('blur', null);\n\n // Hitting the `Tab` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Enter') {\n // No active item, so we let the browser handle the native `onSubmit` form\n // event.\n if (store.getState().activeItemId === null || store.getState().collections.every(function (collection) {\n return collection.items.length === 0;\n })) {\n // If requests are still pending when the panel closes, they could reopen\n // the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n return;\n }\n\n // This prevents the `onSubmit` event to be sent because an item is\n // highlighted.\n event.preventDefault();\n var _ref2 = getActiveItem(store.getState()),\n item = _ref2.item,\n itemInputValue = _ref2.itemInputValue,\n itemUrl = _ref2.itemUrl,\n source = _ref2.source;\n if (event.metaKey || event.ctrlKey) {\n if (itemUrl !== undefined) {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n props.navigator.navigateNewTab({\n itemUrl: itemUrl,\n item: item,\n state: store.getState()\n });\n }\n } else if (event.shiftKey) {\n if (itemUrl !== undefined) {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n props.navigator.navigateNewWindow({\n itemUrl: itemUrl,\n item: item,\n state: store.getState()\n });\n }\n } else if (event.altKey) {\n // Keep native browser behavior\n } else {\n if (itemUrl !== undefined) {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n props.navigator.navigate({\n itemUrl: itemUrl,\n item: item,\n state: store.getState()\n });\n return;\n }\n onInput(_objectSpread({\n event: event,\n nextState: {\n isOpen: false\n },\n props: props,\n query: itemInputValue,\n refresh: refresh,\n store: store\n }, setters)).then(function () {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n });\n }\n }\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nvar _excluded = [\"props\", \"refresh\", \"store\"],\n _excluded2 = [\"inputElement\", \"formElement\", \"panelElement\"],\n _excluded3 = [\"inputElement\"],\n _excluded4 = [\"inputElement\", \"maxLength\"],\n _excluded5 = [\"source\"],\n _excluded6 = [\"item\", \"source\"];\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { noop } from '@algolia/autocomplete-shared';\nimport { onInput } from './onInput';\nimport { onKeyDown as _onKeyDown } from './onKeyDown';\nimport { getActiveItem, getAutocompleteElementId, isOrContainsNode, isSamsung, getNativeEvent } from './utils';\nexport function getPropGetters(_ref) {\n var props = _ref.props,\n refresh = _ref.refresh,\n store = _ref.store,\n setters = _objectWithoutProperties(_ref, _excluded);\n var getEnvironmentProps = function getEnvironmentProps(providedProps) {\n var inputElement = providedProps.inputElement,\n formElement = providedProps.formElement,\n panelElement = providedProps.panelElement,\n rest = _objectWithoutProperties(providedProps, _excluded2);\n function onMouseDownOrTouchStart(event) {\n // The `onTouchStart`/`onMouseDown` events shouldn't trigger the `blur`\n // handler when it's not an interaction with Autocomplete.\n // We detect it with the following heuristics:\n // - the panel is closed AND there are no pending requests\n // (no interaction with the autocomplete, no future state updates)\n // - OR the touched target is the input element (should open the panel)\n var isAutocompleteInteraction = store.getState().isOpen || !store.pendingRequests.isEmpty();\n if (!isAutocompleteInteraction || event.target === inputElement) {\n return;\n }\n\n // @TODO: support cases where there are multiple Autocomplete instances.\n // Right now, a second instance makes this computation return false.\n var isTargetWithinAutocomplete = [formElement, panelElement].some(function (contextNode) {\n return isOrContainsNode(contextNode, event.target);\n });\n if (isTargetWithinAutocomplete === false) {\n store.dispatch('blur', null);\n\n // If requests are still pending when the user closes the panel, they\n // could reopen the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n }\n }\n return _objectSpread({\n // We do not rely on the native `blur` event of the input to close the\n // panel, but rather on a custom `touchstart`/`mousedown` event outside\n // of the autocomplete elements.\n // This ensures we don't mistakenly interpret interactions within the\n // autocomplete (but outside of the input) as a signal to close the panel.\n // For example, clicking reset button causes an input blur, but if\n // `openOnFocus=true`, it shouldn't close the panel.\n // On touch devices, scrolling results (`touchmove`) causes an input blur\n // but shouldn't close the panel.\n onTouchStart: onMouseDownOrTouchStart,\n onMouseDown: onMouseDownOrTouchStart,\n // When scrolling on touch devices (mobiles, tablets, etc.), we want to\n // mimic the native platform behavior where the input is blurred to\n // hide the virtual keyboard. This gives more vertical space to\n // discover all the suggestions showing up in the panel.\n onTouchMove: function onTouchMove(event) {\n if (store.getState().isOpen === false || inputElement !== props.environment.document.activeElement || event.target === inputElement) {\n return;\n }\n inputElement.blur();\n }\n }, rest);\n };\n var getRootProps = function getRootProps(rest) {\n return _objectSpread({\n role: 'combobox',\n 'aria-expanded': store.getState().isOpen,\n 'aria-haspopup': 'listbox',\n 'aria-controls': store.getState().isOpen ? store.getState().collections.map(function (_ref2) {\n var source = _ref2.source;\n return getAutocompleteElementId(props.id, 'list', source);\n }).join(' ') : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label')\n }, rest);\n };\n var getFormProps = function getFormProps(providedProps) {\n var inputElement = providedProps.inputElement,\n rest = _objectWithoutProperties(providedProps, _excluded3);\n return _objectSpread({\n action: '',\n noValidate: true,\n role: 'search',\n onSubmit: function onSubmit(event) {\n var _providedProps$inputE;\n event.preventDefault();\n props.onSubmit(_objectSpread({\n event: event,\n refresh: refresh,\n state: store.getState()\n }, setters));\n store.dispatch('submit', null);\n (_providedProps$inputE = providedProps.inputElement) === null || _providedProps$inputE === void 0 ? void 0 : _providedProps$inputE.blur();\n },\n onReset: function onReset(event) {\n var _providedProps$inputE2;\n event.preventDefault();\n props.onReset(_objectSpread({\n event: event,\n refresh: refresh,\n state: store.getState()\n }, setters));\n store.dispatch('reset', null);\n (_providedProps$inputE2 = providedProps.inputElement) === null || _providedProps$inputE2 === void 0 ? void 0 : _providedProps$inputE2.focus();\n }\n }, rest);\n };\n var getInputProps = function getInputProps(providedProps) {\n var _props$environment$na;\n function onFocus(event) {\n // We want to trigger a query when `openOnFocus` is true\n // because the panel should open with the current query.\n if (props.openOnFocus || Boolean(store.getState().query)) {\n onInput(_objectSpread({\n event: event,\n props: props,\n query: store.getState().completion || store.getState().query,\n refresh: refresh,\n store: store\n }, setters));\n }\n store.dispatch('focus', null);\n }\n var _ref3 = providedProps || {},\n inputElement = _ref3.inputElement,\n _ref3$maxLength = _ref3.maxLength,\n maxLength = _ref3$maxLength === void 0 ? 512 : _ref3$maxLength,\n rest = _objectWithoutProperties(_ref3, _excluded4);\n var activeItem = getActiveItem(store.getState());\n var userAgent = ((_props$environment$na = props.environment.navigator) === null || _props$environment$na === void 0 ? void 0 : _props$environment$na.userAgent) || '';\n var shouldFallbackKeyHint = isSamsung(userAgent);\n var enterKeyHint = props.enterKeyHint || (activeItem !== null && activeItem !== void 0 && activeItem.itemUrl && !shouldFallbackKeyHint ? 'go' : 'search');\n return _objectSpread({\n 'aria-autocomplete': 'both',\n 'aria-activedescendant': store.getState().isOpen && store.getState().activeItemId !== null ? getAutocompleteElementId(props.id, \"item-\".concat(store.getState().activeItemId), activeItem === null || activeItem === void 0 ? void 0 : activeItem.source) : undefined,\n 'aria-controls': store.getState().isOpen ? store.getState().collections.map(function (_ref4) {\n var source = _ref4.source;\n return getAutocompleteElementId(props.id, 'list', source);\n }).join(' ') : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n value: store.getState().completion || store.getState().query,\n id: getAutocompleteElementId(props.id, 'input'),\n autoComplete: 'off',\n autoCorrect: 'off',\n autoCapitalize: 'off',\n enterKeyHint: enterKeyHint,\n spellCheck: 'false',\n autoFocus: props.autoFocus,\n placeholder: props.placeholder,\n maxLength: maxLength,\n type: 'search',\n onChange: function onChange(event) {\n var value = event.currentTarget.value;\n if (props.ignoreCompositionEvents && getNativeEvent(event).isComposing) {\n setters.setQuery(value);\n return;\n }\n onInput(_objectSpread({\n event: event,\n props: props,\n query: value.slice(0, maxLength),\n refresh: refresh,\n store: store\n }, setters));\n },\n onCompositionEnd: function onCompositionEnd(event) {\n onInput(_objectSpread({\n event: event,\n props: props,\n query: event.currentTarget.value.slice(0, maxLength),\n refresh: refresh,\n store: store\n }, setters));\n },\n onKeyDown: function onKeyDown(event) {\n if (getNativeEvent(event).isComposing) {\n return;\n }\n _onKeyDown(_objectSpread({\n event: event,\n props: props,\n refresh: refresh,\n store: store\n }, setters));\n },\n onFocus: onFocus,\n // We don't rely on the `blur` event.\n // See explanation in `onTouchStart`/`onMouseDown`.\n // @MAJOR See if we need to keep this handler.\n onBlur: noop,\n onClick: function onClick(event) {\n // When the panel is closed and you click on the input while\n // the input is focused, the `onFocus` event is not triggered\n // (default browser behavior).\n // In an autocomplete context, it makes sense to open the panel in this\n // case.\n // We mimic this event by catching the `onClick` event which\n // triggers the `onFocus` for the panel to open.\n if (providedProps.inputElement === props.environment.document.activeElement && !store.getState().isOpen) {\n onFocus(event);\n }\n }\n }, rest);\n };\n var getLabelProps = function getLabelProps(rest) {\n return _objectSpread({\n htmlFor: getAutocompleteElementId(props.id, 'input'),\n id: getAutocompleteElementId(props.id, 'label')\n }, rest);\n };\n var getListProps = function getListProps(providedProps) {\n var _ref5 = providedProps || {},\n source = _ref5.source,\n rest = _objectWithoutProperties(_ref5, _excluded5);\n return _objectSpread({\n role: 'listbox',\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n id: getAutocompleteElementId(props.id, 'list', source)\n }, rest);\n };\n var getPanelProps = function getPanelProps(rest) {\n return _objectSpread({\n onMouseDown: function onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the panel so\n // that the blur event is not triggered, otherwise it closes the\n // panel.\n event.preventDefault();\n },\n onMouseLeave: function onMouseLeave() {\n store.dispatch('mouseleave', null);\n }\n }, rest);\n };\n var getItemProps = function getItemProps(providedProps) {\n var item = providedProps.item,\n source = providedProps.source,\n rest = _objectWithoutProperties(providedProps, _excluded6);\n return _objectSpread({\n id: getAutocompleteElementId(props.id, \"item-\".concat(item.__autocomplete_id), source),\n role: 'option',\n 'aria-selected': store.getState().activeItemId === item.__autocomplete_id,\n onMouseMove: function onMouseMove(event) {\n if (item.__autocomplete_id === store.getState().activeItemId) {\n return;\n }\n store.dispatch('mousemove', item.__autocomplete_id);\n var activeItem = getActiveItem(store.getState());\n if (store.getState().activeItemId !== null && activeItem) {\n var _item = activeItem.item,\n itemInputValue = activeItem.itemInputValue,\n itemUrl = activeItem.itemUrl,\n _source = activeItem.source;\n _source.onActive(_objectSpread({\n event: event,\n item: _item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: _source,\n state: store.getState()\n }, setters));\n }\n },\n onMouseDown: function onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the item so it\n // can remain with the current `activeElement`.\n event.preventDefault();\n },\n onClick: function onClick(event) {\n var itemInputValue = source.getItemInputValue({\n item: item,\n state: store.getState()\n });\n var itemUrl = source.getItemUrl({\n item: item,\n state: store.getState()\n });\n\n // If `getItemUrl` is provided, it means that the suggestion\n // is a link, not plain text that aims at updating the query.\n // We can therefore skip the state change because it will update\n // the `activeItemId`, resulting in a UI flash, especially\n // noticeable on mobile.\n var runPreCommand = itemUrl ? Promise.resolve() : onInput(_objectSpread({\n event: event,\n nextState: {\n isOpen: false\n },\n props: props,\n query: itemInputValue,\n refresh: refresh,\n store: store\n }, setters));\n runPreCommand.then(function () {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n });\n }\n }, rest);\n };\n return {\n getEnvironmentProps: getEnvironmentProps,\n getRootProps: getRootProps,\n getFormProps: getFormProps,\n getLabelProps: getLabelProps,\n getInputProps: getInputProps,\n getPanelProps: getPanelProps,\n getListProps: getListProps,\n getItemProps: getItemProps\n };\n}","export function isOrContainsNode(parent, child) {\n return parent === child || parent.contains(child);\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { userAgents } from '@algolia/autocomplete-shared';\nexport function getMetadata(_ref) {\n var _, _options$__autocomple, _options$__autocomple2, _options$__autocomple3;\n var plugins = _ref.plugins,\n options = _ref.options;\n var optionsKey = (_ = (((_options$__autocomple = options.__autocomplete_metadata) === null || _options$__autocomple === void 0 ? void 0 : _options$__autocomple.userAgents) || [])[0]) === null || _ === void 0 ? void 0 : _.segment;\n var extraOptions = optionsKey ? _defineProperty({}, optionsKey, Object.keys(((_options$__autocomple2 = options.__autocomplete_metadata) === null || _options$__autocomple2 === void 0 ? void 0 : _options$__autocomple2.options) || {})) : {};\n return {\n plugins: plugins.map(function (plugin) {\n return {\n name: plugin.name,\n options: Object.keys(plugin.__autocomplete_pluginOptions || [])\n };\n }),\n options: _objectSpread({\n 'autocomplete-core': Object.keys(options)\n }, extraOptions),\n ua: userAgents.concat(((_options$__autocomple3 = options.__autocomplete_metadata) === null || _options$__autocomple3 === void 0 ? void 0 : _options$__autocomple3.userAgents) || [])\n };\n}\nexport function injectMetadata(_ref3) {\n var _environment$navigato, _environment$navigato2;\n var metadata = _ref3.metadata,\n environment = _ref3.environment;\n var isMetadataEnabled = (_environment$navigato = environment.navigator) === null || _environment$navigato === void 0 ? void 0 : (_environment$navigato2 = _environment$navigato.userAgent) === null || _environment$navigato2 === void 0 ? void 0 : _environment$navigato2.includes('Algolia Crawler');\n if (isMetadataEnabled) {\n var metadataContainer = environment.document.createElement('meta');\n var headRef = environment.document.querySelector('head');\n metadataContainer.name = 'algolia:metadata';\n setTimeout(function () {\n metadataContainer.content = JSON.stringify(metadata);\n headRef.appendChild(metadataContainer);\n }, 0);\n }\n}","import { getActiveItem } from './utils';\nexport function getCompletion(_ref) {\n var _getActiveItem;\n var state = _ref.state;\n if (state.isOpen === false || state.activeItemId === null) {\n return null;\n }\n return ((_getActiveItem = getActiveItem(state)) === null || _getActiveItem === void 0 ? void 0 : _getActiveItem.itemInputValue) || null;\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { getItemsCount, invariant } from '@algolia/autocomplete-shared';\nimport { getCompletion } from './getCompletion';\nimport { getNextActiveItemId } from './utils';\nexport var stateReducer = function stateReducer(state, action) {\n switch (action.type) {\n case 'setActiveItemId':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.payload\n });\n }\n case 'setQuery':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n query: action.payload,\n completion: null\n });\n }\n case 'setCollections':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n collections: action.payload\n });\n }\n case 'setIsOpen':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n isOpen: action.payload\n });\n }\n case 'setStatus':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n status: action.payload\n });\n }\n case 'setContext':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n context: _objectSpread(_objectSpread({}, state.context), action.payload)\n });\n }\n case 'ArrowDown':\n {\n var nextState = _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.payload.hasOwnProperty('nextActiveItemId') ? action.payload.nextActiveItemId : getNextActiveItemId(1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId)\n });\n return _objectSpread(_objectSpread({}, nextState), {}, {\n completion: getCompletion({\n state: nextState\n })\n });\n }\n case 'ArrowUp':\n {\n var _nextState = _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: getNextActiveItemId(-1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId)\n });\n return _objectSpread(_objectSpread({}, _nextState), {}, {\n completion: getCompletion({\n state: _nextState\n })\n });\n }\n case 'Escape':\n {\n if (state.isOpen) {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: null,\n isOpen: false,\n completion: null\n });\n }\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: null,\n query: '',\n status: 'idle',\n collections: []\n });\n }\n case 'submit':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: null,\n isOpen: false,\n status: 'idle'\n });\n }\n case 'reset':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId:\n // Since we open the panel on reset when openOnFocus=true\n // we need to restore the highlighted index to the defaultActiveItemId. (DocSearch use-case)\n\n // Since we close the panel when openOnFocus=false\n // we lose track of the highlighted index. (Query-suggestions use-case)\n action.props.openOnFocus === true ? action.props.defaultActiveItemId : null,\n status: 'idle',\n completion: null,\n query: ''\n });\n }\n case 'focus':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.props.defaultActiveItemId,\n isOpen: (action.props.openOnFocus || Boolean(state.query)) && action.props.shouldPanelOpen({\n state: state\n })\n });\n }\n case 'blur':\n {\n if (action.props.debug) {\n return state;\n }\n return _objectSpread(_objectSpread({}, state), {}, {\n isOpen: false,\n activeItemId: null\n });\n }\n case 'mousemove':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.payload\n });\n }\n case 'mouseleave':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.props.defaultActiveItemId\n });\n }\n default:\n invariant(false, \"The reducer action \".concat(JSON.stringify(action.type), \" is not supported.\"));\n return state;\n }\n};","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nimport { createAlgoliaInsightsPlugin } from '@algolia/autocomplete-plugin-algolia-insights';\nimport { checkOptions } from './checkOptions';\nimport { createStore } from './createStore';\nimport { getAutocompleteSetters } from './getAutocompleteSetters';\nimport { getDefaultProps } from './getDefaultProps';\nimport { getPropGetters } from './getPropGetters';\nimport { getMetadata, injectMetadata } from './metadata';\nimport { onInput } from './onInput';\nimport { stateReducer } from './stateReducer';\nexport function createAutocomplete(options) {\n checkOptions(options);\n var subscribers = [];\n var props = getDefaultProps(options, subscribers);\n var store = createStore(stateReducer, props, onStoreStateChange);\n var setters = getAutocompleteSetters({\n store: store\n });\n var propGetters = getPropGetters(_objectSpread({\n props: props,\n refresh: refresh,\n store: store,\n navigator: props.navigator\n }, setters));\n function onStoreStateChange(_ref) {\n var _state$context, _state$context$algoli;\n var prevState = _ref.prevState,\n state = _ref.state;\n props.onStateChange(_objectSpread({\n prevState: prevState,\n state: state,\n refresh: refresh,\n navigator: props.navigator\n }, setters));\n if (!isAlgoliaInsightsPluginEnabled() && (_state$context = state.context) !== null && _state$context !== void 0 && (_state$context$algoli = _state$context.algoliaInsightsPlugin) !== null && _state$context$algoli !== void 0 && _state$context$algoli.__automaticInsights && props.insights !== false) {\n var plugin = createAlgoliaInsightsPlugin({\n __autocomplete_clickAnalytics: false\n });\n props.plugins.push(plugin);\n subscribePlugins([plugin]);\n }\n }\n function refresh() {\n return onInput(_objectSpread({\n event: new Event('input'),\n nextState: {\n isOpen: store.getState().isOpen\n },\n props: props,\n navigator: props.navigator,\n query: store.getState().query,\n refresh: refresh,\n store: store\n }, setters));\n }\n function subscribePlugins(plugins) {\n plugins.forEach(function (plugin) {\n var _plugin$subscribe;\n return (_plugin$subscribe = plugin.subscribe) === null || _plugin$subscribe === void 0 ? void 0 : _plugin$subscribe.call(plugin, _objectSpread(_objectSpread({}, setters), {}, {\n navigator: props.navigator,\n refresh: refresh,\n onSelect: function onSelect(fn) {\n subscribers.push({\n onSelect: fn\n });\n },\n onActive: function onActive(fn) {\n subscribers.push({\n onActive: fn\n });\n },\n onResolve: function onResolve(fn) {\n subscribers.push({\n onResolve: fn\n });\n }\n }));\n });\n }\n function isAlgoliaInsightsPluginEnabled() {\n return props.plugins.some(function (plugin) {\n return plugin.name === 'aa.algoliaInsightsPlugin';\n });\n }\n if (props.insights && !isAlgoliaInsightsPluginEnabled()) {\n var insightsParams = typeof props.insights === 'boolean' ? {} : props.insights;\n props.plugins.push(createAlgoliaInsightsPlugin(insightsParams));\n }\n subscribePlugins(props.plugins);\n injectMetadata({\n metadata: getMetadata({\n plugins: props.plugins,\n options: options\n }),\n environment: props.environment\n });\n return _objectSpread(_objectSpread({\n refresh: refresh,\n navigator: props.navigator\n }, propGetters), setters);\n}","import React from 'react';\n\ntype AlgoliaLogoTranslations = Partial<{\n searchByText: string;\n}>;\n\ntype AlgoliaLogoProps = {\n translations?: AlgoliaLogoTranslations;\n};\n\nexport function AlgoliaLogo({ translations = {} }: AlgoliaLogoProps): JSX.Element {\n const { searchByText = 'Search by' } = translations;\n\n return (\n \n {searchByText}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n","import React from 'react';\n\nimport { AlgoliaLogo } from './AlgoliaLogo';\n\nexport type FooterTranslations = Partial<{\n selectText: string;\n selectKeyAriaLabel: string;\n navigateText: string;\n navigateUpKeyAriaLabel: string;\n navigateDownKeyAriaLabel: string;\n closeText: string;\n closeKeyAriaLabel: string;\n searchByText: string;\n}>;\n\ntype FooterProps = Partial<{\n translations: FooterTranslations;\n}>;\n\ninterface CommandIconProps {\n children: React.ReactNode;\n ariaLabel: string;\n}\n\nfunction CommandIcon(props: CommandIconProps): JSX.Element {\n return (\n \n \n {props.children}\n \n \n );\n}\n\nexport function Footer({ translations = {} }: FooterProps): JSX.Element {\n const {\n selectText = 'to select',\n selectKeyAriaLabel = 'Enter key',\n navigateText = 'to navigate',\n navigateUpKeyAriaLabel = 'Arrow up',\n navigateDownKeyAriaLabel = 'Arrow down',\n closeText = 'to close',\n closeKeyAriaLabel = 'Escape key',\n searchByText = 'Search by',\n } = translations;\n\n return (\n <>\n

    \n \n
    \n
      \n
    • \n \n \n \n \n \n {selectText}\n
    • \n
    • \n \n \n \n \n \n \n \n \n \n \n {navigateText}\n
    • \n
    • \n \n \n \n \n \n {closeText}\n
    • \n
    \n \n );\n}\n","import React from 'react';\n\nimport type { InternalDocSearchHit, StoredDocSearchHit } from './types';\n\ninterface HitProps {\n hit: InternalDocSearchHit | StoredDocSearchHit;\n children: React.ReactNode;\n}\n\nexport function Hit({ hit, children }: HitProps): JSX.Element {\n return {children};\n}\n","import React from 'react';\n\nexport function LoadingIcon(): JSX.Element {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n}\n","import React from 'react';\n\nexport function RecentIcon(): JSX.Element {\n return (\n \n \n \n \n \n \n );\n}\n","import React from 'react';\n\nexport function ResetIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n","import React from 'react';\n\nexport function SelectIcon(): JSX.Element {\n return (\n \n \n \n \n \n \n );\n}\n","import React from 'react';\n\nconst LvlIcon: React.FC = () => {\n return (\n \n \n \n );\n};\n\nexport function SourceIcon(props: { type: string }): JSX.Element {\n switch (props.type) {\n case 'lvl1':\n return ;\n case 'content':\n return ;\n default:\n return ;\n }\n}\n\nfunction AnchorIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n\nfunction ContentIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n","import React from 'react';\n\nexport function StarIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n","import React from 'react';\n\nexport function ErrorIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n","import React from 'react';\n\nexport function NoResultsIcon(): JSX.Element {\n return (\n \n \n \n );\n}\n","import React from 'react';\n\nimport { ErrorIcon } from './icons';\n\nexport type ErrorScreenTranslations = Partial<{\n titleText: string;\n helpText: string;\n}>;\n\ntype ErrorScreenProps = {\n translations?: ErrorScreenTranslations;\n};\n\nexport function ErrorScreen({ translations = {} }: ErrorScreenProps): JSX.Element {\n const { titleText = 'Unable to fetch results', helpText = 'You might want to check your network connection.' } =\n translations;\n return (\n
    \n
    \n \n
    \n

    {titleText}

    \n

    {helpText}

    \n
    \n );\n}\n","import React from 'react';\n\nimport { NoResultsIcon } from './icons';\nimport type { ScreenStateProps } from './ScreenState';\nimport type { InternalDocSearchHit } from './types';\n\nexport type NoResultsScreenTranslations = Partial<{\n noResultsText: string;\n suggestedQueryText: string;\n reportMissingResultsText: string;\n reportMissingResultsLinkText: string;\n}>;\n\ntype NoResultsScreenProps = Omit, 'translations'> & {\n translations?: NoResultsScreenTranslations;\n};\n\nexport function NoResultsScreen({ translations = {}, ...props }: NoResultsScreenProps): JSX.Element {\n const {\n noResultsText = 'No results for',\n suggestedQueryText = 'Try searching for',\n reportMissingResultsText = 'Believe this query should return results?',\n reportMissingResultsLinkText = 'Let us know.',\n } = translations;\n const searchSuggestions: string[] | undefined = props.state.context.searchSuggestions as string[];\n\n return (\n
    \n
    \n \n
    \n

    \n {noResultsText} \"{props.state.query}\"\n

    \n\n {searchSuggestions && searchSuggestions.length > 0 && (\n
    \n

    {suggestedQueryText}:

    \n
      \n {searchSuggestions.slice(0, 3).reduce(\n (acc, search) => [\n ...acc,\n
    • \n {\n props.setQuery(search.toLowerCase() + ' ');\n props.refresh();\n props.inputRef.current!.focus();\n }}\n >\n {search}\n \n
    • ,\n ],\n [],\n )}\n
    \n
    \n )}\n\n {props.getMissingResultsUrl && (\n

    \n {`${reportMissingResultsText} `}\n \n {reportMissingResultsLinkText}\n \n

    \n )}\n
    \n );\n}\n","import { createElement } from 'react';\n\nimport type { StoredDocSearchHit } from './types';\n\nfunction getPropertyByPath(object: Record, path: string): any {\n const parts = path.split('.');\n\n return parts.reduce((prev, current) => {\n if (prev?.[current]) return prev[current];\n return null;\n }, object);\n}\n\ninterface SnippetProps {\n hit: TItem;\n attribute: string;\n tagName?: string;\n [prop: string]: unknown;\n}\n\nexport function Snippet({\n hit,\n attribute,\n tagName = 'span',\n ...rest\n}: SnippetProps): JSX.Element {\n return createElement(tagName, {\n ...rest,\n dangerouslySetInnerHTML: {\n __html: getPropertyByPath(hit, `_snippetResult.${attribute}.value`) || getPropertyByPath(hit, attribute),\n },\n });\n}\n","import type { AutocompleteApi, AutocompleteState, BaseItem } from '@algolia/autocomplete-core';\nimport React from 'react';\n\nimport type { DocSearchProps } from './DocSearch';\nimport { Snippet } from './Snippet';\nimport type { InternalDocSearchHit, StoredDocSearchHit } from './types';\n\ninterface ResultsProps\n extends AutocompleteApi {\n title: string;\n collection: AutocompleteState['collections'][0];\n renderIcon: (props: { item: TItem; index: number }) => React.ReactNode;\n renderAction: (props: {\n item: TItem;\n runDeleteTransition: (cb: () => void) => void;\n runFavoriteTransition: (cb: () => void) => void;\n }) => React.ReactNode;\n onItemClick: (item: TItem, event: KeyboardEvent | MouseEvent) => void;\n hitComponent: DocSearchProps['hitComponent'];\n}\n\nexport function Results(props: ResultsProps): JSX.Element | null {\n if (!props.collection || props.collection.items.length === 0) {\n return null;\n }\n\n return (\n
    \n
    {props.title}
    \n\n
      \n {props.collection.items.map((item, index) => {\n return ;\n })}\n
    \n
    \n );\n}\n\ninterface ResultProps extends ResultsProps {\n item: TItem;\n index: number;\n}\n\nfunction Result({\n item,\n index,\n renderIcon,\n renderAction,\n getItemProps,\n onItemClick,\n collection,\n hitComponent,\n}: ResultProps): JSX.Element {\n const [isDeleting, setIsDeleting] = React.useState(false);\n const [isFavoriting, setIsFavoriting] = React.useState(false);\n const action = React.useRef<(() => void) | null>(null);\n const Hit = hitComponent!;\n\n function runDeleteTransition(cb: () => void): void {\n setIsDeleting(true);\n action.current = cb;\n }\n\n function runFavoriteTransition(cb: () => void): void {\n setIsFavoriting(true);\n action.current = cb;\n }\n\n return (\n {\n if (action.current) {\n action.current();\n }\n }}\n {...getItemProps({\n item,\n source: collection.source,\n onClick(event) {\n onItemClick(item, event);\n },\n })}\n >\n \n
    \n {renderIcon({ item, index })}\n\n {item.hierarchy[item.type] && item.type === 'lvl1' && (\n
    \n \n {item.content && }\n
    \n )}\n\n {item.hierarchy[item.type] &&\n (item.type === 'lvl2' ||\n item.type === 'lvl3' ||\n item.type === 'lvl4' ||\n item.type === 'lvl5' ||\n item.type === 'lvl6') && (\n
    \n \n \n
    \n )}\n\n {item.type === 'content' && (\n
    \n \n \n
    \n )}\n\n {renderAction({ item, runDeleteTransition, runFavoriteTransition })}\n
    \n
    \n \n );\n}\n","export function groupBy>(\n values: TValue[],\n predicate: (value: TValue) => string,\n maxResultsPerGroup?: number,\n): Record {\n return values.reduce>((acc, item) => {\n const key = predicate(item);\n\n if (!acc.hasOwnProperty(key)) {\n acc[key] = [];\n }\n\n // We limit each section to show 5 hits maximum.\n // This acts as a frontend alternative to `distinct`.\n if (acc[key].length < (maxResultsPerGroup || 5)) {\n acc[key].push(item);\n }\n\n return acc;\n }, {});\n}\n","export function identity(x: TParam): TParam {\n return x;\n}\n","/**\n * Detect when an event is modified with a special key to let the browser\n * trigger its default behavior.\n */\nexport function isModifierEvent(event: TEvent): boolean {\n const isMiddleClick = (event as MouseEvent).button === 1;\n\n return isMiddleClick || event.altKey || event.ctrlKey || event.metaKey || event.shiftKey;\n}\n","export function noop(..._args: any[]): void {}\n","import type { DocSearchHit, InternalDocSearchHit } from '../types';\n\nconst regexHighlightTags = /(|<\\/mark>)/g;\nconst regexHasHighlightTags = RegExp(regexHighlightTags.source);\n\nexport function removeHighlightTags(hit: DocSearchHit | InternalDocSearchHit): string {\n const internalDocSearchHit = hit as InternalDocSearchHit;\n\n if (!internalDocSearchHit.__docsearch_parent && !hit._highlightResult) {\n return hit.hierarchy.lvl0;\n }\n\n const lvl0 = internalDocSearchHit.__docsearch_parent\n ? internalDocSearchHit.__docsearch_parent?._highlightResult?.hierarchy?.lvl0\n : hit._highlightResult?.hierarchy?.lvl0;\n\n if (!lvl0) {\n return hit.hierarchy.lvl0;\n }\n\n return lvl0.value && regexHasHighlightTags.test(lvl0.value) ? lvl0.value.replace(regexHighlightTags, '') : lvl0.value;\n}\n","import React from 'react';\n\nimport { SelectIcon, SourceIcon } from './icons';\nimport { Results } from './Results';\nimport type { ScreenStateProps } from './ScreenState';\nimport type { InternalDocSearchHit } from './types';\nimport { removeHighlightTags } from './utils';\n\ntype ResultsScreenProps = Omit, 'translations'>;\n\nexport function ResultsScreen(props: ResultsScreenProps): JSX.Element {\n return (\n
    \n {props.state.collections.map((collection) => {\n if (collection.items.length === 0) {\n return null;\n }\n\n const title = removeHighlightTags(collection.items[0]);\n\n return (\n (\n <>\n {item.__docsearch_parent && (\n \n \n {item.__docsearch_parent !== collection.items[index + 1]?.__docsearch_parent ? (\n \n ) : (\n \n )}\n \n \n )}\n\n
    \n \n
    \n \n )}\n renderAction={() => (\n
    \n \n
    \n )}\n />\n );\n })}\n\n {props.resultsFooterComponent && (\n
    \n \n
    \n )}\n
    \n );\n}\n","import React from 'react';\n\nimport { RecentIcon, ResetIcon, StarIcon } from './icons';\nimport { Results } from './Results';\nimport type { ScreenStateProps } from './ScreenState';\nimport type { InternalDocSearchHit } from './types';\n\nexport type StartScreenTranslations = Partial<{\n recentSearchesTitle: string;\n noRecentSearchesText: string;\n saveRecentSearchButtonTitle: string;\n removeRecentSearchButtonTitle: string;\n favoriteSearchesTitle: string;\n removeFavoriteSearchButtonTitle: string;\n}>;\n\ntype StartScreenProps = Omit, 'translations'> & {\n hasCollections: boolean;\n translations?: StartScreenTranslations;\n};\n\nexport function StartScreen({ translations = {}, ...props }: StartScreenProps): JSX.Element | null {\n const {\n recentSearchesTitle = 'Recent',\n noRecentSearchesText = 'No recent searches',\n saveRecentSearchButtonTitle = 'Save this search',\n removeRecentSearchButtonTitle = 'Remove this search from history',\n favoriteSearchesTitle = 'Favorite',\n removeFavoriteSearchButtonTitle = 'Remove this search from favorites',\n } = translations;\n if (props.state.status === 'idle' && props.hasCollections === false) {\n if (props.disableUserPersonalization) {\n return null;\n }\n\n return (\n
    \n

    {noRecentSearchesText}

    \n
    \n );\n }\n\n if (props.hasCollections === false) {\n return null;\n }\n\n return (\n
    \n (\n
    \n \n
    \n )}\n renderAction={({ item, runFavoriteTransition, runDeleteTransition }) => (\n <>\n
    \n {\n event.preventDefault();\n event.stopPropagation();\n runFavoriteTransition(() => {\n props.favoriteSearches.add(item);\n props.recentSearches.remove(item);\n props.refresh();\n });\n }}\n >\n \n \n
    \n
    \n {\n event.preventDefault();\n event.stopPropagation();\n runDeleteTransition(() => {\n props.recentSearches.remove(item);\n props.refresh();\n });\n }}\n >\n \n \n
    \n \n )}\n />\n\n (\n
    \n \n
    \n )}\n renderAction={({ item, runDeleteTransition }) => (\n
    \n {\n event.preventDefault();\n event.stopPropagation();\n runDeleteTransition(() => {\n props.favoriteSearches.remove(item);\n props.refresh();\n });\n }}\n >\n \n \n
    \n )}\n />\n
    \n );\n}\n","import type { AutocompleteApi, AutocompleteState, BaseItem } from '@algolia/autocomplete-core';\nimport React from 'react';\n\nimport type { DocSearchProps } from './DocSearch';\nimport type { ErrorScreenTranslations } from './ErrorScreen';\nimport { ErrorScreen } from './ErrorScreen';\nimport type { NoResultsScreenTranslations } from './NoResultsScreen';\nimport { NoResultsScreen } from './NoResultsScreen';\nimport { ResultsScreen } from './ResultsScreen';\nimport type { StartScreenTranslations } from './StartScreen';\nimport { StartScreen } from './StartScreen';\nimport type { StoredSearchPlugin } from './stored-searches';\nimport type { InternalDocSearchHit, StoredDocSearchHit } from './types';\n\nexport type ScreenStateTranslations = Partial<{\n errorScreen: ErrorScreenTranslations;\n startScreen: StartScreenTranslations;\n noResultsScreen: NoResultsScreenTranslations;\n}>;\n\nexport interface ScreenStateProps\n extends AutocompleteApi {\n state: AutocompleteState;\n recentSearches: StoredSearchPlugin;\n favoriteSearches: StoredSearchPlugin;\n onItemClick: (item: InternalDocSearchHit, event: KeyboardEvent | MouseEvent) => void;\n inputRef: React.MutableRefObject;\n hitComponent: DocSearchProps['hitComponent'];\n indexName: DocSearchProps['indexName'];\n disableUserPersonalization: boolean;\n resultsFooterComponent: DocSearchProps['resultsFooterComponent'];\n translations: ScreenStateTranslations;\n getMissingResultsUrl?: DocSearchProps['getMissingResultsUrl'];\n}\n\nexport const ScreenState = React.memo(\n ({ translations = {}, ...props }: ScreenStateProps) => {\n if (props.state.status === 'error') {\n return ;\n }\n\n const hasCollections = props.state.collections.some((collection) => collection.items.length > 0);\n\n if (!props.state.query) {\n return ;\n }\n\n if (hasCollections === false) {\n return ;\n }\n\n return ;\n },\n function areEqual(_prevProps, nextProps) {\n // We don't update the screen when Autocomplete is loading or stalled to\n // avoid UI flashes:\n // - Empty screen → Results screen\n // - NoResults screen → NoResults screen with another query\n return nextProps.state.status === 'loading' || nextProps.state.status === 'stalled';\n },\n);\n","import type { AutocompleteApi, AutocompleteState } from '@algolia/autocomplete-core';\nimport type { MutableRefObject } from 'react';\nimport React from 'react';\n\nimport { MAX_QUERY_SIZE } from './constants';\nimport { LoadingIcon } from './icons/LoadingIcon';\nimport { ResetIcon } from './icons/ResetIcon';\nimport { SearchIcon } from './icons/SearchIcon';\nimport type { InternalDocSearchHit } from './types';\n\nexport type SearchBoxTranslations = Partial<{\n resetButtonTitle: string;\n resetButtonAriaLabel: string;\n cancelButtonText: string;\n cancelButtonAriaLabel: string;\n searchInputLabel: string;\n}>;\n\ninterface SearchBoxProps\n extends AutocompleteApi {\n state: AutocompleteState;\n autoFocus: boolean;\n inputRef: MutableRefObject;\n onClose: () => void;\n isFromSelection: boolean;\n translations?: SearchBoxTranslations;\n}\n\nexport function SearchBox({ translations = {}, ...props }: SearchBoxProps): JSX.Element {\n const {\n resetButtonTitle = 'Clear the query',\n resetButtonAriaLabel = 'Clear the query',\n cancelButtonText = 'Cancel',\n cancelButtonAriaLabel = 'Cancel',\n searchInputLabel = 'Search',\n } = translations;\n const { onReset } = props.getFormProps({\n inputElement: props.inputRef.current,\n });\n\n React.useEffect(() => {\n if (props.autoFocus && props.inputRef.current) {\n props.inputRef.current.focus();\n }\n }, [props.autoFocus, props.inputRef]);\n\n React.useEffect(() => {\n if (props.isFromSelection && props.inputRef.current) {\n props.inputRef.current.select();\n }\n }, [props.isFromSelection, props.inputRef]);\n\n return (\n <>\n {\n event.preventDefault();\n }}\n onReset={onReset}\n >\n \n\n
    \n \n
    \n\n \n\n