From 2c4db387df15d478584f49d6b6c1ca2de784b3f1 Mon Sep 17 00:00:00 2001 From: TimOosterveer <62908209+TimOosterveer@users.noreply.github.com> Date: Tue, 9 Jan 2024 17:04:53 +0100 Subject: [PATCH 1/5] changes icons + button link --- src/lib/atoms/buttons/ButtonWorkshop.svelte | 36 +++++---------------- src/lib/molecules/cards/CardWorkshop.svelte | 18 ++++++++--- 2 files changed, 21 insertions(+), 33 deletions(-) diff --git a/src/lib/atoms/buttons/ButtonWorkshop.svelte b/src/lib/atoms/buttons/ButtonWorkshop.svelte index 5512ce145..55ba0a35d 100644 --- a/src/lib/atoms/buttons/ButtonWorkshop.svelte +++ b/src/lib/atoms/buttons/ButtonWorkshop.svelte @@ -1,17 +1,10 @@ - - - - - -
-
- - -
-
+ From e0c1d2ce25c355c3e708471676c087aafa45c9f1 Mon Sep 17 00:00:00 2001 From: iBadr49 Date: Wed, 10 Jan 2024 14:45:30 +0100 Subject: [PATCH 2/5] . --- .svelte-kit/ambient.d.ts | 244 +++++++----------- .svelte-kit/generated/client/app.js | 12 +- .svelte-kit/generated/client/nodes/3.js | 2 +- .svelte-kit/generated/client/nodes/4.js | 2 +- .svelte-kit/generated/client/nodes/5.js | 2 +- .svelte-kit/generated/client/nodes/6.js | 2 +- .svelte-kit/generated/client/nodes/7.js | 2 +- .svelte-kit/generated/client/nodes/8.js | 2 +- .svelte-kit/generated/server/internal.js | 6 +- .vscode/settings.json | 3 + node_modules/.vite/_svelte_metadata.json | 2 +- node_modules/.vite/deps/_metadata.json | 46 ++-- node_modules/.vite/deps/chunk-36XSJPWN.js.map | 7 - node_modules/.vite/deps/chunk-CBLXLE7Z.js.map | 7 - .../{chunk-CBLXLE7Z.js => chunk-CUKRBFMN.js} | 2 +- node_modules/.vite/deps/chunk-CUKRBFMN.js.map | 7 + node_modules/.vite/deps/chunk-FI7FPNA6.js.map | 7 - .../{chunk-36XSJPWN.js => chunk-MF7YG25T.js} | 4 +- node_modules/.vite/deps/chunk-MF7YG25T.js.map | 7 + node_modules/.vite/deps/chunk-POMM4CDA.js.map | 7 - .../{chunk-FI7FPNA6.js => chunk-VFRMSNTO.js} | 2 +- node_modules/.vite/deps/chunk-VFRMSNTO.js.map | 7 + .../{chunk-POMM4CDA.js => chunk-WODVJWZD.js} | 4 +- node_modules/.vite/deps/chunk-WODVJWZD.js.map | 7 + node_modules/.vite/deps/devalue.js.map | 2 +- node_modules/.vite/deps/esm-env.js.map | 2 +- node_modules/.vite/deps/gsap.js.map | 2 +- .../.vite/deps/gsap_dist_ScrollTrigger.js.map | 2 +- node_modules/.vite/deps/prettier.js.map | 2 +- node_modules/.vite/deps/svelte.js | 4 +- node_modules/.vite/deps/svelte_animate.js | 6 +- node_modules/.vite/deps/svelte_animate.js.map | 2 +- node_modules/.vite/deps/svelte_easing.js | 6 +- node_modules/.vite/deps/svelte_internal.js | 4 +- .../deps/svelte_internal_disclose-version.js | 2 +- .../svelte_internal_disclose-version.js.map | 2 +- node_modules/.vite/deps/svelte_motion.js | 8 +- node_modules/.vite/deps/svelte_motion.js.map | 2 +- node_modules/.vite/deps/svelte_store.js | 6 +- node_modules/.vite/deps/svelte_transition.js | 6 +- .../.vite/deps/svelte_transition.js.map | 2 +- 41 files changed, 204 insertions(+), 249 deletions(-) create mode 100644 .vscode/settings.json delete mode 100644 node_modules/.vite/deps/chunk-36XSJPWN.js.map delete mode 100644 node_modules/.vite/deps/chunk-CBLXLE7Z.js.map rename node_modules/.vite/deps/{chunk-CBLXLE7Z.js => chunk-CUKRBFMN.js} (75%) create mode 100644 node_modules/.vite/deps/chunk-CUKRBFMN.js.map delete mode 100644 node_modules/.vite/deps/chunk-FI7FPNA6.js.map rename node_modules/.vite/deps/{chunk-36XSJPWN.js => chunk-MF7YG25T.js} (97%) create mode 100644 node_modules/.vite/deps/chunk-MF7YG25T.js.map delete mode 100644 node_modules/.vite/deps/chunk-POMM4CDA.js.map rename node_modules/.vite/deps/{chunk-FI7FPNA6.js => chunk-VFRMSNTO.js} (98%) create mode 100644 node_modules/.vite/deps/chunk-VFRMSNTO.js.map rename node_modules/.vite/deps/{chunk-POMM4CDA.js => chunk-WODVJWZD.js} (99%) create mode 100644 node_modules/.vite/deps/chunk-WODVJWZD.js.map diff --git a/.svelte-kit/ambient.d.ts b/.svelte-kit/ambient.d.ts index a210df25e..e0a4db2f4 100644 --- a/.svelte-kit/ambient.d.ts +++ b/.svelte-kit/ambient.d.ts @@ -28,88 +28,64 @@ declare module '$env/static/private' { export const HYGRAPH_KEY: string; export const HYGRAPH_URL: string; - export const ALLUSERSPROFILE: string; - export const APPDATA: string; - export const ChocolateyInstall: string; - export const ChocolateyLastPathUpdate: string; - export const CHROME_CRASHPAD_PIPE_NAME: string; - export const COLOR: string; - export const COLORTERM: string; - export const CommonProgramFiles: string; - export const CommonProgramW6432: string; - export const COMPUTERNAME: string; - export const ComSpec: string; - export const DriverData: string; - export const EDITOR: string; - export const EFC_26380: string; - export const FPS_BROWSER_APP_PROFILE_STRING: string; - export const FPS_BROWSER_USER_PROFILE_STRING: string; - export const GIT_ASKPASS: string; - export const HOME: string; - export const HOMEDRIVE: string; - export const HOMEPATH: string; - export const INIT_CWD: string; - export const LANG: string; - export const LOCALAPPDATA: string; - export const LOGONSERVER: string; + export const TERM_PROGRAM: string; export const NODE: string; - export const NODE_ENV: string; - export const NODE_EXE: string; - export const NPM_CLI_JS: string; - export const npm_command: string; - export const npm_config_cache: string; - export const npm_config_globalconfig: string; - export const npm_config_global_prefix: string; - export const npm_config_init_module: string; - export const npm_config_local_prefix: string; + export const INIT_CWD: string; + export const TERM: string; + export const SHELL: string; export const npm_config_metrics_registry: string; - export const npm_config_node_gyp: string; + export const TMPDIR: string; + export const npm_config_global_prefix: string; + export const TERM_PROGRAM_VERSION: string; + export const ZDOTDIR: string; + export const ORIGINAL_XDG_CURRENT_DESKTOP: string; + export const MallocNanoZone: string; + export const COLOR: string; export const npm_config_noproxy: string; - export const npm_config_prefix: string; - export const npm_config_userconfig: string; - export const npm_config_user_agent: string; + export const npm_config_local_prefix: string; + export const USER: string; + export const COMMAND_MODE: string; + export const npm_config_globalconfig: string; + export const SSH_AUTH_SOCK: string; + export const __CF_USER_TEXT_ENCODING: string; export const npm_execpath: string; - export const npm_lifecycle_event: string; - export const npm_lifecycle_script: string; - export const npm_node_execpath: string; + export const PATH: string; export const npm_package_json: string; + export const npm_config_engine_strict: string; + export const _: string; + export const LaunchInstanceID: string; + export const npm_config_userconfig: string; + export const npm_config_init_module: string; + export const USER_ZDOTDIR: string; + export const __CFBundleIdentifier: string; + export const npm_command: string; + export const PWD: string; + export const npm_lifecycle_event: string; + export const EDITOR: string; export const npm_package_name: string; - export const npm_package_version: string; - export const NPM_PREFIX_NPM_CLI_JS: string; - export const NUMBER_OF_PROCESSORS: string; - export const OneDrive: string; - export const ORIGINAL_XDG_CURRENT_DESKTOP: string; - export const OS: string; - export const Path: string; - export const PATHEXT: string; - export const PROCESSOR_ARCHITECTURE: string; - export const PROCESSOR_IDENTIFIER: string; - export const PROCESSOR_LEVEL: string; - export const PROCESSOR_REVISION: string; - export const ProgramData: string; - export const ProgramFiles: string; - export const ProgramW6432: string; - export const PROMPT: string; - export const PSModulePath: string; - export const PUBLIC: string; - export const SESSIONNAME: string; - export const SystemDrive: string; - export const SystemRoot: string; - export const TEMP: string; - export const TERM_PROGRAM: string; - export const TERM_PROGRAM_VERSION: string; - export const TMP: string; - export const USERDOMAIN: string; - export const USERDOMAIN_ROAMINGPROFILE: string; - export const USERNAME: string; - export const USERPROFILE: string; + export const LANG: string; + export const npm_config_resolution_mode: string; export const VSCODE_GIT_ASKPASS_EXTRA_ARGS: string; + export const XPC_FLAGS: string; + export const npm_config_node_gyp: string; + export const npm_package_version: string; + export const XPC_SERVICE_NAME: string; + export const VSCODE_INJECTION: string; + export const SHLVL: string; + export const HOME: string; export const VSCODE_GIT_ASKPASS_MAIN: string; - export const VSCODE_GIT_ASKPASS_NODE: string; + export const npm_config_cache: string; + export const LOGNAME: string; + export const npm_lifecycle_script: string; export const VSCODE_GIT_IPC_HANDLE: string; - export const VSCODE_INJECTION: string; - export const windir: string; - export const ZES_ENABLE_SYSMAN: string; + export const npm_config_user_agent: string; + export const VSCODE_GIT_ASKPASS_NODE: string; + export const GIT_ASKPASS: string; + export const SECURITYSESSIONID: string; + export const npm_node_execpath: string; + export const npm_config_prefix: string; + export const COLORTERM: string; + export const NODE_ENV: string; } /** @@ -141,88 +117,64 @@ declare module '$env/dynamic/private' { export const env: { HYGRAPH_KEY: string; HYGRAPH_URL: string; - ALLUSERSPROFILE: string; - APPDATA: string; - ChocolateyInstall: string; - ChocolateyLastPathUpdate: string; - CHROME_CRASHPAD_PIPE_NAME: string; - COLOR: string; - COLORTERM: string; - CommonProgramFiles: string; - CommonProgramW6432: string; - COMPUTERNAME: string; - ComSpec: string; - DriverData: string; - EDITOR: string; - EFC_26380: string; - FPS_BROWSER_APP_PROFILE_STRING: string; - FPS_BROWSER_USER_PROFILE_STRING: string; - GIT_ASKPASS: string; - HOME: string; - HOMEDRIVE: string; - HOMEPATH: string; - INIT_CWD: string; - LANG: string; - LOCALAPPDATA: string; - LOGONSERVER: string; + TERM_PROGRAM: string; NODE: string; - NODE_ENV: string; - NODE_EXE: string; - NPM_CLI_JS: string; - npm_command: string; - npm_config_cache: string; - npm_config_globalconfig: string; - npm_config_global_prefix: string; - npm_config_init_module: string; - npm_config_local_prefix: string; + INIT_CWD: string; + TERM: string; + SHELL: string; npm_config_metrics_registry: string; - npm_config_node_gyp: string; + TMPDIR: string; + npm_config_global_prefix: string; + TERM_PROGRAM_VERSION: string; + ZDOTDIR: string; + ORIGINAL_XDG_CURRENT_DESKTOP: string; + MallocNanoZone: string; + COLOR: string; npm_config_noproxy: string; - npm_config_prefix: string; - npm_config_userconfig: string; - npm_config_user_agent: string; + npm_config_local_prefix: string; + USER: string; + COMMAND_MODE: string; + npm_config_globalconfig: string; + SSH_AUTH_SOCK: string; + __CF_USER_TEXT_ENCODING: string; npm_execpath: string; - npm_lifecycle_event: string; - npm_lifecycle_script: string; - npm_node_execpath: string; + PATH: string; npm_package_json: string; + npm_config_engine_strict: string; + _: string; + LaunchInstanceID: string; + npm_config_userconfig: string; + npm_config_init_module: string; + USER_ZDOTDIR: string; + __CFBundleIdentifier: string; + npm_command: string; + PWD: string; + npm_lifecycle_event: string; + EDITOR: string; npm_package_name: string; - npm_package_version: string; - NPM_PREFIX_NPM_CLI_JS: string; - NUMBER_OF_PROCESSORS: string; - OneDrive: string; - ORIGINAL_XDG_CURRENT_DESKTOP: string; - OS: string; - Path: string; - PATHEXT: string; - PROCESSOR_ARCHITECTURE: string; - PROCESSOR_IDENTIFIER: string; - PROCESSOR_LEVEL: string; - PROCESSOR_REVISION: string; - ProgramData: string; - ProgramFiles: string; - ProgramW6432: string; - PROMPT: string; - PSModulePath: string; - PUBLIC: string; - SESSIONNAME: string; - SystemDrive: string; - SystemRoot: string; - TEMP: string; - TERM_PROGRAM: string; - TERM_PROGRAM_VERSION: string; - TMP: string; - USERDOMAIN: string; - USERDOMAIN_ROAMINGPROFILE: string; - USERNAME: string; - USERPROFILE: string; + LANG: string; + npm_config_resolution_mode: string; VSCODE_GIT_ASKPASS_EXTRA_ARGS: string; + XPC_FLAGS: string; + npm_config_node_gyp: string; + npm_package_version: string; + XPC_SERVICE_NAME: string; + VSCODE_INJECTION: string; + SHLVL: string; + HOME: string; VSCODE_GIT_ASKPASS_MAIN: string; - VSCODE_GIT_ASKPASS_NODE: string; + npm_config_cache: string; + LOGNAME: string; + npm_lifecycle_script: string; VSCODE_GIT_IPC_HANDLE: string; - VSCODE_INJECTION: string; - windir: string; - ZES_ENABLE_SYSMAN: string; + npm_config_user_agent: string; + VSCODE_GIT_ASKPASS_NODE: string; + GIT_ASKPASS: string; + SECURITYSESSIONID: string; + npm_node_execpath: string; + npm_config_prefix: string; + COLORTERM: string; + NODE_ENV: string; [key: `PUBLIC_${string}`]: undefined; [key: `${string}`]: string | undefined; } diff --git a/.svelte-kit/generated/client/app.js b/.svelte-kit/generated/client/app.js index ccb5d1210..3d829885e 100644 --- a/.svelte-kit/generated/client/app.js +++ b/.svelte-kit/generated/client/app.js @@ -16,12 +16,12 @@ export const server_loads = []; export const dictionary = { "/": [~2], - "/contact": [3], - "/home": [~4], - "/maken": [~5], - "/stekjes_overzicht": [~6], - "/workshops": [~7], - "/[slug]": [~8] + "/contact": [4], + "/home": [~5], + "/maken": [~6], + "/stekjes_overzicht": [~7], + "/workshops": [~8], + "/[slug]": [~3] }; export const hooks = { diff --git a/.svelte-kit/generated/client/nodes/3.js b/.svelte-kit/generated/client/nodes/3.js index 060205a63..7d0c8fa43 100644 --- a/.svelte-kit/generated/client/nodes/3.js +++ b/.svelte-kit/generated/client/nodes/3.js @@ -1 +1 @@ -export { default as component } from "../../../../src/routes/contact/+page.svelte"; \ No newline at end of file +export { default as component } from "../../../../src/routes/[slug]/+page.svelte"; \ No newline at end of file diff --git a/.svelte-kit/generated/client/nodes/4.js b/.svelte-kit/generated/client/nodes/4.js index c22a2c1a9..060205a63 100644 --- a/.svelte-kit/generated/client/nodes/4.js +++ b/.svelte-kit/generated/client/nodes/4.js @@ -1 +1 @@ -export { default as component } from "../../../../src/routes/home/+page.svelte"; \ No newline at end of file +export { default as component } from "../../../../src/routes/contact/+page.svelte"; \ No newline at end of file diff --git a/.svelte-kit/generated/client/nodes/5.js b/.svelte-kit/generated/client/nodes/5.js index 55e45b6f2..c22a2c1a9 100644 --- a/.svelte-kit/generated/client/nodes/5.js +++ b/.svelte-kit/generated/client/nodes/5.js @@ -1 +1 @@ -export { default as component } from "../../../../src/routes/maken/+page.svelte"; \ No newline at end of file +export { default as component } from "../../../../src/routes/home/+page.svelte"; \ No newline at end of file diff --git a/.svelte-kit/generated/client/nodes/6.js b/.svelte-kit/generated/client/nodes/6.js index 90042ae5c..55e45b6f2 100644 --- a/.svelte-kit/generated/client/nodes/6.js +++ b/.svelte-kit/generated/client/nodes/6.js @@ -1 +1 @@ -export { default as component } from "../../../../src/routes/stekjes_overzicht/+page.svelte"; \ No newline at end of file +export { default as component } from "../../../../src/routes/maken/+page.svelte"; \ No newline at end of file diff --git a/.svelte-kit/generated/client/nodes/7.js b/.svelte-kit/generated/client/nodes/7.js index 2a5f6d560..90042ae5c 100644 --- a/.svelte-kit/generated/client/nodes/7.js +++ b/.svelte-kit/generated/client/nodes/7.js @@ -1 +1 @@ -export { default as component } from "../../../../src/routes/workshops/+page.svelte"; \ No newline at end of file +export { default as component } from "../../../../src/routes/stekjes_overzicht/+page.svelte"; \ No newline at end of file diff --git a/.svelte-kit/generated/client/nodes/8.js b/.svelte-kit/generated/client/nodes/8.js index 7d0c8fa43..2a5f6d560 100644 --- a/.svelte-kit/generated/client/nodes/8.js +++ b/.svelte-kit/generated/client/nodes/8.js @@ -1 +1 @@ -export { default as component } from "../../../../src/routes/[slug]/+page.svelte"; \ No newline at end of file +export { default as component } from "../../../../src/routes/workshops/+page.svelte"; \ No newline at end of file diff --git a/.svelte-kit/generated/server/internal.js b/.svelte-kit/generated/server/internal.js index 294596949..08ff74d6f 100644 --- a/.svelte-kit/generated/server/internal.js +++ b/.svelte-kit/generated/server/internal.js @@ -17,10 +17,10 @@ export const options = { root, service_worker: false, templates: { - app: ({ head, body, assets, nonce, env }) => "\r\n\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t\r\n\t\t" + head + "\r\n\t\r\n\t\r\n\t\t
" + body + "
\r\n\t\r\n\r\n", - error: ({ status, message }) => "\r\n\r\n\t\r\n\t\t\r\n\t\t" + message + "\r\n\r\n\t\t\r\n\t\r\n\t\r\n\t\t
\r\n\t\t\t" + status + "\r\n\t\t\t
\r\n\t\t\t\t

" + message + "

\r\n\t\t\t
\r\n\t\t
\r\n\t\r\n\r\n" + app: ({ head, body, assets, nonce, env }) => "\n\n\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t" + head + "\n\t\n\t\n\t\t
" + body + "
\n\t\n\n", + error: ({ status, message }) => "\n\n\t\n\t\t\n\t\t" + message + "\n\n\t\t\n\t\n\t\n\t\t
\n\t\t\t" + status + "\n\t\t\t
\n\t\t\t\t

" + message + "

\n\t\t\t
\n\t\t
\n\t\n\n" }, - version_hash: "12x3glw" + version_hash: "1da6z2t" }; export function get_hooks() { diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 000000000..13ee2b041 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "nuxt.isNuxtApp": false +} \ No newline at end of file diff --git a/node_modules/.vite/_svelte_metadata.json b/node_modules/.vite/_svelte_metadata.json index d731472d4..cbb1106b0 100644 --- a/node_modules/.vite/_svelte_metadata.json +++ b/node_modules/.vite/_svelte_metadata.json @@ -1 +1 @@ -{"compilerOptions":{"css":"external","dev":true,"hydratable":true},"configFile":false,"extensions":[".svelte"],"preprocess":[{"script":"async script({ attributes, content, filename = '' }) {\r\n\t\t\tconst lang = /** @type {string} */ (attributes.lang);\r\n\t\t\tif (!supportedScriptLangs.includes(lang)) return;\r\n\t\t\tconst { code, map } = await transformWithEsbuild(content, filename, {\r\n\t\t\t\tloader: /** @type {import('vite').ESBuildOptions['loader']} */ (lang),\r\n\t\t\t\ttarget: 'esnext',\r\n\t\t\t\ttsconfigRaw: {\r\n\t\t\t\t\tcompilerOptions: {\r\n\t\t\t\t\t\t// svelte typescript needs this flag to work with type imports\r\n\t\t\t\t\t\timportsNotUsedAsValues: 'preserve',\r\n\t\t\t\t\t\tpreserveValueImports: true\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tmapToRelative(map, filename);\r\n\r\n\t\t\treturn {\r\n\t\t\t\tcode,\r\n\t\t\t\tmap\r\n\t\t\t};\r\n\t\t}","style":"async ({ attributes, content, filename = '' }) => {\r\n\t\tconst lang = /** @type {string} */ (attributes.lang);\r\n\t\tif (!supportedStyleLangs.includes(lang)) return;\r\n\t\tif (!transform) {\r\n\t\t\t/** @type {import('vite').ResolvedConfig} */\r\n\t\t\tlet resolvedConfig;\r\n\t\t\t// @ts-expect-error special prop added if running in v-p-s\r\n\t\t\tif (style.__resolvedConfig) {\r\n\t\t\t\t// @ts-expect-error\r\n\t\t\t\tresolvedConfig = style.__resolvedConfig;\r\n\t\t\t} else if (isResolvedConfig(config)) {\r\n\t\t\t\tresolvedConfig = config;\r\n\t\t\t} else {\r\n\t\t\t\tresolvedConfig = await resolveConfig(\r\n\t\t\t\t\tconfig,\r\n\t\t\t\t\tprocess.env.NODE_ENV === 'production' ? 'build' : 'serve'\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\ttransform = getCssTransformFn(resolvedConfig);\r\n\t\t}\r\n\t\tconst suffix = `${lang_sep}${lang}`;\r\n\t\tconst moduleId = `${filename}${suffix}`;\r\n\t\tconst { code, map, deps } = await transform(content, moduleId);\r\n\t\tremoveLangSuffix(map, suffix);\r\n\t\tmapToRelative(map, filename);\r\n\t\tconst dependencies = deps ? Array.from(deps).filter((d) => !d.endsWith(suffix)) : undefined;\r\n\t\treturn {\r\n\t\t\tcode,\r\n\t\t\tmap: map ?? undefined,\r\n\t\t\tdependencies\r\n\t\t};\r\n\t}"},{"script":"({ content, filename }) => {\r\n\t\tif (!filename) return;\r\n\r\n\t\tconst basename = path.basename(filename);\r\n\t\tif (basename.startsWith('+page.') || basename.startsWith('+layout.')) {\r\n\t\t\tconst match = content.match(options_regex);\r\n\t\t\tif (match) {\r\n\t\t\t\tconst fixed = basename.replace('.svelte', '(.server).js/ts');\r\n\r\n\t\t\t\tconst message =\r\n\t\t\t\t\t`\\n${colors.bold().red(path.relative('.', filename))}\\n` +\r\n\t\t\t\t\t`\\`${match[1]}\\` will be ignored — move it to ${fixed} instead. See https://kit.svelte.dev/docs/page-options for more information.`;\r\n\r\n\t\t\t\tif (!warned.has(message)) {\r\n\t\t\t\t\tconsole.log(message);\r\n\t\t\t\t\twarned.add(message);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}","markup":"({ content, filename }) => {\r\n\t\tif (!filename) return;\r\n\r\n\t\tconst basename = path.basename(filename);\r\n\t\tif (basename.startsWith('+layout.') && !content.includes('` missing — inner content will not be rendered';\r\n\r\n\t\t\tif (!warned.has(message)) {\r\n\t\t\t\tconsole.log(message);\r\n\t\t\t\twarned.add(message);\r\n\t\t\t}\r\n\t\t}\r\n\t}"}]} \ No newline at end of file +{"compilerOptions":{"css":"external","dev":true,"hydratable":true},"configFile":false,"extensions":[".svelte"],"preprocess":[{"script":"async script({ attributes, content, filename = '' }) {\n\t\t\tconst lang = /** @type {string} */ (attributes.lang);\n\t\t\tif (!supportedScriptLangs.includes(lang)) return;\n\t\t\tconst { code, map } = await transformWithEsbuild(content, filename, {\n\t\t\t\tloader: /** @type {import('vite').ESBuildOptions['loader']} */ (lang),\n\t\t\t\ttarget: 'esnext',\n\t\t\t\ttsconfigRaw: {\n\t\t\t\t\tcompilerOptions: {\n\t\t\t\t\t\t// svelte typescript needs this flag to work with type imports\n\t\t\t\t\t\timportsNotUsedAsValues: 'preserve',\n\t\t\t\t\t\tpreserveValueImports: true\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tmapToRelative(map, filename);\n\n\t\t\treturn {\n\t\t\t\tcode,\n\t\t\t\tmap\n\t\t\t};\n\t\t}","style":"async ({ attributes, content, filename = '' }) => {\n\t\tconst lang = /** @type {string} */ (attributes.lang);\n\t\tif (!supportedStyleLangs.includes(lang)) return;\n\t\tif (!transform) {\n\t\t\t/** @type {import('vite').ResolvedConfig} */\n\t\t\tlet resolvedConfig;\n\t\t\t// @ts-expect-error special prop added if running in v-p-s\n\t\t\tif (style.__resolvedConfig) {\n\t\t\t\t// @ts-expect-error\n\t\t\t\tresolvedConfig = style.__resolvedConfig;\n\t\t\t} else if (isResolvedConfig(config)) {\n\t\t\t\tresolvedConfig = config;\n\t\t\t} else {\n\t\t\t\tresolvedConfig = await resolveConfig(\n\t\t\t\t\tconfig,\n\t\t\t\t\tprocess.env.NODE_ENV === 'production' ? 'build' : 'serve'\n\t\t\t\t);\n\t\t\t}\n\t\t\ttransform = getCssTransformFn(resolvedConfig);\n\t\t}\n\t\tconst suffix = `${lang_sep}${lang}`;\n\t\tconst moduleId = `${filename}${suffix}`;\n\t\tconst { code, map, deps } = await transform(content, moduleId);\n\t\tremoveLangSuffix(map, suffix);\n\t\tmapToRelative(map, filename);\n\t\tconst dependencies = deps ? Array.from(deps).filter((d) => !d.endsWith(suffix)) : undefined;\n\t\treturn {\n\t\t\tcode,\n\t\t\tmap: map ?? undefined,\n\t\t\tdependencies\n\t\t};\n\t}"},{"script":"({ content, filename }) => {\n\t\tif (!filename) return;\n\n\t\tconst basename = path.basename(filename);\n\t\tif (basename.startsWith('+page.') || basename.startsWith('+layout.')) {\n\t\t\tconst match = content.match(options_regex);\n\t\t\tif (match) {\n\t\t\t\tconst fixed = basename.replace('.svelte', '(.server).js/ts');\n\n\t\t\t\tconst message =\n\t\t\t\t\t`\\n${colors.bold().red(path.relative('.', filename))}\\n` +\n\t\t\t\t\t`\\`${match[1]}\\` will be ignored — move it to ${fixed} instead. See https://kit.svelte.dev/docs/page-options for more information.`;\n\n\t\t\t\tif (!warned.has(message)) {\n\t\t\t\t\tconsole.log(message);\n\t\t\t\t\twarned.add(message);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}","markup":"({ content, filename }) => {\n\t\tif (!filename) return;\n\n\t\tconst basename = path.basename(filename);\n\t\tif (basename.startsWith('+layout.') && !content.includes('` missing — inner content will not be rendered';\n\n\t\t\tif (!warned.has(message)) {\n\t\t\t\tconsole.log(message);\n\t\t\t\twarned.add(message);\n\t\t\t}\n\t\t}\n\t}"}]} \ No newline at end of file diff --git a/node_modules/.vite/deps/_metadata.json b/node_modules/.vite/deps/_metadata.json index 855638308..8413e5dce 100644 --- a/node_modules/.vite/deps/_metadata.json +++ b/node_modules/.vite/deps/_metadata.json @@ -1,98 +1,98 @@ { - "hash": "5ba3da0a", - "browserHash": "0af90b99", + "hash": "5765dad9", + "browserHash": "87ae6d79", "optimized": { "svelte/animate": { "src": "../../svelte/src/runtime/animate/index.js", "file": "svelte_animate.js", - "fileHash": "87c839ab", + "fileHash": "52753bce", "needsInterop": false }, "svelte/easing": { "src": "../../svelte/src/runtime/easing/index.js", "file": "svelte_easing.js", - "fileHash": "80cb8ef2", + "fileHash": "3800798f", "needsInterop": false }, "svelte/internal": { "src": "../../svelte/src/runtime/internal/index.js", "file": "svelte_internal.js", - "fileHash": "13dba8d2", + "fileHash": "2d962493", "needsInterop": false }, "svelte/motion": { "src": "../../svelte/src/runtime/motion/index.js", "file": "svelte_motion.js", - "fileHash": "487ee466", + "fileHash": "bb33d040", "needsInterop": false }, "svelte/store": { "src": "../../svelte/src/runtime/store/index.js", "file": "svelte_store.js", - "fileHash": "73ef8968", + "fileHash": "182f99c8", "needsInterop": false }, "svelte/transition": { "src": "../../svelte/src/runtime/transition/index.js", "file": "svelte_transition.js", - "fileHash": "3c5a9019", + "fileHash": "dcc9f2c6", "needsInterop": false }, "svelte": { "src": "../../svelte/src/runtime/index.js", "file": "svelte.js", - "fileHash": "83f45909", + "fileHash": "c4027fb3", "needsInterop": false }, "svelte/internal/disclose-version": { "src": "../../svelte/src/runtime/internal/disclose-version/index.js", "file": "svelte_internal_disclose-version.js", - "fileHash": "176f377b", + "fileHash": "a59e3ca4", "needsInterop": false }, "devalue": { "src": "../../devalue/index.js", "file": "devalue.js", - "fileHash": "7274d1d5", + "fileHash": "e9c07fc0", "needsInterop": false }, "esm-env": { "src": "../../esm-env/dev-browser.js", "file": "esm-env.js", - "fileHash": "c7dd4e1d", + "fileHash": "5a9203c5", "needsInterop": false }, "gsap": { "src": "../../gsap/index.js", "file": "gsap.js", - "fileHash": "ba8a88dc", + "fileHash": "e28251b2", "needsInterop": false }, "gsap/dist/ScrollTrigger": { "src": "../../gsap/dist/ScrollTrigger.js", "file": "gsap_dist_ScrollTrigger.js", - "fileHash": "30c9bf3e", + "fileHash": "fb72d487", "needsInterop": true }, "prettier": { "src": "../../prettier/standalone.js", "file": "prettier.js", - "fileHash": "cc4ad9d9", + "fileHash": "2573d9f3", "needsInterop": true } }, "chunks": { - "chunk-36XSJPWN": { - "file": "chunk-36XSJPWN.js" + "chunk-MF7YG25T": { + "file": "chunk-MF7YG25T.js" }, - "chunk-FI7FPNA6": { - "file": "chunk-FI7FPNA6.js" + "chunk-VFRMSNTO": { + "file": "chunk-VFRMSNTO.js" }, - "chunk-POMM4CDA": { - "file": "chunk-POMM4CDA.js" + "chunk-WODVJWZD": { + "file": "chunk-WODVJWZD.js" }, - "chunk-CBLXLE7Z": { - "file": "chunk-CBLXLE7Z.js" + "chunk-CUKRBFMN": { + "file": "chunk-CUKRBFMN.js" }, "chunk-XNHBATJA": { "file": "chunk-XNHBATJA.js" diff --git a/node_modules/.vite/deps/chunk-36XSJPWN.js.map b/node_modules/.vite/deps/chunk-36XSJPWN.js.map deleted file mode 100644 index e56ebb507..000000000 --- a/node_modules/.vite/deps/chunk-36XSJPWN.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../svelte/src/runtime/store/index.js"], - "sourcesContent": ["import {\r\n\trun_all,\r\n\tsubscribe,\r\n\tnoop,\r\n\tsafe_not_equal,\r\n\tis_function,\r\n\tget_store_value\r\n} from '../internal/index.js';\r\n\r\nconst subscriber_queue = [];\r\n\r\n/**\r\n * Creates a `Readable` store that allows reading by subscription.\r\n *\r\n * https://svelte.dev/docs/svelte-store#readable\r\n * @template T\r\n * @param {T} [value] initial value\r\n * @param {import('./public.js').StartStopNotifier} [start]\r\n * @returns {import('./public.js').Readable}\r\n */\r\nexport function readable(value, start) {\r\n\treturn {\r\n\t\tsubscribe: writable(value, start).subscribe\r\n\t};\r\n}\r\n\r\n/**\r\n * Create a `Writable` store that allows both updating and reading by subscription.\r\n *\r\n * https://svelte.dev/docs/svelte-store#writable\r\n * @template T\r\n * @param {T} [value] initial value\r\n * @param {import('./public.js').StartStopNotifier} [start]\r\n * @returns {import('./public.js').Writable}\r\n */\r\nexport function writable(value, start = noop) {\r\n\t/** @type {import('./public.js').Unsubscriber} */\r\n\tlet stop;\r\n\t/** @type {Set>} */\r\n\tconst subscribers = new Set();\r\n\t/** @param {T} new_value\r\n\t * @returns {void}\r\n\t */\r\n\tfunction set(new_value) {\r\n\t\tif (safe_not_equal(value, new_value)) {\r\n\t\t\tvalue = new_value;\r\n\t\t\tif (stop) {\r\n\t\t\t\t// store is ready\r\n\t\t\t\tconst run_queue = !subscriber_queue.length;\r\n\t\t\t\tfor (const subscriber of subscribers) {\r\n\t\t\t\t\tsubscriber[1]();\r\n\t\t\t\t\tsubscriber_queue.push(subscriber, value);\r\n\t\t\t\t}\r\n\t\t\t\tif (run_queue) {\r\n\t\t\t\t\tfor (let i = 0; i < subscriber_queue.length; i += 2) {\r\n\t\t\t\t\t\tsubscriber_queue[i][0](subscriber_queue[i + 1]);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tsubscriber_queue.length = 0;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @param {import('./public.js').Updater} fn\r\n\t * @returns {void}\r\n\t */\r\n\tfunction update(fn) {\r\n\t\tset(fn(value));\r\n\t}\r\n\r\n\t/**\r\n\t * @param {import('./public.js').Subscriber} run\r\n\t * @param {import('./private.js').Invalidator} [invalidate]\r\n\t * @returns {import('./public.js').Unsubscriber}\r\n\t */\r\n\tfunction subscribe(run, invalidate = noop) {\r\n\t\t/** @type {import('./private.js').SubscribeInvalidateTuple} */\r\n\t\tconst subscriber = [run, invalidate];\r\n\t\tsubscribers.add(subscriber);\r\n\t\tif (subscribers.size === 1) {\r\n\t\t\tstop = start(set, update) || noop;\r\n\t\t}\r\n\t\trun(value);\r\n\t\treturn () => {\r\n\t\t\tsubscribers.delete(subscriber);\r\n\t\t\tif (subscribers.size === 0 && stop) {\r\n\t\t\t\tstop();\r\n\t\t\t\tstop = null;\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n\treturn { set, update, subscribe };\r\n}\r\n\r\n/**\r\n * Derived value store by synchronizing one or more readable stores and\r\n * applying an aggregation function over its input values.\r\n *\r\n * https://svelte.dev/docs/svelte-store#derived\r\n * @template {import('./private.js').Stores} S\r\n * @template T\r\n * @overload\r\n * @param {S} stores - input stores\r\n * @param {(values: import('./private.js').StoresValues, set: (value: T) => void, update: (fn: import('./public.js').Updater) => void) => import('./public.js').Unsubscriber | void} fn - function callback that aggregates the values\r\n * @param {T} [initial_value] - initial value\r\n * @returns {import('./public.js').Readable}\r\n */\r\n\r\n/**\r\n * Derived value store by synchronizing one or more readable stores and\r\n * applying an aggregation function over its input values.\r\n *\r\n * https://svelte.dev/docs/svelte-store#derived\r\n * @template {import('./private.js').Stores} S\r\n * @template T\r\n * @overload\r\n * @param {S} stores - input stores\r\n * @param {(values: import('./private.js').StoresValues) => T} fn - function callback that aggregates the values\r\n * @param {T} [initial_value] - initial value\r\n * @returns {import('./public.js').Readable}\r\n */\r\n\r\n/**\r\n * @template {import('./private.js').Stores} S\r\n * @template T\r\n * @param {S} stores\r\n * @param {Function} fn\r\n * @param {T} [initial_value]\r\n * @returns {import('./public.js').Readable}\r\n */\r\nexport function derived(stores, fn, initial_value) {\r\n\tconst single = !Array.isArray(stores);\r\n\t/** @type {Array>} */\r\n\tconst stores_array = single ? [stores] : stores;\r\n\tif (!stores_array.every(Boolean)) {\r\n\t\tthrow new Error('derived() expects stores as input, got a falsy value');\r\n\t}\r\n\tconst auto = fn.length < 2;\r\n\treturn readable(initial_value, (set, update) => {\r\n\t\tlet started = false;\r\n\t\tconst values = [];\r\n\t\tlet pending = 0;\r\n\t\tlet cleanup = noop;\r\n\t\tconst sync = () => {\r\n\t\t\tif (pending) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tcleanup();\r\n\t\t\tconst result = fn(single ? values[0] : values, set, update);\r\n\t\t\tif (auto) {\r\n\t\t\t\tset(result);\r\n\t\t\t} else {\r\n\t\t\t\tcleanup = is_function(result) ? result : noop;\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst unsubscribers = stores_array.map((store, i) =>\r\n\t\t\tsubscribe(\r\n\t\t\t\tstore,\r\n\t\t\t\t(value) => {\r\n\t\t\t\t\tvalues[i] = value;\r\n\t\t\t\t\tpending &= ~(1 << i);\r\n\t\t\t\t\tif (started) {\r\n\t\t\t\t\t\tsync();\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tpending |= 1 << i;\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t);\r\n\t\tstarted = true;\r\n\t\tsync();\r\n\t\treturn function stop() {\r\n\t\t\trun_all(unsubscribers);\r\n\t\t\tcleanup();\r\n\t\t\t// We need to set this to false because callbacks can still happen despite having unsubscribed:\r\n\t\t\t// Callbacks might already be placed in the queue which doesn't know it should no longer\r\n\t\t\t// invoke this derived store.\r\n\t\t\tstarted = false;\r\n\t\t};\r\n\t});\r\n}\r\n\r\n/**\r\n * Takes a store and returns a new one derived from the old one that is readable.\r\n *\r\n * https://svelte.dev/docs/svelte-store#readonly\r\n * @template T\r\n * @param {import('./public.js').Readable} store - store to make readonly\r\n * @returns {import('./public.js').Readable}\r\n */\r\nexport function readonly(store) {\r\n\treturn {\r\n\t\tsubscribe: store.subscribe.bind(store)\r\n\t};\r\n}\r\n\r\nexport { get_store_value as get };\r\n"], - "mappings": ";;;;;;;;;AASA,IAAM,mBAAmB,CAAC;AAWnB,SAAS,SAAS,OAAO,OAAO;AACtC,SAAO;AAAA,IACN,WAAW,SAAS,OAAO,KAAK,EAAE;AAAA,EACnC;AACD;AAWO,SAAS,SAAS,OAAO,QAAQ,MAAM;AAE7C,MAAI;AAEJ,QAAM,cAAc,oBAAI,IAAI;AAI5B,WAAS,IAAI,WAAW;AACvB,QAAI,eAAe,OAAO,SAAS,GAAG;AACrC,cAAQ;AACR,UAAI,MAAM;AAET,cAAM,YAAY,CAAC,iBAAiB;AACpC,mBAAW,cAAc,aAAa;AACrC,qBAAW,CAAC,EAAE;AACd,2BAAiB,KAAK,YAAY,KAAK;AAAA,QACxC;AACA,YAAI,WAAW;AACd,mBAAS,IAAI,GAAG,IAAI,iBAAiB,QAAQ,KAAK,GAAG;AACpD,6BAAiB,CAAC,EAAE,CAAC,EAAE,iBAAiB,IAAI,CAAC,CAAC;AAAA,UAC/C;AACA,2BAAiB,SAAS;AAAA,QAC3B;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAMA,WAAS,OAAO,IAAI;AACnB,QAAI,GAAG,KAAK,CAAC;AAAA,EACd;AAOA,WAASA,WAAU,KAAK,aAAa,MAAM;AAE1C,UAAM,aAAa,CAAC,KAAK,UAAU;AACnC,gBAAY,IAAI,UAAU;AAC1B,QAAI,YAAY,SAAS,GAAG;AAC3B,aAAO,MAAM,KAAK,MAAM,KAAK;AAAA,IAC9B;AACA,QAAI,KAAK;AACT,WAAO,MAAM;AACZ,kBAAY,OAAO,UAAU;AAC7B,UAAI,YAAY,SAAS,KAAK,MAAM;AACnC,aAAK;AACL,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AACA,SAAO,EAAE,KAAK,QAAQ,WAAAA,WAAU;AACjC;AAsCO,SAAS,QAAQ,QAAQ,IAAI,eAAe;AAClD,QAAM,SAAS,CAAC,MAAM,QAAQ,MAAM;AAEpC,QAAM,eAAe,SAAS,CAAC,MAAM,IAAI;AACzC,MAAI,CAAC,aAAa,MAAM,OAAO,GAAG;AACjC,UAAM,IAAI,MAAM,sDAAsD;AAAA,EACvE;AACA,QAAM,OAAO,GAAG,SAAS;AACzB,SAAO,SAAS,eAAe,CAAC,KAAK,WAAW;AAC/C,QAAI,UAAU;AACd,UAAM,SAAS,CAAC;AAChB,QAAI,UAAU;AACd,QAAI,UAAU;AACd,UAAM,OAAO,MAAM;AAClB,UAAI,SAAS;AACZ;AAAA,MACD;AACA,cAAQ;AACR,YAAM,SAAS,GAAG,SAAS,OAAO,CAAC,IAAI,QAAQ,KAAK,MAAM;AAC1D,UAAI,MAAM;AACT,YAAI,MAAM;AAAA,MACX,OAAO;AACN,kBAAU,YAAY,MAAM,IAAI,SAAS;AAAA,MAC1C;AAAA,IACD;AACA,UAAM,gBAAgB,aAAa;AAAA,MAAI,CAAC,OAAO,MAC9C;AAAA,QACC;AAAA,QACA,CAAC,UAAU;AACV,iBAAO,CAAC,IAAI;AACZ,qBAAW,EAAE,KAAK;AAClB,cAAI,SAAS;AACZ,iBAAK;AAAA,UACN;AAAA,QACD;AAAA,QACA,MAAM;AACL,qBAAW,KAAK;AAAA,QACjB;AAAA,MACD;AAAA,IACD;AACA,cAAU;AACV,SAAK;AACL,WAAO,SAAS,OAAO;AACtB,cAAQ,aAAa;AACrB,cAAQ;AAIR,gBAAU;AAAA,IACX;AAAA,EACD,CAAC;AACF;AAUO,SAAS,SAAS,OAAO;AAC/B,SAAO;AAAA,IACN,WAAW,MAAM,UAAU,KAAK,KAAK;AAAA,EACtC;AACD;", - "names": ["subscribe"] -} diff --git a/node_modules/.vite/deps/chunk-CBLXLE7Z.js.map b/node_modules/.vite/deps/chunk-CBLXLE7Z.js.map deleted file mode 100644 index 577189429..000000000 --- a/node_modules/.vite/deps/chunk-CBLXLE7Z.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../svelte/src/shared/version.js"], - "sourcesContent": ["// generated during release, do not modify\r\n\r\n/**\r\n * The current version, as set in package.json.\r\n *\r\n * https://svelte.dev/docs/svelte-compiler#svelte-version\r\n * @type {string}\r\n */\r\nexport const VERSION = '4.2.3';\r\nexport const PUBLIC_VERSION = '4';\r\n"], - "mappings": ";AAQO,IAAM,UAAU;AAChB,IAAM,iBAAiB;", - "names": [] -} diff --git a/node_modules/.vite/deps/chunk-CBLXLE7Z.js b/node_modules/.vite/deps/chunk-CUKRBFMN.js similarity index 75% rename from node_modules/.vite/deps/chunk-CBLXLE7Z.js rename to node_modules/.vite/deps/chunk-CUKRBFMN.js index 7ec8b0398..de3f03cb6 100644 --- a/node_modules/.vite/deps/chunk-CBLXLE7Z.js +++ b/node_modules/.vite/deps/chunk-CUKRBFMN.js @@ -6,4 +6,4 @@ export { VERSION, PUBLIC_VERSION }; -//# sourceMappingURL=chunk-CBLXLE7Z.js.map +//# sourceMappingURL=chunk-CUKRBFMN.js.map diff --git a/node_modules/.vite/deps/chunk-CUKRBFMN.js.map b/node_modules/.vite/deps/chunk-CUKRBFMN.js.map new file mode 100644 index 000000000..a20b68ea2 --- /dev/null +++ b/node_modules/.vite/deps/chunk-CUKRBFMN.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../svelte/src/shared/version.js"], + "sourcesContent": ["// generated during release, do not modify\n\n/**\n * The current version, as set in package.json.\n *\n * https://svelte.dev/docs/svelte-compiler#svelte-version\n * @type {string}\n */\nexport const VERSION = '4.2.3';\nexport const PUBLIC_VERSION = '4';\n"], + "mappings": ";AAQO,IAAM,UAAU;AAChB,IAAM,iBAAiB;", + "names": [] +} diff --git a/node_modules/.vite/deps/chunk-FI7FPNA6.js.map b/node_modules/.vite/deps/chunk-FI7FPNA6.js.map deleted file mode 100644 index 7a9dffb60..000000000 --- a/node_modules/.vite/deps/chunk-FI7FPNA6.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../svelte/src/runtime/easing/index.js"], - "sourcesContent": ["/*\r\nAdapted from https://github.com/mattdesl\r\nDistributed under MIT License https://github.com/mattdesl/eases/blob/master/LICENSE.md\r\n*/\r\nexport { identity as linear } from '../internal/index.js';\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function backInOut(t) {\r\n\tconst s = 1.70158 * 1.525;\r\n\tif ((t *= 2) < 1) return 0.5 * (t * t * ((s + 1) * t - s));\r\n\treturn 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function backIn(t) {\r\n\tconst s = 1.70158;\r\n\treturn t * t * ((s + 1) * t - s);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function backOut(t) {\r\n\tconst s = 1.70158;\r\n\treturn --t * t * ((s + 1) * t + s) + 1;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function bounceOut(t) {\r\n\tconst a = 4.0 / 11.0;\r\n\tconst b = 8.0 / 11.0;\r\n\tconst c = 9.0 / 10.0;\r\n\tconst ca = 4356.0 / 361.0;\r\n\tconst cb = 35442.0 / 1805.0;\r\n\tconst cc = 16061.0 / 1805.0;\r\n\tconst t2 = t * t;\r\n\treturn t < a\r\n\t\t? 7.5625 * t2\r\n\t\t: t < b\r\n\t\t? 9.075 * t2 - 9.9 * t + 3.4\r\n\t\t: t < c\r\n\t\t? ca * t2 - cb * t + cc\r\n\t\t: 10.8 * t * t - 20.52 * t + 10.72;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function bounceInOut(t) {\r\n\treturn t < 0.5 ? 0.5 * (1.0 - bounceOut(1.0 - t * 2.0)) : 0.5 * bounceOut(t * 2.0 - 1.0) + 0.5;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function bounceIn(t) {\r\n\treturn 1.0 - bounceOut(1.0 - t);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function circInOut(t) {\r\n\tif ((t *= 2) < 1) return -0.5 * (Math.sqrt(1 - t * t) - 1);\r\n\treturn 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function circIn(t) {\r\n\treturn 1.0 - Math.sqrt(1.0 - t * t);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function circOut(t) {\r\n\treturn Math.sqrt(1 - --t * t);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function cubicInOut(t) {\r\n\treturn t < 0.5 ? 4.0 * t * t * t : 0.5 * Math.pow(2.0 * t - 2.0, 3.0) + 1.0;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function cubicIn(t) {\r\n\treturn t * t * t;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function cubicOut(t) {\r\n\tconst f = t - 1.0;\r\n\treturn f * f * f + 1.0;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function elasticInOut(t) {\r\n\treturn t < 0.5\r\n\t\t? 0.5 * Math.sin(((+13.0 * Math.PI) / 2) * 2.0 * t) * Math.pow(2.0, 10.0 * (2.0 * t - 1.0))\r\n\t\t: 0.5 *\r\n\t\t\t\tMath.sin(((-13.0 * Math.PI) / 2) * (2.0 * t - 1.0 + 1.0)) *\r\n\t\t\t\tMath.pow(2.0, -10.0 * (2.0 * t - 1.0)) +\r\n\t\t\t\t1.0;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function elasticIn(t) {\r\n\treturn Math.sin((13.0 * t * Math.PI) / 2) * Math.pow(2.0, 10.0 * (t - 1.0));\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function elasticOut(t) {\r\n\treturn Math.sin((-13.0 * (t + 1.0) * Math.PI) / 2) * Math.pow(2.0, -10.0 * t) + 1.0;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function expoInOut(t) {\r\n\treturn t === 0.0 || t === 1.0\r\n\t\t? t\r\n\t\t: t < 0.5\r\n\t\t? +0.5 * Math.pow(2.0, 20.0 * t - 10.0)\r\n\t\t: -0.5 * Math.pow(2.0, 10.0 - t * 20.0) + 1.0;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function expoIn(t) {\r\n\treturn t === 0.0 ? t : Math.pow(2.0, 10.0 * (t - 1.0));\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function expoOut(t) {\r\n\treturn t === 1.0 ? t : 1.0 - Math.pow(2.0, -10.0 * t);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quadInOut(t) {\r\n\tt /= 0.5;\r\n\tif (t < 1) return 0.5 * t * t;\r\n\tt--;\r\n\treturn -0.5 * (t * (t - 2) - 1);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quadIn(t) {\r\n\treturn t * t;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quadOut(t) {\r\n\treturn -t * (t - 2.0);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quartInOut(t) {\r\n\treturn t < 0.5 ? +8.0 * Math.pow(t, 4.0) : -8.0 * Math.pow(t - 1.0, 4.0) + 1.0;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quartIn(t) {\r\n\treturn Math.pow(t, 4.0);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quartOut(t) {\r\n\treturn Math.pow(t - 1.0, 3.0) * (1.0 - t) + 1.0;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quintInOut(t) {\r\n\tif ((t *= 2) < 1) return 0.5 * t * t * t * t * t;\r\n\treturn 0.5 * ((t -= 2) * t * t * t * t + 2);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quintIn(t) {\r\n\treturn t * t * t * t * t;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function quintOut(t) {\r\n\treturn --t * t * t * t * t + 1;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function sineInOut(t) {\r\n\treturn -0.5 * (Math.cos(Math.PI * t) - 1);\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function sineIn(t) {\r\n\tconst v = Math.cos(t * Math.PI * 0.5);\r\n\tif (Math.abs(v) < 1e-14) return 1;\r\n\telse return 1 - v;\r\n}\r\n\r\n/**\r\n * https://svelte.dev/docs/svelte-easing\r\n * @param {number} t\r\n * @returns {number}\r\n */\r\nexport function sineOut(t) {\r\n\treturn Math.sin((t * Math.PI) / 2);\r\n}\r\n"], - "mappings": ";AAWO,SAAS,UAAU,GAAG;AAC5B,QAAM,IAAI,UAAU;AACpB,OAAK,KAAK,KAAK;AAAG,WAAO,OAAO,IAAI,MAAM,IAAI,KAAK,IAAI;AACvD,SAAO,QAAQ,KAAK,KAAK,MAAM,IAAI,KAAK,IAAI,KAAK;AAClD;AAOO,SAAS,OAAO,GAAG;AACzB,QAAM,IAAI;AACV,SAAO,IAAI,MAAM,IAAI,KAAK,IAAI;AAC/B;AAOO,SAAS,QAAQ,GAAG;AAC1B,QAAM,IAAI;AACV,SAAO,EAAE,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK;AACtC;AAOO,SAAS,UAAU,GAAG;AAC5B,QAAM,IAAI,IAAM;AAChB,QAAM,IAAI,IAAM;AAChB,QAAM,IAAI,IAAM;AAChB,QAAM,KAAK,OAAS;AACpB,QAAM,KAAK,QAAU;AACrB,QAAM,KAAK,QAAU;AACrB,QAAM,KAAK,IAAI;AACf,SAAO,IAAI,IACR,SAAS,KACT,IAAI,IACJ,QAAQ,KAAK,MAAM,IAAI,MACvB,IAAI,IACJ,KAAK,KAAK,KAAK,IAAI,KACnB,OAAO,IAAI,IAAI,QAAQ,IAAI;AAC/B;AAOO,SAAS,YAAY,GAAG;AAC9B,SAAO,IAAI,MAAM,OAAO,IAAM,UAAU,IAAM,IAAI,CAAG,KAAK,MAAM,UAAU,IAAI,IAAM,CAAG,IAAI;AAC5F;AAOO,SAAS,SAAS,GAAG;AAC3B,SAAO,IAAM,UAAU,IAAM,CAAC;AAC/B;AAOO,SAAS,UAAU,GAAG;AAC5B,OAAK,KAAK,KAAK;AAAG,WAAO,QAAQ,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI;AACxD,SAAO,OAAO,KAAK,KAAK,KAAK,KAAK,KAAK,CAAC,IAAI;AAC7C;AAOO,SAAS,OAAO,GAAG;AACzB,SAAO,IAAM,KAAK,KAAK,IAAM,IAAI,CAAC;AACnC;AAOO,SAAS,QAAQ,GAAG;AAC1B,SAAO,KAAK,KAAK,IAAI,EAAE,IAAI,CAAC;AAC7B;AAOO,SAAS,WAAW,GAAG;AAC7B,SAAO,IAAI,MAAM,IAAM,IAAI,IAAI,IAAI,MAAM,KAAK,IAAI,IAAM,IAAI,GAAK,CAAG,IAAI;AACzE;AAOO,SAAS,QAAQ,GAAG;AAC1B,SAAO,IAAI,IAAI;AAChB;AAOO,SAAS,SAAS,GAAG;AAC3B,QAAM,IAAI,IAAI;AACd,SAAO,IAAI,IAAI,IAAI;AACpB;AAOO,SAAS,aAAa,GAAG;AAC/B,SAAO,IAAI,MACR,MAAM,KAAK,IAAM,KAAQ,KAAK,KAAM,IAAK,IAAM,CAAC,IAAI,KAAK,IAAI,GAAK,MAAQ,IAAM,IAAI,EAAI,IACxF,MACA,KAAK,IAAM,MAAQ,KAAK,KAAM,KAAM,IAAM,IAAI,IAAM,EAAI,IACxD,KAAK,IAAI,GAAK,OAAS,IAAM,IAAI,EAAI,IACrC;AACJ;AAOO,SAAS,UAAU,GAAG;AAC5B,SAAO,KAAK,IAAK,KAAO,IAAI,KAAK,KAAM,CAAC,IAAI,KAAK,IAAI,GAAK,MAAQ,IAAI,EAAI;AAC3E;AAOO,SAAS,WAAW,GAAG;AAC7B,SAAO,KAAK,IAAK,OAAS,IAAI,KAAO,KAAK,KAAM,CAAC,IAAI,KAAK,IAAI,GAAK,MAAQ,CAAC,IAAI;AACjF;AAOO,SAAS,UAAU,GAAG;AAC5B,SAAO,MAAM,KAAO,MAAM,IACvB,IACA,IAAI,MACJ,MAAO,KAAK,IAAI,GAAK,KAAO,IAAI,EAAI,IACpC,OAAO,KAAK,IAAI,GAAK,KAAO,IAAI,EAAI,IAAI;AAC5C;AAOO,SAAS,OAAO,GAAG;AACzB,SAAO,MAAM,IAAM,IAAI,KAAK,IAAI,GAAK,MAAQ,IAAI,EAAI;AACtD;AAOO,SAAS,QAAQ,GAAG;AAC1B,SAAO,MAAM,IAAM,IAAI,IAAM,KAAK,IAAI,GAAK,MAAQ,CAAC;AACrD;AAOO,SAAS,UAAU,GAAG;AAC5B,OAAK;AACL,MAAI,IAAI;AAAG,WAAO,MAAM,IAAI;AAC5B;AACA,SAAO,QAAQ,KAAK,IAAI,KAAK;AAC9B;AAOO,SAAS,OAAO,GAAG;AACzB,SAAO,IAAI;AACZ;AAOO,SAAS,QAAQ,GAAG;AAC1B,SAAO,CAAC,KAAK,IAAI;AAClB;AAOO,SAAS,WAAW,GAAG;AAC7B,SAAO,IAAI,MAAM,IAAO,KAAK,IAAI,GAAG,CAAG,IAAI,KAAO,KAAK,IAAI,IAAI,GAAK,CAAG,IAAI;AAC5E;AAOO,SAAS,QAAQ,GAAG;AAC1B,SAAO,KAAK,IAAI,GAAG,CAAG;AACvB;AAOO,SAAS,SAAS,GAAG;AAC3B,SAAO,KAAK,IAAI,IAAI,GAAK,CAAG,KAAK,IAAM,KAAK;AAC7C;AAOO,SAAS,WAAW,GAAG;AAC7B,OAAK,KAAK,KAAK;AAAG,WAAO,MAAM,IAAI,IAAI,IAAI,IAAI;AAC/C,SAAO,QAAQ,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI;AAC1C;AAOO,SAAS,QAAQ,GAAG;AAC1B,SAAO,IAAI,IAAI,IAAI,IAAI;AACxB;AAOO,SAAS,SAAS,GAAG;AAC3B,SAAO,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI;AAC9B;AAOO,SAAS,UAAU,GAAG;AAC5B,SAAO,QAAQ,KAAK,IAAI,KAAK,KAAK,CAAC,IAAI;AACxC;AAOO,SAAS,OAAO,GAAG;AACzB,QAAM,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,GAAG;AACpC,MAAI,KAAK,IAAI,CAAC,IAAI;AAAO,WAAO;AAAA;AAC3B,WAAO,IAAI;AACjB;AAOO,SAAS,QAAQ,GAAG;AAC1B,SAAO,KAAK,IAAK,IAAI,KAAK,KAAM,CAAC;AAClC;", - "names": [] -} diff --git a/node_modules/.vite/deps/chunk-36XSJPWN.js b/node_modules/.vite/deps/chunk-MF7YG25T.js similarity index 97% rename from node_modules/.vite/deps/chunk-36XSJPWN.js rename to node_modules/.vite/deps/chunk-MF7YG25T.js index 9e328bcfa..d1345e29a 100644 --- a/node_modules/.vite/deps/chunk-36XSJPWN.js +++ b/node_modules/.vite/deps/chunk-MF7YG25T.js @@ -4,7 +4,7 @@ import { run_all, safe_not_equal, subscribe -} from "./chunk-POMM4CDA.js"; +} from "./chunk-WODVJWZD.js"; // node_modules/svelte/src/runtime/store/index.js var subscriber_queue = []; @@ -114,4 +114,4 @@ export { derived, readonly }; -//# sourceMappingURL=chunk-36XSJPWN.js.map +//# sourceMappingURL=chunk-MF7YG25T.js.map diff --git a/node_modules/.vite/deps/chunk-MF7YG25T.js.map b/node_modules/.vite/deps/chunk-MF7YG25T.js.map new file mode 100644 index 000000000..ee8e3e04f --- /dev/null +++ b/node_modules/.vite/deps/chunk-MF7YG25T.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../svelte/src/runtime/store/index.js"], + "sourcesContent": ["import {\n\trun_all,\n\tsubscribe,\n\tnoop,\n\tsafe_not_equal,\n\tis_function,\n\tget_store_value\n} from '../internal/index.js';\n\nconst subscriber_queue = [];\n\n/**\n * Creates a `Readable` store that allows reading by subscription.\n *\n * https://svelte.dev/docs/svelte-store#readable\n * @template T\n * @param {T} [value] initial value\n * @param {import('./public.js').StartStopNotifier} [start]\n * @returns {import('./public.js').Readable}\n */\nexport function readable(value, start) {\n\treturn {\n\t\tsubscribe: writable(value, start).subscribe\n\t};\n}\n\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n *\n * https://svelte.dev/docs/svelte-store#writable\n * @template T\n * @param {T} [value] initial value\n * @param {import('./public.js').StartStopNotifier} [start]\n * @returns {import('./public.js').Writable}\n */\nexport function writable(value, start = noop) {\n\t/** @type {import('./public.js').Unsubscriber} */\n\tlet stop;\n\t/** @type {Set>} */\n\tconst subscribers = new Set();\n\t/** @param {T} new_value\n\t * @returns {void}\n\t */\n\tfunction set(new_value) {\n\t\tif (safe_not_equal(value, new_value)) {\n\t\t\tvalue = new_value;\n\t\t\tif (stop) {\n\t\t\t\t// store is ready\n\t\t\t\tconst run_queue = !subscriber_queue.length;\n\t\t\t\tfor (const subscriber of subscribers) {\n\t\t\t\t\tsubscriber[1]();\n\t\t\t\t\tsubscriber_queue.push(subscriber, value);\n\t\t\t\t}\n\t\t\t\tif (run_queue) {\n\t\t\t\t\tfor (let i = 0; i < subscriber_queue.length; i += 2) {\n\t\t\t\t\t\tsubscriber_queue[i][0](subscriber_queue[i + 1]);\n\t\t\t\t\t}\n\t\t\t\t\tsubscriber_queue.length = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @param {import('./public.js').Updater} fn\n\t * @returns {void}\n\t */\n\tfunction update(fn) {\n\t\tset(fn(value));\n\t}\n\n\t/**\n\t * @param {import('./public.js').Subscriber} run\n\t * @param {import('./private.js').Invalidator} [invalidate]\n\t * @returns {import('./public.js').Unsubscriber}\n\t */\n\tfunction subscribe(run, invalidate = noop) {\n\t\t/** @type {import('./private.js').SubscribeInvalidateTuple} */\n\t\tconst subscriber = [run, invalidate];\n\t\tsubscribers.add(subscriber);\n\t\tif (subscribers.size === 1) {\n\t\t\tstop = start(set, update) || noop;\n\t\t}\n\t\trun(value);\n\t\treturn () => {\n\t\t\tsubscribers.delete(subscriber);\n\t\t\tif (subscribers.size === 0 && stop) {\n\t\t\t\tstop();\n\t\t\t\tstop = null;\n\t\t\t}\n\t\t};\n\t}\n\treturn { set, update, subscribe };\n}\n\n/**\n * Derived value store by synchronizing one or more readable stores and\n * applying an aggregation function over its input values.\n *\n * https://svelte.dev/docs/svelte-store#derived\n * @template {import('./private.js').Stores} S\n * @template T\n * @overload\n * @param {S} stores - input stores\n * @param {(values: import('./private.js').StoresValues, set: (value: T) => void, update: (fn: import('./public.js').Updater) => void) => import('./public.js').Unsubscriber | void} fn - function callback that aggregates the values\n * @param {T} [initial_value] - initial value\n * @returns {import('./public.js').Readable}\n */\n\n/**\n * Derived value store by synchronizing one or more readable stores and\n * applying an aggregation function over its input values.\n *\n * https://svelte.dev/docs/svelte-store#derived\n * @template {import('./private.js').Stores} S\n * @template T\n * @overload\n * @param {S} stores - input stores\n * @param {(values: import('./private.js').StoresValues) => T} fn - function callback that aggregates the values\n * @param {T} [initial_value] - initial value\n * @returns {import('./public.js').Readable}\n */\n\n/**\n * @template {import('./private.js').Stores} S\n * @template T\n * @param {S} stores\n * @param {Function} fn\n * @param {T} [initial_value]\n * @returns {import('./public.js').Readable}\n */\nexport function derived(stores, fn, initial_value) {\n\tconst single = !Array.isArray(stores);\n\t/** @type {Array>} */\n\tconst stores_array = single ? [stores] : stores;\n\tif (!stores_array.every(Boolean)) {\n\t\tthrow new Error('derived() expects stores as input, got a falsy value');\n\t}\n\tconst auto = fn.length < 2;\n\treturn readable(initial_value, (set, update) => {\n\t\tlet started = false;\n\t\tconst values = [];\n\t\tlet pending = 0;\n\t\tlet cleanup = noop;\n\t\tconst sync = () => {\n\t\t\tif (pending) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tcleanup();\n\t\t\tconst result = fn(single ? values[0] : values, set, update);\n\t\t\tif (auto) {\n\t\t\t\tset(result);\n\t\t\t} else {\n\t\t\t\tcleanup = is_function(result) ? result : noop;\n\t\t\t}\n\t\t};\n\t\tconst unsubscribers = stores_array.map((store, i) =>\n\t\t\tsubscribe(\n\t\t\t\tstore,\n\t\t\t\t(value) => {\n\t\t\t\t\tvalues[i] = value;\n\t\t\t\t\tpending &= ~(1 << i);\n\t\t\t\t\tif (started) {\n\t\t\t\t\t\tsync();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t() => {\n\t\t\t\t\tpending |= 1 << i;\n\t\t\t\t}\n\t\t\t)\n\t\t);\n\t\tstarted = true;\n\t\tsync();\n\t\treturn function stop() {\n\t\t\trun_all(unsubscribers);\n\t\t\tcleanup();\n\t\t\t// We need to set this to false because callbacks can still happen despite having unsubscribed:\n\t\t\t// Callbacks might already be placed in the queue which doesn't know it should no longer\n\t\t\t// invoke this derived store.\n\t\t\tstarted = false;\n\t\t};\n\t});\n}\n\n/**\n * Takes a store and returns a new one derived from the old one that is readable.\n *\n * https://svelte.dev/docs/svelte-store#readonly\n * @template T\n * @param {import('./public.js').Readable} store - store to make readonly\n * @returns {import('./public.js').Readable}\n */\nexport function readonly(store) {\n\treturn {\n\t\tsubscribe: store.subscribe.bind(store)\n\t};\n}\n\nexport { get_store_value as get };\n"], + "mappings": ";;;;;;;;;AASA,IAAM,mBAAmB,CAAC;AAWnB,SAAS,SAAS,OAAO,OAAO;AACtC,SAAO;AAAA,IACN,WAAW,SAAS,OAAO,KAAK,EAAE;AAAA,EACnC;AACD;AAWO,SAAS,SAAS,OAAO,QAAQ,MAAM;AAE7C,MAAI;AAEJ,QAAM,cAAc,oBAAI,IAAI;AAI5B,WAAS,IAAI,WAAW;AACvB,QAAI,eAAe,OAAO,SAAS,GAAG;AACrC,cAAQ;AACR,UAAI,MAAM;AAET,cAAM,YAAY,CAAC,iBAAiB;AACpC,mBAAW,cAAc,aAAa;AACrC,qBAAW,CAAC,EAAE;AACd,2BAAiB,KAAK,YAAY,KAAK;AAAA,QACxC;AACA,YAAI,WAAW;AACd,mBAAS,IAAI,GAAG,IAAI,iBAAiB,QAAQ,KAAK,GAAG;AACpD,6BAAiB,CAAC,EAAE,CAAC,EAAE,iBAAiB,IAAI,CAAC,CAAC;AAAA,UAC/C;AACA,2BAAiB,SAAS;AAAA,QAC3B;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAMA,WAAS,OAAO,IAAI;AACnB,QAAI,GAAG,KAAK,CAAC;AAAA,EACd;AAOA,WAASA,WAAU,KAAK,aAAa,MAAM;AAE1C,UAAM,aAAa,CAAC,KAAK,UAAU;AACnC,gBAAY,IAAI,UAAU;AAC1B,QAAI,YAAY,SAAS,GAAG;AAC3B,aAAO,MAAM,KAAK,MAAM,KAAK;AAAA,IAC9B;AACA,QAAI,KAAK;AACT,WAAO,MAAM;AACZ,kBAAY,OAAO,UAAU;AAC7B,UAAI,YAAY,SAAS,KAAK,MAAM;AACnC,aAAK;AACL,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AACA,SAAO,EAAE,KAAK,QAAQ,WAAAA,WAAU;AACjC;AAsCO,SAAS,QAAQ,QAAQ,IAAI,eAAe;AAClD,QAAM,SAAS,CAAC,MAAM,QAAQ,MAAM;AAEpC,QAAM,eAAe,SAAS,CAAC,MAAM,IAAI;AACzC,MAAI,CAAC,aAAa,MAAM,OAAO,GAAG;AACjC,UAAM,IAAI,MAAM,sDAAsD;AAAA,EACvE;AACA,QAAM,OAAO,GAAG,SAAS;AACzB,SAAO,SAAS,eAAe,CAAC,KAAK,WAAW;AAC/C,QAAI,UAAU;AACd,UAAM,SAAS,CAAC;AAChB,QAAI,UAAU;AACd,QAAI,UAAU;AACd,UAAM,OAAO,MAAM;AAClB,UAAI,SAAS;AACZ;AAAA,MACD;AACA,cAAQ;AACR,YAAM,SAAS,GAAG,SAAS,OAAO,CAAC,IAAI,QAAQ,KAAK,MAAM;AAC1D,UAAI,MAAM;AACT,YAAI,MAAM;AAAA,MACX,OAAO;AACN,kBAAU,YAAY,MAAM,IAAI,SAAS;AAAA,MAC1C;AAAA,IACD;AACA,UAAM,gBAAgB,aAAa;AAAA,MAAI,CAAC,OAAO,MAC9C;AAAA,QACC;AAAA,QACA,CAAC,UAAU;AACV,iBAAO,CAAC,IAAI;AACZ,qBAAW,EAAE,KAAK;AAClB,cAAI,SAAS;AACZ,iBAAK;AAAA,UACN;AAAA,QACD;AAAA,QACA,MAAM;AACL,qBAAW,KAAK;AAAA,QACjB;AAAA,MACD;AAAA,IACD;AACA,cAAU;AACV,SAAK;AACL,WAAO,SAAS,OAAO;AACtB,cAAQ,aAAa;AACrB,cAAQ;AAIR,gBAAU;AAAA,IACX;AAAA,EACD,CAAC;AACF;AAUO,SAAS,SAAS,OAAO;AAC/B,SAAO;AAAA,IACN,WAAW,MAAM,UAAU,KAAK,KAAK;AAAA,EACtC;AACD;", + "names": ["subscribe"] +} diff --git a/node_modules/.vite/deps/chunk-POMM4CDA.js.map b/node_modules/.vite/deps/chunk-POMM4CDA.js.map deleted file mode 100644 index 0d9fd407d..000000000 --- a/node_modules/.vite/deps/chunk-POMM4CDA.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../svelte/src/runtime/internal/utils.js", "../../svelte/src/runtime/internal/environment.js", "../../svelte/src/runtime/internal/loop.js", "../../svelte/src/runtime/internal/globals.js", "../../svelte/src/runtime/internal/ResizeObserverSingleton.js", "../../svelte/src/runtime/internal/dom.js", "../../svelte/src/runtime/internal/style_manager.js", "../../svelte/src/runtime/internal/animations.js", "../../svelte/src/runtime/internal/lifecycle.js", "../../svelte/src/runtime/internal/scheduler.js", "../../svelte/src/runtime/internal/transitions.js", "../../svelte/src/runtime/internal/await_block.js", "../../svelte/src/runtime/internal/each.js", "../../svelte/src/runtime/internal/spread.js", "../../svelte/src/shared/boolean_attributes.js", "../../svelte/src/shared/utils/names.js", "../../svelte/src/runtime/internal/ssr.js", "../../svelte/src/runtime/internal/Component.js", "../../svelte/src/runtime/internal/dev.js"], - "sourcesContent": ["/** @returns {void} */\r\nexport function noop() {}\r\n\r\nexport const identity = (x) => x;\r\n\r\n/**\r\n * @template T\r\n * @template S\r\n * @param {T} tar\r\n * @param {S} src\r\n * @returns {T & S}\r\n */\r\nexport function assign(tar, src) {\r\n\t// @ts-ignore\r\n\tfor (const k in src) tar[k] = src[k];\r\n\treturn /** @type {T & S} */ (tar);\r\n}\r\n\r\n// Adapted from https://github.com/then/is-promise/blob/master/index.js\r\n// Distributed under MIT License https://github.com/then/is-promise/blob/master/LICENSE\r\n/**\r\n * @param {any} value\r\n * @returns {value is PromiseLike}\r\n */\r\nexport function is_promise(value) {\r\n\treturn (\r\n\t\t!!value &&\r\n\t\t(typeof value === 'object' || typeof value === 'function') &&\r\n\t\ttypeof (/** @type {any} */ (value).then) === 'function'\r\n\t);\r\n}\r\n\r\n/** @returns {void} */\r\nexport function add_location(element, file, line, column, char) {\r\n\telement.__svelte_meta = {\r\n\t\tloc: { file, line, column, char }\r\n\t};\r\n}\r\n\r\nexport function run(fn) {\r\n\treturn fn();\r\n}\r\n\r\nexport function blank_object() {\r\n\treturn Object.create(null);\r\n}\r\n\r\n/**\r\n * @param {Function[]} fns\r\n * @returns {void}\r\n */\r\nexport function run_all(fns) {\r\n\tfns.forEach(run);\r\n}\r\n\r\n/**\r\n * @param {any} thing\r\n * @returns {thing is Function}\r\n */\r\nexport function is_function(thing) {\r\n\treturn typeof thing === 'function';\r\n}\r\n\r\n/** @returns {boolean} */\r\nexport function safe_not_equal(a, b) {\r\n\treturn a != a ? b == b : a !== b || (a && typeof a === 'object') || typeof a === 'function';\r\n}\r\n\r\nlet src_url_equal_anchor;\r\n\r\n/**\r\n * @param {string} element_src\r\n * @param {string} url\r\n * @returns {boolean}\r\n */\r\nexport function src_url_equal(element_src, url) {\r\n\tif (element_src === url) return true;\r\n\tif (!src_url_equal_anchor) {\r\n\t\tsrc_url_equal_anchor = document.createElement('a');\r\n\t}\r\n\t// This is actually faster than doing URL(..).href\r\n\tsrc_url_equal_anchor.href = url;\r\n\treturn element_src === src_url_equal_anchor.href;\r\n}\r\n\r\n/** @param {string} srcset */\r\nfunction split_srcset(srcset) {\r\n\treturn srcset.split(',').map((src) => src.trim().split(' ').filter(Boolean));\r\n}\r\n\r\n/**\r\n * @param {HTMLSourceElement | HTMLImageElement} element_srcset\r\n * @param {string | undefined | null} srcset\r\n * @returns {boolean}\r\n */\r\nexport function srcset_url_equal(element_srcset, srcset) {\r\n\tconst element_urls = split_srcset(element_srcset.srcset);\r\n\tconst urls = split_srcset(srcset || '');\r\n\r\n\treturn (\r\n\t\turls.length === element_urls.length &&\r\n\t\turls.every(\r\n\t\t\t([url, width], i) =>\r\n\t\t\t\twidth === element_urls[i][1] &&\r\n\t\t\t\t// We need to test both ways because Vite will create an a full URL with\r\n\t\t\t\t// `new URL(asset, import.meta.url).href` for the client when `base: './'`, and the\r\n\t\t\t\t// relative URLs inside srcset are not automatically resolved to absolute URLs by\r\n\t\t\t\t// browsers (in contrast to img.src). This means both SSR and DOM code could\r\n\t\t\t\t// contain relative or absolute URLs.\r\n\t\t\t\t(src_url_equal(element_urls[i][0], url) || src_url_equal(url, element_urls[i][0]))\r\n\t\t)\r\n\t);\r\n}\r\n\r\n/** @returns {boolean} */\r\nexport function not_equal(a, b) {\r\n\treturn a != a ? b == b : a !== b;\r\n}\r\n\r\n/** @returns {boolean} */\r\nexport function is_empty(obj) {\r\n\treturn Object.keys(obj).length === 0;\r\n}\r\n\r\n/** @returns {void} */\r\nexport function validate_store(store, name) {\r\n\tif (store != null && typeof store.subscribe !== 'function') {\r\n\t\tthrow new Error(`'${name}' is not a store with a 'subscribe' method`);\r\n\t}\r\n}\r\n\r\nexport function subscribe(store, ...callbacks) {\r\n\tif (store == null) {\r\n\t\tfor (const callback of callbacks) {\r\n\t\t\tcallback(undefined);\r\n\t\t}\r\n\t\treturn noop;\r\n\t}\r\n\tconst unsub = store.subscribe(...callbacks);\r\n\treturn unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\r\n}\r\n\r\n/**\r\n * Get the current value from a store by subscribing and immediately unsubscribing.\r\n *\r\n * https://svelte.dev/docs/svelte-store#get\r\n * @template T\r\n * @param {import('../store/public.js').Readable} store\r\n * @returns {T}\r\n */\r\nexport function get_store_value(store) {\r\n\tlet value;\r\n\tsubscribe(store, (_) => (value = _))();\r\n\treturn value;\r\n}\r\n\r\n/** @returns {void} */\r\nexport function component_subscribe(component, store, callback) {\r\n\tcomponent.$$.on_destroy.push(subscribe(store, callback));\r\n}\r\n\r\nexport function create_slot(definition, ctx, $$scope, fn) {\r\n\tif (definition) {\r\n\t\tconst slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\r\n\t\treturn definition[0](slot_ctx);\r\n\t}\r\n}\r\n\r\nfunction get_slot_context(definition, ctx, $$scope, fn) {\r\n\treturn definition[1] && fn ? assign($$scope.ctx.slice(), definition[1](fn(ctx))) : $$scope.ctx;\r\n}\r\n\r\nexport function get_slot_changes(definition, $$scope, dirty, fn) {\r\n\tif (definition[2] && fn) {\r\n\t\tconst lets = definition[2](fn(dirty));\r\n\t\tif ($$scope.dirty === undefined) {\r\n\t\t\treturn lets;\r\n\t\t}\r\n\t\tif (typeof lets === 'object') {\r\n\t\t\tconst merged = [];\r\n\t\t\tconst len = Math.max($$scope.dirty.length, lets.length);\r\n\t\t\tfor (let i = 0; i < len; i += 1) {\r\n\t\t\t\tmerged[i] = $$scope.dirty[i] | lets[i];\r\n\t\t\t}\r\n\t\t\treturn merged;\r\n\t\t}\r\n\t\treturn $$scope.dirty | lets;\r\n\t}\r\n\treturn $$scope.dirty;\r\n}\r\n\r\n/** @returns {void} */\r\nexport function update_slot_base(\r\n\tslot,\r\n\tslot_definition,\r\n\tctx,\r\n\t$$scope,\r\n\tslot_changes,\r\n\tget_slot_context_fn\r\n) {\r\n\tif (slot_changes) {\r\n\t\tconst slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);\r\n\t\tslot.p(slot_context, slot_changes);\r\n\t}\r\n}\r\n\r\n/** @returns {void} */\r\nexport function update_slot(\r\n\tslot,\r\n\tslot_definition,\r\n\tctx,\r\n\t$$scope,\r\n\tdirty,\r\n\tget_slot_changes_fn,\r\n\tget_slot_context_fn\r\n) {\r\n\tconst slot_changes = get_slot_changes(slot_definition, $$scope, dirty, get_slot_changes_fn);\r\n\tupdate_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn);\r\n}\r\n\r\n/** @returns {any[] | -1} */\r\nexport function get_all_dirty_from_scope($$scope) {\r\n\tif ($$scope.ctx.length > 32) {\r\n\t\tconst dirty = [];\r\n\t\tconst length = $$scope.ctx.length / 32;\r\n\t\tfor (let i = 0; i < length; i++) {\r\n\t\t\tdirty[i] = -1;\r\n\t\t}\r\n\t\treturn dirty;\r\n\t}\r\n\treturn -1;\r\n}\r\n\r\n/** @returns {{}} */\r\nexport function exclude_internal_props(props) {\r\n\tconst result = {};\r\n\tfor (const k in props) if (k[0] !== '$') result[k] = props[k];\r\n\treturn result;\r\n}\r\n\r\n/** @returns {{}} */\r\nexport function compute_rest_props(props, keys) {\r\n\tconst rest = {};\r\n\tkeys = new Set(keys);\r\n\tfor (const k in props) if (!keys.has(k) && k[0] !== '$') rest[k] = props[k];\r\n\treturn rest;\r\n}\r\n\r\n/** @returns {{}} */\r\nexport function compute_slots(slots) {\r\n\tconst result = {};\r\n\tfor (const key in slots) {\r\n\t\tresult[key] = true;\r\n\t}\r\n\treturn result;\r\n}\r\n\r\n/** @returns {(this: any, ...args: any[]) => void} */\r\nexport function once(fn) {\r\n\tlet ran = false;\r\n\treturn function (...args) {\r\n\t\tif (ran) return;\r\n\t\tran = true;\r\n\t\tfn.call(this, ...args);\r\n\t};\r\n}\r\n\r\nexport function null_to_empty(value) {\r\n\treturn value == null ? '' : value;\r\n}\r\n\r\nexport function set_store_value(store, ret, value) {\r\n\tstore.set(value);\r\n\treturn ret;\r\n}\r\n\r\nexport const has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\r\n\r\nexport function action_destroyer(action_result) {\r\n\treturn action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\r\n}\r\n\r\n/** @param {number | string} value\r\n * @returns {[number, string]}\r\n */\r\nexport function split_css_unit(value) {\r\n\tconst split = typeof value === 'string' && value.match(/^\\s*(-?[\\d.]+)([^\\s]*)\\s*$/);\r\n\treturn split ? [parseFloat(split[1]), split[2] || 'px'] : [/** @type {number} */ (value), 'px'];\r\n}\r\n\r\nexport const contenteditable_truthy_values = ['', true, 1, 'true', 'contenteditable'];\r\n", "import { noop } from './utils.js';\r\n\r\nexport const is_client = typeof window !== 'undefined';\r\n\r\n/** @type {() => number} */\r\nexport let now = is_client ? () => window.performance.now() : () => Date.now();\r\n\r\nexport let raf = is_client ? (cb) => requestAnimationFrame(cb) : noop;\r\n\r\n// used internally for testing\r\n/** @returns {void} */\r\nexport function set_now(fn) {\r\n\tnow = fn;\r\n}\r\n\r\n/** @returns {void} */\r\nexport function set_raf(fn) {\r\n\traf = fn;\r\n}\r\n", "import { raf } from './environment.js';\r\n\r\nconst tasks = new Set();\r\n\r\n/**\r\n * @param {number} now\r\n * @returns {void}\r\n */\r\nfunction run_tasks(now) {\r\n\ttasks.forEach((task) => {\r\n\t\tif (!task.c(now)) {\r\n\t\t\ttasks.delete(task);\r\n\t\t\ttask.f();\r\n\t\t}\r\n\t});\r\n\tif (tasks.size !== 0) raf(run_tasks);\r\n}\r\n\r\n/**\r\n * For testing purposes only!\r\n * @returns {void}\r\n */\r\nexport function clear_loops() {\r\n\ttasks.clear();\r\n}\r\n\r\n/**\r\n * Creates a new task that runs on each raf frame\r\n * until it returns a falsy value or is aborted\r\n * @param {import('./private.js').TaskCallback} callback\r\n * @returns {import('./private.js').Task}\r\n */\r\nexport function loop(callback) {\r\n\t/** @type {import('./private.js').TaskEntry} */\r\n\tlet task;\r\n\tif (tasks.size === 0) raf(run_tasks);\r\n\treturn {\r\n\t\tpromise: new Promise((fulfill) => {\r\n\t\t\ttasks.add((task = { c: callback, f: fulfill }));\r\n\t\t}),\r\n\t\tabort() {\r\n\t\t\ttasks.delete(task);\r\n\t\t}\r\n\t};\r\n}\r\n", "/** @type {typeof globalThis} */\r\nexport const globals =\r\n\ttypeof window !== 'undefined'\r\n\t\t? window\r\n\t\t: typeof globalThis !== 'undefined'\r\n\t\t? globalThis\r\n\t\t: // @ts-ignore Node typings have this\r\n\t\t global;\r\n", "import { globals } from './globals.js';\r\n\r\n/**\r\n * Resize observer singleton.\r\n * One listener per element only!\r\n * https://groups.google.com/a/chromium.org/g/blink-dev/c/z6ienONUb5A/m/F5-VcUZtBAAJ\r\n */\r\nexport class ResizeObserverSingleton {\r\n\t/**\r\n\t * @private\r\n\t * @readonly\r\n\t * @type {WeakMap}\r\n\t */\r\n\t_listeners = 'WeakMap' in globals ? new WeakMap() : undefined;\r\n\r\n\t/**\r\n\t * @private\r\n\t * @type {ResizeObserver}\r\n\t */\r\n\t_observer = undefined;\r\n\r\n\t/** @type {ResizeObserverOptions} */\r\n\toptions;\r\n\r\n\t/** @param {ResizeObserverOptions} options */\r\n\tconstructor(options) {\r\n\t\tthis.options = options;\r\n\t}\r\n\r\n\t/**\r\n\t * @param {Element} element\r\n\t * @param {import('./private.js').Listener} listener\r\n\t * @returns {() => void}\r\n\t */\r\n\tobserve(element, listener) {\r\n\t\tthis._listeners.set(element, listener);\r\n\t\tthis._getObserver().observe(element, this.options);\r\n\t\treturn () => {\r\n\t\t\tthis._listeners.delete(element);\r\n\t\t\tthis._observer.unobserve(element); // this line can probably be removed\r\n\t\t};\r\n\t}\r\n\r\n\t/**\r\n\t * @private\r\n\t */\r\n\t_getObserver() {\r\n\t\treturn (\r\n\t\t\tthis._observer ??\r\n\t\t\t(this._observer = new ResizeObserver((entries) => {\r\n\t\t\t\tfor (const entry of entries) {\r\n\t\t\t\t\tResizeObserverSingleton.entries.set(entry.target, entry);\r\n\t\t\t\t\tthis._listeners.get(entry.target)?.(entry);\r\n\t\t\t\t}\r\n\t\t\t}))\r\n\t\t);\r\n\t}\r\n}\r\n\r\n// Needs to be written like this to pass the tree-shake-test\r\nResizeObserverSingleton.entries = 'WeakMap' in globals ? new WeakMap() : undefined;\r\n", "import { contenteditable_truthy_values, has_prop } from './utils.js';\r\n\r\nimport { ResizeObserverSingleton } from './ResizeObserverSingleton.js';\r\n\r\n// Track which nodes are claimed during hydration. Unclaimed nodes can then be removed from the DOM\r\n// at the end of hydration without touching the remaining nodes.\r\nlet is_hydrating = false;\r\n\r\n/**\r\n * @returns {void}\r\n */\r\nexport function start_hydrating() {\r\n\tis_hydrating = true;\r\n}\r\n\r\n/**\r\n * @returns {void}\r\n */\r\nexport function end_hydrating() {\r\n\tis_hydrating = false;\r\n}\r\n\r\n/**\r\n * @param {number} low\r\n * @param {number} high\r\n * @param {(index: number) => number} key\r\n * @param {number} value\r\n * @returns {number}\r\n */\r\nfunction upper_bound(low, high, key, value) {\r\n\t// Return first index of value larger than input value in the range [low, high)\r\n\twhile (low < high) {\r\n\t\tconst mid = low + ((high - low) >> 1);\r\n\t\tif (key(mid) <= value) {\r\n\t\t\tlow = mid + 1;\r\n\t\t} else {\r\n\t\t\thigh = mid;\r\n\t\t}\r\n\t}\r\n\treturn low;\r\n}\r\n\r\n/**\r\n * @param {NodeEx} target\r\n * @returns {void}\r\n */\r\nfunction init_hydrate(target) {\r\n\tif (target.hydrate_init) return;\r\n\ttarget.hydrate_init = true;\r\n\t// We know that all children have claim_order values since the unclaimed have been detached if target is not \r\n\r\n\tlet children = /** @type {ArrayLike} */ (target.childNodes);\r\n\t// If target is , there may be children without claim_order\r\n\tif (target.nodeName === 'HEAD') {\r\n\t\tconst my_children = [];\r\n\t\tfor (let i = 0; i < children.length; i++) {\r\n\t\t\tconst node = children[i];\r\n\t\t\tif (node.claim_order !== undefined) {\r\n\t\t\t\tmy_children.push(node);\r\n\t\t\t}\r\n\t\t}\r\n\t\tchildren = my_children;\r\n\t}\r\n\t/*\r\n\t * Reorder claimed children optimally.\r\n\t * We can reorder claimed children optimally by finding the longest subsequence of\r\n\t * nodes that are already claimed in order and only moving the rest. The longest\r\n\t * subsequence of nodes that are claimed in order can be found by\r\n\t * computing the longest increasing subsequence of .claim_order values.\r\n\t *\r\n\t * This algorithm is optimal in generating the least amount of reorder operations\r\n\t * possible.\r\n\t *\r\n\t * Proof:\r\n\t * We know that, given a set of reordering operations, the nodes that do not move\r\n\t * always form an increasing subsequence, since they do not move among each other\r\n\t * meaning that they must be already ordered among each other. Thus, the maximal\r\n\t * set of nodes that do not move form a longest increasing subsequence.\r\n\t */\r\n\t// Compute longest increasing subsequence\r\n\t// m: subsequence length j => index k of smallest value that ends an increasing subsequence of length j\r\n\tconst m = new Int32Array(children.length + 1);\r\n\t// Predecessor indices + 1\r\n\tconst p = new Int32Array(children.length);\r\n\tm[0] = -1;\r\n\tlet longest = 0;\r\n\tfor (let i = 0; i < children.length; i++) {\r\n\t\tconst current = children[i].claim_order;\r\n\t\t// Find the largest subsequence length such that it ends in a value less than our current value\r\n\t\t// upper_bound returns first greater value, so we subtract one\r\n\t\t// with fast path for when we are on the current longest subsequence\r\n\t\tconst seq_len =\r\n\t\t\t(longest > 0 && children[m[longest]].claim_order <= current\r\n\t\t\t\t? longest + 1\r\n\t\t\t\t: upper_bound(1, longest, (idx) => children[m[idx]].claim_order, current)) - 1;\r\n\t\tp[i] = m[seq_len] + 1;\r\n\t\tconst new_len = seq_len + 1;\r\n\t\t// We can guarantee that current is the smallest value. Otherwise, we would have generated a longer sequence.\r\n\t\tm[new_len] = i;\r\n\t\tlongest = Math.max(new_len, longest);\r\n\t}\r\n\t// The longest increasing subsequence of nodes (initially reversed)\r\n\r\n\t/**\r\n\t * @type {NodeEx2[]}\r\n\t */\r\n\tconst lis = [];\r\n\t// The rest of the nodes, nodes that will be moved\r\n\r\n\t/**\r\n\t * @type {NodeEx2[]}\r\n\t */\r\n\tconst to_move = [];\r\n\tlet last = children.length - 1;\r\n\tfor (let cur = m[longest] + 1; cur != 0; cur = p[cur - 1]) {\r\n\t\tlis.push(children[cur - 1]);\r\n\t\tfor (; last >= cur; last--) {\r\n\t\t\tto_move.push(children[last]);\r\n\t\t}\r\n\t\tlast--;\r\n\t}\r\n\tfor (; last >= 0; last--) {\r\n\t\tto_move.push(children[last]);\r\n\t}\r\n\tlis.reverse();\r\n\t// We sort the nodes being moved to guarantee that their insertion order matches the claim order\r\n\tto_move.sort((a, b) => a.claim_order - b.claim_order);\r\n\t// Finally, we move the nodes\r\n\tfor (let i = 0, j = 0; i < to_move.length; i++) {\r\n\t\twhile (j < lis.length && to_move[i].claim_order >= lis[j].claim_order) {\r\n\t\t\tj++;\r\n\t\t}\r\n\t\tconst anchor = j < lis.length ? lis[j] : null;\r\n\t\ttarget.insertBefore(to_move[i], anchor);\r\n\t}\r\n}\r\n\r\n/**\r\n * @param {Node} target\r\n * @param {Node} node\r\n * @returns {void}\r\n */\r\nexport function append(target, node) {\r\n\ttarget.appendChild(node);\r\n}\r\n\r\n/**\r\n * @param {Node} target\r\n * @param {string} style_sheet_id\r\n * @param {string} styles\r\n * @returns {void}\r\n */\r\nexport function append_styles(target, style_sheet_id, styles) {\r\n\tconst append_styles_to = get_root_for_style(target);\r\n\tif (!append_styles_to.getElementById(style_sheet_id)) {\r\n\t\tconst style = element('style');\r\n\t\tstyle.id = style_sheet_id;\r\n\t\tstyle.textContent = styles;\r\n\t\tappend_stylesheet(append_styles_to, style);\r\n\t}\r\n}\r\n\r\n/**\r\n * @param {Node} node\r\n * @returns {ShadowRoot | Document}\r\n */\r\nexport function get_root_for_style(node) {\r\n\tif (!node) return document;\r\n\tconst root = node.getRootNode ? node.getRootNode() : node.ownerDocument;\r\n\tif (root && /** @type {ShadowRoot} */ (root).host) {\r\n\t\treturn /** @type {ShadowRoot} */ (root);\r\n\t}\r\n\treturn node.ownerDocument;\r\n}\r\n\r\n/**\r\n * @param {Node} node\r\n * @returns {CSSStyleSheet}\r\n */\r\nexport function append_empty_stylesheet(node) {\r\n\tconst style_element = element('style');\r\n\t// For transitions to work without 'style-src: unsafe-inline' Content Security Policy,\r\n\t// these empty tags need to be allowed with a hash as a workaround until we move to the Web Animations API.\r\n\t// Using the hash for the empty string (for an empty tag) works in all browsers except Safari.\r\n\t// So as a workaround for the workaround, when we append empty style tags we set their content to /* empty */.\r\n\t// The hash 'sha256-9OlNO0DNEeaVzHL4RZwCLsBHA8WBQ8toBp/4F5XV2nc=' will then work even in Safari.\r\n\tstyle_element.textContent = '/* empty */';\r\n\tappend_stylesheet(get_root_for_style(node), style_element);\r\n\treturn style_element.sheet;\r\n}\r\n\r\n/**\r\n * @param {ShadowRoot | Document} node\r\n * @param {HTMLStyleElement} style\r\n * @returns {CSSStyleSheet}\r\n */\r\nfunction append_stylesheet(node, style) {\r\n\tappend(/** @type {Document} */ (node).head || node, style);\r\n\treturn style.sheet;\r\n}\r\n\r\n/**\r\n * @param {NodeEx} target\r\n * @param {NodeEx} node\r\n * @returns {void}\r\n */\r\nexport function append_hydration(target, node) {\r\n\tif (is_hydrating) {\r\n\t\tinit_hydrate(target);\r\n\t\tif (\r\n\t\t\ttarget.actual_end_child === undefined ||\r\n\t\t\t(target.actual_end_child !== null && target.actual_end_child.parentNode !== target)\r\n\t\t) {\r\n\t\t\ttarget.actual_end_child = target.firstChild;\r\n\t\t}\r\n\t\t// Skip nodes of undefined ordering\r\n\t\twhile (target.actual_end_child !== null && target.actual_end_child.claim_order === undefined) {\r\n\t\t\ttarget.actual_end_child = target.actual_end_child.nextSibling;\r\n\t\t}\r\n\t\tif (node !== target.actual_end_child) {\r\n\t\t\t// We only insert if the ordering of this node should be modified or the parent node is not target\r\n\t\t\tif (node.claim_order !== undefined || node.parentNode !== target) {\r\n\t\t\t\ttarget.insertBefore(node, target.actual_end_child);\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\ttarget.actual_end_child = node.nextSibling;\r\n\t\t}\r\n\t} else if (node.parentNode !== target || node.nextSibling !== null) {\r\n\t\ttarget.appendChild(node);\r\n\t}\r\n}\r\n\r\n/**\r\n * @param {Node} target\r\n * @param {Node} node\r\n * @param {Node} [anchor]\r\n * @returns {void}\r\n */\r\nexport function insert(target, node, anchor) {\r\n\ttarget.insertBefore(node, anchor || null);\r\n}\r\n\r\n/**\r\n * @param {NodeEx} target\r\n * @param {NodeEx} node\r\n * @param {NodeEx} [anchor]\r\n * @returns {void}\r\n */\r\nexport function insert_hydration(target, node, anchor) {\r\n\tif (is_hydrating && !anchor) {\r\n\t\tappend_hydration(target, node);\r\n\t} else if (node.parentNode !== target || node.nextSibling != anchor) {\r\n\t\ttarget.insertBefore(node, anchor || null);\r\n\t}\r\n}\r\n\r\n/**\r\n * @param {Node} node\r\n * @returns {void}\r\n */\r\nexport function detach(node) {\r\n\tif (node.parentNode) {\r\n\t\tnode.parentNode.removeChild(node);\r\n\t}\r\n}\r\n\r\n/**\r\n * @returns {void} */\r\nexport function destroy_each(iterations, detaching) {\r\n\tfor (let i = 0; i < iterations.length; i += 1) {\r\n\t\tif (iterations[i]) iterations[i].d(detaching);\r\n\t}\r\n}\r\n\r\n/**\r\n * @template {keyof HTMLElementTagNameMap} K\r\n * @param {K} name\r\n * @returns {HTMLElementTagNameMap[K]}\r\n */\r\nexport function element(name) {\r\n\treturn document.createElement(name);\r\n}\r\n\r\n/**\r\n * @template {keyof HTMLElementTagNameMap} K\r\n * @param {K} name\r\n * @param {string} is\r\n * @returns {HTMLElementTagNameMap[K]}\r\n */\r\nexport function element_is(name, is) {\r\n\treturn document.createElement(name, { is });\r\n}\r\n\r\n/**\r\n * @template T\r\n * @template {keyof T} K\r\n * @param {T} obj\r\n * @param {K[]} exclude\r\n * @returns {Pick>}\r\n */\r\nexport function object_without_properties(obj, exclude) {\r\n\tconst target = /** @type {Pick>} */ ({});\r\n\tfor (const k in obj) {\r\n\t\tif (\r\n\t\t\thas_prop(obj, k) &&\r\n\t\t\t// @ts-ignore\r\n\t\t\texclude.indexOf(k) === -1\r\n\t\t) {\r\n\t\t\t// @ts-ignore\r\n\t\t\ttarget[k] = obj[k];\r\n\t\t}\r\n\t}\r\n\treturn target;\r\n}\r\n\r\n/**\r\n * @template {keyof SVGElementTagNameMap} K\r\n * @param {K} name\r\n * @returns {SVGElement}\r\n */\r\nexport function svg_element(name) {\r\n\treturn document.createElementNS('http://www.w3.org/2000/svg', name);\r\n}\r\n\r\n/**\r\n * @param {string} data\r\n * @returns {Text}\r\n */\r\nexport function text(data) {\r\n\treturn document.createTextNode(data);\r\n}\r\n\r\n/**\r\n * @returns {Text} */\r\nexport function space() {\r\n\treturn text(' ');\r\n}\r\n\r\n/**\r\n * @returns {Text} */\r\nexport function empty() {\r\n\treturn text('');\r\n}\r\n\r\n/**\r\n * @param {string} content\r\n * @returns {Comment}\r\n */\r\nexport function comment(content) {\r\n\treturn document.createComment(content);\r\n}\r\n\r\n/**\r\n * @param {EventTarget} node\r\n * @param {string} event\r\n * @param {EventListenerOrEventListenerObject} handler\r\n * @param {boolean | AddEventListenerOptions | EventListenerOptions} [options]\r\n * @returns {() => void}\r\n */\r\nexport function listen(node, event, handler, options) {\r\n\tnode.addEventListener(event, handler, options);\r\n\treturn () => node.removeEventListener(event, handler, options);\r\n}\r\n\r\n/**\r\n * @returns {(event: any) => any} */\r\nexport function prevent_default(fn) {\r\n\treturn function (event) {\r\n\t\tevent.preventDefault();\r\n\t\t// @ts-ignore\r\n\t\treturn fn.call(this, event);\r\n\t};\r\n}\r\n\r\n/**\r\n * @returns {(event: any) => any} */\r\nexport function stop_propagation(fn) {\r\n\treturn function (event) {\r\n\t\tevent.stopPropagation();\r\n\t\t// @ts-ignore\r\n\t\treturn fn.call(this, event);\r\n\t};\r\n}\r\n\r\n/**\r\n * @returns {(event: any) => any} */\r\nexport function stop_immediate_propagation(fn) {\r\n\treturn function (event) {\r\n\t\tevent.stopImmediatePropagation();\r\n\t\t// @ts-ignore\r\n\t\treturn fn.call(this, event);\r\n\t};\r\n}\r\n\r\n/**\r\n * @returns {(event: any) => void} */\r\nexport function self(fn) {\r\n\treturn function (event) {\r\n\t\t// @ts-ignore\r\n\t\tif (event.target === this) fn.call(this, event);\r\n\t};\r\n}\r\n\r\n/**\r\n * @returns {(event: any) => void} */\r\nexport function trusted(fn) {\r\n\treturn function (event) {\r\n\t\t// @ts-ignore\r\n\t\tif (event.isTrusted) fn.call(this, event);\r\n\t};\r\n}\r\n\r\n/**\r\n * @param {Element} node\r\n * @param {string} attribute\r\n * @param {string} [value]\r\n * @returns {void}\r\n */\r\nexport function attr(node, attribute, value) {\r\n\tif (value == null) node.removeAttribute(attribute);\r\n\telse if (node.getAttribute(attribute) !== value) node.setAttribute(attribute, value);\r\n}\r\n/**\r\n * List of attributes that should always be set through the attr method,\r\n * because updating them through the property setter doesn't work reliably.\r\n * In the example of `width`/`height`, the problem is that the setter only\r\n * accepts numeric values, but the attribute can also be set to a string like `50%`.\r\n * If this list becomes too big, rethink this approach.\r\n */\r\nconst always_set_through_set_attribute = ['width', 'height'];\r\n\r\n/**\r\n * @param {Element & ElementCSSInlineStyle} node\r\n * @param {{ [x: string]: string }} attributes\r\n * @returns {void}\r\n */\r\nexport function set_attributes(node, attributes) {\r\n\t// @ts-ignore\r\n\tconst descriptors = Object.getOwnPropertyDescriptors(node.__proto__);\r\n\tfor (const key in attributes) {\r\n\t\tif (attributes[key] == null) {\r\n\t\t\tnode.removeAttribute(key);\r\n\t\t} else if (key === 'style') {\r\n\t\t\tnode.style.cssText = attributes[key];\r\n\t\t} else if (key === '__value') {\r\n\t\t\t/** @type {any} */ (node).value = node[key] = attributes[key];\r\n\t\t} else if (\r\n\t\t\tdescriptors[key] &&\r\n\t\t\tdescriptors[key].set &&\r\n\t\t\talways_set_through_set_attribute.indexOf(key) === -1\r\n\t\t) {\r\n\t\t\tnode[key] = attributes[key];\r\n\t\t} else {\r\n\t\t\tattr(node, key, attributes[key]);\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/**\r\n * @param {Element & ElementCSSInlineStyle} node\r\n * @param {{ [x: string]: string }} attributes\r\n * @returns {void}\r\n */\r\nexport function set_svg_attributes(node, attributes) {\r\n\tfor (const key in attributes) {\r\n\t\tattr(node, key, attributes[key]);\r\n\t}\r\n}\r\n\r\n/**\r\n * @param {Record} data_map\r\n * @returns {void}\r\n */\r\nexport function set_custom_element_data_map(node, data_map) {\r\n\tObject.keys(data_map).forEach((key) => {\r\n\t\tset_custom_element_data(node, key, data_map[key]);\r\n\t});\r\n}\r\n\r\n/**\r\n * @returns {void} */\r\nexport function set_custom_element_data(node, prop, value) {\r\n\tconst lower = prop.toLowerCase(); // for backwards compatibility with existing behavior we do lowercase first\r\n\tif (lower in node) {\r\n\t\tnode[lower] = typeof node[lower] === 'boolean' && value === '' ? true : value;\r\n\t} else if (prop in node) {\r\n\t\tnode[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;\r\n\t} else {\r\n\t\tattr(node, prop, value);\r\n\t}\r\n}\r\n\r\n/**\r\n * @param {string} tag\r\n */\r\nexport function set_dynamic_element_data(tag) {\r\n\treturn /-/.test(tag) ? set_custom_element_data_map : set_attributes;\r\n}\r\n\r\n/**\r\n * @returns {void}\r\n */\r\nexport function xlink_attr(node, attribute, value) {\r\n\tnode.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\r\n}\r\n\r\n/**\r\n * @param {HTMLElement} node\r\n * @returns {string}\r\n */\r\nexport function get_svelte_dataset(node) {\r\n\treturn node.dataset.svelteH;\r\n}\r\n\r\n/**\r\n * @returns {unknown[]} */\r\nexport function get_binding_group_value(group, __value, checked) {\r\n\tconst value = new Set();\r\n\tfor (let i = 0; i < group.length; i += 1) {\r\n\t\tif (group[i].checked) value.add(group[i].__value);\r\n\t}\r\n\tif (!checked) {\r\n\t\tvalue.delete(__value);\r\n\t}\r\n\treturn Array.from(value);\r\n}\r\n\r\n/**\r\n * @param {HTMLInputElement[]} group\r\n * @returns {{ p(...inputs: HTMLInputElement[]): void; r(): void; }}\r\n */\r\nexport function init_binding_group(group) {\r\n\t/**\r\n\t * @type {HTMLInputElement[]} */\r\n\tlet _inputs;\r\n\treturn {\r\n\t\t/* push */ p(...inputs) {\r\n\t\t\t_inputs = inputs;\r\n\t\t\t_inputs.forEach((input) => group.push(input));\r\n\t\t},\r\n\t\t/* remove */ r() {\r\n\t\t\t_inputs.forEach((input) => group.splice(group.indexOf(input), 1));\r\n\t\t}\r\n\t};\r\n}\r\n\r\n/**\r\n * @param {number[]} indexes\r\n * @returns {{ u(new_indexes: number[]): void; p(...inputs: HTMLInputElement[]): void; r: () => void; }}\r\n */\r\nexport function init_binding_group_dynamic(group, indexes) {\r\n\t/**\r\n\t * @type {HTMLInputElement[]} */\r\n\tlet _group = get_binding_group(group);\r\n\r\n\t/**\r\n\t * @type {HTMLInputElement[]} */\r\n\tlet _inputs;\r\n\r\n\tfunction get_binding_group(group) {\r\n\t\tfor (let i = 0; i < indexes.length; i++) {\r\n\t\t\tgroup = group[indexes[i]] = group[indexes[i]] || [];\r\n\t\t}\r\n\t\treturn group;\r\n\t}\r\n\r\n\t/**\r\n\t * @returns {void} */\r\n\tfunction push() {\r\n\t\t_inputs.forEach((input) => _group.push(input));\r\n\t}\r\n\r\n\t/**\r\n\t * @returns {void} */\r\n\tfunction remove() {\r\n\t\t_inputs.forEach((input) => _group.splice(_group.indexOf(input), 1));\r\n\t}\r\n\treturn {\r\n\t\t/* update */ u(new_indexes) {\r\n\t\t\tindexes = new_indexes;\r\n\t\t\tconst new_group = get_binding_group(group);\r\n\t\t\tif (new_group !== _group) {\r\n\t\t\t\tremove();\r\n\t\t\t\t_group = new_group;\r\n\t\t\t\tpush();\r\n\t\t\t}\r\n\t\t},\r\n\t\t/* push */ p(...inputs) {\r\n\t\t\t_inputs = inputs;\r\n\t\t\tpush();\r\n\t\t},\r\n\t\t/* remove */ r: remove\r\n\t};\r\n}\r\n\r\n/** @returns {number} */\r\nexport function to_number(value) {\r\n\treturn value === '' ? null : +value;\r\n}\r\n\r\n/** @returns {any[]} */\r\nexport function time_ranges_to_array(ranges) {\r\n\tconst array = [];\r\n\tfor (let i = 0; i < ranges.length; i += 1) {\r\n\t\tarray.push({ start: ranges.start(i), end: ranges.end(i) });\r\n\t}\r\n\treturn array;\r\n}\r\n\r\n/**\r\n * @param {Element} element\r\n * @returns {ChildNode[]}\r\n */\r\nexport function children(element) {\r\n\treturn Array.from(element.childNodes);\r\n}\r\n\r\n/**\r\n * @param {ChildNodeArray} nodes\r\n * @returns {void}\r\n */\r\nfunction init_claim_info(nodes) {\r\n\tif (nodes.claim_info === undefined) {\r\n\t\tnodes.claim_info = { last_index: 0, total_claimed: 0 };\r\n\t}\r\n}\r\n\r\n/**\r\n * @template {ChildNodeEx} R\r\n * @param {ChildNodeArray} nodes\r\n * @param {(node: ChildNodeEx) => node is R} predicate\r\n * @param {(node: ChildNodeEx) => ChildNodeEx | undefined} process_node\r\n * @param {() => R} create_node\r\n * @param {boolean} dont_update_last_index\r\n * @returns {R}\r\n */\r\nfunction claim_node(nodes, predicate, process_node, create_node, dont_update_last_index = false) {\r\n\t// Try to find nodes in an order such that we lengthen the longest increasing subsequence\r\n\tinit_claim_info(nodes);\r\n\tconst result_node = (() => {\r\n\t\t// We first try to find an element after the previous one\r\n\t\tfor (let i = nodes.claim_info.last_index; i < nodes.length; i++) {\r\n\t\t\tconst node = nodes[i];\r\n\t\t\tif (predicate(node)) {\r\n\t\t\t\tconst replacement = process_node(node);\r\n\t\t\t\tif (replacement === undefined) {\r\n\t\t\t\t\tnodes.splice(i, 1);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnodes[i] = replacement;\r\n\t\t\t\t}\r\n\t\t\t\tif (!dont_update_last_index) {\r\n\t\t\t\t\tnodes.claim_info.last_index = i;\r\n\t\t\t\t}\r\n\t\t\t\treturn node;\r\n\t\t\t}\r\n\t\t}\r\n\t\t// Otherwise, we try to find one before\r\n\t\t// We iterate in reverse so that we don't go too far back\r\n\t\tfor (let i = nodes.claim_info.last_index - 1; i >= 0; i--) {\r\n\t\t\tconst node = nodes[i];\r\n\t\t\tif (predicate(node)) {\r\n\t\t\t\tconst replacement = process_node(node);\r\n\t\t\t\tif (replacement === undefined) {\r\n\t\t\t\t\tnodes.splice(i, 1);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnodes[i] = replacement;\r\n\t\t\t\t}\r\n\t\t\t\tif (!dont_update_last_index) {\r\n\t\t\t\t\tnodes.claim_info.last_index = i;\r\n\t\t\t\t} else if (replacement === undefined) {\r\n\t\t\t\t\t// Since we spliced before the last_index, we decrease it\r\n\t\t\t\t\tnodes.claim_info.last_index--;\r\n\t\t\t\t}\r\n\t\t\t\treturn node;\r\n\t\t\t}\r\n\t\t}\r\n\t\t// If we can't find any matching node, we create a new one\r\n\t\treturn create_node();\r\n\t})();\r\n\tresult_node.claim_order = nodes.claim_info.total_claimed;\r\n\tnodes.claim_info.total_claimed += 1;\r\n\treturn result_node;\r\n}\r\n\r\n/**\r\n * @param {ChildNodeArray} nodes\r\n * @param {string} name\r\n * @param {{ [key: string]: boolean }} attributes\r\n * @param {(name: string) => Element | SVGElement} create_element\r\n * @returns {Element | SVGElement}\r\n */\r\nfunction claim_element_base(nodes, name, attributes, create_element) {\r\n\treturn claim_node(\r\n\t\tnodes,\r\n\t\t/** @returns {node is Element | SVGElement} */\r\n\t\t(node) => node.nodeName === name,\r\n\t\t/** @param {Element} node */\r\n\t\t(node) => {\r\n\t\t\tconst remove = [];\r\n\t\t\tfor (let j = 0; j < node.attributes.length; j++) {\r\n\t\t\t\tconst attribute = node.attributes[j];\r\n\t\t\t\tif (!attributes[attribute.name]) {\r\n\t\t\t\t\tremove.push(attribute.name);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tremove.forEach((v) => node.removeAttribute(v));\r\n\t\t\treturn undefined;\r\n\t\t},\r\n\t\t() => create_element(name)\r\n\t);\r\n}\r\n\r\n/**\r\n * @param {ChildNodeArray} nodes\r\n * @param {string} name\r\n * @param {{ [key: string]: boolean }} attributes\r\n * @returns {Element | SVGElement}\r\n */\r\nexport function claim_element(nodes, name, attributes) {\r\n\treturn claim_element_base(nodes, name, attributes, element);\r\n}\r\n\r\n/**\r\n * @param {ChildNodeArray} nodes\r\n * @param {string} name\r\n * @param {{ [key: string]: boolean }} attributes\r\n * @returns {Element | SVGElement}\r\n */\r\nexport function claim_svg_element(nodes, name, attributes) {\r\n\treturn claim_element_base(nodes, name, attributes, svg_element);\r\n}\r\n\r\n/**\r\n * @param {ChildNodeArray} nodes\r\n * @returns {Text}\r\n */\r\nexport function claim_text(nodes, data) {\r\n\treturn claim_node(\r\n\t\tnodes,\r\n\t\t/** @returns {node is Text} */\r\n\t\t(node) => node.nodeType === 3,\r\n\t\t/** @param {Text} node */\r\n\t\t(node) => {\r\n\t\t\tconst data_str = '' + data;\r\n\t\t\tif (node.data.startsWith(data_str)) {\r\n\t\t\t\tif (node.data.length !== data_str.length) {\r\n\t\t\t\t\treturn node.splitText(data_str.length);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tnode.data = data_str;\r\n\t\t\t}\r\n\t\t},\r\n\t\t() => text(data),\r\n\t\ttrue // Text nodes should not update last index since it is likely not worth it to eliminate an increasing subsequence of actual elements\r\n\t);\r\n}\r\n\r\n/**\r\n * @returns {Text} */\r\nexport function claim_space(nodes) {\r\n\treturn claim_text(nodes, ' ');\r\n}\r\n\r\n/**\r\n * @param {ChildNodeArray} nodes\r\n * @returns {Comment}\r\n */\r\nexport function claim_comment(nodes, data) {\r\n\treturn claim_node(\r\n\t\tnodes,\r\n\t\t/** @returns {node is Comment} */\r\n\t\t(node) => node.nodeType === 8,\r\n\t\t/** @param {Comment} node */\r\n\t\t(node) => {\r\n\t\t\tnode.data = '' + data;\r\n\t\t\treturn undefined;\r\n\t\t},\r\n\t\t() => comment(data),\r\n\t\ttrue\r\n\t);\r\n}\r\n\r\nfunction get_comment_idx(nodes, text, start) {\r\n\tfor (let i = start; i < nodes.length; i += 1) {\r\n\t\tconst node = nodes[i];\r\n\t\tif (node.nodeType === 8 /* comment node */ && node.textContent.trim() === text) {\r\n\t\t\treturn i;\r\n\t\t}\r\n\t}\r\n\treturn -1;\r\n}\r\n\r\n/**\r\n * @param {boolean} is_svg\r\n * @returns {HtmlTagHydration}\r\n */\r\nexport function claim_html_tag(nodes, is_svg) {\r\n\t// find html opening tag\r\n\tconst start_index = get_comment_idx(nodes, 'HTML_TAG_START', 0);\r\n\tconst end_index = get_comment_idx(nodes, 'HTML_TAG_END', start_index + 1);\r\n\tif (start_index === -1 || end_index === -1) {\r\n\t\treturn new HtmlTagHydration(is_svg);\r\n\t}\r\n\r\n\tinit_claim_info(nodes);\r\n\tconst html_tag_nodes = nodes.splice(start_index, end_index - start_index + 1);\r\n\tdetach(html_tag_nodes[0]);\r\n\tdetach(html_tag_nodes[html_tag_nodes.length - 1]);\r\n\tconst claimed_nodes = html_tag_nodes.slice(1, html_tag_nodes.length - 1);\r\n\tif (claimed_nodes.length === 0) {\r\n\t\treturn new HtmlTagHydration(is_svg);\r\n\t}\r\n\tfor (const n of claimed_nodes) {\r\n\t\tn.claim_order = nodes.claim_info.total_claimed;\r\n\t\tnodes.claim_info.total_claimed += 1;\r\n\t}\r\n\treturn new HtmlTagHydration(is_svg, claimed_nodes);\r\n}\r\n\r\n/**\r\n * @param {Text} text\r\n * @param {unknown} data\r\n * @returns {void}\r\n */\r\nexport function set_data(text, data) {\r\n\tdata = '' + data;\r\n\tif (text.data === data) return;\r\n\ttext.data = /** @type {string} */ (data);\r\n}\r\n\r\n/**\r\n * @param {Text} text\r\n * @param {unknown} data\r\n * @returns {void}\r\n */\r\nexport function set_data_contenteditable(text, data) {\r\n\tdata = '' + data;\r\n\tif (text.wholeText === data) return;\r\n\ttext.data = /** @type {string} */ (data);\r\n}\r\n\r\n/**\r\n * @param {Text} text\r\n * @param {unknown} data\r\n * @param {string} attr_value\r\n * @returns {void}\r\n */\r\nexport function set_data_maybe_contenteditable(text, data, attr_value) {\r\n\tif (~contenteditable_truthy_values.indexOf(attr_value)) {\r\n\t\tset_data_contenteditable(text, data);\r\n\t} else {\r\n\t\tset_data(text, data);\r\n\t}\r\n}\r\n\r\n/**\r\n * @returns {void} */\r\nexport function set_input_value(input, value) {\r\n\tinput.value = value == null ? '' : value;\r\n}\r\n\r\n/**\r\n * @returns {void} */\r\nexport function set_input_type(input, type) {\r\n\ttry {\r\n\t\tinput.type = type;\r\n\t} catch (e) {\r\n\t\t// do nothing\r\n\t}\r\n}\r\n\r\n/**\r\n * @returns {void} */\r\nexport function set_style(node, key, value, important) {\r\n\tif (value == null) {\r\n\t\tnode.style.removeProperty(key);\r\n\t} else {\r\n\t\tnode.style.setProperty(key, value, important ? 'important' : '');\r\n\t}\r\n}\r\n\r\n/**\r\n * @returns {void} */\r\nexport function select_option(select, value, mounting) {\r\n\tfor (let i = 0; i < select.options.length; i += 1) {\r\n\t\tconst option = select.options[i];\r\n\t\tif (option.__value === value) {\r\n\t\t\toption.selected = true;\r\n\t\t\treturn;\r\n\t\t}\r\n\t}\r\n\tif (!mounting || value !== undefined) {\r\n\t\tselect.selectedIndex = -1; // no option should be selected\r\n\t}\r\n}\r\n\r\n/**\r\n * @returns {void} */\r\nexport function select_options(select, value) {\r\n\tfor (let i = 0; i < select.options.length; i += 1) {\r\n\t\tconst option = select.options[i];\r\n\t\toption.selected = ~value.indexOf(option.__value);\r\n\t}\r\n}\r\n\r\nexport function select_value(select) {\r\n\tconst selected_option = select.querySelector(':checked');\r\n\treturn selected_option && selected_option.__value;\r\n}\r\n\r\nexport function select_multiple_value(select) {\r\n\treturn [].map.call(select.querySelectorAll(':checked'), (option) => option.__value);\r\n}\r\n// unfortunately this can't be a constant as that wouldn't be tree-shakeable\r\n// so we cache the result instead\r\n\r\n/**\r\n * @type {boolean} */\r\nlet crossorigin;\r\n\r\n/**\r\n * @returns {boolean} */\r\nexport function is_crossorigin() {\r\n\tif (crossorigin === undefined) {\r\n\t\tcrossorigin = false;\r\n\t\ttry {\r\n\t\t\tif (typeof window !== 'undefined' && window.parent) {\r\n\t\t\t\tvoid window.parent.document;\r\n\t\t\t}\r\n\t\t} catch (error) {\r\n\t\t\tcrossorigin = true;\r\n\t\t}\r\n\t}\r\n\treturn crossorigin;\r\n}\r\n\r\n/**\r\n * @param {HTMLElement} node\r\n * @param {() => void} fn\r\n * @returns {() => void}\r\n */\r\nexport function add_iframe_resize_listener(node, fn) {\r\n\tconst computed_style = getComputedStyle(node);\r\n\tif (computed_style.position === 'static') {\r\n\t\tnode.style.position = 'relative';\r\n\t}\r\n\tconst iframe = element('iframe');\r\n\tiframe.setAttribute(\r\n\t\t'style',\r\n\t\t'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ' +\r\n\t\t\t'overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;'\r\n\t);\r\n\tiframe.setAttribute('aria-hidden', 'true');\r\n\tiframe.tabIndex = -1;\r\n\tconst crossorigin = is_crossorigin();\r\n\r\n\t/**\r\n\t * @type {() => void}\r\n\t */\r\n\tlet unsubscribe;\r\n\tif (crossorigin) {\r\n\t\tiframe.src = \"data:text/html,\";\r\n\t\tunsubscribe = listen(\r\n\t\t\twindow,\r\n\t\t\t'message',\r\n\t\t\t/** @param {MessageEvent} event */ (event) => {\r\n\t\t\t\tif (event.source === iframe.contentWindow) fn();\r\n\t\t\t}\r\n\t\t);\r\n\t} else {\r\n\t\tiframe.src = 'about:blank';\r\n\t\tiframe.onload = () => {\r\n\t\t\tunsubscribe = listen(iframe.contentWindow, 'resize', fn);\r\n\t\t\t// make sure an initial resize event is fired _after_ the iframe is loaded (which is asynchronous)\r\n\t\t\t// see https://github.com/sveltejs/svelte/issues/4233\r\n\t\t\tfn();\r\n\t\t};\r\n\t}\r\n\tappend(node, iframe);\r\n\treturn () => {\r\n\t\tif (crossorigin) {\r\n\t\t\tunsubscribe();\r\n\t\t} else if (unsubscribe && iframe.contentWindow) {\r\n\t\t\tunsubscribe();\r\n\t\t}\r\n\t\tdetach(iframe);\r\n\t};\r\n}\r\nexport const resize_observer_content_box = /* @__PURE__ */ new ResizeObserverSingleton({\r\n\tbox: 'content-box'\r\n});\r\nexport const resize_observer_border_box = /* @__PURE__ */ new ResizeObserverSingleton({\r\n\tbox: 'border-box'\r\n});\r\nexport const resize_observer_device_pixel_content_box = /* @__PURE__ */ new ResizeObserverSingleton(\r\n\t{ box: 'device-pixel-content-box' }\r\n);\r\nexport { ResizeObserverSingleton };\r\n\r\n/**\r\n * @returns {void} */\r\nexport function toggle_class(element, name, toggle) {\r\n\t// The `!!` is required because an `undefined` flag means flipping the current state.\r\n\telement.classList.toggle(name, !!toggle);\r\n}\r\n\r\n/**\r\n * @template T\r\n * @param {string} type\r\n * @param {T} [detail]\r\n * @param {{ bubbles?: boolean, cancelable?: boolean }} [options]\r\n * @returns {CustomEvent}\r\n */\r\nexport function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {\r\n\treturn new CustomEvent(type, { detail, bubbles, cancelable });\r\n}\r\n\r\n/**\r\n * @param {string} selector\r\n * @param {HTMLElement} parent\r\n * @returns {ChildNodeArray}\r\n */\r\nexport function query_selector_all(selector, parent = document.body) {\r\n\treturn Array.from(parent.querySelectorAll(selector));\r\n}\r\n\r\n/**\r\n * @param {string} nodeId\r\n * @param {HTMLElement} head\r\n * @returns {any[]}\r\n */\r\nexport function head_selector(nodeId, head) {\r\n\tconst result = [];\r\n\tlet started = 0;\r\n\tfor (const node of head.childNodes) {\r\n\t\tif (node.nodeType === 8 /* comment node */) {\r\n\t\t\tconst comment = node.textContent.trim();\r\n\t\t\tif (comment === `HEAD_${nodeId}_END`) {\r\n\t\t\t\tstarted -= 1;\r\n\t\t\t\tresult.push(node);\r\n\t\t\t} else if (comment === `HEAD_${nodeId}_START`) {\r\n\t\t\t\tstarted += 1;\r\n\t\t\t\tresult.push(node);\r\n\t\t\t}\r\n\t\t} else if (started > 0) {\r\n\t\t\tresult.push(node);\r\n\t\t}\r\n\t}\r\n\treturn result;\r\n}\r\n/** */\r\nexport class HtmlTag {\r\n\t/**\r\n\t * @private\r\n\t * @default false\r\n\t */\r\n\tis_svg = false;\r\n\t/** parent for creating node */\r\n\te = undefined;\r\n\t/** html tag nodes */\r\n\tn = undefined;\r\n\t/** target */\r\n\tt = undefined;\r\n\t/** anchor */\r\n\ta = undefined;\r\n\tconstructor(is_svg = false) {\r\n\t\tthis.is_svg = is_svg;\r\n\t\tthis.e = this.n = null;\r\n\t}\r\n\r\n\t/**\r\n\t * @param {string} html\r\n\t * @returns {void}\r\n\t */\r\n\tc(html) {\r\n\t\tthis.h(html);\r\n\t}\r\n\r\n\t/**\r\n\t * @param {string} html\r\n\t * @param {HTMLElement | SVGElement} target\r\n\t * @param {HTMLElement | SVGElement} anchor\r\n\t * @returns {void}\r\n\t */\r\n\tm(html, target, anchor = null) {\r\n\t\tif (!this.e) {\r\n\t\t\tif (this.is_svg)\r\n\t\t\t\tthis.e = svg_element(/** @type {keyof SVGElementTagNameMap} */ (target.nodeName));\r\n\t\t\t/** #7364 target for