From 46741128e57638c3ee4e2bfa69d442d5217bd79b Mon Sep 17 00:00:00 2001 From: Thorn Walli Date: Mon, 6 Nov 2023 16:44:03 +0100 Subject: [PATCH 1/6] docs(update): replace docus with vitepress --- .gitignore | 4 + docs/.nvmrc | 1 - docs/.vitepress/config.mjs | 46 + docs/.vitepress/theme/index.js | 17 + docs/.vitepress/theme/style.css | 139 + docs/src/concept.md | 114 + docs/src/examples/api-examples.md | 49 + docs/src/examples/index.md | 25 + docs/src/examples/markdown-examples.md | 85 + docs/src/guide/options.md | 292 + docs/src/guide/setup.md | 147 + docs/src/guide/usage.md | 98 + docs/src/index.md | 58 + docs/{ => src}/public/CNAME | 0 docs/{ => src}/public/favicon.ico | Bin docs/{ => src}/public/icon.png | Bin docs/{ => src}/public/intro-light.png | Bin docs/{ => src}/public/logo-dark.svg | 0 docs/{ => src}/public/logo-light.svg | 0 docs/{ => src}/public/logo.svg | 0 docs/{ => src}/public/preview.png | Bin docs/{ => src}/public/site.webmanifest | 0 docs/src/v3/0.index.md | 70 + docs/{content => src/v3}/1.concept.md | 0 docs/src/v3/3.guide/0.setup.md | 138 + docs/src/v3/3.guide/1.options.md | 292 + docs/src/v3/3.guide/2.usage.md | 101 + docs/src/v3/3.guide/3.caveats.md | 48 + docs/src/v3/3.guide/4.composable/0.useFont.md | 35 + .../v3/3.guide/4.composable/1.useCritical.md | 34 + .../v3/3.guide/4.composable/2.useConfig.md | 16 + .../4.composable/3.useComponentObserver.md | 42 + docs/src/v3/3.guide/4.composable/_dir.yml | 1 + docs/src/v3/3.guide/5.directives/_dir.yml | 1 + docs/src/v3/3.guide/5.directives/v-font.md | 89 + docs/src/v3/3.guide/6.components/_dir.yml | 1 + .../3.guide/6.components/speedkit-iframe.md | 90 + .../v3/3.guide/6.components/speedkit-image.md | 224 + .../v3/3.guide/6.components/speedkit-layer.md | 148 + .../3.guide/6.components/speedkit-picture.md | 195 + .../v3/3.guide/6.components/speedkit-vimeo.md | 174 + .../3.guide/6.components/speedkit-youtube.md | 182 + .../6.components/weak-hardware-overlay.md | 83 + docs/{content => src/v3}/3.guide/_dir.yml | 0 docs/src/v3/_dir.yml | 1 + {docs => docsALT}/.env.example | 0 {docs => docsALT}/.gitignore | 0 {docs => docsALT}/.npmrc | 0 docsALT/.nvmrc | 1 + {docs => docsALT}/README.md | 0 docsALT/api-examples.md | 49 + {docs => docsALT}/app.config.ts | 0 {docs => docsALT}/components/Logo.vue | 0 .../components/content/ChangeLog.vue | 0 {docs => docsALT}/content/0.index.md | 4 + docsALT/content/1.concept.md | 122 + {docs => docsALT}/content/10.v1/0.index.md | 0 {docs => docsALT}/content/10.v1/1.concept.md | 0 {docs => docsALT}/content/10.v1/_dir.yml | 0 .../content/10.v1/guide/0.setup.md | 0 .../content/10.v1/guide/1.options.md | 18 +- .../content/10.v1/guide/10.todos.md | 0 .../content/10.v1/guide/3.usage.md | 4 +- .../10.v1/guide/4.directives/v-font.md | 0 .../experimental-speedkit-picture.md | 2 +- .../experimental-speedkit-youtube.md | 2 +- .../guide/5.components/speedkit-iframe.md | 0 .../guide/5.components/speedkit-layer.md | 0 .../guide/5.components/speedkit-picture.md | 2 +- .../guide/5.components/speedkit-youtube.md | 2 +- {docs => docsALT}/content/1000.todos.md | 0 docsALT/content/11.v3/0.index.md | 70 + docsALT/content/11.v3/1.concept.md | 122 + docsALT/content/11.v3/3.guide/0.setup.md | 138 + docsALT/content/11.v3/3.guide/1.options.md | 292 + docsALT/content/11.v3/3.guide/2.usage.md | 101 + docsALT/content/11.v3/3.guide/3.caveats.md | 48 + .../11.v3/3.guide/4.composable/0.useFont.md | 35 + .../3.guide/4.composable/1.useCritical.md | 34 + .../11.v3/3.guide/4.composable/2.useConfig.md | 16 + .../4.composable/3.useComponentObserver.md | 42 + .../11.v3/3.guide/4.composable/_dir.yml | 1 + .../11.v3/3.guide/5.directives/_dir.yml | 1 + .../11.v3/3.guide/5.directives/v-font.md | 89 + .../11.v3/3.guide/6.components/_dir.yml | 1 + .../3.guide/6.components/speedkit-iframe.md | 90 + .../3.guide/6.components/speedkit-image.md | 224 + .../3.guide/6.components/speedkit-layer.md | 148 + .../3.guide/6.components/speedkit-picture.md | 195 + .../3.guide/6.components/speedkit-vimeo.md | 174 + .../3.guide/6.components/speedkit-youtube.md | 182 + .../6.components/weak-hardware-overlay.md | 83 + docsALT/content/11.v3/3.guide/_dir.yml | 1 + docsALT/content/11.v3/_dir.yml | 1 + {docs => docsALT}/content/3.guide/0.setup.md | 0 .../content/3.guide/1.options.md | 14 +- {docs => docsALT}/content/3.guide/2.usage.md | 8 +- .../content/3.guide/3.caveats.md | 0 .../content/3.guide/4.directives/v-font.md | 0 .../3.guide/5.components/speedkit-iframe.md | 0 .../3.guide/5.components/speedkit-image.md | 2 +- .../3.guide/5.components/speedkit-layer.md | 0 .../3.guide/5.components/speedkit-picture.md | 11 +- .../3.guide/5.components/speedkit-vimeo.md | 2 +- .../3.guide/5.components/speedkit-youtube.md | 2 +- .../3.guide/6.classes/loading-spinner.md | 2 +- docsALT/content/3.guide/_dir.yml | 1 + .../content/4.migration/0.v2.md | 7 +- .../content/4.migration/1.v2-0-13.md | 6 +- docsALT/content/4.migration/2.v2-2-0.md | 54 + docsALT/content/4.migration/3.v3.md | 50 + docsALT/content/4.migration/_dir.yml | 1 + {docs => docsALT}/content/5.changelog.md | 0 docsALT/index.md | 25 + {docs => docsALT}/jsconfig.json | 0 docsALT/markdown-examples.md | 85 + {docs => docsALT}/nuxt.config.ts | 0 {docs => docsALT}/package-lock.json | 20815 ++++++++-------- {docs => docsALT}/package.json | 9 +- docsALT/public/CNAME | 1 + docsALT/public/favicon.ico | Bin 0 -> 5430 bytes docsALT/public/icon.png | Bin 0 -> 4863 bytes docsALT/public/intro-light.png | Bin 0 -> 108412 bytes docsALT/public/logo-dark.svg | 90 + docsALT/public/logo-light.svg | 90 + docsALT/public/logo.svg | 83 + docsALT/public/preview.png | Bin 0 -> 108412 bytes docsALT/public/site.webmanifest | 19 + {docs => docsALT}/renovate.json | 0 {docs => docsALT}/tokens.config.ts | 0 {docs => docsALT}/tsconfig.json | 0 nuxt-speedkit.code-workspace | 3 + package-lock.json | 726 +- package.json | 8 +- 134 files changed, 16757 insertions(+), 10691 deletions(-) delete mode 100755 docs/.nvmrc create mode 100644 docs/.vitepress/config.mjs create mode 100644 docs/.vitepress/theme/index.js create mode 100644 docs/.vitepress/theme/style.css create mode 100644 docs/src/concept.md create mode 100644 docs/src/examples/api-examples.md create mode 100644 docs/src/examples/index.md create mode 100644 docs/src/examples/markdown-examples.md create mode 100644 docs/src/guide/options.md create mode 100644 docs/src/guide/setup.md create mode 100644 docs/src/guide/usage.md create mode 100644 docs/src/index.md rename docs/{ => src}/public/CNAME (100%) rename docs/{ => src}/public/favicon.ico (100%) rename docs/{ => src}/public/icon.png (100%) rename docs/{ => src}/public/intro-light.png (100%) rename docs/{ => src}/public/logo-dark.svg (100%) rename docs/{ => src}/public/logo-light.svg (100%) rename docs/{ => src}/public/logo.svg (100%) rename docs/{ => src}/public/preview.png (100%) rename docs/{ => src}/public/site.webmanifest (100%) create mode 100644 docs/src/v3/0.index.md rename docs/{content => src/v3}/1.concept.md (100%) create mode 100644 docs/src/v3/3.guide/0.setup.md create mode 100644 docs/src/v3/3.guide/1.options.md create mode 100644 docs/src/v3/3.guide/2.usage.md create mode 100644 docs/src/v3/3.guide/3.caveats.md create mode 100644 docs/src/v3/3.guide/4.composable/0.useFont.md create mode 100644 docs/src/v3/3.guide/4.composable/1.useCritical.md create mode 100644 docs/src/v3/3.guide/4.composable/2.useConfig.md create mode 100644 docs/src/v3/3.guide/4.composable/3.useComponentObserver.md create mode 100644 docs/src/v3/3.guide/4.composable/_dir.yml create mode 100644 docs/src/v3/3.guide/5.directives/_dir.yml create mode 100644 docs/src/v3/3.guide/5.directives/v-font.md create mode 100644 docs/src/v3/3.guide/6.components/_dir.yml create mode 100644 docs/src/v3/3.guide/6.components/speedkit-iframe.md create mode 100644 docs/src/v3/3.guide/6.components/speedkit-image.md create mode 100644 docs/src/v3/3.guide/6.components/speedkit-layer.md create mode 100644 docs/src/v3/3.guide/6.components/speedkit-picture.md create mode 100644 docs/src/v3/3.guide/6.components/speedkit-vimeo.md create mode 100644 docs/src/v3/3.guide/6.components/speedkit-youtube.md create mode 100644 docs/src/v3/3.guide/6.components/weak-hardware-overlay.md rename docs/{content => src/v3}/3.guide/_dir.yml (100%) create mode 100644 docs/src/v3/_dir.yml rename {docs => docsALT}/.env.example (100%) rename {docs => docsALT}/.gitignore (100%) rename {docs => docsALT}/.npmrc (100%) create mode 100755 docsALT/.nvmrc rename {docs => docsALT}/README.md (100%) create mode 100644 docsALT/api-examples.md rename {docs => docsALT}/app.config.ts (100%) rename {docs => docsALT}/components/Logo.vue (100%) rename {docs => docsALT}/components/content/ChangeLog.vue (100%) rename {docs => docsALT}/content/0.index.md (97%) create mode 100644 docsALT/content/1.concept.md rename {docs => docsALT}/content/10.v1/0.index.md (100%) rename {docs => docsALT}/content/10.v1/1.concept.md (100%) rename {docs => docsALT}/content/10.v1/_dir.yml (100%) rename {docs => docsALT}/content/10.v1/guide/0.setup.md (100%) rename {docs => docsALT}/content/10.v1/guide/1.options.md (84%) rename {docs => docsALT}/content/10.v1/guide/10.todos.md (100%) rename {docs => docsALT}/content/10.v1/guide/3.usage.md (97%) rename {docs => docsALT}/content/10.v1/guide/4.directives/v-font.md (100%) rename {docs => docsALT}/content/10.v1/guide/5.components/experimental-speedkit-picture.md (98%) rename {docs => docsALT}/content/10.v1/guide/5.components/experimental-speedkit-youtube.md (98%) rename {docs => docsALT}/content/10.v1/guide/5.components/speedkit-iframe.md (100%) rename {docs => docsALT}/content/10.v1/guide/5.components/speedkit-layer.md (100%) rename {docs => docsALT}/content/10.v1/guide/5.components/speedkit-picture.md (99%) rename {docs => docsALT}/content/10.v1/guide/5.components/speedkit-youtube.md (97%) rename {docs => docsALT}/content/1000.todos.md (100%) create mode 100644 docsALT/content/11.v3/0.index.md create mode 100644 docsALT/content/11.v3/1.concept.md create mode 100644 docsALT/content/11.v3/3.guide/0.setup.md create mode 100644 docsALT/content/11.v3/3.guide/1.options.md create mode 100644 docsALT/content/11.v3/3.guide/2.usage.md create mode 100644 docsALT/content/11.v3/3.guide/3.caveats.md create mode 100644 docsALT/content/11.v3/3.guide/4.composable/0.useFont.md create mode 100644 docsALT/content/11.v3/3.guide/4.composable/1.useCritical.md create mode 100644 docsALT/content/11.v3/3.guide/4.composable/2.useConfig.md create mode 100644 docsALT/content/11.v3/3.guide/4.composable/3.useComponentObserver.md create mode 100644 docsALT/content/11.v3/3.guide/4.composable/_dir.yml create mode 100644 docsALT/content/11.v3/3.guide/5.directives/_dir.yml create mode 100644 docsALT/content/11.v3/3.guide/5.directives/v-font.md create mode 100644 docsALT/content/11.v3/3.guide/6.components/_dir.yml create mode 100644 docsALT/content/11.v3/3.guide/6.components/speedkit-iframe.md create mode 100644 docsALT/content/11.v3/3.guide/6.components/speedkit-image.md create mode 100644 docsALT/content/11.v3/3.guide/6.components/speedkit-layer.md create mode 100644 docsALT/content/11.v3/3.guide/6.components/speedkit-picture.md create mode 100644 docsALT/content/11.v3/3.guide/6.components/speedkit-vimeo.md create mode 100644 docsALT/content/11.v3/3.guide/6.components/speedkit-youtube.md create mode 100644 docsALT/content/11.v3/3.guide/6.components/weak-hardware-overlay.md create mode 100644 docsALT/content/11.v3/3.guide/_dir.yml create mode 100644 docsALT/content/11.v3/_dir.yml rename {docs => docsALT}/content/3.guide/0.setup.md (100%) rename {docs => docsALT}/content/3.guide/1.options.md (89%) rename {docs => docsALT}/content/3.guide/2.usage.md (90%) rename {docs => docsALT}/content/3.guide/3.caveats.md (100%) rename {docs => docsALT}/content/3.guide/4.directives/v-font.md (100%) rename {docs => docsALT}/content/3.guide/5.components/speedkit-iframe.md (100%) rename {docs => docsALT}/content/3.guide/5.components/speedkit-image.md (98%) rename {docs => docsALT}/content/3.guide/5.components/speedkit-layer.md (100%) rename {docs => docsALT}/content/3.guide/5.components/speedkit-picture.md (94%) rename {docs => docsALT}/content/3.guide/5.components/speedkit-vimeo.md (98%) rename {docs => docsALT}/content/3.guide/5.components/speedkit-youtube.md (98%) rename {docs => docsALT}/content/3.guide/6.classes/loading-spinner.md (90%) create mode 100644 docsALT/content/3.guide/_dir.yml rename docs/content/4.migration/v2.md => docsALT/content/4.migration/0.v2.md (97%) rename docs/content/4.migration/v2.0.13.md => docsALT/content/4.migration/1.v2-0-13.md (95%) create mode 100644 docsALT/content/4.migration/2.v2-2-0.md create mode 100644 docsALT/content/4.migration/3.v3.md create mode 100644 docsALT/content/4.migration/_dir.yml rename {docs => docsALT}/content/5.changelog.md (100%) create mode 100644 docsALT/index.md rename {docs => docsALT}/jsconfig.json (100%) create mode 100644 docsALT/markdown-examples.md rename {docs => docsALT}/nuxt.config.ts (100%) rename {docs => docsALT}/package-lock.json (82%) rename {docs => docsALT}/package.json (82%) create mode 100644 docsALT/public/CNAME create mode 100644 docsALT/public/favicon.ico create mode 100644 docsALT/public/icon.png create mode 100755 docsALT/public/intro-light.png create mode 100644 docsALT/public/logo-dark.svg create mode 100644 docsALT/public/logo-light.svg create mode 100644 docsALT/public/logo.svg create mode 100755 docsALT/public/preview.png create mode 100644 docsALT/public/site.webmanifest rename {docs => docsALT}/renovate.json (100%) rename {docs => docsALT}/tokens.config.ts (100%) rename {docs => docsALT}/tsconfig.json (100%) diff --git a/.gitignore b/.gitignore index 816e2f157d..f26efe8a05 100755 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,7 @@ sw.* .output eslint-report.json .env + +# docs +docs/.vitepress/dist +docs/.vitepress/cache diff --git a/docs/.nvmrc b/docs/.nvmrc deleted file mode 100755 index 6d80269a4f..0000000000 --- a/docs/.nvmrc +++ /dev/null @@ -1 +0,0 @@ -18.16.0 diff --git a/docs/.vitepress/config.mjs b/docs/.vitepress/config.mjs new file mode 100644 index 0000000000..6c233353ef --- /dev/null +++ b/docs/.vitepress/config.mjs @@ -0,0 +1,46 @@ +import { defineConfig } from 'vitepress' + +// https://vitepress.dev/reference/site-config +export default defineConfig({ + + + srcDir: 'src', + + title: "Nuxt Speedkit", + description: "Nuxt Speedkit takes over the Lighthouse performance optimization of your generated website.", + themeConfig: { + // https://vitepress.dev/reference/default-theme-config + + nav: [ + { text: 'Home', link: '/' }, + { text: 'Examples', link: '/markdown-examples' } + ], + + sidebar: [ + { + text: 'Home', + link: '/', + // items: [ + // { text: 'Markdown Examples', link: '/markdown-examples' }, + // { text: 'Runtime API Examples', link: '/api-examples' } + // ] + }, + { + text: 'Concept', + link: '/concept' + }, + { + text: 'Guide', + items: [ + {text: 'Setup', link: '/guide/setup'}, + {text: 'Options', link: '/guide/options'}, + {text: 'Usage', link: '/guide/usage'} + ] + } + ], + + socialLinks: [ + { icon: 'github', link: 'https://nuxt-speedkit.grabarzundpartner.dev/' } + ] + } +}) diff --git a/docs/.vitepress/theme/index.js b/docs/.vitepress/theme/index.js new file mode 100644 index 0000000000..8ecf163560 --- /dev/null +++ b/docs/.vitepress/theme/index.js @@ -0,0 +1,17 @@ +// https://vitepress.dev/guide/custom-theme +import { h } from 'vue' +import DefaultTheme from 'vitepress/theme' +import './style.css' + +/** @type {import('vitepress').Theme} */ +export default { + extends: DefaultTheme, + Layout: () => { + return h(DefaultTheme.Layout, null, { + // https://vitepress.dev/guide/extending-default-theme#layout-slots + }) + }, + enhanceApp({ app, router, siteData }) { + // ... + } +} diff --git a/docs/.vitepress/theme/style.css b/docs/.vitepress/theme/style.css new file mode 100644 index 0000000000..d63aee82dc --- /dev/null +++ b/docs/.vitepress/theme/style.css @@ -0,0 +1,139 @@ +/** + * Customize default theme styling by overriding CSS variables: + * https://github.com/vuejs/vitepress/blob/main/src/client/theme-default/styles/vars.css + */ + +/** + * Colors + * + * Each colors have exact same color scale system with 3 levels of solid + * colors with different brightness, and 1 soft color. + * + * - `XXX-1`: The most solid color used mainly for colored text. It must + * satisfy the contrast ratio against when used on top of `XXX-soft`. + * + * - `XXX-2`: The color used mainly for hover state of the button. + * + * - `XXX-3`: The color for solid background, such as bg color of the button. + * It must satisfy the contrast ratio with pure white (#ffffff) text on + * top of it. + * + * - `XXX-soft`: The color used for subtle background such as custom container + * or badges. It must satisfy the contrast ratio when putting `XXX-1` colors + * on top of it. + * + * The soft color must be semi transparent alpha channel. This is crucial + * because it allows adding multiple "soft" colors on top of each other + * to create a accent, such as when having inline code block inside + * custom containers. + * + * - `default`: The color used purely for subtle indication without any + * special meanings attched to it such as bg color for menu hover state. + * + * - `brand`: Used for primary brand colors, such as link text, button with + * brand theme, etc. + * + * - `tip`: Used to indicate useful information. The default theme uses the + * brand color for this by default. + * + * - `warning`: Used to indicate warning to the users. Used in custom + * container, badges, etc. + * + * - `danger`: Used to show error, or dangerous message to the users. Used + * in custom container, badges, etc. + * -------------------------------------------------------------------------- */ + + :root { + --vp-c-default-1: var(--vp-c-gray-1); + --vp-c-default-2: var(--vp-c-gray-2); + --vp-c-default-3: var(--vp-c-gray-3); + --vp-c-default-soft: var(--vp-c-gray-soft); + + --vp-c-brand-1: var(--vp-c-indigo-1); + --vp-c-brand-2: var(--vp-c-indigo-2); + --vp-c-brand-3: var(--vp-c-indigo-3); + --vp-c-brand-soft: var(--vp-c-indigo-soft); + + --vp-c-tip-1: var(--vp-c-brand-1); + --vp-c-tip-2: var(--vp-c-brand-2); + --vp-c-tip-3: var(--vp-c-brand-3); + --vp-c-tip-soft: var(--vp-c-brand-soft); + + --vp-c-warning-1: var(--vp-c-yellow-1); + --vp-c-warning-2: var(--vp-c-yellow-2); + --vp-c-warning-3: var(--vp-c-yellow-3); + --vp-c-warning-soft: var(--vp-c-yellow-soft); + + --vp-c-danger-1: var(--vp-c-red-1); + --vp-c-danger-2: var(--vp-c-red-2); + --vp-c-danger-3: var(--vp-c-red-3); + --vp-c-danger-soft: var(--vp-c-red-soft); +} + +/** + * Component: Button + * -------------------------------------------------------------------------- */ + +:root { + --vp-button-brand-border: transparent; + --vp-button-brand-text: var(--vp-c-white); + --vp-button-brand-bg: var(--vp-c-brand-3); + --vp-button-brand-hover-border: transparent; + --vp-button-brand-hover-text: var(--vp-c-white); + --vp-button-brand-hover-bg: var(--vp-c-brand-2); + --vp-button-brand-active-border: transparent; + --vp-button-brand-active-text: var(--vp-c-white); + --vp-button-brand-active-bg: var(--vp-c-brand-1); +} + +/** + * Component: Home + * -------------------------------------------------------------------------- */ + +:root { + --vp-home-hero-name-color: transparent; + --vp-home-hero-name-background: -webkit-linear-gradient( + 120deg, + #bd34fe 30%, + #41d1ff + ); + + --vp-home-hero-image-background-image: linear-gradient( + -45deg, + #bd34fe 50%, + #47caff 50% + ); + --vp-home-hero-image-filter: blur(44px); +} + +@media (min-width: 640px) { + :root { + --vp-home-hero-image-filter: blur(56px); + } +} + +@media (min-width: 960px) { + :root { + --vp-home-hero-image-filter: blur(68px); + } +} + +/** + * Component: Custom Block + * -------------------------------------------------------------------------- */ + +:root { + --vp-custom-block-tip-border: transparent; + --vp-custom-block-tip-text: var(--vp-c-text-1); + --vp-custom-block-tip-bg: var(--vp-c-brand-soft); + --vp-custom-block-tip-code-bg: var(--vp-c-brand-soft); +} + +/** + * Component: Algolia + * -------------------------------------------------------------------------- */ + +.DocSearch { + --docsearch-primary-color: var(--vp-c-brand-1) !important; +} + diff --git a/docs/src/concept.md b/docs/src/concept.md new file mode 100644 index 0000000000..f5dc409d06 --- /dev/null +++ b/docs/src/concept.md @@ -0,0 +1,114 @@ +--- +title: Concept +--- + +# {{$frontmatter.title}} + +## Current Situation + +The loading behavior of webpages based on NuxtJS is designed in such a way that all necessary Javascript resources are preloaded and directly initialized with the initial load of the page. However, this behavior creates a negative impact on the Lighthouse Performance Score (TTI) for larger pages that have an increased initial load of additional resources, such as fonts, images, plugins, modules (@nuxtjs/i18n, ...). + +## Excursus + +The Lighthouse Test is not a tool to make a general statement about the quality of a website programming. Lighthouse rather tries to map a metric for the usability of a page from the user's point of view. This includes accessibility, best practices, SEO and of course performance. + +This last point is often misinterpreted by developers. If you want to implement features that increase usability for the user (interactions/more complex animations, ...), this will always have an impact on performance in the Lighthouse Test for larger website projects, as the corresponding Javascript must be loaded for this. Finally, Lighthouse does also not rate the design, but the accessibility (size of click areas, etc.) of a website. +You should therefore not ask yourself the following question: "How can I fully optimize my JavaScript to achieve a Lighthouse score of 100/100?". You have to ask yourself much more the question: "What is especially important to a user with low bandwidth or weak hardware on my site?". + +The answer to this is relatively simple: the content must be accessible and you must be able to get to the information you need quickly. + +No more and no less. + +The user doesn't need any fancy slider animations and parallax effects that can only be implemented with certain libraries. Or a softload mechanism to get to more pages in a more elegant and animated way, but which initially needs an increased amount of javascript logic. All he wants is that information is retrievable reasonably fast and he can click through the presence. + +## Problem + +The good news is that the NuxtJS SSR build provides the right foundation. The content is already in the form of HTML and CSS and can be used without Javascript. But what is missing + +- is a fully automated preload logic that allows component and viewport based handling and prioritization of the individual resources (FCP, LCP, CLS) +- is a logic that enables a perfomance-oriented initialization of the javascript (TTI, TBT) + +These two central points are handled by **Nuxt Speedkit** and enable a fast and resource-saving loading behavior of the website. + +## Approach + +Over a longer period of time, we analyzed the Google Lighthouse test in more detail and approached the topic with the help of use cases. We did not start with the best case for page content (one image, one font, minimal javascript), but with the worst case (many images, many fonts, large Javascript files, ...). So we avoided to develop only a solution for simple SinglePages. Our claim was much more to create a generalistic, performant solution even with a CMS connection and dynamic component compositions per page. +All our thoughts are based on [HTTP/2 request prioritization](https://www.slideshare.net/patrickmeenan/http2-prioritization) and the lazy hydration approach. Initial resources are prioritized by preload and all further data is reloaded viewport-based. + +## Insights & Solutions + +During the tests, we gained the following insights, which we would like to share with you, but which also allow us to draw conclusions regarding the performance optimization of the initial loading process and which have been incorporated into the **Nuxt Speedkit** solution. + +### Critical Render Path + +The [critical render path](https://developers.google.com/web/fundamentals/performance/critical-rendering-path) is the core of a high-performance and efficient loading and rendering behavior of a website. It is important that components and resources in the viewport are loaded and executed with priority so that the user can be provided with a functioning page as quickly as possible. A browser is not able to recognize this fully automatically to dynamically adapt the loading behavior. Some attempts have been made in the past to systematically identify the critical render path.However, this has the consequence that every generated page in a virtual browser has to be analyzed in given viewport sizes, which slows down the deployment process and makes it more error-prone. For this reason, we (the developers) will be forced to provide the build process with appropriate hints in the form of a Critical Attribute on the affected component, so that an automated optimization by preloads, lazy hydration, etc. can be performed in response. + +### Font Loading + +Fonts are the great mystery on the Internet. For more complex designs it is not uncommon that more than 6 font files have to be loaded. It would be desirable if there were many more variable fonts, but the reality is usually different. Often, developers are forced to register tons of fonts with different font styles. So it can happen that the website needs a total count of 12 font files, which have to be loaded initially to achieve the right visual result on the whole page. + +This is a real performance problem. If you look for solutions, you like to hear + +- don't use WebFonts that have to be loaded +- use another optimized font +- reduce the number of used fonts +- embed the fonts via Base64 + +You will find some articles about font loading. But most of them are more than 3 years old. Summary: not much happened here. A nice and recommendable list of different strategies can be found at [web-font-loading-recipes](https://github.com/zachleat/web-font-loading-recipes) or +[comprehensive-webfonts](https://www.zachleat.com/web/comprehensive-webfonts/). From this it can be deduced that there is still no universal solution to the problem. However, it is possible to approach the issue very efficiently by using a preload strategy and setting classes accordingly. However, this does not make the handling of the fonts any easier. On the one hand, the preloads have to be defined per page and on the other hand, the CSS in the respective component has to be activated with the corresponding font declaration per class on demand. This is manageable for smaller projects in a 1 person team. But if several people are working in parallel, it can quickly become a nightmare. This will inevitably lead to the fact that the approach will not be accepted by the team and the optimization will be optimized out of the project in the long run. + +::: info +A few words about Google Fonts: If possible, the FontFaces should always be included directly as Woff/Woff2 files via inline style. The loading mechanism via external CSS file, as it is the case with Google Fonts, creates an additional network roundtrip, which delays the loading of the actual font files. +::: + +The strategy mentioned above makes sense, but is hardly implementable with the current tools. For this reason, we are introducing Directive `v-font`, which takes care of the outlined behavior in a fully automated way and thus represents a truly relevant solution even on larger projects. +Combined with the lazy hydration approach, the relevant fonts can be declared and loaded per component. The preloads are controlled via the critical attribute. With the help of this loading strategy, a FOUT (flash of unstyled text) and CLS can be massively reduced or eliminated. +If no javascript is activated on the end device, all fonts are automatically activated via CSS. + +### Image Loading + +For image compression and different image formats, the module [nuxt-optimized-images](https://marquez.co/docs/nuxt-optimized-images/) was popularly used in the nuxt world in the past. The downside, however, is that this approach is not particularly CMS and deployment friendly. With each image change, a full build process had to be initiated. +For this reason, we use the [nuxt-image](https://image.NuxtJS.org) module, as this takes advantage of a change in NuxtJS as of version 2.13.0. In this version update, the build was split into two separate processes (javascript compilation + page generation). +With [nuxt-optimized-images](https://marquez.co/docs/nuxt-optimized-images/) the full build process had to be run for every image change. This is no longer the case with [nuxt-image](https://image.NuxtJS.org). Here only the page generation process is necessary. As a result, deployment times for all content changes can be massively reduced. + +We use the module in its complete form. However, we have redeveloped the nuxt-image and nuxt-picture components, as the current version does not fully meet our requirements. For example, we lacked an appropriate preloading and lazy hydration strategy. Although there is a native loading attribute on the image element that allows prioritization, the use for websites with a lot of images is still not optimal, because the [distance-from-viewport threshold](https://web.dev/browser-level-image-lazy-loading/#improved-data-savings-and-distance-from-viewport-thresholds) is still too generous and the loading performance can deteriorate unintentionally. For this we have implemented a corresponding SEO-compliant alternative, which loads the images only when the viewport is reached, but also provides the image sources for search engines via no-script tag. This way all relevant images can be displayed even if Javascript is disabled. Furthermore you can also define multiple image sources in the picture, so it is possible to display an image in portait mode with a 9/16 aspect-ratio (multiple renditions) and in landscape mode with a 16/9 aspect-ratio (multiple renditions). + +### Javascript Loading + +NuxtJS follows the approach to load the core files (page, app, payload, vendor, state, etc.) as fast and efficient as possible via (module-)preload from the client. This also makes total sense if you want to deliver an SPA. For the SSR build, however, we modified the delivery a bit. The many parallel downloads (fonts, images, js, ...) have a negative impact from a performance perspective. This effect increases when the javascript files grow in size due to modules and plugins. +It would make sense if the initial package is kept small and only the absolutely necessary resources that can trigger the further initialization process are transferred via dynamic import. This leaves enough bandwidth to load the remaining resources (fonts, images). + +This loading behavior only makes sense with an SSR build, since the full page-related static content can already be delivered and rendered with the HTML and the included CSS. This means that the user does not notice any time lags and the page is still usable. Another advantage: If the bandwidth is low, a basic functionality of the page (links, ...) can be ensured thanks to the SSR build. + +### RequestIdleCallback + +The [TimeRemaining function](https://developer.mozilla.org/en-US/docs/Web/API/IdleDeadline/timeRemaining) of the IdleDeadline object continuously returns a value <= 10 in the Lighthouse Test (simulated Motorola G4). This can be seen as an indicator for weak hardware on the end device and allows the following conclusion. If there are not enough hardware resources available to execute the JavaScript quickly, this process is suppressed. Who needs optional functionality that takes a long time to initialize and possibly leads to a temporary freeze in the browser. + +We use this effect by executing the intial javascript process and the component initialization in the RequestIdleCallback, if we get a time slot >10ms from the device. Hereby we achieve a massive reduction of the TTI/TBT in the Lighthouse Test and on weak hardware, because the javascript execution is simply paused in the worst case until sufficient resources are available. This also prevents blocking of the MainThread. + +Side effect: The timeslots in the Google Lighthouse Test are always <= 10ms, so no javascript will be initialized. + +### SpeedkitLayer + +With the solutions described above, the user gets a functioning webpage displayed very quickly. +However, the following situation can also occur on the end device: + +- no Javascript enabled +- reduced bandwidth +- weak hardware +- unsupported browser + +The reduced bandwidth or weak hardware should get a focus especially when larger amounts of data have to be transferred and executed, e.g. a ThreeJS component with more complex 3D objects. In this case, we should inform the user that the experience will be negatively affected and that there may be waiting times. + +For this purpose, we provide an InfoLayer that is displayed when a minimum FCP time is exceeded, when the number of available CPU cores falls below a minimum level, when javascript is disabled or the users opens the page by an unsupported browser. The user can decide in this dialog box whether he wants to load the remaining resources despite the restrictions. If the user declines this dialog, only the fonts and images for the page will be loaded and no further javascript will be loaded or executed. + +### Conclusion + +The findings and solutions described above have been incorporated and systematized in the **Nuxt Speedkit** module. Only in combination can they unfold their full functionality and ensure an overall optimization of the loading behavior. Overall we have reduced the following timing metrics ... + +- FCP +- LCP +- TTI +- TBT + +With this module we enable every developer in the NuxtJS context to achieve a Lighthouse Performance Score 100/100 and drastically reduce the development time for website performance optimization. diff --git a/docs/src/examples/api-examples.md b/docs/src/examples/api-examples.md new file mode 100644 index 0000000000..6bd8bb5c17 --- /dev/null +++ b/docs/src/examples/api-examples.md @@ -0,0 +1,49 @@ +--- +outline: deep +--- + +# Runtime API Examples + +This page demonstrates usage of some of the runtime APIs provided by VitePress. + +The main `useData()` API can be used to access site, theme, and page data for the current page. It works in both `.md` and `.vue` files: + +```md + + +## Results + +### Theme Data +
{{ theme }}
+ +### Page Data +
{{ page }}
+ +### Page Frontmatter +
{{ frontmatter }}
+``` + + + +## Results + +### Theme Data +
{{ theme }}
+ +### Page Data +
{{ page }}
+ +### Page Frontmatter +
{{ frontmatter }}
+ +## More + +Check out the documentation for the [full list of runtime APIs](https://vitepress.dev/reference/runtime-api#usedata). diff --git a/docs/src/examples/index.md b/docs/src/examples/index.md new file mode 100644 index 0000000000..556a9f6bfc --- /dev/null +++ b/docs/src/examples/index.md @@ -0,0 +1,25 @@ +--- +# https://vitepress.dev/reference/default-theme-home-page +layout: home + +hero: + name: "Nuxt Speedkit" + text: "Nuxt Speedkit takes over the Lighthouse performance optimization of your generated website." + tagline: My great project tagline + actions: + - theme: brand + text: Markdown Examples + link: /markdown-examples + - theme: alt + text: API Examples + link: /api-examples + +features: + - title: Feature A + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit + - title: Feature B + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit + - title: Feature C + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit +--- + diff --git a/docs/src/examples/markdown-examples.md b/docs/src/examples/markdown-examples.md new file mode 100644 index 0000000000..8e55eb8add --- /dev/null +++ b/docs/src/examples/markdown-examples.md @@ -0,0 +1,85 @@ +# Markdown Extension Examples + +This page demonstrates some of the built-in markdown extensions provided by VitePress. + +## Syntax Highlighting + +VitePress provides Syntax Highlighting powered by [Shiki](https://github.com/shikijs/shiki), with additional features like line-highlighting: + +**Input** + +```` +```js{4} +export default { + data () { + return { + msg: 'Highlighted!' + } + } +} +``` +```` + +**Output** + +```js{4} +export default { + data () { + return { + msg: 'Highlighted!' + } + } +} +``` + +## Custom Containers + +**Input** + +```md +::: info +This is an info box. +::: + +::: tip +This is a tip. +::: + +::: warning +This is a warning. +::: + +::: danger +This is a dangerous warning. +::: + +::: details +This is a details block. +::: +``` + +**Output** + +::: info +This is an info box. +::: + +::: tip +This is a tip. +::: + +::: warning +This is a warning. +::: + +::: danger +This is a dangerous warning. +::: + +::: details +This is a details block. +::: + +## More + +Check out the documentation for the [full list of markdown extensions](https://vitepress.dev/guide/markdown). diff --git a/docs/src/guide/options.md b/docs/src/guide/options.md new file mode 100644 index 0000000000..e54ad66ab0 --- /dev/null +++ b/docs/src/guide/options.md @@ -0,0 +1,292 @@ +--- +title: Options +--- + +# {{$frontmatter.title}} + +## `crossorigin` + +- Type: `String`, `Boolean` + - Default: `'anonymous'` + - Valid values: `anonymous`, `use-credentials`, `''`, `true`, `false` + +Sets the global `crossorigin` value of the **Nuxt Speedkit** preloads. +The default value is the `crossorigin` value from the [Render Configuration](https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-render#crossorigin). +> Set `false` to disable the `crossorigin`. + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +## `optimizePreloads` + +- Type: `Boolean` + - Default: `true` + +Activating this option optimizes the initial script preloads and removes unnecessary loads. + +The following NuxtJS settings are made or overwritten in the `nuxt.config`: + +| Property | Value | +| ---------------------------------- | ------- | +| `nuxt.options.vite.build.manifest` | `false` | +| `nuxt.options.noScripts` | `true` | + +## `detection` + +- Type: `Object` + +These options can be used to define the initial checks to display the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer). The prerequisite are that the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) has been embedded into the layout. + +````js +{ + performance: true, + browserSupport: true +} +```` + + | Key | Type | Required | Description | Default | + | ---------------- | --------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | + | `performance` | `Boolean` | yes | Checking whether the [minimum characteristic values](/v3/options#performancemetrics) have been reached. If the test is negative, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. | `true` | + | `browserSupport` | `Boolean` | yes | Check if the current browser on client side is supported. If the test is negative, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. | `true` | + +::: info +For the browser support detection, the default [Browserslist](https://github.com/browserslist/browserslist) of the NuxtJS configuration is used. +::: + +## `performanceMetrics` + +- Type: `Object` + +With the help of the metrics, the actual performance check on client side can be configured. + +````js +{ + device: { + hardwareConcurrency: { min: 2, max: 48 }, + deviceMemory: { min: 2 } + }, + timing: { + fcp: 800, + dcl: 1200 // fallback if fcp is not available (safari) + } +} +```` + +### `device` + +- Type: `Object` + +Definition of the minimum hardware requirements for visiting the website. + +````js +{ + hardwareConcurrency: { min: 2, max: 48 }, + deviceMemory: { min: 2 } +} +```` + + | Key | Type | Required | Description | Default | + | --------------------- | -------- | -------- | ---------------------- | --------------------- | + | `hardwareConcurrency` | `Object` | yes | min/max number of CPUs | `{ min: 2, max: 48 }` | + | `deviceMemory` | `Object` | yes | min size of memory | `{ min: 2 }` | + +### `timing` + +- Type: `Object` + +Definition of the max. FCP duration (ms). If the specified value is exceeded, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. If the browser does not grant access to the FCP, as fallback the DCL will be evaluated. + +````js +{ + fcp: 800, + dcl: 1200 // fallback if fcp is not available (safari) +} +```` + + | Key | Type | Required | Description | Default | + | ----- | -------- | -------- | -------------------------------------------------------------------------------------------------------------- | ------- | + | `fcp` | `Number` | yes | Max. FCP duration in ms [learn More](https://developer.mozilla.org/en-US/docs/Glossary/First_contentful_paint) | `800` | + | `dcl` | `Number` | yes | Max. DCL duration in ms | `1200` | + +## `fonts` + +- Type: `Array` + +List of all font families used in the project. Only the fonts that are listed in the configuration can be retrieved and integrated via [`$fonts.getFont(...)`](/v3/directives/v-font). + +````js +[ + { + family: 'Font A', + locals: ['Font A'], + fallback: ['Arial', 'sans-serif'], + variances: […] + }, + { + family: 'Font B', + locals: ['Font B'], + fallback: ['Arial', 'sans-serif'], + variances: […] + } +] +```` + +### Font-Family + +- Type: `Object` + +Describes a font family with all its variants. + +````js +{ + family: 'Font A', + locals: ['Font A'], + fallback: ['Arial', 'sans-serif'], + variances: […] +} +```` + +| Key | Type | Required | Description | +| ----------- | -------- | -------- | ------------------------------------------------ | +| `family` | `String` | yes | name of the font family | +| `locals` | `Array` | yes | system font name of the specified font family | +| `fallback` | `Array` | yes | fallback fonts e.g. `['Arial', 'sans-serif']` | +| `variances` | `Array` | yes | list of font family variants (e.g. Bold, Italic) | + +::: warning +Prevent sizing discrepancy between your custom and fallback font for perfect swap and reduction of layout shifts. [Learn more](https://meowni.ca/font-style-matcher/) +::: + +### Font-Variance + +- Type: `Object` + +A font variant describes an instance of a font family and is used to generate the `FontFace` declaration. +Font variants differ in [`style`](https://developer.mozilla.org/de/docs/Web/CSS/font-style) and [`weight`](https://developer.mozilla.org/de/docs/Web/CSS/font-weight). + +````js +{ + style: 'normal', + weight: 400, + sources: [ + { src: '@/assets/fonts/font-a-regular.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regular.woff2', type:'woff2' } + ] +} +```` + +| Key | Type | Required | Description | +| --------- | -------------------- | -------- | ---------------------------------------------------------------------- | +| `style` | `String` | yes | `font-style` of FontFace, e.g. `normal`, `italic` | +| `weight` | `String` or `Number` | yes | `font-weight` of FontFace, e.g. `400`, `normal` | +| `sources` | `Array` | yes | list of all font files assigned to the variant ([`sources`](#sources)) | + +### `sources` + +- Type: `Array` + +List of all available font files of a font family variation. + +````js +[ + { src: '@/assets/fonts/font-a-regular.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regular.woff2', type:'woff2' } +] +```` + +| Key | Type | Required | Value | +| ------ | -------- | -------- | ---------------------------------------------------------- | +| `src` | `String` | yes | path to a font file, the use of aliases is possible | +| `type` | `String` | yes | file format of the specified file, e.g. `woff`, `woff2`, … | + +## `targetFormats` + +- Type: `Array` + - Default: `['webp', 'avif', 'jpg|jpeg|png|gif']` + +Sets the default formats for the `SpeedkitPicture`. + +Can be overridden in the `SpeedkitPicture` via the [`formats`](/v3/guide/components/speedkit-picture#formats) property. + +For `png`, `jpeg` and `gif` formats we have added the `|` operator in the declaration. +This adjusts the destination format to the source format. + +### Example + +**Bad** + +The declaration below generates a `png`, `jpeg` and `gif` (destination format) for each `jpeg` (source format). The same applies to a `png` and a `gif` as source format. However, this is not practical for the source specifications in the Picture. + +````js +{ + targetFormats: ['jpg', 'jpeg', 'png', 'gif'] +} +```` + +**Good** + +Based on the source format, the appropriate target format is created using the declaration described below. + +````js +{ + targetFormats: ['jpg|jpeg|png|gif'] +} +```` + +::: info +For the avif and webp formats the | operator is not needed, because these two image formats do not depend on the source format, as it is the case for png, jpeg and gif. +::: + +## `lazyOffset` + +- Type: `Object` + +Global option for the [`IntersectionObserver`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API) built into the **Nuxt Speedkit**. + +````js +{ + component: '0%', + asset: '0%' +} +```` + + | Key | Type | Required | Description | Default | + | ----------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | + | `component` | `String` | yes | [`rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver/rootMargin) value for [`SpeedkitHydrate`](/v3/usage#import-components). | `0%` | + | `asset` | `String` | yes | [`rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver/rootMargin) value for all static ressources (`v-font`, `SpeedkitPicture` & `SpeedkitImage`). | `0%` | + +## `disableNuxtCritters` + +- Type: `Boolean` + - Default: `false` + +If set, `@nuxtjs/critters` will not be integrated. + +::: danger +⚠️ Note that CSS is not embedded in the page. +::: + +::: info +For more information: +::: + +## `disableNuxtFontaine` + +- Type: `Boolean` + - Default: `false` + +If set, `@nuxtjs/fontaine` will not be integrated. + +::: info +For more information: +::: + +## `disableNuxtImage` + +- Type: `Boolean` + - Default: `false` + +If set, `@nuxt/image` will not be integrated. + +::: danger +Note that the use of `SpeedkitImage`, `SpeedkitPicture`, `SpeedkitVimeo` and `SpeedkitYoutube` is not supported if `@nuxt/image` is not integrated. +::: diff --git a/docs/src/guide/setup.md b/docs/src/guide/setup.md new file mode 100644 index 0000000000..f0ae029fd0 --- /dev/null +++ b/docs/src/guide/setup.md @@ -0,0 +1,147 @@ +--- +title: Setup +--- + +# {{$frontmatter.title}} + +Check the [Nuxt.js documentation](https://nuxtjs.org/guides/configuration-glossary/configuration-modules) for more information about installing and using modules in Nuxt.js. + +## Installation + +Install `nuxt-speedkit` as a dependency to your project: + +::: code-group + + ```bash [Yarn] + yarn add nuxt-speedkit@next + ``` + + ```bash [NPM] + npm install nuxt-speedkit@next + ``` + +::: + +Add `nuxt-speedkit` to the `modules` section of `nuxt.config.js`: + +### @nuxt/image + +**Nuxt Speedkit** uses the module `@nuxt/image`, if this is not already present, it will be integrated automatically. + +It is necessary for the use of the components `SpeedkitYoutube` and `SpeedkitVimeo` to add aliases and domains to the `@nuxt/image` options. These are needed to retrieve the images from Youtube and Vimeo. + +::: code-group + +````js[@nuxt/image] +{ + domains: ['img.youtube.com', 'i.vimeocdn.com'], + alias: { + youtube: 'https://img.youtube.com', + vimeo: 'https://i.vimeocdn.com', + } +} +```` + +::: + +More about `@nuxt/image` module options can be found [here](https://image.nuxtjs.org/configuration). + +## Example Configuration + +::: code-group + +````js[nuxt.config.js] +{ + modules: [ + 'nuxt-speedkit' + ], + + speedkit: { + + detection: { + performance: true, + browserSupport: true + }, + + performanceMetrics: { + device: { + hardwareConcurrency: { min: 2, max: 48 }, + deviceMemory: { min: 2 } + }, + timing: { + fcp: 800, + dcl: 1200 + } + }, + + fonts: [{ + family: 'Font A', + locals: ['Font A'], + fallback: ['Arial', 'sans-serif'], + variances: [ + { + style: 'normal', + weight: 400, + sources: [ + { src: '@/assets/fonts/font-a-regular.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regular.woff2', type:'woff2' } + ] + }, { + style: 'italic', + weight: 400, + sources: [ + { src: '@/assets/fonts/font-a-regularItalic.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regularItalic.woff2', type:'woff2' } + ] + }, { + style: 'normal', + weight: 700, + sources: [ + { src: '@/assets/fonts/font-a-700.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-700.woff2', type:'woff2' } + ] + } + ] + }], + + targetFormats: ['webp', 'avif', 'jpg|jpeg|png|gif'], + + componentAutoImport: false, + componentPrefix: undefined, + + /** + * IntersectionObserver rootMargin for Compoennts and Assets + */ + lazyOffset: { + component: '0%', + asset: '0%' + } + + }, + + image: { + screens: { + default: 320, + xxs: 480, + xs: 576, + sm: 768, + md: 996, + lg: 1200, + xl: 1367, + xxl: 1600, + '4k': 1921 + }, + + domains: ['img.youtube.com', 'i.vimeocdn.com'], + + alias: { + youtube: 'https://img.youtube.com', + vimeo: 'https://i.vimeocdn.com', + } + } +} +```` + +::: + +See [module options](/v3/guide/options). diff --git a/docs/src/guide/usage.md b/docs/src/guide/usage.md new file mode 100644 index 0000000000..bbbf840e35 --- /dev/null +++ b/docs/src/guide/usage.md @@ -0,0 +1,98 @@ +--- +title: Usage +--- +# {{$frontmatter.title}} + +The following tools are provided to optimize your webpage: + +## Critical prop for critical components + +A critical component is visible in the viewport when the web page is initially loaded. This can be communicated to the automated background process via a critical prop. The flag is passed on to all child components. This means that only the main component (organism) must be provided with it. With the help of this flag, the corresponding static resources (images & fonts) are also declared as preload tags in the page head. All other components and their associated resources, that do not have a positive critical prop, are lazy loaded on demand. + +````html + +```` + +::: info +In the current version, the critical flag must be set manually on the components. Automation would be conceivable in the future. However, according to current knowledge, this would have a massive impact on deployment times when using Puppeteer or similar tools. We are still collecting ideas here. If you know of a more efficient way, please send us a feature request. +::: + +## Font declaration + +The integration of fonts is component-based directly in the Vue template. All fonts, which have been declared in `nuxt.config`, can be assigned directly to the corresponding HTML element or component. In addition, subselectors and media queries can be defined, which enable viewport-based declarations or rich-text declarations. +The cool thing about this is that it saves the additional declaration in the CSS. You no longer have to keep the template and the CSS with its corresponding selectors for fonts in sync. Yeah! This is extremely helpful, especially when it comes to theming. + +````html + +```` + +[Learn more](/v3/directives/v-font) about directive `v-font`. + +::: warning +Fonts are no longer explicitly defined via CSS, otherwise the loading behavior of the fonts cannot be controlled and an optimized loading behavior of the page can no longer be guaranteed. +::: + +## Import components + +Until now, components were imported either statically (`import component from '@/component';`) or dynamically (`import('@/component')`). However, with these two variants, hydration cannot be controlled. As a result, all components are also initialized on initial load. `nuxt-speedkit` offers a corresponding loader for this feature request. Each async component import should be enclosed with this loader in a page or layout. + +- 'Ensures that components are initialized only when needed in the visible viewport.' +- 'Optimizes initialization of critical components on initial page load (critical components are initially in the visible viewport).' + +In the background, the module [`vue3-lazy-hydration`](https://github.com/freddy38510/vue3-lazy-hydration) inspired by `vue-lazy-hydration` from [Markus Oberlehner](https://github.com/maoberlehner/vue-lazy-hydration) is used in a standardised way. + +````js +import speedkitHydrate from '#speedkit/hydrate'; + +export default { + components: { + Stage: speedkitHydrate(() => import('@/components/organisms/Stage')), + } +}; +```` + +Whether a component is in the viewport or not is determined in the background by the intersection observer. If the initialisation is to take place earlier, e.g. when scrolling, this can be adjusted accordingly via the `rootMargin` option in the [nuxt.config](/v3/options#lazyoffset). + +::: warning +Although the #speedkit/hydrate function can be used in any component, we recommend its explicit use only in pages and layout. Its use within components can be useful only in explicit special cases. Here we recommend the general use of static imports. +::: + +::: info +With NODE-ENV (development), the components are included directly.
This is relevant for the hot reload of the imported vue files. +::: + +## Speedkit Components + +In order to be able to load further static resources such as pictures, iFrames or Vimeo/Youtube videos in the iFrame in a performance-optimised way, we provide the following components. The speedkit components can be imported via the namespace `#speedkit/components`. + +- [SpeedkitLayer](/v3/guide/components/speedkit-layer) +- [SpeedkitPicture](/v3/guide/components/speedkit-picture) +- [SpeedkitImage](/v3/guide/components/speedkit-image) +- [SpeedkitIframe](/v3/guide/components/speedkit-iframe) +- [SpeedkitVimeo](/v3/guide/components/speedkit-vimeo) +- [SpeedkitYoutube](/v3/guide/components/speedkit-youtube) + +````html + + + +```` + +::: info +The speedkit components will be expanded in the future. If you have explicit wishes, please send us a feature request or directly a pull request with the corresponding feature :) +::: + +## Example + +You can check out a sample integration of `nuxt-speedkit` at [Nuxt Speedkit Example](https://github.com/GrabarzUndPartner/nuxt-speedkit-example). + + diff --git a/docs/src/index.md b/docs/src/index.md new file mode 100644 index 0000000000..a5cc3f8c13 --- /dev/null +++ b/docs/src/index.md @@ -0,0 +1,58 @@ +--- +outline: deep + +title: Introduction +--- + +# {{$frontmatter.title}} + + + + +[Module](https://www.npmjs.com/package/nuxt-speedkit) for [NuxtJS](https://nuxtjs.org). + +::: info You are reading the documentation for Nuxt Speedkit (v3)! + +- **Nuxt Speedkit (v2)** documentation has been moved to [nuxt-speedkit.grabarzundpartner.dev/v2/](https://nuxt-speedkit.grabarzundpartner.dev/v2/). +- Upgrading from **Nuxt Speedkit (v2)** ? Check out the [Migration Guide](/migration/v3/). +::: + +**Nuxt Speedkit** takes over the lighthouse performance optimization of your generated website. + +In order to achieve a performance score of 100/100, only the necessary resources located in the current viewport may be initialized when the page is loaded. This includes images, fonts and the js-modules. Until now, there has been no practical and usable concept to help developers maintain an overview and enable accurate targeting in NuxtJS projects. + +This module addresses this problem and provides a holistic approach to intelligently load the necessary viewport related resources to reduce FCP, DCL, TTI, TBT and CLS. + +We didn't reinvent the whole wheel. We adapt the lazy hydration concept of [Markus Oberlehner](https://github.com/maoberlehner/vue-lazy-hydration) to load js components in an efficient way, use the [nuxt/image](https://github.com/nuxt/image) module as a base to retrieve optimized image resolutions for our picture and image components and add some new stuff to obtain a holistic solution. + +## Requirements + +- NodeJS `>= 19` +- NuxtJS `>= 3.5.0` + +## Features + +We provide the following CMS-friendly features: + +- dynamic loading of viewport based page resources like fonts, components, pictures, images and iframes +- optional blocking of javascript execution by initial performance measuring +- optimized initial load of javascript files by eliminating of unnecessary javascript files +- prevents the loading of unnecessary resources (including components) that are outside the current viewport. +- optional info layer concept to inform users about a reduced UX when bandwidth or hardware is compromised. +- completely new approach of font declaration +- optimized picture component (supports viewport based sources e.g. landscape/portrait) +- optimized image component +- supports SEO-friendly lazy hydration mode (picture + image) +- optimized youtube/vimeo component (auto generated poster image in different resolutions) + +## Results + +- delivery of the minimum required resources based on the current viewport +- if you use the tools as specified you will get a lighthouse performance score of 100/100 + +## Demos + +- [Grabarz & Partner](https://grabarzundpartner.de/) ([Lighthouse](https://pagespeed.web.dev/report?url=https%3A%2F%2Fgrabarzundpartner.de%2F), [Sitespeed](https://nuxt-speedkit.grabarzundpartner.dev/reports/sitespeed/grabarzundpartner/)) +- [Grabarz Group](https://grabarz-group.de/) ([Lighthouse](https://pagespeed.web.dev/report?url=https%3A%2F%2Fgrabarz-group.de%2F), [Sitespeed](https://nuxt-speedkit.grabarzundpartner.dev/reports/sitespeed/grabarz-group/)) +- [Nuxt Speedkit Example](https://nuxt-speedkit.grabarzundpartner.dev/playground/) ([Lighthouse](https://pagespeed.web.dev/report?url=https%3A%2F%2Fnuxt-speedkit.grabarzundpartner.dev%2Fplayground%2F), [Sitespeed](https://nuxt-speedkit.grabarzundpartner.dev/reports/sitespeed/nuxt-speedkit/)) diff --git a/docs/public/CNAME b/docs/src/public/CNAME similarity index 100% rename from docs/public/CNAME rename to docs/src/public/CNAME diff --git a/docs/public/favicon.ico b/docs/src/public/favicon.ico similarity index 100% rename from docs/public/favicon.ico rename to docs/src/public/favicon.ico diff --git a/docs/public/icon.png b/docs/src/public/icon.png similarity index 100% rename from docs/public/icon.png rename to docs/src/public/icon.png diff --git a/docs/public/intro-light.png b/docs/src/public/intro-light.png similarity index 100% rename from docs/public/intro-light.png rename to docs/src/public/intro-light.png diff --git a/docs/public/logo-dark.svg b/docs/src/public/logo-dark.svg similarity index 100% rename from docs/public/logo-dark.svg rename to docs/src/public/logo-dark.svg diff --git a/docs/public/logo-light.svg b/docs/src/public/logo-light.svg similarity index 100% rename from docs/public/logo-light.svg rename to docs/src/public/logo-light.svg diff --git a/docs/public/logo.svg b/docs/src/public/logo.svg similarity index 100% rename from docs/public/logo.svg rename to docs/src/public/logo.svg diff --git a/docs/public/preview.png b/docs/src/public/preview.png similarity index 100% rename from docs/public/preview.png rename to docs/src/public/preview.png diff --git a/docs/public/site.webmanifest b/docs/src/public/site.webmanifest similarity index 100% rename from docs/public/site.webmanifest rename to docs/src/public/site.webmanifest diff --git a/docs/src/v3/0.index.md b/docs/src/v3/0.index.md new file mode 100644 index 0000000000..bf9ae4bb66 --- /dev/null +++ b/docs/src/v3/0.index.md @@ -0,0 +1,70 @@ +--- +title: Introduction +--- + +# {{title}} + + + + +[Module](https://www.npmjs.com/package/nuxt-speedkit) for [NuxtJS](https://nuxtjs.org). + +::alert{type="info"} +**You are reading the documentation for Nuxt Speedkit (v3)!** + + +- Upgrading from **Nuxt Speedkit (v2)** ? Check out the [Migration Guide](/migration/v3/). +:: + + + +⚠️ Currently `nuxt-speedkit` can only be used with the builder `vite`. + +**Nuxt Speedkit** takes over the lighthouse performance optimization of your generated website. + +In order to achieve a performance score of 100/100, only the necessary resources located in the current viewport may be initialized when the page is loaded. This includes images, fonts and the js-modules. Until now, there has been no practical and usable concept to help developers maintain an overview and enable accurate targeting in NuxtJS projects. + +This module addresses this problem and provides a holistic approach to intelligently load the necessary viewport related resources to reduce FCP, DCL, TTI, TBT and CLS. + +We didn't reinvent the whole wheel. We adapt the lazy hydration concept of [Markus Oberlehner](https://github.com/maoberlehner/vue-lazy-hydration) to load js components in an efficient way, use the [nuxt/image](https://github.com/nuxt/image) module as a base to retrieve optimized image resolutions for our picture and image components and add some new stuff to obtain a holistic solution. + +## Requirements + +::list{type="info"} + +- NodeJS `>= 19` +- NuxtJS `>= 3.5.0` +:: + +## Features + +We provide the following CMS-friendly features: + +::list{type="success"} + +- dynamic loading of viewport based page resources like fonts, components, pictures, images and iframes +- optional blocking of javascript execution by initial performance measuring +- optimized initial load of javascript files by eliminating of unnecessary javascript files +- prevents the loading of unnecessary resources (including components) that are outside the current viewport. +- optional info layer concept to inform users about a reduced UX when bandwidth or hardware is compromised. +- completely new approach of font declaration +- optimized picture component (supports viewport based sources e.g. landscape/portrait) +- optimized image component +- supports SEO-friendly lazy hydration mode (picture + image) +- optimized youtube/vimeo component (auto generated poster image in different resolutions) +:: + +## Results + +::list{type="success"} + +- delivery of the minimum required resources based on the current viewport +- if you use the tools as specified you will get a lighthouse performance score of 100/100 +:: + + diff --git a/docs/content/1.concept.md b/docs/src/v3/1.concept.md similarity index 100% rename from docs/content/1.concept.md rename to docs/src/v3/1.concept.md diff --git a/docs/src/v3/3.guide/0.setup.md b/docs/src/v3/3.guide/0.setup.md new file mode 100644 index 0000000000..d658917cd2 --- /dev/null +++ b/docs/src/v3/3.guide/0.setup.md @@ -0,0 +1,138 @@ +--- +title: Setup +--- +# {{title}} + +Check the [Nuxt.js documentation](https://nuxtjs.org/guides/configuration-glossary/configuration-modules) for more information about installing and using modules in Nuxt.js. + +## Installation + +Install `nuxt-speedkit` as a dependency to your project: + +::code-group + + ```bash [Yarn] + yarn add nuxt-speedkit@next + ``` + + ```bash [NPM] + npm install nuxt-speedkit@next + ``` + +:: + +Add `nuxt-speedkit` to the `modules` section of `nuxt.config.js`: + +### @nuxt/image + +**Nuxt Speedkit** uses the module `@nuxt/image`, if this is not already present, it will be integrated automatically. + +It is necessary for the use of the components `SpeedkitYoutube` and `SpeedkitVimeo` to add aliases and domains to the `@nuxt/image` options. These are needed to retrieve the images from Youtube and Vimeo. + +````js[@nuxt/image] +{ + domains: ['img.youtube.com', 'i.vimeocdn.com'], + alias: { + youtube: 'https://img.youtube.com', + vimeo: 'https://i.vimeocdn.com', + } +} +```` + +More about `@nuxt/image` module options can be found [here](https://image.nuxtjs.org/configuration). + +## Example Configuration + +````js[nuxt.config.js] +{ + modules: [ + 'nuxt-speedkit' + ], + + speedkit: { + + detection: { + performance: true, + browserSupport: true + }, + + performanceMetrics: { + device: { + hardwareConcurrency: { min: 2, max: 48 }, + deviceMemory: { min: 2 } + }, + timing: { + fcp: 800, + dcl: 1200 + } + }, + + fonts: [{ + family: 'Font A', + locals: ['Font A'], + fallback: ['Arial', 'sans-serif'], + variances: [ + { + style: 'normal', + weight: 400, + sources: [ + { src: '@/assets/fonts/font-a-regular.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regular.woff2', type:'woff2' } + ] + }, { + style: 'italic', + weight: 400, + sources: [ + { src: '@/assets/fonts/font-a-regularItalic.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regularItalic.woff2', type:'woff2' } + ] + }, { + style: 'normal', + weight: 700, + sources: [ + { src: '@/assets/fonts/font-a-700.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-700.woff2', type:'woff2' } + ] + } + ] + }], + + targetFormats: ['webp', 'avif', 'jpg|jpeg|png|gif'], + + componentAutoImport: false, + componentPrefix: undefined, + + /** + * IntersectionObserver rootMargin for Compoennts and Assets + */ + lazyOffset: { + component: '0%', + asset: '0%' + } + + }, + + image: { + screens: { + default: 320, + xxs: 480, + xs: 576, + sm: 768, + md: 996, + lg: 1200, + xl: 1367, + xxl: 1600, + '4k': 1921 + }, + + domains: ['img.youtube.com', 'i.vimeocdn.com'], + + alias: { + youtube: 'https://img.youtube.com', + vimeo: 'https://i.vimeocdn.com', + } + } +} +```` + +See [module options](/v3/guide/options). diff --git a/docs/src/v3/3.guide/1.options.md b/docs/src/v3/3.guide/1.options.md new file mode 100644 index 0000000000..8a6fd1f84a --- /dev/null +++ b/docs/src/v3/3.guide/1.options.md @@ -0,0 +1,292 @@ +--- +title: Options +--- + +# {{title}} + +## `crossorigin` + +- Type: `String`, `Boolean` + - Default: `'anonymous'` + - Valid values: `anonymous`, `use-credentials`, `''`, `true`, `false` + +Sets the global `crossorigin` value of the **Nuxt Speedkit** preloads. +The default value is the `crossorigin` value from the [Render Configuration](https://nuxtjs.org/docs/2.x/configuration-glossary/configuration-render#crossorigin). +> Set `false` to disable the `crossorigin`. + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +## `optimizePreloads` + +- Type: `Boolean` + - Default: `true` + +Activating this option optimizes the initial script preloads and removes unnecessary loads. + +The following NuxtJS settings are made or overwritten in the `nuxt.config`: + +| Property | Value | +| ---------------------------------- | ------- | +| `nuxt.options.vite.build.manifest` | `false` | +| `nuxt.options.noScripts` | `true` | + +## `detection` + +- Type: `Object` + +These options can be used to define the initial checks to display the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer). The prerequisite are that the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) has been embedded into the layout. + +````js +{ + performance: true, + browserSupport: true +} +```` + + | Key | Type | Required | Description | Default | + | ---------------- | --------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | + | `performance` | `Boolean` | yes | Checking whether the [minimum characteristic values](/v3/options#performancemetrics) have been reached. If the test is negative, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. | `true` | + | `browserSupport` | `Boolean` | yes | Check if the current browser on client side is supported. If the test is negative, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. | `true` | + +::alert{type="info"} +For the browser support detection, the default [Browserslist](https://github.com/browserslist/browserslist) of the NuxtJS configuration is used. +:: + +## `performanceMetrics` + +- Type: `Object` + +With the help of the metrics, the actual performance check on client side can be configured. + +````js +{ + device: { + hardwareConcurrency: { min: 2, max: 48 }, + deviceMemory: { min: 2 } + }, + timing: { + fcp: 800, + dcl: 1200 // fallback if fcp is not available (safari) + } +} +```` + +### `device` + +- Type: `Object` + +Definition of the minimum hardware requirements for visiting the website. + +````js +{ + hardwareConcurrency: { min: 2, max: 48 }, + deviceMemory: { min: 2 } +} +```` + + | Key | Type | Required | Description | Default | + | --------------------- | -------- | -------- | ---------------------- | --------------------- | + | `hardwareConcurrency` | `Object` | yes | min/max number of CPUs | `{ min: 2, max: 48 }` | + | `deviceMemory` | `Object` | yes | min size of memory | `{ min: 2 }` | + +### `timing` + +- Type: `Object` + +Definition of the max. FCP duration (ms). If the specified value is exceeded, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. If the browser does not grant access to the FCP, as fallback the DCL will be evaluated. + +````js +{ + fcp: 800, + dcl: 1200 // fallback if fcp is not available (safari) +} +```` + + | Key | Type | Required | Description | Default | + | ----- | -------- | -------- | -------------------------------------------------------------------------------------------------------------- | ------- | + | `fcp` | `Number` | yes | Max. FCP duration in ms [learn More](https://developer.mozilla.org/en-US/docs/Glossary/First_contentful_paint) | `800` | + | `dcl` | `Number` | yes | Max. DCL duration in ms | `1200` | + +## `fonts` + +- Type: `Array` + +List of all font families used in the project. Only the fonts that are listed in the configuration can be retrieved and integrated via [`$fonts.getFont(...)`](/v3/directives/v-font). + +````js +[ + { + family: 'Font A', + locals: ['Font A'], + fallback: ['Arial', 'sans-serif'], + variances: […] + }, + { + family: 'Font B', + locals: ['Font B'], + fallback: ['Arial', 'sans-serif'], + variances: […] + } +] +```` + +### Font-Family + +- Type: `Object` + +Describes a font family with all its variants. + +````js +{ + family: 'Font A', + locals: ['Font A'], + fallback: ['Arial', 'sans-serif'], + variances: […] +} +```` + +| Key | Type | Required | Description | +| ----------- | -------- | -------- | ------------------------------------------------ | +| `family` | `String` | yes | name of the font family | +| `locals` | `Array` | yes | system font name of the specified font family | +| `fallback` | `Array` | yes | fallback fonts e.g. `['Arial', 'sans-serif']` | +| `variances` | `Array` | yes | list of font family variants (e.g. Bold, Italic) | + +::alert{type="warning"} +Prevent sizing discrepancy between your custom and fallback font for perfect swap and reduction of layout shifts. [Learn more](https://meowni.ca/font-style-matcher/) +:: + +### Font-Variance + +- Type: `Object` + +A font variant describes an instance of a font family and is used to generate the `FontFace` declaration. +Font variants differ in [`style`](https://developer.mozilla.org/de/docs/Web/CSS/font-style) and [`weight`](https://developer.mozilla.org/de/docs/Web/CSS/font-weight). + +````js +{ + style: 'normal', + weight: 400, + sources: [ + { src: '@/assets/fonts/font-a-regular.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regular.woff2', type:'woff2' } + ] +} +```` + +| Key | Type | Required | Description | +| --------- | -------------------- | -------- | ---------------------------------------------------------------------- | +| `style` | `String` | yes | `font-style` of FontFace, e.g. `normal`, `italic` | +| `weight` | `String` or `Number` | yes | `font-weight` of FontFace, e.g. `400`, `normal` | +| `sources` | `Array` | yes | list of all font files assigned to the variant ([`sources`](#sources)) | + +### `sources` + +- Type: `Array` + +List of all available font files of a font family variation. + +````js +[ + { src: '@/assets/fonts/font-a-regular.woff', type:'woff' }, + { src: '@/assets/fonts/font-a-regular.woff2', type:'woff2' } +] +```` + +| Key | Type | Required | Value | +| ------ | -------- | -------- | ---------------------------------------------------------- | +| `src` | `String` | yes | path to a font file, the use of aliases is possible | +| `type` | `String` | yes | file format of the specified file, e.g. `woff`, `woff2`, … | + +## `targetFormats` + +- Type: `Array` + - Default: `['webp', 'avif', 'jpg|jpeg|png|gif']` + +Sets the default formats for the `SpeedkitPicture`. + +Can be overridden in the `SpeedkitPicture` via the [`formats`](/v3/guide/components/speedkit-picture#formats) property. + +For `png`, `jpeg` and `gif` formats we have added the `|` operator in the declaration. +This adjusts the destination format to the source format. + +### Example + +**Bad** + +The declaration below generates a `png`, `jpeg` and `gif` (destination format) for each `jpeg` (source format). The same applies to a `png` and a `gif` as source format. However, this is not practical for the source specifications in the Picture. + +````js +{ + targetFormats: ['jpg', 'jpeg', 'png', 'gif'] +} +```` + +**Good** + +Based on the source format, the appropriate target format is created using the declaration described below. + +````js +{ + targetFormats: ['jpg|jpeg|png|gif'] +} +```` + +::alert{type="info"} +For the avif and webp formats the | operator is not needed, because these two image formats do not depend on the source format, as it is the case for png, jpeg and gif. +:: + +## `lazyOffset` + +- Type: `Object` + +Global option for the [`IntersectionObserver`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API) built into the **Nuxt Speedkit**. + +````js +{ + component: '0%', + asset: '0%' +} +```` + + | Key | Type | Required | Description | Default | + | ----------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | + | `component` | `String` | yes | [`rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver/rootMargin) value for [`SpeedkitHydrate`](/v3/usage#import-components). | `0%` | + | `asset` | `String` | yes | [`rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver/rootMargin) value for all static ressources (`v-font`, `SpeedkitPicture` & `SpeedkitImage`). | `0%` | + +## `disableNuxtCritters` + +- Type: `Boolean` + - Default: `false` + +If set, `@nuxtjs/critters` will not be integrated. + +::alert{type="danger"} +⚠️ Note that CSS is not embedded in the page. +:: + +::alert{type="info"} +For more information: +:: + +## `disableNuxtFontaine` + +- Type: `Boolean` + - Default: `false` + +If set, `@nuxtjs/fontaine` will not be integrated. + +::alert{type="info"} +For more information: +:: + +## `disableNuxtImage` + +- Type: `Boolean` + - Default: `false` + +If set, `@nuxt/image` will not be integrated. + +::alert{type="danger"} +Note that the use of `SpeedkitImage`, `SpeedkitPicture`, `SpeedkitVimeo` and `SpeedkitYoutube` is not supported if `@nuxt/image` is not integrated. +:: diff --git a/docs/src/v3/3.guide/2.usage.md b/docs/src/v3/3.guide/2.usage.md new file mode 100644 index 0000000000..f5c2d0efb7 --- /dev/null +++ b/docs/src/v3/3.guide/2.usage.md @@ -0,0 +1,101 @@ +--- +title: Usage +--- +# {{title}} + +The following tools are provided to optimize your webpage: + +## Critical prop for critical components + +A critical component is visible in the viewport when the web page is initially loaded. This can be communicated to the automated background process via a critical prop. The flag is passed on to all child components. This means that only the main component (organism) must be provided with it. With the help of this flag, the corresponding static resources (images & fonts) are also declared as preload tags in the page head. All other components and their associated resources, that do not have a positive critical prop, are lazy loaded on demand. + +````html + +```` + + +In the current version, the critical flag must be set manually on the components. Automation would be conceivable in the future. However, according to current knowledge, this would have a massive impact on deployment times when using Puppeteer or similar tools. We are still collecting ideas here. If you know of a more efficient way, please send us a feature request. + + +## Font declaration + +The integration of fonts is component-based directly in the Vue template. All fonts, which have been declared in `nuxt.config`, can be assigned directly to the corresponding HTML element or component. In addition, subselectors and media queries can be defined, which enable viewport-based declarations or rich-text declarations. +The cool thing about this is that it saves the additional declaration in the CSS. You no longer have to keep the template and the CSS with its corresponding selectors for fonts in sync. Yeah! This is extremely helpful, especially when it comes to theming. + +````html + +```` + +[Learn more](/v3/directives/v-font) about directive `v-font`. + +::alert{type="warning"} +Fonts are no longer explicitly defined via CSS, otherwise the loading behavior of the fonts cannot be controlled and an optimized loading behavior of the page can no longer be guaranteed. +:: + +## Import components + +Until now, components were imported either statically (`import component from '@/component';`) or dynamically (`import('@/component')`). However, with these two variants, hydration cannot be controlled. As a result, all components are also initialized on initial load. `nuxt-speedkit` offers a corresponding loader for this feature request. Each async component import should be enclosed with this loader in a page or layout. + +::list{type="success"} + +- 'Ensures that components are initialized only when needed in the visible viewport.' +- 'Optimizes initialization of critical components on initial page load (critical components are initially in the visible viewport).' +:: + +In the background, the module [`vue3-lazy-hydration`](https://github.com/freddy38510/vue3-lazy-hydration) inspired by `vue-lazy-hydration` from [Markus Oberlehner](https://github.com/maoberlehner/vue-lazy-hydration) is used in a standardised way. + +````js +import speedkitHydrate from '#speedkit/hydrate'; + +export default { + components: { + Stage: speedkitHydrate(() => import('@/components/organisms/Stage')), + } +}; +```` + +Whether a component is in the viewport or not is determined in the background by the intersection observer. If the initialisation is to take place earlier, e.g. when scrolling, this can be adjusted accordingly via the `rootMargin` option in the [nuxt.config](/v3/options#lazyoffset). + +::alert{type="warning"} +Although the #speedkit/hydrate function can be used in any component, we recommend its explicit use only in pages and layout. Its use within components can be useful only in explicit special cases. Here we recommend the general use of static imports. +:: + +::alert{type="info"} +With NODE-ENV (development), the components are included directly.
This is relevant for the hot reload of the imported vue files. +:: + +## Speedkit Components + +In order to be able to load further static resources such as pictures, iFrames or Vimeo/Youtube videos in the iFrame in a performance-optimised way, we provide the following components. The speedkit components can be imported via the namespace `#speedkit/components`. + +- [SpeedkitLayer](/v3/guide/components/speedkit-layer) +- [SpeedkitPicture](/v3/guide/components/speedkit-picture) +- [SpeedkitImage](/v3/guide/components/speedkit-image) +- [SpeedkitIframe](/v3/guide/components/speedkit-iframe) +- [SpeedkitVimeo](/v3/guide/components/speedkit-vimeo) +- [SpeedkitYoutube](/v3/guide/components/speedkit-youtube) + +````html + + + +```` + +::alert{type="info"} +The speedkit components will be expanded in the future. If you have explicit wishes, please send us a feature request or directly a pull request with the corresponding feature :) +:: + +## Example + +You can check out a sample integration of `nuxt-speedkit` at [Nuxt Speedkit Example](https://github.com/GrabarzUndPartner/nuxt-speedkit-example). + +:sandbox{src='//codesandbox.io/embed/github/GrabarzUndPartner/nuxt-speedkit-example/tree/main/?hidenavigation=1&theme=dark'}> diff --git a/docs/src/v3/3.guide/3.caveats.md b/docs/src/v3/3.guide/3.caveats.md new file mode 100644 index 0000000000..a801d1ec26 --- /dev/null +++ b/docs/src/v3/3.guide/3.caveats.md @@ -0,0 +1,48 @@ +--- +title: Caveats +--- +# {{title}} + +## Prevent `SPEEDINDEX_OF_ZERO` and `NO_LCP` + +The `window` event `nuxt-speedkit:run` is provided and useable to run code outside the app during initialization. + +If the performance is not sufficient on the client side, this can be retrieved with the help of the event object `e.detail.sufficient`. + +### Example + +A case where the event may be needed would be when the initial viewport on a website is blank and it is not displayed until the initialization is complete. + +In this case, measurements with Lighthouse can lead to these errors `SPEEDINDEX_OF_ZERO` and `NO_LCP`. + +In order to solve this case, it can be provided that the content of the stage can already be displayed outside of the app initialization in the case of a slow initialization. + +In this case the global event `nuxt-speedkit:run` can be used. It will return an event object with `e.detail.sufficient` as value. With the help of this status you can decide whether the stage should be displayed in advance. + +**Component Example** + +```html + + + +``` diff --git a/docs/src/v3/3.guide/4.composable/0.useFont.md b/docs/src/v3/3.guide/4.composable/0.useFont.md new file mode 100644 index 0000000000..7153e141a3 --- /dev/null +++ b/docs/src/v3/3.guide/4.composable/0.useFont.md @@ -0,0 +1,35 @@ +--- +title: useFont +--- + +# {{title}} + +## Options + +| Property | Type | Description | Default Value | +| ---------- | --------- | --------------------------------- | ---------------------- | +| `critical` | `Boolean` | Override critical from component. | inherit from component | + +```js +const { $getFont } = useFonts({critical: true}); +``` + +## Return + +| Property | Description | +| ------------ | ----------- | +| `isCritical` | | +| `$getFont` | | + +## Example + +```html + + + +``` diff --git a/docs/src/v3/3.guide/4.composable/1.useCritical.md b/docs/src/v3/3.guide/4.composable/1.useCritical.md new file mode 100644 index 0000000000..f279e57181 --- /dev/null +++ b/docs/src/v3/3.guide/4.composable/1.useCritical.md @@ -0,0 +1,34 @@ +--- +title: useCritical +--- + +# {{title}} + +## Options + +| Property | Type | Description | Default Value | +| ---------- | --------- | --------------------------------- | ---------------------- | +| `critical` | `Boolean` | Override critical from component. | inherit from component | + +```js +const { isCritical } = useCritical({critical: true}); +``` + +## Return + +| Property | Description | +| ------------ | ----------- | +| `isCritical` | | + +## Example + +```html + + + +``` diff --git a/docs/src/v3/3.guide/4.composable/2.useConfig.md b/docs/src/v3/3.guide/4.composable/2.useConfig.md new file mode 100644 index 0000000000..83e089d70e --- /dev/null +++ b/docs/src/v3/3.guide/4.composable/2.useConfig.md @@ -0,0 +1,16 @@ +--- +title: useConfig +--- + +# {{title}} + +## Return + +Returns `nuxt-speedkit` public runtime options. + +## Example + +```js +import useConfig from '#speedkit/composables/config'; +const $speedkitOptions = useConfig(); +``` diff --git a/docs/src/v3/3.guide/4.composable/3.useComponentObserver.md b/docs/src/v3/3.guide/4.composable/3.useComponentObserver.md new file mode 100644 index 0000000000..4e9abec4dc --- /dev/null +++ b/docs/src/v3/3.guide/4.composable/3.useComponentObserver.md @@ -0,0 +1,42 @@ +--- +title: useComponentObserver +--- + +# {{title}} + +## Options + +| Property | Type | Description | Default Value | +| ----------------- | ------------- | ------------------------------------------------------------------------------------------------------------------ | ------------- | +| `root` | `HTMLElement` | [MDN `root`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#root) | `undefined` | +| `rootMargin` | `String` | [MDN `rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#rootMargin) | `'0px'` | +| `threshold` | `Array` | [MDN `threshold`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#threshold) | `[0]` | +| `trackVisibility` | `Boolean` | [MDN `trackVisibility`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#trackVisibility) | `false` | +| `delay` | `Number` | [MDN `delay`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#delay) | `0` | + +## Return + +| Property | Type | Description | +| -------- | --------- | --------------------------------------------------------------- | +| `el` | `Object` | Component ref for tag referencing. | +| `inView` | `Boolean` | Reference that indicates whether referenced element is visible. | + +## Example + +```html + + + +``` diff --git a/docs/src/v3/3.guide/4.composable/_dir.yml b/docs/src/v3/3.guide/4.composable/_dir.yml new file mode 100644 index 0000000000..271b5fb9aa --- /dev/null +++ b/docs/src/v3/3.guide/4.composable/_dir.yml @@ -0,0 +1 @@ +title: Composables diff --git a/docs/src/v3/3.guide/5.directives/_dir.yml b/docs/src/v3/3.guide/5.directives/_dir.yml new file mode 100644 index 0000000000..c209cd2b7e --- /dev/null +++ b/docs/src/v3/3.guide/5.directives/_dir.yml @@ -0,0 +1 @@ +title: Directives diff --git a/docs/src/v3/3.guide/5.directives/v-font.md b/docs/src/v3/3.guide/5.directives/v-font.md new file mode 100644 index 0000000000..7e25368567 --- /dev/null +++ b/docs/src/v3/3.guide/5.directives/v-font.md @@ -0,0 +1,89 @@ +--- +title: v-font +--- + +# {{title}} + +The directive `v-font` is used to integrate the fonts defined in the [module options](/v3/options#fonts) into the website. + +To do this, the respective font must be retrieved via the `$getFont` method contained in the component scope (e.g. `this`). + +Fonts are specified by `family`, `weight` and `style` and can be limited to elements and viewports via the options (`media`, `selector`). + +Normally the directive activates the fonts only when the viewport is reached. +It is recommended to use the property `critical` for components that are already initially contained in the viewport. + +With critical component the fonts are preloaded and are initially active. +More information on critical components can be found [here](/v3/usage#critical-prop-for-critical-components). + +For multiple fonts, a list (`Array`) can be passed. + +````html + + + + + + +```` + +## `$getFont(family, [weight, style, options])` + +`$getFont` is included as a plugin and can be accessed via any component scope. +Use `$getFont` in the `v-font` directive and create the relevant font definition. + +| Key | Type | Requried | Description | Default | +| --------- | ------------------ | -------- | ------------------------------------------------------------------ | -------- | +| `family` | `String` | yes | Font-Family e.g. `Custom Font` | | +| `weight` | `String`, `Number` | | Font-Weight e.g. `400`, `normal` | `400` | +| `style` | `String` | | Font-Style e.g. `normal`, `italic` | `normal` | +| `options` | `Object` | | Media & Selector Options [see more](/v3/directives/v-font#options) | | + +### options + +Each definition can be modified in its behaviour via the options. +With the property `media`, the call of the font definition can be made dependent on the viewport. +The property `selector` can be used to limit the font to elements (e.g. `span`, `.class`). + +````js +{ + media: '(min-width: 768px)', + selector: 'element, .elm, .elm:before' +} +```` + +| Key | Type | Requried | Description | Default | +| ---------- | -------- | -------- | ---------------------------------------------- | ------- | +| `media` | `String` | | CSS Media Query e.g. `(min-width: 768px)` | | +| `selector` | `String` | | CSS Selector e.g. `element, .elm, .elm:before` | | + +## Examples + +### Basic Usage + +````html +Text… +```` + +### Advanced Usage + +````js +[ + + // Font wird auf alles angewendet + $getFont('Font Family A'), + + // Font wird auf `b` und `strong` Tags angwendet + $getFont('Font Family B', 700, 'normal', { selector: 'b, strong' }), + + // Font erscheint erst ab Viewport `>768px` + $getFont('Font Family B', 400, 'normal', { media: '(min-width: 768px)' }), + + // Font wird auf `b` und `strong` Tags angwendet und erscheint erst ab Viewport `>768px` + $getFont('Font Family B', 700, 'normal', { selector: 'b, strong', media: '(min-width: 768px)' }) + +] +```` diff --git a/docs/src/v3/3.guide/6.components/_dir.yml b/docs/src/v3/3.guide/6.components/_dir.yml new file mode 100644 index 0000000000..9937383b73 --- /dev/null +++ b/docs/src/v3/3.guide/6.components/_dir.yml @@ -0,0 +1 @@ +title: Components diff --git a/docs/src/v3/3.guide/6.components/speedkit-iframe.md b/docs/src/v3/3.guide/6.components/speedkit-iframe.md new file mode 100644 index 0000000000..857f1e6d0c --- /dev/null +++ b/docs/src/v3/3.guide/6.components/speedkit-iframe.md @@ -0,0 +1,90 @@ +--- +title: SpeedkitIframe +--- + +# {{title}} + +`SpeedkitIframe`, Iframe & IntersectionObserver in one. + +## Exkurs + +Iframes have a tendency, in the special case of the initial page load, to disrupt the construction and initialisation of the actual page through the massive loading of resources from another source. + +**For the user, this is particularly visible by:** + +::list{type="warning"} + +- Freeze (Short freeze of the page) +- Delayed loading of resources (images, fonts) +- Unnecessarily generated traffic +:: + +## Solution + +In order to solve these points, care should be taken to ensure that the initialisation of the iframe takes place downstream. +This can be realised, for example, via an [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). +This sets the source on the iframe only when the visible viewport has been reached. + +**The following conditions can thus be fulfilled:** +::list{type="success"} + +- Iframe load is reactive. +- No resources are blocked during loading. +- Traffic is only generated when the iframe is visible. +:: + +The strategy mentioned above is provided by the `SpeedkitIframe`, which can be used in the same way as a normal [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). +The included [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver) is configured via the `intersectionObserver` property. + +## Usage + +The `SpeedkitIframe` is used like a normal [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). + +### Example + +````vue + + + +```` + +## Properties + +> Use native attributes from [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). +> +### `componentObserver` + +- Type: `Object` [IntersectionObserver Properties](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver#properties) + - Default: `{ trackVisibility: true, delay: 350 }` + +Sets the options from the integrated [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). + +For advanced usage, [learn more](https://web.dev/intersectionobserver-v2/) about option `trackVisibility` from [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). + +## Events + +````html + +```` + +| Name | Description | +| ------- | -------------------------------------------------- | +| `load` | Triggered when Iframe has finished loading. | +| `enter` | Triggered when component has reached the viewport. | diff --git a/docs/src/v3/3.guide/6.components/speedkit-image.md b/docs/src/v3/3.guide/6.components/speedkit-image.md new file mode 100644 index 0000000000..0344a77e08 --- /dev/null +++ b/docs/src/v3/3.guide/6.components/speedkit-image.md @@ -0,0 +1,224 @@ +--- +title: SpeedkitImage +--- + +# {{title}} + +The `SpeedkitImage` is a `img` implementation based on the module [`@nuxt/image`](https://image.nuxtjs.org/). +It uses the provided API `$img`. + +## Features + +With the current implementation of `SpeedkitImage` we can cover the following functionality: +::list{type="primary"} + +- generation of multiple image resolutions (srcset) +- breakpoint-based differentiation of multiple image resolutions (srcset) +- optimized preloading of critical image resources +- lazy load of non-critical image resources +- base path support +- lazy hydration support +- load and optimize remote images from custom domains +- full SEO support +:: + +## Usage + +The `SpeedkitImage` is used to automatically generate and display different image sizes for different viewports. + +The specified resources can be given by absolute path (static folder) or complete URL. [`nuxt/image`](https://image.nuxtjs.org/) downloads the resources fully automatically and stores the generated and optimized renditions in the destination folder. + +::alert{type="warning"} +Important: For using `SpeedkitImage` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + +```` + +## Properties + +````js +{ + source: { … }, + title: 'Image Title', + alt: 'Image Alt' +} +```` + +### `hydrate` + +- Type: `Boolean` + - Default: `true` + +The initialization of the `SpeedkitImage` in the client can be controlled manually. +Here for the property `hydrate` must be set externally. +If `true` the `SpeedkitImage` is initialized. + +### `source` + +- Type: `Object` + +````js +{ + format: '', + src: '', + sizes: { … }, + modifiers: { … }, + preset: { … }, + provider: '' +} +```` + +#### `format` + +Sets the image output format. + +Available formats: + +- `avif` +- `webp` +- `png` +- `jpg` + +::alert{type="warning"} +Important: Note that if you specify `src` without a file extension, the format must be included. +:: + +#### `src` + +Information on property `src` can be found at [here](https://image.nuxtjs.org/components/nuxt-img#src). + +#### `sizes` + +Describes the image sizes in which the resource should be displayed. The image `sizes` are passed as an `object` and describe with the key-value pairs the image width and the width of the viewport depending on it, e.g. `ImageWidth:MinWidth`. + +The image width, is definied by [`screens`](https://image.nuxtjs.org/configuration/#screens) option from `@nuxt/image` + +**Example** + +In the following example, one image with two different image sizes by breakpoints and output format is `webp`. + +````js +[ + { format: 'webp', src: '/img/image.jpg', sizes: { default: '100vw', sm: '100vw' } } +] +```` + +#### `modifiers` + +- Type: `Object` + +You can give separate modifiers to each source. +This overwrites the global ones of the preset if available. + +Learn more about `modifiers`: + +- + +#### `preset` + +- Type: `Object` + +If a preset is set on a source, the globally defined one is ignored. + +This means that a separate preset can be specified for each source. + +Learn more about `preset`: + +- + +#### `provider` + +- Type: `String` + +If a provider is set on a source, the globally defined one is ignored. + +This means that a separate provider can be specified for each source. + +Learn more about `provider`: + +- + +### `alt` + +- Type: `String` + +Image alternative Text. + +[MDN - HTMLImageElement.alt](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt) + +### `title` + +- Type: `String` + +Image Title. + +[MDN - HTMLElement.title](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/title) + +### `crossorigin` + +- Type: `String`, `Boolean` + +If not set, the global crossorigin is used `this.$speedkit.crossorigin`. + +[Learn more about `crossorigin` option](https://nuxt-speedkit.grabarzundpartner.dev/options#crossorigin) + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +### `critical` + +- Type: `Boolean` + - Default: `$parent.isCritical` + +Set component as critical component. + +[Learn more about critical components](/v3/usage#critical-prop-for-critical-components) + +## Events + +````html + +```` + +| Name | Description | +| ------ | ------------------------------------------------------------- | +| `load` | Triggered when the image resource has been completely loaded. | diff --git a/docs/src/v3/3.guide/6.components/speedkit-layer.md b/docs/src/v3/3.guide/6.components/speedkit-layer.md new file mode 100644 index 0000000000..5c74ebe0fa --- /dev/null +++ b/docs/src/v3/3.guide/6.components/speedkit-layer.md @@ -0,0 +1,148 @@ +--- +title: SpeedkitLayer +--- +# {{title}} + +If the SpeedkitLayer is implemented, the javascript initialisation is automatically monitored. If one of the events + +::list{type="info"} + +- reduced bandwidth +- weak hardware +- unsupported browser +:: + +occurs, the process is paused and only continued or cancelled after a user interaction in the layer. + +The layer is placed once in the layout (e.g. `layouts/default.vue`). +The included SpeedkitLayer serves as a wrapper and must be filled according to the [template](/v3/guide/components/speedkit-layer#template), see [example component](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/example/components/InfoLayer.vue). + +The content contains messages and buttons that are displayed in the respective event. +Messages and buttons are defined with an `id`, these are set to `display: none;` by default via CSS. + +- e.g. `nuxt-speedkit-message-unsupported-browser` for message +- e.g. `nuxt-speedkit-button-init-app` for button + +::alert +For the closing mechanism of the layer, see [Hide Layer](/v3/guide/components/speedkit-layer#hide-layer). +:: + +## Messages + +The messages are elements that are displayed for the relevant events. + +Initially, all IDs are set to `display: none;`, so no message is visible. +When an event is triggered, the relevant message is displayed via the ID using the style attribute `display: block;`. + +| ID | Description | +| -------------------------------------------------------- | --------------------------------------------------------------------------- | +| `nuxt-speedkit-message-nojs` | Javascript is disabled. | +| `nuxt-speedkit-message-reduced-bandwidth` | Connection bandwidth is too low. | +| `nuxt-speedkit-message-weak-hardware` | User hardware are not sufficient. | +| `nuxt-speedkit-message-unsupported-browser` | User Browser is not supported by [`Browserslist`](/v3/options#browsersupport). | + +**Example** + +````html + +
+ Your browser is not supported! +
+ + +
+ Your browser is not supported! +
+```` + +## Buttons + +The buttons are interaction elements for the user with which he can make his choice at the relevant event. + +Initially, all IDs except for `nuxt-speedkit-button-nojs` are set to `display: none;`. +When an event is triggered, the relevant button is displayed via the ID using the style attribute `display: block;`. + +| ID | Description | +| ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `nuxt-speedkit-button-init-nojs` | Visible when javascript is disabled, needed so that the user can hide the layer. Requires the [Hide Layer](/v3/guide/components/speedkit-layer#hide-layer) implementation. | +| `nuxt-speedkit-button-init-reduced-view` | Is used to offer the user the possibility to visit the page only with activated fonts and images. Other initialisations of the Javascript are prevented. | +| `nuxt-speedkit-button-init-app` | Activates all features. The initialisation of the JavaScript is started, images are loaded. | + +::alert{type="info"} +It is recommended to register an **Inline Click-Event** for the buttons `#nuxt-speedkit-button-init-reduced-view` and `#nuxt-speedkit-button-init-app`.

More information under [Force App initialization](/v3/guide/components/speedkit-layer#force-app-initialization) +:: + +## Hide Layer + +````html + +```` + +The layer can be closed via a `for` attribute with the `id` `nuxt-speedkit-layer-close`. + +::list{type="primary"} + +- Closing mechanics does not require javascript. +:: + +## Template + +````html + +
+

Sorry, but you will have a limited user experience due to a…

+ +
    + +
  • + disabled javascript +
  • + +
  • + outdated browser +
  • + +
  • + reduced-bandwidth +
  • + +
  • + weak hardware +
  • +
+ + + + + + + + + +
+
+```` + +## Force App initialization + +For Unsupported-Browser and Insufficient Hardware events, an `onclick` event must also be set with the `id`. + +In the event, the global variable `__NUXT_SPEEDKIT_AUTO_INIT__` must be set to `true`. + +These are needed if the user has already reacted before the initial Javascript has been loaded. After the javascript has been successfully loaded, the app is automatically initialised. + +| Variable | Type | Description | Default | +| ----------------------------- | --------- | ---------------------------------------------------------------------------- | ------- | +| `__NUXT_SPEEDKIT_AUTO_INIT__` | `Boolean` | If set, initialisation continues after the javascript has been fully loaded. | `false` | diff --git a/docs/src/v3/3.guide/6.components/speedkit-picture.md b/docs/src/v3/3.guide/6.components/speedkit-picture.md new file mode 100644 index 0000000000..e8239f8490 --- /dev/null +++ b/docs/src/v3/3.guide/6.components/speedkit-picture.md @@ -0,0 +1,195 @@ +--- +title: SpeedkitPicture +--- +# {{title}} + +The `SpeedkitPicture` is a `picture` implementation based on the module [`@nuxt/image`](https://image.nuxtjs.org/). +It uses the provided API `$img`. + +## Features + +With the current implementation of `SpeedkitPicture` we can cover the following functionality: + +::list + +- generation of multiple sources with multiple image resolutions (srcset) +- breakpoint-based differentiation of multiple image resolutions and ratios (srcset + media-rule) +- optimized preloading of critical image resources +- lazy load of non-critical image resources +- base path support +- lazy hydration support +- load and optimize remote images from custom domains +- full SEO support +:: + +## Usage + +The `SpeedkitPicture` is used to automatically generate and display different image sizes and/or image ratios for different viewports. + +The specified resources can be given by absolute path (static folder) or complete URL. [`nuxt/image`](https://image.nuxtjs.org/) downloads the resources fully automatically and stores the generated and optimized renditions in the destination folder. + +::alert{type="warning"} +Important: For using `SpeedkitPicture` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + sources: [ … ], + formats: ['avif', 'webp', 'jpg|jpeg|png'], + alt: 'Image Alt', + title: 'Image Title', +} +```` + +### `hydrate` + +- Type: `Boolean` + - Default: `true` + +The initialization of the `SpeedkitPicture` in the client can be controlled manually. +Here for the property `hydrate` must be set externally. +If `true` the `SpeedkitPicture` is initialized. + +### `sources` + +- Type: `Array` + +List of resources used. + +The definitions in the `sources` are equivalent to the [`SpeedkitImage (source)`](/v3/guide/components/speedkit-image#source). + +The only differences are: + +- The `media` property can be used. This allows even more dependencies for the display, e.g. `(orientation: portrait)`. +- The `format` property is not used. Instead `formats` is used for setting the output formats. + +**Example** + +In the following example, two different image ratios are used. + +- `landscape.jpg` is applied at a viewport of `996px` with an image size of `996px (100vw)` by orientation `landscape`. +- `portrait.jpg` is applied below `768px` and has two viewport dependent image sizes, at `(min-width: 768px)` the width `768px` and everything below that the width `320px` by orientation `portrait` + +````js +[ + { src: '/img/landscape.png', sizes: { md: '100vw' }, media: '(orientation: landscape)' }, + { src: '/img/portrait.png', sizes: { default: '100vw', sm: '100vw' }, media: '(orientation: portrait)' } +] +```` + +### `formats` + +- Type: `Array` + - Default: `['webp', 'avif', 'jpg|jpeg|png|gif']` + +> Overrides the [`pictureFormats`](/v3/options#pictureformats) property defined in the module options. + +Defines the formats that are to be generated and provided as source in the Picture. +Is used to offer the correct image type for the browser. + +::alert{type="warning"} +Formats can also be specified as OR condition (`jpg|jpeg|png|gif`). This is important when using JPGs and PNGs with the same `format` configuration. +:: + +### `alt` + +- Type: `String` + +Image alternative Text. + +[MDN - HTMLImageElement.alt](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt) + +### `title` + +- Type: `String` + +Image Title. + +[MDN - HTMLElement.title](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/title) + +### `crossorigin` + +- Type: `String`, `Boolean` + +If not set, the global crossorigin is used `this.$speedkit.crossorigin`. + +[Learn more about `crossorigin` option](https://nuxt-speedkit.grabarzundpartner.dev/options#crossorigin) + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +### `sortSources` + +- Type: `Boolean` + - Default: `true` + +If set, the sources are sorted by the `media` properties. + +This is made possible by [`sort-css-media-queries`](https://www.npmjs.com/package/sort-css-media-queries). + +### `critical` + +- Type: `Boolean` + - Default: `$parent.isCritical` + +Set component as critical component. + +[Learn more about critical components](/v3/usage#critical-prop-for-critical-components) + +## Events + +````html + +```` + +| Name | Description | +| ------ | ------------------------------------------------------------- | +| `load` | Triggered when the image resource has been completely loaded. | diff --git a/docs/src/v3/3.guide/6.components/speedkit-vimeo.md b/docs/src/v3/3.guide/6.components/speedkit-vimeo.md new file mode 100644 index 0000000000..31f96162a7 --- /dev/null +++ b/docs/src/v3/3.guide/6.components/speedkit-vimeo.md @@ -0,0 +1,174 @@ +--- +title: SpeedkitVimeo +--- +# {{title}} + +We have integrated `SpeedkitVimeo` as an example to show how iFrame content must be integrated in a performance-optimized manner. +For this purpose, a separate IntersectionObserver has been implemented, which detects a longer dwell time of the component in the viewport. The iFrame is initialized only after a positive detection. This prevents immense data from having to be loaded when simply scrolling through the page. +So that no empty space is visible to the user, we use the functionality of the [`SpeedkitPicture`](/v3/guide/components/speedkit-picture) and preload the corresponding Vimeo poster in different renditions, so the illusion is perfect for the user and he does not notice anything of the optimized lazy load procedure. + +## Usage + +The `SpeedkitVimeo` is used to initialise Vimeo videos with [`Vimeo Player-SDK`](https://developer.vimeo.com/player/sdk/). + +::alert +The SDK is not part of `nuxt-speedkit` and will be loaded by an external script. +:: + +The `url` of the Vimeo video must be specified. + +The `SpeedkitPicture` is used for the poster, so the generation of the poster is automated, you can define the image sizes with [`sizes` (What is `sizes`?)](/v3/guide/components/speedkit-image#source). + +[Learn more about `SpeedkitPicture`](/v3/guide/components/speedkit-picture) + +::alert{type="warning"} +Important: For using `SpeedkitVimeo` do not disable `@nuxt/image` via `disableNuxtImage` +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + url: '', + title: 'Player Title', + autoplay: false, + mute: false, + posterSizes: { … }, + options: { … } +} +```` + +### `url` + +- Type: `String` + +Sets a video via the vimeo url. + +### `title` + +- Type: `String` + +Sets the title for the player iframe and poster. + +### `autoplay` + +- Type: `Boolean` + - Default: `false` + +When set starts video in autoplay. It is required that the component is integrated via [`SpeedkitHydrate`](/v3/usage#import-components) or is only activated when entering the visible area. + +### `mute` + +- Type: `Boolean` + - Default: `false` + +When set the player is muted. + +### `posterSizes` + +- Type: `String` + - Default: `{ default: '100vw', xxs: '100vw', xs: '100vw', sm: '100vw', md: '100vw', lg: '100vw', xl: '100vw', xxl: '100vw' }` + +Sets the image sizes of the poster. + +[Learn more about `sizes`](/v3/guide/components/speedkit-image#source) + +### `options` + +- Type: `Object` + +Overrides the vimeo player options. These will be the same as the vimeo player embed options. + +[Learn more about Vimeo Player Parameters](https://developer.vimeo.com/player/sdk/embed) + +::alert{type="warning"} + +For `autoplay` and `mute` the component properties are used. + +Option `playsinline` is always set, `mute` is set automatically for touch devices. +This is important for autoplay on mobile devices. +:: + +## Slots + +````html + + + + + +```` + +| Name | Description | +| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `default` | Used to display more information about the video below the player.
The slot has a scoped property `videoData`.
This contains the result from the Vimeo `oembed` api.

| +| `loading-spinner` | Overwrites the loading spinner. | +| `play` | Overwrites the play button. | + +## Events + +````html + +```` + +| Name | Description | +| -------------- | -------------------------------------------------------- | +| `ready` | Triggered when `Vimeo Player-SDK` is completely loaded. | +| `playing` | Triggered when video is finished loading and playing. | +| `beforePlayer` | Used to place elements in the player container (before). | +| `afterPlayer` | Used to place elements in the player container (after). | diff --git a/docs/src/v3/3.guide/6.components/speedkit-youtube.md b/docs/src/v3/3.guide/6.components/speedkit-youtube.md new file mode 100644 index 0000000000..3b4a0764f1 --- /dev/null +++ b/docs/src/v3/3.guide/6.components/speedkit-youtube.md @@ -0,0 +1,182 @@ +--- +title: SpeedkitYoutube +--- +# {{title}} + +We have integrated `SpeedkitYoutube` as an example to show how iFrame content must be integrated in a performance-optimized manner. +For this purpose, a separate IntersectionObserver has been implemented, which detects a longer dwell time of the component in the viewport. The iFrame is initialized only after a positive detection. This prevents immense data from having to be loaded when simply scrolling through the page. +So that no empty space is visible to the user, we use the functionality of the [`SpeedkitPicture`](/v3/guide/components/speedkit-picture) and preload the corresponding Youtube poster in different renditions, so the illusion is perfect for the user and he does not notice anything of the optimized lazy load procedure. + +## Usage + +The `SpeedkitYoutube`is used to initialise Youtube videos with [Youtube Iframe-API](https://developers.google.com/youtube/iframe_api_reference?hl=de). + +The `url` of the Youtube video must be specified. + +The `SpeedkitPicture` is used for the poster, so the generation of the poster is automated, you can define the image sizes with [`sizes` (What is `sizes`?)](/v3/guide/components/speedkit-picture#sources). + +[Learn more about `SpeedkitPicture`](/v3/guide/components/speedkit-picture) + +::alert{type="warning"} + +Important: For using `SpeedkitYoutube` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + url: '', + title: 'Player Title', + autoplay: false, + mute: false, + posterSizes: { … }, + options: { … } +} +```` + +### `url` + +- Type: `String` + +Sets a video via the youtube url. + +### `title` + +- Type: `String` + +Sets the title for the player iframe and poster. + +### `autoplay` + +- Type: `Boolean` + - Default: `false` + +When set starts video in autoplay. It is required that the component is integrated via [`SpeedkitHydrate`](/v3/usage#import-components) or is only activated when entering the visible area. + +### `mute` + +- Type: `Boolean` + - Default: `false` + +When set the player is muted. + +### `posterSizes` + +- Type: `String` + - Default: `{ default: '100vw', xxs: '100vw', xs: '100vw', sm: '100vw', md: '100vw', lg: '100vw', xl: '100vw', xxl: '100vw' }` + +Sets the image sizes of the poster. + +[Learn more about `sizes`](/v3/guide/components/speedkit-picture#sources) + +### `options` + +- Type: `Object` + +Overrides the youtube player options. These will be the same as the youtube player parameters. + +Use `boolean` values instead of integers (e.g. `0`, `1`). + +[Learn more about Youtube Player Parameters](https://developers.google.com/youtube/player_parameters#Parameters) + +::alert{type="warning"} + +For `autoplay` and `mute` the component properties are used. + +Option `playsinline` is always set, `mute` is set automatically for touch devices. +This is important for autoplay on mobile devices. +:: + +### `host` + +- Type: `String` + - default: `'https://www.youtube-nocookie.com'` + +Sets the host for the player. + +::alert +It is recommended to use the default (). +:: + +## Slots + +````html + + + +```` + +| Name | Description | +| ----------------- | ------------------------------- | +| `loading-spinner` | Overwrites the loading spinner. | +| `play` | Overwrites the play button. | + +## Events + +````html + +```` + +| Name | Description | +| -------------- | -------------------------------------------------------- | +| `ready` | Triggered when `Youtube-API` is completely loaded. | +| `playing` | Triggered when video is finished loading and playing. | +| `beforePlayer` | Used to place elements in the player container (before). | +| `afterPlayer` | Used to place elements in the player container (after). | diff --git a/docs/src/v3/3.guide/6.components/weak-hardware-overlay.md b/docs/src/v3/3.guide/6.components/weak-hardware-overlay.md new file mode 100644 index 0000000000..1e2a06b533 --- /dev/null +++ b/docs/src/v3/3.guide/6.components/weak-hardware-overlay.md @@ -0,0 +1,83 @@ +--- +title: WeakHardwareOverlay +--- + +# {{title}} + +The `WeakHardwareOverlay` is used in components that are affected by the SpeedkitLayer event `Weak Hardware`. (*Example: Component requires the execution of `mounted` for functionality.*) + +::alert{type="info"} +The **performance issue event** occurs when initialization determines that the client is overloaded with execution and the user has confirmed the `#nuxt-speedkit-button-init-reduced-view` button in the SpeedkitLayer. + +- [Learn more about SpeedkitLayer interactions)](/v3/components/speedkit-layer#buttons) + +:: + +Basically, the overlay is used to make content visible when the `Weak Hardware` has occurred, if this does not occur, the overlay is not visible. + +It is recommended to include an interaction element in the overlay that allows the user to switch to the normal state. For this the interaction element must get the ID `nuxt-speedkit-button-init-app` and reacts on `click` with the initialization of the app. + +## Example + +Example of defining a custom `WeakHardwareOverlay` component and placing it in a target component that is affected by the `Weak Hardware` event. + +### Customize Overlay + +````vue[@/components/WeakHardwareOverlay.vue] + + + +```` + +### Usage Overlay + +````vue[@/components/Player.vue] + + + +```` diff --git a/docs/content/3.guide/_dir.yml b/docs/src/v3/3.guide/_dir.yml similarity index 100% rename from docs/content/3.guide/_dir.yml rename to docs/src/v3/3.guide/_dir.yml diff --git a/docs/src/v3/_dir.yml b/docs/src/v3/_dir.yml new file mode 100644 index 0000000000..f97f2596c1 --- /dev/null +++ b/docs/src/v3/_dir.yml @@ -0,0 +1 @@ +title: V3 ⚠️ diff --git a/docs/.env.example b/docsALT/.env.example similarity index 100% rename from docs/.env.example rename to docsALT/.env.example diff --git a/docs/.gitignore b/docsALT/.gitignore similarity index 100% rename from docs/.gitignore rename to docsALT/.gitignore diff --git a/docs/.npmrc b/docsALT/.npmrc similarity index 100% rename from docs/.npmrc rename to docsALT/.npmrc diff --git a/docsALT/.nvmrc b/docsALT/.nvmrc new file mode 100755 index 0000000000..d9875d47e5 --- /dev/null +++ b/docsALT/.nvmrc @@ -0,0 +1 @@ +19.9.0 diff --git a/docs/README.md b/docsALT/README.md similarity index 100% rename from docs/README.md rename to docsALT/README.md diff --git a/docsALT/api-examples.md b/docsALT/api-examples.md new file mode 100644 index 0000000000..6bd8bb5c17 --- /dev/null +++ b/docsALT/api-examples.md @@ -0,0 +1,49 @@ +--- +outline: deep +--- + +# Runtime API Examples + +This page demonstrates usage of some of the runtime APIs provided by VitePress. + +The main `useData()` API can be used to access site, theme, and page data for the current page. It works in both `.md` and `.vue` files: + +```md + + +## Results + +### Theme Data +
{{ theme }}
+ +### Page Data +
{{ page }}
+ +### Page Frontmatter +
{{ frontmatter }}
+``` + + + +## Results + +### Theme Data +
{{ theme }}
+ +### Page Data +
{{ page }}
+ +### Page Frontmatter +
{{ frontmatter }}
+ +## More + +Check out the documentation for the [full list of runtime APIs](https://vitepress.dev/reference/runtime-api#usedata). diff --git a/docs/app.config.ts b/docsALT/app.config.ts similarity index 100% rename from docs/app.config.ts rename to docsALT/app.config.ts diff --git a/docs/components/Logo.vue b/docsALT/components/Logo.vue similarity index 100% rename from docs/components/Logo.vue rename to docsALT/components/Logo.vue diff --git a/docs/components/content/ChangeLog.vue b/docsALT/components/content/ChangeLog.vue similarity index 100% rename from docs/components/content/ChangeLog.vue rename to docsALT/components/content/ChangeLog.vue diff --git a/docs/content/0.index.md b/docsALT/content/0.index.md similarity index 97% rename from docs/content/0.index.md rename to docsALT/content/0.index.md index 1c8dd0601e..acf6969996 100644 --- a/docs/content/0.index.md +++ b/docsALT/content/0.index.md @@ -10,6 +10,10 @@ title: Introduction [Module](https://www.npmjs.com/package/nuxt-speedkit) for [NuxtJS](https://nuxtjs.org). +::alert{type="warning"} +You are reading Nuxt Speedkit v2 docs. [For Nuxt 3 go to the v3 docs](/v3) +:: + ::alert{type="info"} **You are reading the documentation for Nuxt Speedkit (v2)!** diff --git a/docsALT/content/1.concept.md b/docsALT/content/1.concept.md new file mode 100644 index 0000000000..9be396fc1c --- /dev/null +++ b/docsALT/content/1.concept.md @@ -0,0 +1,122 @@ +--- +title: Concept +--- + +# {{title}} + +## Current Situation + +The loading behavior of webpages based on NuxtJS is designed in such a way that all necessary Javascript resources are preloaded and directly initialized with the initial load of the page. However, this behavior creates a negative impact on the Lighthouse Performance Score (TTI) for larger pages that have an increased initial load of additional resources, such as fonts, images, plugins, modules (@nuxtjs/i18n, ...). + +## Excursus + +The Lighthouse Test is not a tool to make a general statement about the quality of a website programming. Lighthouse rather tries to map a metric for the usability of a page from the user's point of view. This includes accessibility, best practices, SEO and of course performance. + +This last point is often misinterpreted by developers. If you want to implement features that increase usability for the user (interactions/more complex animations, ...), this will always have an impact on performance in the Lighthouse Test for larger website projects, as the corresponding Javascript must be loaded for this. Finally, Lighthouse does also not rate the design, but the accessibility (size of click areas, etc.) of a website. +You should therefore not ask yourself the following question: "How can I fully optimize my JavaScript to achieve a Lighthouse score of 100/100?". You have to ask yourself much more the question: "What is especially important to a user with low bandwidth or weak hardware on my site?". + +The answer to this is relatively simple: the content must be accessible and you must be able to get to the information you need quickly. + +No more and no less. + +The user doesn't need any fancy slider animations and parallax effects that can only be implemented with certain libraries. Or a softload mechanism to get to more pages in a more elegant and animated way, but which initially needs an increased amount of javascript logic. All he wants is that information is retrievable reasonably fast and he can click through the presence. + +## Problem + +The good news is that the NuxtJS SSR build provides the right foundation. The content is already in the form of HTML and CSS and can be used without Javascript. But what is missing + +- is a fully automated preload logic that allows component and viewport based handling and prioritization of the individual resources (FCP, LCP, CLS) +- is a logic that enables a perfomance-oriented initialization of the javascript (TTI, TBT) + +These two central points are handled by **Nuxt Speedkit** and enable a fast and resource-saving loading behavior of the website. + +## Approach + +Over a longer period of time, we analyzed the Google Lighthouse test in more detail and approached the topic with the help of use cases. We did not start with the best case for page content (one image, one font, minimal javascript), but with the worst case (many images, many fonts, large Javascript files, ...). So we avoided to develop only a solution for simple SinglePages. Our claim was much more to create a generalistic, performant solution even with a CMS connection and dynamic component compositions per page. +All our thoughts are based on [HTTP/2 request prioritization](https://www.slideshare.net/patrickmeenan/http2-prioritization) and the lazy hydration approach. Initial resources are prioritized by preload and all further data is reloaded viewport-based. + +## Insights & Solutions + +During the tests, we gained the following insights, which we would like to share with you, but which also allow us to draw conclusions regarding the performance optimization of the initial loading process and which have been incorporated into the **Nuxt Speedkit** solution. + +### Critical Render Path + +The [critical render path](https://developers.google.com/web/fundamentals/performance/critical-rendering-path) is the core of a high-performance and efficient loading and rendering behavior of a website. It is important that components and resources in the viewport are loaded and executed with priority so that the user can be provided with a functioning page as quickly as possible. A browser is not able to recognize this fully automatically to dynamically adapt the loading behavior. Some attempts have been made in the past to systematically identify the critical render path.However, this has the consequence that every generated page in a virtual browser has to be analyzed in given viewport sizes, which slows down the deployment process and makes it more error-prone. For this reason, we (the developers) will be forced to provide the build process with appropriate hints in the form of a Critical Attribute on the affected component, so that an automated optimization by preloads, lazy hydration, etc. can be performed in response. + +### Font Loading + +Fonts are the great mystery on the Internet. For more complex designs it is not uncommon that more than 6 font files have to be loaded. It would be desirable if there were many more variable fonts, but the reality is usually different. Often, developers are forced to register tons of fonts with different font styles. So it can happen that the website needs a total count of 12 font files, which have to be loaded initially to achieve the right visual result on the whole page. + +This is a real performance problem. If you look for solutions, you like to hear + +::list{type="info"} + +- don't use WebFonts that have to be loaded +- use another optimized font +- reduce the number of used fonts +- embed the fonts via Base64 +:: + +You will find some articles about font loading. But most of them are more than 3 years old. Summary: not much happened here. A nice and recommendable list of different strategies can be found at [web-font-loading-recipes](https://github.com/zachleat/web-font-loading-recipes) or +[comprehensive-webfonts](https://www.zachleat.com/web/comprehensive-webfonts/). From this it can be deduced that there is still no universal solution to the problem. However, it is possible to approach the issue very efficiently by using a preload strategy and setting classes accordingly. However, this does not make the handling of the fonts any easier. On the one hand, the preloads have to be defined per page and on the other hand, the CSS in the respective component has to be activated with the corresponding font declaration per class on demand. This is manageable for smaller projects in a 1 person team. But if several people are working in parallel, it can quickly become a nightmare. This will inevitably lead to the fact that the approach will not be accepted by the team and the optimization will be optimized out of the project in the long run. + +::alert{type="info"} +A few words about Google Fonts: If possible, the FontFaces should always be included directly as Woff/Woff2 files via inline style. The loading mechanism via external CSS file, as it is the case with Google Fonts, creates an additional network roundtrip, which delays the loading of the actual font files. +:: + +The strategy mentioned above makes sense, but is hardly implementable with the current tools. For this reason, we are introducing Directive `v-font`, which takes care of the outlined behavior in a fully automated way and thus represents a truly relevant solution even on larger projects. +Combined with the lazy hydration approach, the relevant fonts can be declared and loaded per component. The preloads are controlled via the critical attribute. With the help of this loading strategy, a FOUT (flash of unstyled text) and CLS can be massively reduced or eliminated. +If no javascript is activated on the end device, all fonts are automatically activated via CSS. + +### Image Loading + +For image compression and different image formats, the module [nuxt-optimized-images](https://marquez.co/docs/nuxt-optimized-images/) was popularly used in the nuxt world in the past. The downside, however, is that this approach is not particularly CMS and deployment friendly. With each image change, a full build process had to be initiated. +For this reason, we use the [nuxt-image](https://image.NuxtJS.org) module, as this takes advantage of a change in NuxtJS as of version 2.13.0. In this version update, the build was split into two separate processes (javascript compilation + page generation). +With [nuxt-optimized-images](https://marquez.co/docs/nuxt-optimized-images/) the full build process had to be run for every image change. This is no longer the case with [nuxt-image](https://image.NuxtJS.org). Here only the page generation process is necessary. As a result, deployment times for all content changes can be massively reduced. + +We use the module in its complete form. However, we have redeveloped the nuxt-image and nuxt-picture components, as the current version does not fully meet our requirements. For example, we lacked an appropriate preloading and lazy hydration strategy. Although there is a native loading attribute on the image element that allows prioritization, the use for websites with a lot of images is still not optimal, because the [distance-from-viewport threshold](https://web.dev/browser-level-image-lazy-loading/#improved-data-savings-and-distance-from-viewport-thresholds) is still too generous and the loading performance can deteriorate unintentionally. For this we have implemented a corresponding SEO-compliant alternative, which loads the images only when the viewport is reached, but also provides the image sources for search engines via no-script tag. This way all relevant images can be displayed even if Javascript is disabled. Furthermore you can also define multiple image sources in the picture, so it is possible to display an image in portait mode with a 9/16 aspect-ratio (multiple renditions) and in landscape mode with a 16/9 aspect-ratio (multiple renditions). + +### Javascript Loading + +NuxtJS follows the approach to load the core files (page, app, payload, vendor, state, etc.) as fast and efficient as possible via (module-)preload from the client. This also makes total sense if you want to deliver an SPA. For the SSR build, however, we modified the delivery a bit. The many parallel downloads (fonts, images, js, ...) have a negative impact from a performance perspective. This effect increases when the javascript files grow in size due to modules and plugins. +It would make sense if the initial package is kept small and only the absolutely necessary resources that can trigger the further initialization process are transferred via dynamic import. This leaves enough bandwidth to load the remaining resources (fonts, images). + +This loading behavior only makes sense with an SSR build, since the full page-related static content can already be delivered and rendered with the HTML and the included CSS. This means that the user does not notice any time lags and the page is still usable. Another advantage: If the bandwidth is low, a basic functionality of the page (links, ...) can be ensured thanks to the SSR build. + +### RequestIdleCallback + +The [TimeRemaining function](https://developer.mozilla.org/en-US/docs/Web/API/IdleDeadline/timeRemaining) of the IdleDeadline object continuously returns a value <= 10 in the Lighthouse Test (simulated Motorola G4). This can be seen as an indicator for weak hardware on the end device and allows the following conclusion. If there are not enough hardware resources available to execute the JavaScript quickly, this process is suppressed. Who needs optional functionality that takes a long time to initialize and possibly leads to a temporary freeze in the browser. + +We use this effect by executing the intial javascript process and the component initialization in the RequestIdleCallback, if we get a time slot >10ms from the device. Hereby we achieve a massive reduction of the TTI/TBT in the Lighthouse Test and on weak hardware, because the javascript execution is simply paused in the worst case until sufficient resources are available. This also prevents blocking of the MainThread. + +Side effect: The timeslots in the Google Lighthouse Test are always <= 10ms, so no javascript will be initialized. + +### SpeedkitLayer + +With the solutions described above, the user gets a functioning webpage displayed very quickly. +However, the following situation can also occur on the end device: + +::list{type="warning"} + +- no Javascript enabled +- reduced bandwidth +- weak hardware +- unsupported browser +:: + +The reduced bandwidth or weak hardware should get a focus especially when larger amounts of data have to be transferred and executed, e.g. a ThreeJS component with more complex 3D objects. In this case, we should inform the user that the experience will be negatively affected and that there may be waiting times. + +For this purpose, we provide an InfoLayer that is displayed when a minimum FCP time is exceeded, when the number of available CPU cores falls below a minimum level, when javascript is disabled or the users opens the page by an unsupported browser. The user can decide in this dialog box whether he wants to load the remaining resources despite the restrictions. If the user declines this dialog, only the fonts and images for the page will be loaded and no further javascript will be loaded or executed. + +### Conclusion + +The findings and solutions described above have been incorporated and systematized in the **Nuxt Speedkit** module. Only in combination can they unfold their full functionality and ensure an overall optimization of the loading behavior. Overall we have reduced the following timing metrics ... +::list{type="success"} + +- FCP +- LCP +- TTI +- TBT +:: + +With this module we enable every developer in the NuxtJS context to achieve a Lighthouse Performance Score 100/100 and drastically reduce the development time for website performance optimization. diff --git a/docs/content/10.v1/0.index.md b/docsALT/content/10.v1/0.index.md similarity index 100% rename from docs/content/10.v1/0.index.md rename to docsALT/content/10.v1/0.index.md diff --git a/docs/content/10.v1/1.concept.md b/docsALT/content/10.v1/1.concept.md similarity index 100% rename from docs/content/10.v1/1.concept.md rename to docsALT/content/10.v1/1.concept.md diff --git a/docs/content/10.v1/_dir.yml b/docsALT/content/10.v1/_dir.yml similarity index 100% rename from docs/content/10.v1/_dir.yml rename to docsALT/content/10.v1/_dir.yml diff --git a/docs/content/10.v1/guide/0.setup.md b/docsALT/content/10.v1/guide/0.setup.md similarity index 100% rename from docs/content/10.v1/guide/0.setup.md rename to docsALT/content/10.v1/guide/0.setup.md diff --git a/docs/content/10.v1/guide/1.options.md b/docsALT/content/10.v1/guide/1.options.md similarity index 84% rename from docs/content/10.v1/guide/1.options.md rename to docsALT/content/10.v1/guide/1.options.md index d20c023387..cc255cd915 100644 --- a/docs/content/10.v1/guide/1.options.md +++ b/docsALT/content/10.v1/guide/1.options.md @@ -198,21 +198,21 @@ List of all available font files of a font family variation. - Type: `Boolean` - Default: `false` -With this attribute all components that can be found under `nuxt-speedkit/components` can be registered globally. +With this attribute all components that can be found under `#speedkit/components` can be registered globally. [Learn more @nuxt/components](https://github.com/nuxt/components) ### Available components | Global Name | Import Path | | | ------------------------------ | --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -| `SpeedkitIframe` | `nuxt-speedkit/components/SpeedkitIframe` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitIframe.vue) | -| `SpeedkitLayer` | `nuxt-speedkit/components/SpeedkitLayer` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitLayer.vue) | -| `SpeedkitPicture` | `nuxt-speedkit/components/SpeedkitPicture` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitPicture.vue) | -| `SpeedkitYoutube` | `nuxt-speedkit/components/SpeedkitYoutube` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitYoutube.vue) | -| `AbstractIntersectionObserver` | `nuxt-speedkit/components/abstracts/IntersectionObserver` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/IntersectionObserver.vue) | -| `AbstractOnlySsr` | `nuxt-speedkit/components/abstracts/OnlySsr` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/OnlySsr.vue) | -| `ExperimentalSpeedkitPicture` | `nuxt-speedkit/components/experimental/SpeedkitPicture` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/experimental/SpeedkitPicture.vue) | -| `ExperimentalSpeedkitYoutube` | `nuxt-speedkit/components/experimental/SpeedkitYoutube` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/experimental/SpeedkitYoutube.vue) | +| `SpeedkitIframe` | `#speedkit/components/SpeedkitIframe` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitIframe.vue) | +| `SpeedkitLayer` | `#speedkit/components/SpeedkitLayer` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitLayer.vue) | +| `SpeedkitPicture` | `#speedkit/components/SpeedkitPicture` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitPicture.vue) | +| `SpeedkitYoutube` | `#speedkit/components/SpeedkitYoutube` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitYoutube.vue) | +| `AbstractIntersectionObserver` | `#speedkit/components/abstracts/IntersectionObserver` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/IntersectionObserver.vue) | +| `AbstractOnlySsr` | `#speedkit/components/abstracts/OnlySsr` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/OnlySsr.vue) | +| `ExperimentalSpeedkitPicture` | `#speedkit/components/experimental/SpeedkitPicture` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/experimental/SpeedkitPicture.vue) | +| `ExperimentalSpeedkitYoutube` | `#speedkit/components/experimental/SpeedkitYoutube` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/experimental/SpeedkitYoutube.vue) | ## `componentPrefix` diff --git a/docs/content/10.v1/guide/10.todos.md b/docsALT/content/10.v1/guide/10.todos.md similarity index 100% rename from docs/content/10.v1/guide/10.todos.md rename to docsALT/content/10.v1/guide/10.todos.md diff --git a/docs/content/10.v1/guide/3.usage.md b/docsALT/content/10.v1/guide/3.usage.md similarity index 97% rename from docs/content/10.v1/guide/3.usage.md rename to docsALT/content/10.v1/guide/3.usage.md index dee7f59b23..cc1f2d3730 100644 --- a/docs/content/10.v1/guide/3.usage.md +++ b/docsALT/content/10.v1/guide/3.usage.md @@ -53,7 +53,7 @@ Although the attribute "speedkitComponents" can be filled in every component, we ## Speedkit Components -In order to be able to load further static resources such as pictures, iFrames or Youtube videos in the iFrame in a performance-optimised way, we provide the following components. The speedkit components can be imported via the namespace `nuxt-speedkit/components`. +In order to be able to load further static resources such as pictures, iFrames or Youtube videos in the iFrame in a performance-optimised way, we provide the following components. The speedkit components can be imported via the namespace `#speedkit/components`. - [SpeedkitLayer](/components/speedkit-layer) - [SpeedkitPicture](/components/speedkit-picture) @@ -68,7 +68,7 @@ In order to be able to load further static resources such as pictures, iFrames o +```` + +::alert{type="info"} +The speedkit components will be expanded in the future. If you have explicit wishes, please send us a feature request or directly a pull request with the corresponding feature :) +:: + +## Example + +You can check out a sample integration of `nuxt-speedkit` at [Nuxt Speedkit Example](https://github.com/GrabarzUndPartner/nuxt-speedkit-example). + +:sandbox{src='//codesandbox.io/embed/github/GrabarzUndPartner/nuxt-speedkit-example/tree/main/?hidenavigation=1&theme=dark'}> diff --git a/docsALT/content/11.v3/3.guide/3.caveats.md b/docsALT/content/11.v3/3.guide/3.caveats.md new file mode 100644 index 0000000000..a801d1ec26 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/3.caveats.md @@ -0,0 +1,48 @@ +--- +title: Caveats +--- +# {{title}} + +## Prevent `SPEEDINDEX_OF_ZERO` and `NO_LCP` + +The `window` event `nuxt-speedkit:run` is provided and useable to run code outside the app during initialization. + +If the performance is not sufficient on the client side, this can be retrieved with the help of the event object `e.detail.sufficient`. + +### Example + +A case where the event may be needed would be when the initial viewport on a website is blank and it is not displayed until the initialization is complete. + +In this case, measurements with Lighthouse can lead to these errors `SPEEDINDEX_OF_ZERO` and `NO_LCP`. + +In order to solve this case, it can be provided that the content of the stage can already be displayed outside of the app initialization in the case of a slow initialization. + +In this case the global event `nuxt-speedkit:run` can be used. It will return an event object with `e.detail.sufficient` as value. With the help of this status you can decide whether the stage should be displayed in advance. + +**Component Example** + +```html + + + +``` diff --git a/docsALT/content/11.v3/3.guide/4.composable/0.useFont.md b/docsALT/content/11.v3/3.guide/4.composable/0.useFont.md new file mode 100644 index 0000000000..7153e141a3 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/4.composable/0.useFont.md @@ -0,0 +1,35 @@ +--- +title: useFont +--- + +# {{title}} + +## Options + +| Property | Type | Description | Default Value | +| ---------- | --------- | --------------------------------- | ---------------------- | +| `critical` | `Boolean` | Override critical from component. | inherit from component | + +```js +const { $getFont } = useFonts({critical: true}); +``` + +## Return + +| Property | Description | +| ------------ | ----------- | +| `isCritical` | | +| `$getFont` | | + +## Example + +```html + + + +``` diff --git a/docsALT/content/11.v3/3.guide/4.composable/1.useCritical.md b/docsALT/content/11.v3/3.guide/4.composable/1.useCritical.md new file mode 100644 index 0000000000..f279e57181 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/4.composable/1.useCritical.md @@ -0,0 +1,34 @@ +--- +title: useCritical +--- + +# {{title}} + +## Options + +| Property | Type | Description | Default Value | +| ---------- | --------- | --------------------------------- | ---------------------- | +| `critical` | `Boolean` | Override critical from component. | inherit from component | + +```js +const { isCritical } = useCritical({critical: true}); +``` + +## Return + +| Property | Description | +| ------------ | ----------- | +| `isCritical` | | + +## Example + +```html + + + +``` diff --git a/docsALT/content/11.v3/3.guide/4.composable/2.useConfig.md b/docsALT/content/11.v3/3.guide/4.composable/2.useConfig.md new file mode 100644 index 0000000000..83e089d70e --- /dev/null +++ b/docsALT/content/11.v3/3.guide/4.composable/2.useConfig.md @@ -0,0 +1,16 @@ +--- +title: useConfig +--- + +# {{title}} + +## Return + +Returns `nuxt-speedkit` public runtime options. + +## Example + +```js +import useConfig from '#speedkit/composables/config'; +const $speedkitOptions = useConfig(); +``` diff --git a/docsALT/content/11.v3/3.guide/4.composable/3.useComponentObserver.md b/docsALT/content/11.v3/3.guide/4.composable/3.useComponentObserver.md new file mode 100644 index 0000000000..4e9abec4dc --- /dev/null +++ b/docsALT/content/11.v3/3.guide/4.composable/3.useComponentObserver.md @@ -0,0 +1,42 @@ +--- +title: useComponentObserver +--- + +# {{title}} + +## Options + +| Property | Type | Description | Default Value | +| ----------------- | ------------- | ------------------------------------------------------------------------------------------------------------------ | ------------- | +| `root` | `HTMLElement` | [MDN `root`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#root) | `undefined` | +| `rootMargin` | `String` | [MDN `rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#rootMargin) | `'0px'` | +| `threshold` | `Array` | [MDN `threshold`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#threshold) | `[0]` | +| `trackVisibility` | `Boolean` | [MDN `trackVisibility`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#trackVisibility) | `false` | +| `delay` | `Number` | [MDN `delay`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#delay) | `0` | + +## Return + +| Property | Type | Description | +| -------- | --------- | --------------------------------------------------------------- | +| `el` | `Object` | Component ref for tag referencing. | +| `inView` | `Boolean` | Reference that indicates whether referenced element is visible. | + +## Example + +```html + + + +``` diff --git a/docsALT/content/11.v3/3.guide/4.composable/_dir.yml b/docsALT/content/11.v3/3.guide/4.composable/_dir.yml new file mode 100644 index 0000000000..271b5fb9aa --- /dev/null +++ b/docsALT/content/11.v3/3.guide/4.composable/_dir.yml @@ -0,0 +1 @@ +title: Composables diff --git a/docsALT/content/11.v3/3.guide/5.directives/_dir.yml b/docsALT/content/11.v3/3.guide/5.directives/_dir.yml new file mode 100644 index 0000000000..c209cd2b7e --- /dev/null +++ b/docsALT/content/11.v3/3.guide/5.directives/_dir.yml @@ -0,0 +1 @@ +title: Directives diff --git a/docsALT/content/11.v3/3.guide/5.directives/v-font.md b/docsALT/content/11.v3/3.guide/5.directives/v-font.md new file mode 100644 index 0000000000..7e25368567 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/5.directives/v-font.md @@ -0,0 +1,89 @@ +--- +title: v-font +--- + +# {{title}} + +The directive `v-font` is used to integrate the fonts defined in the [module options](/v3/options#fonts) into the website. + +To do this, the respective font must be retrieved via the `$getFont` method contained in the component scope (e.g. `this`). + +Fonts are specified by `family`, `weight` and `style` and can be limited to elements and viewports via the options (`media`, `selector`). + +Normally the directive activates the fonts only when the viewport is reached. +It is recommended to use the property `critical` for components that are already initially contained in the viewport. + +With critical component the fonts are preloaded and are initially active. +More information on critical components can be found [here](/v3/usage#critical-prop-for-critical-components). + +For multiple fonts, a list (`Array`) can be passed. + +````html + + + + + + +```` + +## `$getFont(family, [weight, style, options])` + +`$getFont` is included as a plugin and can be accessed via any component scope. +Use `$getFont` in the `v-font` directive and create the relevant font definition. + +| Key | Type | Requried | Description | Default | +| --------- | ------------------ | -------- | ------------------------------------------------------------------ | -------- | +| `family` | `String` | yes | Font-Family e.g. `Custom Font` | | +| `weight` | `String`, `Number` | | Font-Weight e.g. `400`, `normal` | `400` | +| `style` | `String` | | Font-Style e.g. `normal`, `italic` | `normal` | +| `options` | `Object` | | Media & Selector Options [see more](/v3/directives/v-font#options) | | + +### options + +Each definition can be modified in its behaviour via the options. +With the property `media`, the call of the font definition can be made dependent on the viewport. +The property `selector` can be used to limit the font to elements (e.g. `span`, `.class`). + +````js +{ + media: '(min-width: 768px)', + selector: 'element, .elm, .elm:before' +} +```` + +| Key | Type | Requried | Description | Default | +| ---------- | -------- | -------- | ---------------------------------------------- | ------- | +| `media` | `String` | | CSS Media Query e.g. `(min-width: 768px)` | | +| `selector` | `String` | | CSS Selector e.g. `element, .elm, .elm:before` | | + +## Examples + +### Basic Usage + +````html +Text… +```` + +### Advanced Usage + +````js +[ + + // Font wird auf alles angewendet + $getFont('Font Family A'), + + // Font wird auf `b` und `strong` Tags angwendet + $getFont('Font Family B', 700, 'normal', { selector: 'b, strong' }), + + // Font erscheint erst ab Viewport `>768px` + $getFont('Font Family B', 400, 'normal', { media: '(min-width: 768px)' }), + + // Font wird auf `b` und `strong` Tags angwendet und erscheint erst ab Viewport `>768px` + $getFont('Font Family B', 700, 'normal', { selector: 'b, strong', media: '(min-width: 768px)' }) + +] +```` diff --git a/docsALT/content/11.v3/3.guide/6.components/_dir.yml b/docsALT/content/11.v3/3.guide/6.components/_dir.yml new file mode 100644 index 0000000000..9937383b73 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/_dir.yml @@ -0,0 +1 @@ +title: Components diff --git a/docsALT/content/11.v3/3.guide/6.components/speedkit-iframe.md b/docsALT/content/11.v3/3.guide/6.components/speedkit-iframe.md new file mode 100644 index 0000000000..857f1e6d0c --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/speedkit-iframe.md @@ -0,0 +1,90 @@ +--- +title: SpeedkitIframe +--- + +# {{title}} + +`SpeedkitIframe`, Iframe & IntersectionObserver in one. + +## Exkurs + +Iframes have a tendency, in the special case of the initial page load, to disrupt the construction and initialisation of the actual page through the massive loading of resources from another source. + +**For the user, this is particularly visible by:** + +::list{type="warning"} + +- Freeze (Short freeze of the page) +- Delayed loading of resources (images, fonts) +- Unnecessarily generated traffic +:: + +## Solution + +In order to solve these points, care should be taken to ensure that the initialisation of the iframe takes place downstream. +This can be realised, for example, via an [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). +This sets the source on the iframe only when the visible viewport has been reached. + +**The following conditions can thus be fulfilled:** +::list{type="success"} + +- Iframe load is reactive. +- No resources are blocked during loading. +- Traffic is only generated when the iframe is visible. +:: + +The strategy mentioned above is provided by the `SpeedkitIframe`, which can be used in the same way as a normal [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). +The included [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver) is configured via the `intersectionObserver` property. + +## Usage + +The `SpeedkitIframe` is used like a normal [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). + +### Example + +````vue + + + +```` + +## Properties + +> Use native attributes from [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). +> +### `componentObserver` + +- Type: `Object` [IntersectionObserver Properties](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver#properties) + - Default: `{ trackVisibility: true, delay: 350 }` + +Sets the options from the integrated [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). + +For advanced usage, [learn more](https://web.dev/intersectionobserver-v2/) about option `trackVisibility` from [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). + +## Events + +````html + +```` + +| Name | Description | +| ------- | -------------------------------------------------- | +| `load` | Triggered when Iframe has finished loading. | +| `enter` | Triggered when component has reached the viewport. | diff --git a/docsALT/content/11.v3/3.guide/6.components/speedkit-image.md b/docsALT/content/11.v3/3.guide/6.components/speedkit-image.md new file mode 100644 index 0000000000..0344a77e08 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/speedkit-image.md @@ -0,0 +1,224 @@ +--- +title: SpeedkitImage +--- + +# {{title}} + +The `SpeedkitImage` is a `img` implementation based on the module [`@nuxt/image`](https://image.nuxtjs.org/). +It uses the provided API `$img`. + +## Features + +With the current implementation of `SpeedkitImage` we can cover the following functionality: +::list{type="primary"} + +- generation of multiple image resolutions (srcset) +- breakpoint-based differentiation of multiple image resolutions (srcset) +- optimized preloading of critical image resources +- lazy load of non-critical image resources +- base path support +- lazy hydration support +- load and optimize remote images from custom domains +- full SEO support +:: + +## Usage + +The `SpeedkitImage` is used to automatically generate and display different image sizes for different viewports. + +The specified resources can be given by absolute path (static folder) or complete URL. [`nuxt/image`](https://image.nuxtjs.org/) downloads the resources fully automatically and stores the generated and optimized renditions in the destination folder. + +::alert{type="warning"} +Important: For using `SpeedkitImage` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + +```` + +## Properties + +````js +{ + source: { … }, + title: 'Image Title', + alt: 'Image Alt' +} +```` + +### `hydrate` + +- Type: `Boolean` + - Default: `true` + +The initialization of the `SpeedkitImage` in the client can be controlled manually. +Here for the property `hydrate` must be set externally. +If `true` the `SpeedkitImage` is initialized. + +### `source` + +- Type: `Object` + +````js +{ + format: '', + src: '', + sizes: { … }, + modifiers: { … }, + preset: { … }, + provider: '' +} +```` + +#### `format` + +Sets the image output format. + +Available formats: + +- `avif` +- `webp` +- `png` +- `jpg` + +::alert{type="warning"} +Important: Note that if you specify `src` without a file extension, the format must be included. +:: + +#### `src` + +Information on property `src` can be found at [here](https://image.nuxtjs.org/components/nuxt-img#src). + +#### `sizes` + +Describes the image sizes in which the resource should be displayed. The image `sizes` are passed as an `object` and describe with the key-value pairs the image width and the width of the viewport depending on it, e.g. `ImageWidth:MinWidth`. + +The image width, is definied by [`screens`](https://image.nuxtjs.org/configuration/#screens) option from `@nuxt/image` + +**Example** + +In the following example, one image with two different image sizes by breakpoints and output format is `webp`. + +````js +[ + { format: 'webp', src: '/img/image.jpg', sizes: { default: '100vw', sm: '100vw' } } +] +```` + +#### `modifiers` + +- Type: `Object` + +You can give separate modifiers to each source. +This overwrites the global ones of the preset if available. + +Learn more about `modifiers`: + +- + +#### `preset` + +- Type: `Object` + +If a preset is set on a source, the globally defined one is ignored. + +This means that a separate preset can be specified for each source. + +Learn more about `preset`: + +- + +#### `provider` + +- Type: `String` + +If a provider is set on a source, the globally defined one is ignored. + +This means that a separate provider can be specified for each source. + +Learn more about `provider`: + +- + +### `alt` + +- Type: `String` + +Image alternative Text. + +[MDN - HTMLImageElement.alt](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt) + +### `title` + +- Type: `String` + +Image Title. + +[MDN - HTMLElement.title](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/title) + +### `crossorigin` + +- Type: `String`, `Boolean` + +If not set, the global crossorigin is used `this.$speedkit.crossorigin`. + +[Learn more about `crossorigin` option](https://nuxt-speedkit.grabarzundpartner.dev/options#crossorigin) + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +### `critical` + +- Type: `Boolean` + - Default: `$parent.isCritical` + +Set component as critical component. + +[Learn more about critical components](/v3/usage#critical-prop-for-critical-components) + +## Events + +````html + +```` + +| Name | Description | +| ------ | ------------------------------------------------------------- | +| `load` | Triggered when the image resource has been completely loaded. | diff --git a/docsALT/content/11.v3/3.guide/6.components/speedkit-layer.md b/docsALT/content/11.v3/3.guide/6.components/speedkit-layer.md new file mode 100644 index 0000000000..5c74ebe0fa --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/speedkit-layer.md @@ -0,0 +1,148 @@ +--- +title: SpeedkitLayer +--- +# {{title}} + +If the SpeedkitLayer is implemented, the javascript initialisation is automatically monitored. If one of the events + +::list{type="info"} + +- reduced bandwidth +- weak hardware +- unsupported browser +:: + +occurs, the process is paused and only continued or cancelled after a user interaction in the layer. + +The layer is placed once in the layout (e.g. `layouts/default.vue`). +The included SpeedkitLayer serves as a wrapper and must be filled according to the [template](/v3/guide/components/speedkit-layer#template), see [example component](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/example/components/InfoLayer.vue). + +The content contains messages and buttons that are displayed in the respective event. +Messages and buttons are defined with an `id`, these are set to `display: none;` by default via CSS. + +- e.g. `nuxt-speedkit-message-unsupported-browser` for message +- e.g. `nuxt-speedkit-button-init-app` for button + +::alert +For the closing mechanism of the layer, see [Hide Layer](/v3/guide/components/speedkit-layer#hide-layer). +:: + +## Messages + +The messages are elements that are displayed for the relevant events. + +Initially, all IDs are set to `display: none;`, so no message is visible. +When an event is triggered, the relevant message is displayed via the ID using the style attribute `display: block;`. + +| ID | Description | +| -------------------------------------------------------- | --------------------------------------------------------------------------- | +| `nuxt-speedkit-message-nojs` | Javascript is disabled. | +| `nuxt-speedkit-message-reduced-bandwidth` | Connection bandwidth is too low. | +| `nuxt-speedkit-message-weak-hardware` | User hardware are not sufficient. | +| `nuxt-speedkit-message-unsupported-browser` | User Browser is not supported by [`Browserslist`](/v3/options#browsersupport). | + +**Example** + +````html + +
+ Your browser is not supported! +
+ + +
+ Your browser is not supported! +
+```` + +## Buttons + +The buttons are interaction elements for the user with which he can make his choice at the relevant event. + +Initially, all IDs except for `nuxt-speedkit-button-nojs` are set to `display: none;`. +When an event is triggered, the relevant button is displayed via the ID using the style attribute `display: block;`. + +| ID | Description | +| ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `nuxt-speedkit-button-init-nojs` | Visible when javascript is disabled, needed so that the user can hide the layer. Requires the [Hide Layer](/v3/guide/components/speedkit-layer#hide-layer) implementation. | +| `nuxt-speedkit-button-init-reduced-view` | Is used to offer the user the possibility to visit the page only with activated fonts and images. Other initialisations of the Javascript are prevented. | +| `nuxt-speedkit-button-init-app` | Activates all features. The initialisation of the JavaScript is started, images are loaded. | + +::alert{type="info"} +It is recommended to register an **Inline Click-Event** for the buttons `#nuxt-speedkit-button-init-reduced-view` and `#nuxt-speedkit-button-init-app`.

More information under [Force App initialization](/v3/guide/components/speedkit-layer#force-app-initialization) +:: + +## Hide Layer + +````html + +```` + +The layer can be closed via a `for` attribute with the `id` `nuxt-speedkit-layer-close`. + +::list{type="primary"} + +- Closing mechanics does not require javascript. +:: + +## Template + +````html + +
+

Sorry, but you will have a limited user experience due to a…

+ +
    + +
  • + disabled javascript +
  • + +
  • + outdated browser +
  • + +
  • + reduced-bandwidth +
  • + +
  • + weak hardware +
  • +
+ + + + + + + + + +
+
+```` + +## Force App initialization + +For Unsupported-Browser and Insufficient Hardware events, an `onclick` event must also be set with the `id`. + +In the event, the global variable `__NUXT_SPEEDKIT_AUTO_INIT__` must be set to `true`. + +These are needed if the user has already reacted before the initial Javascript has been loaded. After the javascript has been successfully loaded, the app is automatically initialised. + +| Variable | Type | Description | Default | +| ----------------------------- | --------- | ---------------------------------------------------------------------------- | ------- | +| `__NUXT_SPEEDKIT_AUTO_INIT__` | `Boolean` | If set, initialisation continues after the javascript has been fully loaded. | `false` | diff --git a/docsALT/content/11.v3/3.guide/6.components/speedkit-picture.md b/docsALT/content/11.v3/3.guide/6.components/speedkit-picture.md new file mode 100644 index 0000000000..e8239f8490 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/speedkit-picture.md @@ -0,0 +1,195 @@ +--- +title: SpeedkitPicture +--- +# {{title}} + +The `SpeedkitPicture` is a `picture` implementation based on the module [`@nuxt/image`](https://image.nuxtjs.org/). +It uses the provided API `$img`. + +## Features + +With the current implementation of `SpeedkitPicture` we can cover the following functionality: + +::list + +- generation of multiple sources with multiple image resolutions (srcset) +- breakpoint-based differentiation of multiple image resolutions and ratios (srcset + media-rule) +- optimized preloading of critical image resources +- lazy load of non-critical image resources +- base path support +- lazy hydration support +- load and optimize remote images from custom domains +- full SEO support +:: + +## Usage + +The `SpeedkitPicture` is used to automatically generate and display different image sizes and/or image ratios for different viewports. + +The specified resources can be given by absolute path (static folder) or complete URL. [`nuxt/image`](https://image.nuxtjs.org/) downloads the resources fully automatically and stores the generated and optimized renditions in the destination folder. + +::alert{type="warning"} +Important: For using `SpeedkitPicture` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + sources: [ … ], + formats: ['avif', 'webp', 'jpg|jpeg|png'], + alt: 'Image Alt', + title: 'Image Title', +} +```` + +### `hydrate` + +- Type: `Boolean` + - Default: `true` + +The initialization of the `SpeedkitPicture` in the client can be controlled manually. +Here for the property `hydrate` must be set externally. +If `true` the `SpeedkitPicture` is initialized. + +### `sources` + +- Type: `Array` + +List of resources used. + +The definitions in the `sources` are equivalent to the [`SpeedkitImage (source)`](/v3/guide/components/speedkit-image#source). + +The only differences are: + +- The `media` property can be used. This allows even more dependencies for the display, e.g. `(orientation: portrait)`. +- The `format` property is not used. Instead `formats` is used for setting the output formats. + +**Example** + +In the following example, two different image ratios are used. + +- `landscape.jpg` is applied at a viewport of `996px` with an image size of `996px (100vw)` by orientation `landscape`. +- `portrait.jpg` is applied below `768px` and has two viewport dependent image sizes, at `(min-width: 768px)` the width `768px` and everything below that the width `320px` by orientation `portrait` + +````js +[ + { src: '/img/landscape.png', sizes: { md: '100vw' }, media: '(orientation: landscape)' }, + { src: '/img/portrait.png', sizes: { default: '100vw', sm: '100vw' }, media: '(orientation: portrait)' } +] +```` + +### `formats` + +- Type: `Array` + - Default: `['webp', 'avif', 'jpg|jpeg|png|gif']` + +> Overrides the [`pictureFormats`](/v3/options#pictureformats) property defined in the module options. + +Defines the formats that are to be generated and provided as source in the Picture. +Is used to offer the correct image type for the browser. + +::alert{type="warning"} +Formats can also be specified as OR condition (`jpg|jpeg|png|gif`). This is important when using JPGs and PNGs with the same `format` configuration. +:: + +### `alt` + +- Type: `String` + +Image alternative Text. + +[MDN - HTMLImageElement.alt](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt) + +### `title` + +- Type: `String` + +Image Title. + +[MDN - HTMLElement.title](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/title) + +### `crossorigin` + +- Type: `String`, `Boolean` + +If not set, the global crossorigin is used `this.$speedkit.crossorigin`. + +[Learn more about `crossorigin` option](https://nuxt-speedkit.grabarzundpartner.dev/options#crossorigin) + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +### `sortSources` + +- Type: `Boolean` + - Default: `true` + +If set, the sources are sorted by the `media` properties. + +This is made possible by [`sort-css-media-queries`](https://www.npmjs.com/package/sort-css-media-queries). + +### `critical` + +- Type: `Boolean` + - Default: `$parent.isCritical` + +Set component as critical component. + +[Learn more about critical components](/v3/usage#critical-prop-for-critical-components) + +## Events + +````html + +```` + +| Name | Description | +| ------ | ------------------------------------------------------------- | +| `load` | Triggered when the image resource has been completely loaded. | diff --git a/docsALT/content/11.v3/3.guide/6.components/speedkit-vimeo.md b/docsALT/content/11.v3/3.guide/6.components/speedkit-vimeo.md new file mode 100644 index 0000000000..31f96162a7 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/speedkit-vimeo.md @@ -0,0 +1,174 @@ +--- +title: SpeedkitVimeo +--- +# {{title}} + +We have integrated `SpeedkitVimeo` as an example to show how iFrame content must be integrated in a performance-optimized manner. +For this purpose, a separate IntersectionObserver has been implemented, which detects a longer dwell time of the component in the viewport. The iFrame is initialized only after a positive detection. This prevents immense data from having to be loaded when simply scrolling through the page. +So that no empty space is visible to the user, we use the functionality of the [`SpeedkitPicture`](/v3/guide/components/speedkit-picture) and preload the corresponding Vimeo poster in different renditions, so the illusion is perfect for the user and he does not notice anything of the optimized lazy load procedure. + +## Usage + +The `SpeedkitVimeo` is used to initialise Vimeo videos with [`Vimeo Player-SDK`](https://developer.vimeo.com/player/sdk/). + +::alert +The SDK is not part of `nuxt-speedkit` and will be loaded by an external script. +:: + +The `url` of the Vimeo video must be specified. + +The `SpeedkitPicture` is used for the poster, so the generation of the poster is automated, you can define the image sizes with [`sizes` (What is `sizes`?)](/v3/guide/components/speedkit-image#source). + +[Learn more about `SpeedkitPicture`](/v3/guide/components/speedkit-picture) + +::alert{type="warning"} +Important: For using `SpeedkitVimeo` do not disable `@nuxt/image` via `disableNuxtImage` +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + url: '', + title: 'Player Title', + autoplay: false, + mute: false, + posterSizes: { … }, + options: { … } +} +```` + +### `url` + +- Type: `String` + +Sets a video via the vimeo url. + +### `title` + +- Type: `String` + +Sets the title for the player iframe and poster. + +### `autoplay` + +- Type: `Boolean` + - Default: `false` + +When set starts video in autoplay. It is required that the component is integrated via [`SpeedkitHydrate`](/v3/usage#import-components) or is only activated when entering the visible area. + +### `mute` + +- Type: `Boolean` + - Default: `false` + +When set the player is muted. + +### `posterSizes` + +- Type: `String` + - Default: `{ default: '100vw', xxs: '100vw', xs: '100vw', sm: '100vw', md: '100vw', lg: '100vw', xl: '100vw', xxl: '100vw' }` + +Sets the image sizes of the poster. + +[Learn more about `sizes`](/v3/guide/components/speedkit-image#source) + +### `options` + +- Type: `Object` + +Overrides the vimeo player options. These will be the same as the vimeo player embed options. + +[Learn more about Vimeo Player Parameters](https://developer.vimeo.com/player/sdk/embed) + +::alert{type="warning"} + +For `autoplay` and `mute` the component properties are used. + +Option `playsinline` is always set, `mute` is set automatically for touch devices. +This is important for autoplay on mobile devices. +:: + +## Slots + +````html + + + + + +```` + +| Name | Description | +| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `default` | Used to display more information about the video below the player.
The slot has a scoped property `videoData`.
This contains the result from the Vimeo `oembed` api.

| +| `loading-spinner` | Overwrites the loading spinner. | +| `play` | Overwrites the play button. | + +## Events + +````html + +```` + +| Name | Description | +| -------------- | -------------------------------------------------------- | +| `ready` | Triggered when `Vimeo Player-SDK` is completely loaded. | +| `playing` | Triggered when video is finished loading and playing. | +| `beforePlayer` | Used to place elements in the player container (before). | +| `afterPlayer` | Used to place elements in the player container (after). | diff --git a/docsALT/content/11.v3/3.guide/6.components/speedkit-youtube.md b/docsALT/content/11.v3/3.guide/6.components/speedkit-youtube.md new file mode 100644 index 0000000000..3b4a0764f1 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/speedkit-youtube.md @@ -0,0 +1,182 @@ +--- +title: SpeedkitYoutube +--- +# {{title}} + +We have integrated `SpeedkitYoutube` as an example to show how iFrame content must be integrated in a performance-optimized manner. +For this purpose, a separate IntersectionObserver has been implemented, which detects a longer dwell time of the component in the viewport. The iFrame is initialized only after a positive detection. This prevents immense data from having to be loaded when simply scrolling through the page. +So that no empty space is visible to the user, we use the functionality of the [`SpeedkitPicture`](/v3/guide/components/speedkit-picture) and preload the corresponding Youtube poster in different renditions, so the illusion is perfect for the user and he does not notice anything of the optimized lazy load procedure. + +## Usage + +The `SpeedkitYoutube`is used to initialise Youtube videos with [Youtube Iframe-API](https://developers.google.com/youtube/iframe_api_reference?hl=de). + +The `url` of the Youtube video must be specified. + +The `SpeedkitPicture` is used for the poster, so the generation of the poster is automated, you can define the image sizes with [`sizes` (What is `sizes`?)](/v3/guide/components/speedkit-picture#sources). + +[Learn more about `SpeedkitPicture`](/v3/guide/components/speedkit-picture) + +::alert{type="warning"} + +Important: For using `SpeedkitYoutube` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + url: '', + title: 'Player Title', + autoplay: false, + mute: false, + posterSizes: { … }, + options: { … } +} +```` + +### `url` + +- Type: `String` + +Sets a video via the youtube url. + +### `title` + +- Type: `String` + +Sets the title for the player iframe and poster. + +### `autoplay` + +- Type: `Boolean` + - Default: `false` + +When set starts video in autoplay. It is required that the component is integrated via [`SpeedkitHydrate`](/v3/usage#import-components) or is only activated when entering the visible area. + +### `mute` + +- Type: `Boolean` + - Default: `false` + +When set the player is muted. + +### `posterSizes` + +- Type: `String` + - Default: `{ default: '100vw', xxs: '100vw', xs: '100vw', sm: '100vw', md: '100vw', lg: '100vw', xl: '100vw', xxl: '100vw' }` + +Sets the image sizes of the poster. + +[Learn more about `sizes`](/v3/guide/components/speedkit-picture#sources) + +### `options` + +- Type: `Object` + +Overrides the youtube player options. These will be the same as the youtube player parameters. + +Use `boolean` values instead of integers (e.g. `0`, `1`). + +[Learn more about Youtube Player Parameters](https://developers.google.com/youtube/player_parameters#Parameters) + +::alert{type="warning"} + +For `autoplay` and `mute` the component properties are used. + +Option `playsinline` is always set, `mute` is set automatically for touch devices. +This is important for autoplay on mobile devices. +:: + +### `host` + +- Type: `String` + - default: `'https://www.youtube-nocookie.com'` + +Sets the host for the player. + +::alert +It is recommended to use the default (). +:: + +## Slots + +````html + + + +```` + +| Name | Description | +| ----------------- | ------------------------------- | +| `loading-spinner` | Overwrites the loading spinner. | +| `play` | Overwrites the play button. | + +## Events + +````html + +```` + +| Name | Description | +| -------------- | -------------------------------------------------------- | +| `ready` | Triggered when `Youtube-API` is completely loaded. | +| `playing` | Triggered when video is finished loading and playing. | +| `beforePlayer` | Used to place elements in the player container (before). | +| `afterPlayer` | Used to place elements in the player container (after). | diff --git a/docsALT/content/11.v3/3.guide/6.components/weak-hardware-overlay.md b/docsALT/content/11.v3/3.guide/6.components/weak-hardware-overlay.md new file mode 100644 index 0000000000..1e2a06b533 --- /dev/null +++ b/docsALT/content/11.v3/3.guide/6.components/weak-hardware-overlay.md @@ -0,0 +1,83 @@ +--- +title: WeakHardwareOverlay +--- + +# {{title}} + +The `WeakHardwareOverlay` is used in components that are affected by the SpeedkitLayer event `Weak Hardware`. (*Example: Component requires the execution of `mounted` for functionality.*) + +::alert{type="info"} +The **performance issue event** occurs when initialization determines that the client is overloaded with execution and the user has confirmed the `#nuxt-speedkit-button-init-reduced-view` button in the SpeedkitLayer. + +- [Learn more about SpeedkitLayer interactions)](/v3/components/speedkit-layer#buttons) + +:: + +Basically, the overlay is used to make content visible when the `Weak Hardware` has occurred, if this does not occur, the overlay is not visible. + +It is recommended to include an interaction element in the overlay that allows the user to switch to the normal state. For this the interaction element must get the ID `nuxt-speedkit-button-init-app` and reacts on `click` with the initialization of the app. + +## Example + +Example of defining a custom `WeakHardwareOverlay` component and placing it in a target component that is affected by the `Weak Hardware` event. + +### Customize Overlay + +````vue[@/components/WeakHardwareOverlay.vue] + + + +```` + +### Usage Overlay + +````vue[@/components/Player.vue] + + + +```` diff --git a/docsALT/content/11.v3/3.guide/_dir.yml b/docsALT/content/11.v3/3.guide/_dir.yml new file mode 100644 index 0000000000..aff9b7cb9b --- /dev/null +++ b/docsALT/content/11.v3/3.guide/_dir.yml @@ -0,0 +1 @@ +title: Guide diff --git a/docsALT/content/11.v3/_dir.yml b/docsALT/content/11.v3/_dir.yml new file mode 100644 index 0000000000..f97f2596c1 --- /dev/null +++ b/docsALT/content/11.v3/_dir.yml @@ -0,0 +1 @@ +title: V3 ⚠️ diff --git a/docs/content/3.guide/0.setup.md b/docsALT/content/3.guide/0.setup.md similarity index 100% rename from docs/content/3.guide/0.setup.md rename to docsALT/content/3.guide/0.setup.md diff --git a/docs/content/3.guide/1.options.md b/docsALT/content/3.guide/1.options.md similarity index 89% rename from docs/content/3.guide/1.options.md rename to docsALT/content/3.guide/1.options.md index 889343b7c2..182d291c1a 100644 --- a/docs/content/3.guide/1.options.md +++ b/docsALT/content/3.guide/1.options.md @@ -243,7 +243,7 @@ For the avif and webp formats the | opera - Type: `Boolean` - Default: `false` -With this attribute all components that can be found under `nuxt-speedkit/components` can be registered globally. +With this attribute all components that can be found under `#speedkit/components` can be registered globally. [Learn more @nuxt/components](https://github.com/nuxt/components). ::alert{type="warning"} @@ -254,12 +254,12 @@ This option is not recommended if you want to achieve a lighthouse score of 100/ | Global Name | Import Path | | | --------------------------- | ------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------- | -| `SpeedkitIframe` | `nuxt-speedkit/components/SpeedkitIframe` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitIframe.vue) | -| `SpeedkitLayer` | `nuxt-speedkit/components/SpeedkitLayer` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitLayer.vue) | -| `SpeedkitPicture` | `nuxt-speedkit/components/SpeedkitPicture` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitPicture.vue) | -| `SpeedkitYoutube` | `nuxt-speedkit/components/SpeedkitYoutube` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitYoutube.vue) | -| `AbstractComponentObserver` | `nuxt-speedkit/components/abstracts/ComponentObserver` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/ComponentObserver.vue) | -| `AbstractOnlySsr` | `nuxt-speedkit/components/abstracts/OnlySsr` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/OnlySsr.vue) | +| `SpeedkitIframe` | `#speedkit/components/SpeedkitIframe` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitIframe.vue) | +| `SpeedkitLayer` | `#speedkit/components/SpeedkitLayer` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitLayer.vue) | +| `SpeedkitPicture` | `#speedkit/components/SpeedkitPicture` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitPicture.vue) | +| `SpeedkitYoutube` | `#speedkit/components/SpeedkitYoutube` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/SpeedkitYoutube.vue) | +| `AbstractComponentObserver` | `#speedkit/components/abstracts/ComponentObserver` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/ComponentObserver.vue) | +| `AbstractOnlySsr` | `#speedkit/components/abstracts/OnlySsr` | [Source](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/lib/components/abstracts/OnlySsr.vue) | ## `componentPrefix` diff --git a/docs/content/3.guide/2.usage.md b/docsALT/content/3.guide/2.usage.md similarity index 90% rename from docs/content/3.guide/2.usage.md rename to docsALT/content/3.guide/2.usage.md index 194cdbb82e..625424d1b3 100644 --- a/docs/content/3.guide/2.usage.md +++ b/docsALT/content/3.guide/2.usage.md @@ -45,7 +45,7 @@ Until now, components were imported either statically (`import component from '@ In the background, the module by [Markus Oberlehner](https://github.com/maoberlehner/vue-lazy-hydration) is used in a standardised way. ````js -import speedkitHydrate from 'nuxt-speedkit/hydrate'; +import speedkitHydrate from '#speedkit/hydrate'; export default { components: { @@ -57,7 +57,7 @@ export default { Whether a component is in the viewport or not is determined in the background by the intersection observer. If the initialisation is to take place earlier, e.g. when scrolling, this can be adjusted accordingly via the `rootMargin` option in the nuxt.config. ::alert{type="warning"} -Although the nuxt-speedkit/hydrate function can be used in any component, we recommend its explicit use only in pages and layout. Its use within components can be useful only in explicit special cases. Here we recommend the general use of static imports. +Although the #speedkit/hydrate function can be used in any component, we recommend its explicit use only in pages and layout. Its use within components can be useful only in explicit special cases. Here we recommend the general use of static imports. :: ::alert{type="info"} @@ -66,7 +66,7 @@ With NODE-ENV (development), the components are included directly. ## Speedkit Components -In order to be able to load further static resources such as pictures, iFrames or Vimeo/Youtube videos in the iFrame in a performance-optimised way, we provide the following components. The speedkit components can be imported via the namespace `nuxt-speedkit/components`. +In order to be able to load further static resources such as pictures, iFrames or Vimeo/Youtube videos in the iFrame in a performance-optimised way, we provide the following components. The speedkit components can be imported via the namespace `#speedkit/components`. - [SpeedkitLayer](/components/speedkit-layer) - [SpeedkitPicture](/components/speedkit-picture) @@ -81,7 +81,7 @@ In order to be able to load further static resources such as pictures, iFrames o +``` diff --git a/docsALT/content/4.migration/_dir.yml b/docsALT/content/4.migration/_dir.yml new file mode 100644 index 0000000000..a9c7060f9a --- /dev/null +++ b/docsALT/content/4.migration/_dir.yml @@ -0,0 +1 @@ +title: Migration diff --git a/docs/content/5.changelog.md b/docsALT/content/5.changelog.md similarity index 100% rename from docs/content/5.changelog.md rename to docsALT/content/5.changelog.md diff --git a/docsALT/index.md b/docsALT/index.md new file mode 100644 index 0000000000..556a9f6bfc --- /dev/null +++ b/docsALT/index.md @@ -0,0 +1,25 @@ +--- +# https://vitepress.dev/reference/default-theme-home-page +layout: home + +hero: + name: "Nuxt Speedkit" + text: "Nuxt Speedkit takes over the Lighthouse performance optimization of your generated website." + tagline: My great project tagline + actions: + - theme: brand + text: Markdown Examples + link: /markdown-examples + - theme: alt + text: API Examples + link: /api-examples + +features: + - title: Feature A + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit + - title: Feature B + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit + - title: Feature C + details: Lorem ipsum dolor sit amet, consectetur adipiscing elit +--- + diff --git a/docs/jsconfig.json b/docsALT/jsconfig.json similarity index 100% rename from docs/jsconfig.json rename to docsALT/jsconfig.json diff --git a/docsALT/markdown-examples.md b/docsALT/markdown-examples.md new file mode 100644 index 0000000000..8e55eb8add --- /dev/null +++ b/docsALT/markdown-examples.md @@ -0,0 +1,85 @@ +# Markdown Extension Examples + +This page demonstrates some of the built-in markdown extensions provided by VitePress. + +## Syntax Highlighting + +VitePress provides Syntax Highlighting powered by [Shiki](https://github.com/shikijs/shiki), with additional features like line-highlighting: + +**Input** + +```` +```js{4} +export default { + data () { + return { + msg: 'Highlighted!' + } + } +} +``` +```` + +**Output** + +```js{4} +export default { + data () { + return { + msg: 'Highlighted!' + } + } +} +``` + +## Custom Containers + +**Input** + +```md +::: info +This is an info box. +::: + +::: tip +This is a tip. +::: + +::: warning +This is a warning. +::: + +::: danger +This is a dangerous warning. +::: + +::: details +This is a details block. +::: +``` + +**Output** + +::: info +This is an info box. +::: + +::: tip +This is a tip. +::: + +::: warning +This is a warning. +::: + +::: danger +This is a dangerous warning. +::: + +::: details +This is a details block. +::: + +## More + +Check out the documentation for the [full list of markdown extensions](https://vitepress.dev/guide/markdown). diff --git a/docs/nuxt.config.ts b/docsALT/nuxt.config.ts similarity index 100% rename from docs/nuxt.config.ts rename to docsALT/nuxt.config.ts diff --git a/docs/package-lock.json b/docsALT/package-lock.json similarity index 82% rename from docs/package-lock.json rename to docsALT/package-lock.json index f420be9bd0..8ab4e55a8e 100644 --- a/docs/package-lock.json +++ b/docsALT/package-lock.json @@ -13,10 +13,20 @@ "@nuxtjs/eslint-module": "4.1.0", "@nuxtjs/robots": "3.0.0", "@nuxtlabs/github-module": "1.6.3", - "nuxt": "3.8.0", + "nuxt": "3.8.1", "theme-colors": "0.1.0" } }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@ampproject/remapping": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", @@ -78,6 +88,21 @@ "node": ">=4" } }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -87,6 +112,15 @@ "node": ">=0.8.0" } }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/code-frame/node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -100,9 +134,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -266,12 +300,12 @@ } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.15.tgz", - "integrity": "sha512-qLNsZbgrNh0fDQBCPocSL8guki1hcPvltGDv/NxvUoABwFq7GkKSu1nRXeJkVZc+wJvne2E0RKQz+2SQrz6eAA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -424,12 +458,12 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz", - "integrity": "sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, @@ -463,6 +497,21 @@ "node": ">=4" } }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, "node_modules/@babel/highlight/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -472,6 +521,15 @@ "node": ">=0.8.0" } }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/highlight/node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -606,9 +664,9 @@ } }, "node_modules/@babel/standalone": { - "version": "7.22.16", - "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.22.16.tgz", - "integrity": "sha512-3bBKOuoOYCwiSVH5TlsfF+3wmKQRk9hVJbQ+L7EfGuZiUBwJYRWxkJeNQJKEPkDuuaoihTP0hRzal0Pichzb7w==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/standalone/-/standalone-7.23.2.tgz", + "integrity": "sha512-VJNw7OS26JvB6rE9XpbT6uQeQIEBWU5eeHGS4VR/+/4ZoKdLBXLcy66ZVJ/9IBkK1RMp8B0cohvhzdKWtJAGmg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -649,6 +707,15 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/types": { "version": "7.23.0", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", @@ -673,55 +740,73 @@ } }, "node_modules/@csstools/cascade-layer-name-parser": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-1.0.2.tgz", - "integrity": "sha512-xm7Mgwej/wBfLoK0K5LfntmPJzoULayl1XZY9JYgQgT29JiqNw++sLnx95u5y9zCihblzkyaRYJrsRMhIBzRdg==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-1.0.5.tgz", + "integrity": "sha512-v/5ODKNBMfBl0us/WQjlfsvSlYxfZLhNMVIsuCPib2ulTwGKYbKJbwqw671+qH9Y4wvWVnu7LBChvml/wBKjFg==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], "engines": { "node": "^14 || ^16 || >=18" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, "peerDependencies": { - "@csstools/css-parser-algorithms": "^2.1.1", - "@csstools/css-tokenizer": "^2.1.1" + "@csstools/css-parser-algorithms": "^2.3.2", + "@csstools/css-tokenizer": "^2.2.1" } }, "node_modules/@csstools/css-parser-algorithms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.1.1.tgz", - "integrity": "sha512-viRnRh02AgO4mwIQb2xQNJju0i+Fh9roNgmbR5xEuG7J3TGgxjnE95HnBLgsFJOJOksvcfxOUCgODcft6Y07cA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.3.2.tgz", + "integrity": "sha512-sLYGdAdEY2x7TSw9FtmdaTrh2wFtRJO5VMbBrA8tEqEod7GEggFmxTSK9XqExib3yMuYNcvcTdCZIP6ukdjAIA==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], "engines": { "node": "^14 || ^16 || >=18" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, "peerDependencies": { - "@csstools/css-tokenizer": "^2.1.1" + "@csstools/css-tokenizer": "^2.2.1" } }, "node_modules/@csstools/css-tokenizer": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.1.1.tgz", - "integrity": "sha512-GbrTj2Z8MCTUv+52GE0RbFGM527xuXZ0Xa5g0Z+YN573uveS4G0qi6WNOMyz3yrFM/jaILTTwJ0+umx81EzqfA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.2.1.tgz", + "integrity": "sha512-Zmsf2f/CaEPWEVgw29odOj+WEVoiJy9s9NOv5GgNY9mZ1CZ7394By6wONrONrTsnNDv6F9hR02nvFihrGVGHBg==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], "engines": { "node": "^14 || ^16 || >=18" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/csstools" } }, "node_modules/@esbuild/android-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", - "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.5.tgz", + "integrity": "sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==", "cpu": [ "arm" ], @@ -735,9 +820,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", - "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.5.tgz", + "integrity": "sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==", "cpu": [ "arm64" ], @@ -751,9 +836,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", - "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.5.tgz", + "integrity": "sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==", "cpu": [ "x64" ], @@ -767,9 +852,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", - "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", + "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", "cpu": [ "arm64" ], @@ -783,9 +868,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", - "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.5.tgz", + "integrity": "sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==", "cpu": [ "x64" ], @@ -799,9 +884,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", - "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.5.tgz", + "integrity": "sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==", "cpu": [ "arm64" ], @@ -815,9 +900,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", - "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.5.tgz", + "integrity": "sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==", "cpu": [ "x64" ], @@ -831,9 +916,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", - "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.5.tgz", + "integrity": "sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==", "cpu": [ "arm" ], @@ -847,9 +932,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", - "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.5.tgz", + "integrity": "sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==", "cpu": [ "arm64" ], @@ -863,9 +948,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", - "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.5.tgz", + "integrity": "sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==", "cpu": [ "ia32" ], @@ -879,9 +964,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", - "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.5.tgz", + "integrity": "sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==", "cpu": [ "loong64" ], @@ -895,9 +980,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", - "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.5.tgz", + "integrity": "sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==", "cpu": [ "mips64el" ], @@ -911,9 +996,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", - "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.5.tgz", + "integrity": "sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==", "cpu": [ "ppc64" ], @@ -927,9 +1012,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", - "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.5.tgz", + "integrity": "sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==", "cpu": [ "riscv64" ], @@ -943,9 +1028,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", - "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.5.tgz", + "integrity": "sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==", "cpu": [ "s390x" ], @@ -959,9 +1044,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", - "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz", + "integrity": "sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==", "cpu": [ "x64" ], @@ -975,9 +1060,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", - "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.5.tgz", + "integrity": "sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==", "cpu": [ "x64" ], @@ -991,9 +1076,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", - "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.5.tgz", + "integrity": "sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==", "cpu": [ "x64" ], @@ -1007,9 +1092,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", - "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.5.tgz", + "integrity": "sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==", "cpu": [ "x64" ], @@ -1023,9 +1108,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", - "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.5.tgz", + "integrity": "sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==", "cpu": [ "arm64" ], @@ -1039,9 +1124,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", - "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.5.tgz", + "integrity": "sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==", "cpu": [ "ia32" ], @@ -1055,9 +1140,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", - "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.5.tgz", + "integrity": "sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==", "cpu": [ "x64" ], @@ -1087,9 +1172,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.0.tgz", - "integrity": "sha512-vITaYzIcNmjn5tF5uxcZ/ft7/RXGrMUIS9HalWckEOF6ESiwXKoMzAQf2UW0aVd6rnOeExTJVd5hmWXucBKGXQ==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", "dev": true, "peer": true, "engines": { @@ -1097,15 +1182,15 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.2.tgz", - "integrity": "sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", + "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", "dev": true, "peer": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.1", + "espree": "^9.6.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -1120,86 +1205,33 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@eslint/js": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.53.0.tgz", + "integrity": "sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==", "dev": true, "peer": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, - "peer": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "peer": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz", - "integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==", - "dev": true, - "peer": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@fastify/busboy": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.0.0.tgz", - "integrity": "sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==", + "node_modules/@fastify/busboy": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.0.0.tgz", + "integrity": "sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==", "dev": true, "engines": { "node": ">=14" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "peer": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -1207,30 +1239,6 @@ "node": ">=10.10.0" } }, - "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "peer": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -1246,9 +1254,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true, "peer": true }, @@ -1376,24 +1384,24 @@ } }, "node_modules/@jest/schemas": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", - "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, "dependencies": { - "@sinclair/typebox": "^0.25.16" + "@sinclair/typebox": "^0.27.8" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/types": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.5.0.tgz", - "integrity": "sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dev": true, "dependencies": { - "@jest/schemas": "^29.4.3", + "@jest/schemas": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -1404,43 +1412,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/types/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@jest/types/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/types/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", @@ -1456,9 +1427,9 @@ } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", "dev": true, "engines": { "node": ">=6.0.0" @@ -1474,9 +1445,9 @@ } }, "node_modules/@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", "dev": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.0", @@ -1490,21 +1461,15 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", + "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, "node_modules/@kwsites/file-exists": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", @@ -1552,6 +1517,15 @@ "node": ">= 6.0.0" } }, + "node_modules/@mapbox/node-pre-gyp/node_modules/detect-libc": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", + "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/@mapbox/node-pre-gyp/node_modules/https-proxy-agent": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", @@ -1651,19 +1625,6 @@ "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@npmcli/agent/node_modules/http-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", - "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", - "dev": true, - "dependencies": { - "agent-base": "^7.1.0", - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/@npmcli/agent/node_modules/lru-cache": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", @@ -1673,20 +1634,6 @@ "node": "14 || >=16.14" } }, - "node_modules/@npmcli/agent/node_modules/socks-proxy-agent": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", - "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", - "dev": true, - "dependencies": { - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "socks": "^2.7.1" - }, - "engines": { - "node": ">= 14" - } - }, "node_modules/@npmcli/fs": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", @@ -1813,14 +1760,14 @@ } }, "node_modules/@npmcli/run-script": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.1.tgz", - "integrity": "sha512-Od/JMrgkjZ8alyBE0IzeqZDiF1jgMez9Gkc/OYrCkHHiXNwM0wc6s7+h+xM7kYDZkS0tAoOLr9VvygyE5+2F7g==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.2.tgz", + "integrity": "sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==", "dev": true, "dependencies": { "@npmcli/node-gyp": "^3.0.0", "@npmcli/promise-spawn": "^7.0.0", - "node-gyp": "^9.0.0", + "node-gyp": "^10.0.0", "read-package-json-fast": "^3.0.0", "which": "^4.0.0" }, @@ -1904,17 +1851,19 @@ } }, "node_modules/@nuxt/content": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/@nuxt/content/-/content-2.8.5.tgz", - "integrity": "sha512-sWVGoZJOjwEd8v6XYTrHYtQ7c11HR6yK9dcqruf+7WM2WJmwTSeY8B1ir6+9mE1FPQAFnqg26qSkxwafpS9o+g==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@nuxt/content/-/content-2.9.0.tgz", + "integrity": "sha512-//mt++/AgOmjT6TpanugNJpJfx6q8g7wV8/vnk7vSSrrgki8tG6jpupuJmxHHB8DcqqTJfuBWFIdaLhv/Z9Gzg==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.7.4", - "@nuxtjs/mdc": "^0.2.1", + "@nuxt/kit": "^3.8.0", + "@nuxtjs/mdc": "^0.2.6", + "@vueuse/core": "^10.5.0", "@vueuse/head": "^2.0.0", + "@vueuse/nuxt": "^10.5.0", "consola": "^3.2.3", - "defu": "^6.1.2", - "destr": "^2.0.1", + "defu": "^6.1.3", + "destr": "^2.0.2", "json5": "^2.2.3", "knitwork": "^1.0.0", "listhen": "^1.5.5", @@ -1923,6 +1872,7 @@ "micromark": "^4.0.0", "micromark-util-sanitize-uri": "^2.0.0", "micromark-util-types": "^2.0.0", + "minisearch": "^6.2.0", "ohash": "^1.1.3", "pathe": "^1.1.1", "scule": "^1.0.0", @@ -1935,486 +1885,84 @@ "ws": "^8.14.2" } }, - "node_modules/@nuxt/content/node_modules/@types/mdast": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.1.tgz", - "integrity": "sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==", + "node_modules/@nuxt/content/node_modules/@types/web-bluetooth": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.18.tgz", + "integrity": "sha512-v/ZHEj9xh82usl8LMR3GarzFY1IrbXJw5L4QfQhokjRV91q+SelFqxQWSep1ucXEZ22+dSTwLFkXeur25sPIbw==", + "dev": true + }, + "node_modules/@nuxt/content/node_modules/@vueuse/core": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.5.0.tgz", + "integrity": "sha512-z/tI2eSvxwLRjOhDm0h/SXAjNm8N5ld6/SC/JQs6o6kpJ6Ya50LnEL8g5hoYu005i28L0zqB5L5yAl8Jl26K3A==", "dev": true, "dependencies": { - "@types/unist": "*" + "@types/web-bluetooth": "^0.0.18", + "@vueuse/metadata": "10.5.0", + "@vueuse/shared": "10.5.0", + "vue-demi": ">=0.14.6" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@nuxt/content/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, - "node_modules/@nuxt/content/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "node_modules/@nuxt/content/node_modules/@vueuse/metadata": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.5.0.tgz", + "integrity": "sha512-fEbElR+MaIYyCkeM0SzWkdoMtOpIwO72x8WsZHRE7IggiOlILttqttM69AS13nrDxosnDBYdyy3C5mR1LCxHsw==", "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@nuxt/content/node_modules/mdast-util-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", - "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "node_modules/@nuxt/content/node_modules/@vueuse/shared": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.5.0.tgz", + "integrity": "sha512-18iyxbbHYLst9MqU1X1QNdMHIjks6wC7XTVf0KNOv5es/Ms6gjVFCAAWTVP2JStuGqydg3DT+ExpFORUEi9yhg==", "dev": true, "dependencies": { - "@types/mdast": "^4.0.0" + "vue-demi": ">=0.14.6" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@nuxt/content/node_modules/micromark": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", - "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "node_modules/@nuxt/content/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true } - ], - "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" } }, - "node_modules/@nuxt/content/node_modules/micromark-core-commonmark": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.0.tgz", - "integrity": "sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-destination": "^2.0.0", - "micromark-factory-label": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-factory-title": "^2.0.0", - "micromark-factory-whitespace": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-html-tag-name": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-factory-destination": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", - "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-factory-label": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", - "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-factory-space": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", - "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-factory-title": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", - "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-factory-whitespace": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", - "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-chunked": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", - "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-classify-character": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", - "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-combine-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", - "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-chunked": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-decode-numeric-character-reference": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.0.tgz", - "integrity": "sha512-pIgcsGxpHEtTG/rPJRz/HOLSqp5VTuIIjXlPI+6JSDlK2oljApusG6KzpS8AF0ENUMCHlC/IBb5B9xdFiVlm5Q==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", - "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/@nuxt/content/node_modules/micromark-util-html-tag-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", - "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/@nuxt/content/node_modules/micromark-util-normalize-identifier": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", - "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-resolve-all": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", - "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-sanitize-uri": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", - "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-subtokenize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.0.tgz", - "integrity": "sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/@nuxt/content/node_modules/micromark-util-symbol": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", - "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/@nuxt/content/node_modules/micromark-util-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", - "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/@nuxt/content/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@nuxt/devalue": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@nuxt/devalue/-/devalue-2.0.2.tgz", - "integrity": "sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==", - "dev": true - }, - "node_modules/@nuxt/devtools": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nuxt/devtools/-/devtools-1.0.0.tgz", - "integrity": "sha512-pM5AvystXlFPYOsGbH8PBxEYkttiEWHsZnGw660iMw8QedB6mAweT21XX9LDS69cqnRY5uTFqVOmO9Y4EYL3hg==", + "node_modules/@nuxt/devalue": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@nuxt/devalue/-/devalue-2.0.2.tgz", + "integrity": "sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==", + "dev": true + }, + "node_modules/@nuxt/devtools": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@nuxt/devtools/-/devtools-1.0.0.tgz", + "integrity": "sha512-pM5AvystXlFPYOsGbH8PBxEYkttiEWHsZnGw660iMw8QedB6mAweT21XX9LDS69cqnRY5uTFqVOmO9Y4EYL3hg==", "dev": true, "dependencies": { "@antfu/utils": "^0.7.6", @@ -2610,15 +2158,6 @@ "devtools-wizard": "cli.mjs" } }, - "node_modules/@nuxt/devtools-wizard/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, "node_modules/@nuxt/devtools-wizard/node_modules/execa": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", @@ -2686,41 +2225,324 @@ "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools-wizard/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools-wizard/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools-wizard/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools/node_modules/execa": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/@nuxt/devtools/node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "dev": true, + "engines": { + "node": ">=14.18.0" + } + }, + "node_modules/@nuxt/devtools/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@nuxt/devtools/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@nuxt/kit": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.8.1.tgz", + "integrity": "sha512-DrhG1Z85iH68QOTkgfb0HVfM2g7+CfcMWrFWMDwck9ofyM2RXQUZyfmvMedwBnui1AjjpgpLO9078yZM+RqNUg==", + "dev": true, + "dependencies": { + "@nuxt/schema": "3.8.1", + "c12": "^1.5.1", + "consola": "^3.2.3", + "defu": "^6.1.3", + "globby": "^13.2.2", + "hash-sum": "^2.0.0", + "ignore": "^5.2.4", + "jiti": "^1.21.0", + "knitwork": "^1.0.0", + "mlly": "^1.4.2", + "pathe": "^1.1.1", + "pkg-types": "^1.0.3", + "scule": "^1.0.0", + "semver": "^7.5.4", + "ufo": "^1.3.1", + "unctx": "^2.3.1", + "unimport": "^3.4.0", + "untyped": "^1.4.0" + }, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/@nuxt/schema": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-3.8.1.tgz", + "integrity": "sha512-fSaWRcI/2mUskfTZTGSnH6Ny0x05CRzylbVn6WFV0d6UEKIVy42Qd6n+h7yoFfp4cq4nji6u16PT4SqS1DEhsw==", + "dev": true, + "dependencies": { + "@nuxt/ui-templates": "^1.3.1", + "consola": "^3.2.3", + "defu": "^6.1.3", + "hookable": "^5.5.3", + "pathe": "^1.1.1", + "pkg-types": "^1.0.3", + "std-env": "^3.4.3", + "ufo": "^1.3.1", + "unimport": "^3.4.0", + "untyped": "^1.4.0" + }, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/@nuxt/telemetry": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@nuxt/telemetry/-/telemetry-2.5.2.tgz", + "integrity": "sha512-kZ+rWq/5MZonMhp8KGFI5zMaR2VsiWpnlkOLJIuIX2WoJl0DkHvtxCtuFq2erAqMVruWLpKU+tgMC+1cno/QmA==", + "dev": true, + "dependencies": { + "@nuxt/kit": "^3.7.4", + "ci-info": "^3.8.0", + "consola": "^3.2.3", + "create-require": "^1.1.1", + "defu": "^6.1.2", + "destr": "^2.0.1", + "dotenv": "^16.3.1", + "git-url-parse": "^13.1.0", + "is-docker": "^3.0.0", + "jiti": "^1.20.0", + "mri": "^1.2.0", + "nanoid": "^4.0.2", + "ofetch": "^1.3.3", + "parse-git-config": "^3.0.0", + "pathe": "^1.1.1", + "rc9": "^2.1.1", + "std-env": "^3.4.3" + }, + "bin": { + "nuxt-telemetry": "bin/nuxt-telemetry.mjs" } }, - "node_modules/@nuxt/devtools-wizard/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "node_modules/@nuxt/telemetry/node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" + "bin": { + "is-docker": "cli.js" }, "engines": { - "node": ">=12" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@nuxt/devtools-wizard/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "node_modules/@nuxt/ui-templates": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@nuxt/ui-templates/-/ui-templates-1.3.1.tgz", + "integrity": "sha512-5gc02Pu1HycOVUWJ8aYsWeeXcSTPe8iX8+KIrhyEtEoOSkY0eMBuo0ssljB8wALuEmepv31DlYe5gpiRwkjESA==", + "dev": true + }, + "node_modules/@nuxt/vite-builder": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@nuxt/vite-builder/-/vite-builder-3.8.1.tgz", + "integrity": "sha512-Ot/twGONxj22T9U4bxp771ibKVFlZxIiYDHY/e6mZsE4Blc0efKo6MzPPPo0W4/tXQbtKKEq41uINN3dMI3mag==", "dev": true, + "dependencies": { + "@nuxt/kit": "3.8.1", + "@rollup/plugin-replace": "^5.0.5", + "@vitejs/plugin-vue": "^4.4.0", + "@vitejs/plugin-vue-jsx": "^3.0.2", + "autoprefixer": "^10.4.16", + "clear": "^0.1.0", + "consola": "^3.2.3", + "cssnano": "^6.0.1", + "defu": "^6.1.3", + "esbuild": "^0.19.5", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "externality": "^1.0.2", + "fs-extra": "^11.1.1", + "get-port-please": "^3.1.1", + "h3": "^1.8.2", + "knitwork": "^1.0.0", + "magic-string": "^0.30.5", + "mlly": "^1.4.2", + "ohash": "^1.1.3", + "pathe": "^1.1.1", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "postcss": "^8.4.31", + "rollup-plugin-visualizer": "^5.9.2", + "std-env": "^3.4.3", + "strip-literal": "^1.3.0", + "ufo": "^1.3.1", + "unplugin": "^1.5.0", + "vite": "^4.5.0", + "vite-node": "^0.33.0", + "vite-plugin-checker": "^0.6.2", + "vue-bundle-renderer": "^2.0.0" + }, "engines": { - "node": ">=12" + "node": "^14.18.0 || >=16.10.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "vue": "^3.3.4" } }, - "node_modules/@nuxt/devtools-wizard/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "node_modules/@nuxt/vite-builder/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, "engines": { "node": ">=12" @@ -2729,402 +2551,351 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@nuxt/devtools/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, - "node_modules/@nuxt/devtools/node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "node_modules/@nuxt/vite-builder/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "@types/estree": "^1.0.0" } }, - "node_modules/@nuxt/devtools/node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "node_modules/@nuxthq/studio": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@nuxthq/studio/-/studio-1.0.3.tgz", + "integrity": "sha512-4jHEz53xVj9WDoJdfu8iX/IGcBKm0Z797aDWoZdrTvwg/FSSj+CTnJmlML77574WQoGPoUkQ6pMSM5X/3NOVSg==", "dev": true, - "engines": { - "node": ">=14.18.0" + "dependencies": { + "@nuxt/kit": "^3.8.0", + "defu": "^6.1.3", + "nuxt-component-meta": "^0.5.4", + "nuxt-config-schema": "^0.4.6", + "socket.io-client": "^4.7.2", + "ufo": "^1.3.1" } }, - "node_modules/@nuxt/devtools/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "node_modules/@nuxtjs/color-mode": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@nuxtjs/color-mode/-/color-mode-3.3.0.tgz", + "integrity": "sha512-YVFNmTISke1eL7uk5p9I1suOsM222FxrqKoF13HS4x94OKCWwPLLeTCEzHZ8orzKnaFUbCXpuL4pRv8gvW+0Kw==", "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@nuxt/kit": "^3.5.3", + "lodash.template": "^4.5.0", + "pathe": "^1.1.1" } }, - "node_modules/@nuxt/devtools/node_modules/local-pkg": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", - "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", + "node_modules/@nuxtjs/eslint-module": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@nuxtjs/eslint-module/-/eslint-module-4.1.0.tgz", + "integrity": "sha512-lW9ozEjOrnU8Uot3GOAZ/0ThNAds0d6UAp9n46TNxcTvH/MOcAggGbMNs16c0HYT2HlyPQvXORCHQ5+9p87mmw==", "dev": true, "dependencies": { - "mlly": "^1.4.2", - "pkg-types": "^1.0.3" - }, - "engines": { - "node": ">=14" + "@nuxt/kit": "^3.5.0", + "chokidar": "^3.5.3", + "eslint-webpack-plugin": "^4.0.1", + "pathe": "^1.1.0", + "vite-plugin-eslint": "^1.8.1" }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "peerDependencies": { + "eslint": ">=7" } }, - "node_modules/@nuxt/devtools/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "node_modules/@nuxtjs/mdc": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/@nuxtjs/mdc/-/mdc-0.2.6.tgz", + "integrity": "sha512-FDjJXfvFsNgtt3lm7mxjPymv5lovdOMS5bHxnAS/Vcoqd8qC4nkiSnKpZD2eLf4UGQKKNOMSn1mlC2viQHu2sg==", "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@nuxt/kit": "^3.8.0", + "@types/hast": "^3.0.2", + "@types/mdast": "^4.0.2", + "@vue/compiler-core": "^3.3.7", + "consola": "^3.2.3", + "defu": "^6.1.3", + "destr": "^2.0.2", + "detab": "^3.0.2", + "github-slugger": "^2.0.0", + "hast-util-to-string": "^3.0.0", + "mdast-util-to-hast": "^13.0.2", + "micromark-util-sanitize-uri": "^2.0.0", + "ohash": "^1.1.3", + "property-information": "^6.3.0", + "rehype-external-links": "^3.0.0", + "rehype-raw": "^6.1.1", + "rehype-slug": "^6.0.0", + "rehype-sort-attribute-values": "^5.0.0", + "rehype-sort-attributes": "^5.0.0", + "remark-emoji": "^4.0.0", + "remark-gfm": "^3.0.1", + "remark-mdc": "^2.1.0", + "remark-parse": "^10.0.2", + "remark-rehype": "^10.1.0", + "scule": "^1.0.0", + "shikiji": "^0.6.10", + "ufo": "^1.3.1", + "unified": "^11.0.3", + "unist-builder": "^4.0.0", + "unist-util-visit": "^5.0.0" } }, - "node_modules/@nuxt/devtools/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "node_modules/@nuxtjs/robots": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@nuxtjs/robots/-/robots-3.0.0.tgz", + "integrity": "sha512-qsHGW1KXBvV5Kq7u3huPnFCUTbHS4Fk8Za2mNPgmUXcwLgp3exvhPtdZfIdjrCF/aZk3A8OZONNmGghs6CecBA==", "dev": true, "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@nuxt/kit": "^3.0.0", + "h3": "^1.0.1" } }, - "node_modules/@nuxt/devtools/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "node_modules/@nuxtlabs/github-module": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@nuxtlabs/github-module/-/github-module-1.6.3.tgz", + "integrity": "sha512-oeZKBToETzJJGK9tB3vy6+pTdN6e9p8KIUHBK3kObO9VJZOeOuB4t9kK9jC6ld3LIB2CwWUT5WVkEB+TATdIMw==", "dev": true, "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@nuxt/kit": "^3.3.2", + "@octokit/graphql": "^5.0.5", + "@octokit/rest": "^19.0.7", + "defu": "^6.1.2", + "h3": "^1.6.2", + "remark-gfm": "^3.0.1", + "remark-github": "^11.2.4", + "ufo": "^1.1.1" } }, - "node_modules/@nuxt/devtools/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "node_modules/@octokit/auth-token": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz", + "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==", "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 14" } }, - "node_modules/@nuxt/devtools/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "node_modules/@octokit/core": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz", + "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==", "dev": true, - "engines": { - "node": ">=12" + "dependencies": { + "@octokit/auth-token": "^3.0.0", + "@octokit/graphql": "^5.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 14" } }, - "node_modules/@nuxt/devtools/node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "node_modules/@octokit/endpoint": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz", + "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==", "dev": true, "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/which.js" + "@octokit/types": "^9.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">= 14" } }, - "node_modules/@nuxt/kit": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.8.0.tgz", - "integrity": "sha512-oIthQxeMIVs4ESVP5FqLYn8tj0S1sLd+eYreh+dNYgnJ2pTi7+THR12ONBNHjk668jqEe7ErUJ8UlGwqBzgezg==", + "node_modules/@octokit/graphql": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz", + "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==", "dev": true, "dependencies": { - "@nuxt/schema": "3.8.0", - "c12": "^1.5.1", - "consola": "^3.2.3", - "defu": "^6.1.2", - "globby": "^13.2.2", - "hash-sum": "^2.0.0", - "ignore": "^5.2.4", - "jiti": "^1.20.0", - "knitwork": "^1.0.0", - "mlly": "^1.4.2", - "pathe": "^1.1.1", - "pkg-types": "^1.0.3", - "scule": "^1.0.0", - "semver": "^7.5.4", - "ufo": "^1.3.1", - "unctx": "^2.3.1", - "unimport": "^3.4.0", - "untyped": "^1.4.0" + "@octokit/request": "^6.0.0", + "@octokit/types": "^9.0.0", + "universal-user-agent": "^6.0.0" }, "engines": { - "node": "^14.18.0 || >=16.10.0" + "node": ">= 14" } }, - "node_modules/@nuxt/kit/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } + "node_modules/@octokit/openapi-types": { + "version": "18.1.1", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz", + "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw==", + "dev": true }, - "node_modules/@nuxt/schema": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-3.8.0.tgz", - "integrity": "sha512-VEDVeCjdVowhoY5vIBSz94+SSwmM204jN6TNe/ShBJ2d/vZiy9EtLbhOwqaPNFHwnN1fl/XFHThwJiexdB9D1w==", + "node_modules/@octokit/plugin-paginate-rest": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz", + "integrity": "sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==", "dev": true, "dependencies": { - "@nuxt/ui-templates": "^1.3.1", - "consola": "^3.2.3", - "defu": "^6.1.2", - "hookable": "^5.5.3", - "pathe": "^1.1.1", - "pkg-types": "^1.0.3", - "postcss-import-resolver": "^2.0.0", - "std-env": "^3.4.3", - "ufo": "^1.3.1", - "unimport": "^3.4.0", - "untyped": "^1.4.0" + "@octokit/tsconfig": "^1.0.2", + "@octokit/types": "^9.2.3" }, "engines": { - "node": "^14.18.0 || >=16.10.0" + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=4" } }, - "node_modules/@nuxt/schema/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/@nuxt/telemetry": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@nuxt/telemetry/-/telemetry-2.5.2.tgz", - "integrity": "sha512-kZ+rWq/5MZonMhp8KGFI5zMaR2VsiWpnlkOLJIuIX2WoJl0DkHvtxCtuFq2erAqMVruWLpKU+tgMC+1cno/QmA==", + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.2.3.tgz", + "integrity": "sha512-I5Gml6kTAkzVlN7KCtjOM+Ruwe/rQppp0QU372K1GP7kNOYEKe8Xn5BW4sE62JAHdwpq95OQK/qGNyKQMUzVgA==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.7.4", - "ci-info": "^3.8.0", - "consola": "^3.2.3", - "create-require": "^1.1.1", - "defu": "^6.1.2", - "destr": "^2.0.1", - "dotenv": "^16.3.1", - "git-url-parse": "^13.1.0", - "is-docker": "^3.0.0", - "jiti": "^1.20.0", - "mri": "^1.2.0", - "nanoid": "^4.0.2", - "ofetch": "^1.3.3", - "parse-git-config": "^3.0.0", - "pathe": "^1.1.1", - "rc9": "^2.1.1", - "std-env": "^3.4.3" + "@octokit/types": "^10.0.0" }, - "bin": { - "nuxt-telemetry": "bin/nuxt-telemetry.mjs" + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=3" } }, - "node_modules/@nuxt/telemetry/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-10.0.0.tgz", + "integrity": "sha512-Vm8IddVmhCgU1fxC1eyinpwqzXPEYu0NrYzD3YZjlGjyftdLBTeqNblRC0jmJmgxbJIsQlyogVeGnrNaaMVzIg==", "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" + "dependencies": { + "@octokit/openapi-types": "^18.0.0" } }, - "node_modules/@nuxt/telemetry/node_modules/is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "node_modules/@octokit/request": { + "version": "6.2.8", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz", + "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==", "dev": true, - "bin": { - "is-docker": "cli.js" + "dependencies": { + "@octokit/endpoint": "^7.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 14" } }, - "node_modules/@nuxt/ui-templates": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@nuxt/ui-templates/-/ui-templates-1.3.1.tgz", - "integrity": "sha512-5gc02Pu1HycOVUWJ8aYsWeeXcSTPe8iX8+KIrhyEtEoOSkY0eMBuo0ssljB8wALuEmepv31DlYe5gpiRwkjESA==", - "dev": true - }, - "node_modules/@nuxt/vite-builder": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@nuxt/vite-builder/-/vite-builder-3.8.0.tgz", - "integrity": "sha512-F9BfH+c/Idp6sBGVHR4QJSuoO42evtE4D0OelD45NgkqVvmBmOawlj0Oz5fDKoV64LDPI2+yE+xnBdQtsNv/VA==", + "node_modules/@octokit/request-error": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz", + "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==", "dev": true, "dependencies": { - "@nuxt/kit": "3.8.0", - "@rollup/plugin-replace": "^5.0.4", - "@vitejs/plugin-vue": "^4.4.0", - "@vitejs/plugin-vue-jsx": "^3.0.2", - "autoprefixer": "^10.4.16", - "clear": "^0.1.0", - "consola": "^3.2.3", - "cssnano": "^6.0.1", - "defu": "^6.1.2", - "esbuild": "^0.19.5", - "escape-string-regexp": "^5.0.0", - "estree-walker": "^3.0.3", - "externality": "^1.0.2", - "fs-extra": "^11.1.1", - "get-port-please": "^3.1.1", - "h3": "^1.8.2", - "knitwork": "^1.0.0", - "magic-string": "^0.30.5", - "mlly": "^1.4.2", - "ohash": "^1.1.3", - "pathe": "^1.1.1", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "postcss": "^8.4.31", - "postcss-import": "^15.1.0", - "postcss-url": "^10.1.3", - "rollup-plugin-visualizer": "^5.9.2", - "std-env": "^3.4.3", - "strip-literal": "^1.3.0", - "ufo": "^1.3.1", - "unplugin": "^1.5.0", - "vite": "^4.5.0", - "vite-node": "^0.33.0", - "vite-plugin-checker": "^0.6.2", - "vue-bundle-renderer": "^2.0.0" + "@octokit/types": "^9.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" }, "engines": { - "node": "^14.18.0 || >=16.10.0" - }, - "peerDependencies": { - "vue": "^3.3.4" + "node": ">= 14" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/android-arm": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.5.tgz", - "integrity": "sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==", - "cpu": [ - "arm" - ], + "node_modules/@octokit/rest": { + "version": "19.0.13", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.13.tgz", + "integrity": "sha512-/EzVox5V9gYGdbAI+ovYj3nXQT1TtTHRT+0eZPcuC05UFSWO3mdO9UY1C0i2eLF9Un1ONJkAk+IEtYGAC+TahA==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "@octokit/core": "^4.2.1", + "@octokit/plugin-paginate-rest": "^6.1.2", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^7.1.2" + }, "engines": { - "node": ">=12" + "node": ">= 14" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/android-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.5.tgz", - "integrity": "sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==", - "cpu": [ - "arm64" - ], + "node_modules/@octokit/tsconfig": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@octokit/tsconfig/-/tsconfig-1.0.2.tgz", + "integrity": "sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA==", + "dev": true + }, + "node_modules/@octokit/types": { + "version": "9.3.2", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz", + "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==", "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" + "dependencies": { + "@octokit/openapi-types": "^18.0.0" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/android-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.5.tgz", - "integrity": "sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==", - "cpu": [ - "x64" - ], + "node_modules/@parcel/watcher": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.3.0.tgz", + "integrity": "sha512-pW7QaFiL11O0BphO+bq3MgqeX/INAk9jgBldVDYjlQPO4VddoZnF22TcF9onMhnLVHuNqBJeRf+Fj7eezi/+rQ==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "hasInstallScript": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.3.0", + "@parcel/watcher-darwin-arm64": "2.3.0", + "@parcel/watcher-darwin-x64": "2.3.0", + "@parcel/watcher-freebsd-x64": "2.3.0", + "@parcel/watcher-linux-arm-glibc": "2.3.0", + "@parcel/watcher-linux-arm64-glibc": "2.3.0", + "@parcel/watcher-linux-arm64-musl": "2.3.0", + "@parcel/watcher-linux-x64-glibc": "2.3.0", + "@parcel/watcher-linux-x64-musl": "2.3.0", + "@parcel/watcher-win32-arm64": "2.3.0", + "@parcel/watcher-win32-ia32": "2.3.0", + "@parcel/watcher-win32-x64": "2.3.0" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/darwin-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", - "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.3.0.tgz", + "integrity": "sha512-f4o9eA3dgk0XRT3XhB0UWpWpLnKgrh1IwNJKJ7UJek7eTYccQ8LR7XUWFKqw6aEq5KUNlCcGvSzKqSX/vtWVVA==", "cpu": [ "arm64" ], "dev": true, "optional": true, "os": [ - "darwin" + "android" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/darwin-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.5.tgz", - "integrity": "sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==", + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.3.0.tgz", + "integrity": "sha512-mKY+oijI4ahBMc/GygVGvEdOq0L4DxhYgwQqYAz/7yPzuGi79oXrZG52WdpGA1wLBPrYb0T8uBaGFo7I6rvSKw==", "cpu": [ - "x64" + "arm64" ], "dev": true, "optional": true, @@ -3132,29 +2903,37 @@ "darwin" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.5.tgz", - "integrity": "sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==", + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.3.0.tgz", + "integrity": "sha512-20oBj8LcEOnLE3mgpy6zuOq8AplPu9NcSSSfyVKgfOhNAc4eF4ob3ldj0xWjGGbOF7Dcy1Tvm6ytvgdjlfUeow==", "cpu": [ - "arm64" + "x64" ], "dev": true, "optional": true, "os": [ - "freebsd" + "darwin" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/freebsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.5.tgz", - "integrity": "sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==", + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.3.0.tgz", + "integrity": "sha512-7LftKlaHunueAEiojhCn+Ef2CTXWsLgTl4hq0pkhkTBFI3ssj2bJXmH2L67mKpiAD5dz66JYk4zS66qzdnIOgw==", "cpu": [ "x64" ], @@ -3164,13 +2943,17 @@ "freebsd" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-arm": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.5.tgz", - "integrity": "sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==", + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.3.0.tgz", + "integrity": "sha512-1apPw5cD2xBv1XIHPUlq0cO6iAaEUQ3BcY0ysSyD9Kuyw4MoWm1DV+W9mneWI+1g6OeP6dhikiFE6BlU+AToTQ==", "cpu": [ "arm" ], @@ -3180,13 +2963,17 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.5.tgz", - "integrity": "sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==", + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.3.0.tgz", + "integrity": "sha512-mQ0gBSQEiq1k/MMkgcSB0Ic47UORZBmWoAWlMrTW6nbAGoLZP+h7AtUM7H3oDu34TBFFvjy4JCGP43JlylkTQA==", "cpu": [ "arm64" ], @@ -3196,15 +2983,19 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-ia32": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.5.tgz", - "integrity": "sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==", + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.3.0.tgz", + "integrity": "sha512-LXZAExpepJew0Gp8ZkJ+xDZaTQjLHv48h0p0Vw2VMFQ8A+RKrAvpFuPVCVwKJCr5SE+zvaG+Etg56qXvTDIedw==", "cpu": [ - "ia32" + "arm64" ], "dev": true, "optional": true, @@ -3212,15 +3003,19 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-loong64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.5.tgz", - "integrity": "sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==", + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.3.0.tgz", + "integrity": "sha512-P7Wo91lKSeSgMTtG7CnBS6WrA5otr1K7shhSjKHNePVmfBHDoAOHYRXgUmhiNfbcGk0uMCHVcdbfxtuiZCHVow==", "cpu": [ - "loong64" + "x64" ], "dev": true, "optional": true, @@ -3228,15 +3023,19 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-mips64el": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.5.tgz", - "integrity": "sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==", + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.3.0.tgz", + "integrity": "sha512-+kiRE1JIq8QdxzwoYY+wzBs9YbJ34guBweTK8nlzLKimn5EQ2b2FSC+tAOpq302BuIMjyuUGvBiUhEcLIGMQ5g==", "cpu": [ - "mips64el" + "x64" ], "dev": true, "optional": true, @@ -3244,3142 +3043,3072 @@ "linux" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-ppc64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.5.tgz", - "integrity": "sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==", - "cpu": [ - "ppc64" + "node_modules/@parcel/watcher-wasm": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-wasm/-/watcher-wasm-2.3.0.tgz", + "integrity": "sha512-ejBAX8H0ZGsD8lSICDNyMbSEtPMWgDL0WFCt/0z7hyf5v8Imz4rAM8xY379mBsECkq/Wdqa5WEDLqtjZ+6NxfA==", + "bundleDependencies": [ + "napi-wasm" ], "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "napi-wasm": "^1.1.0" + }, "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-riscv64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.5.tgz", - "integrity": "sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==", - "cpu": [ - "riscv64" - ], + "node_modules/@parcel/watcher-wasm/node_modules/napi-wasm": { + "version": "1.1.0", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } + "inBundle": true, + "license": "MIT" }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-s390x": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.5.tgz", - "integrity": "sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==", + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.3.0.tgz", + "integrity": "sha512-35gXCnaz1AqIXpG42evcoP2+sNL62gZTMZne3IackM+6QlfMcJLy3DrjuL6Iks7Czpd3j4xRBzez3ADCj1l7Aw==", "cpu": [ - "s390x" + "arm64" ], "dev": true, "optional": true, "os": [ - "linux" + "win32" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/linux-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz", - "integrity": "sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==", + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.3.0.tgz", + "integrity": "sha512-FJS/IBQHhRpZ6PiCjFt1UAcPr0YmCLHRbTc00IBTrelEjlmmgIVLeOx4MSXzx2HFEy5Jo5YdhGpxCuqCyDJ5ow==", "cpu": [ - "x64" + "ia32" ], "dev": true, "optional": true, "os": [ - "linux" + "win32" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/netbsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.5.tgz", - "integrity": "sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==", + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.3.0.tgz", + "integrity": "sha512-dLx+0XRdMnVI62kU3wbXvbIRhLck4aE28bIGKbRGS7BJNt54IIj9+c/Dkqb+7DJEbHUZAX1bwaoM8PqVlHJmCA==", "cpu": [ "x64" ], "dev": true, "optional": true, "os": [ - "netbsd" + "win32" ], "engines": { - "node": ">=12" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/openbsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.5.tgz", - "integrity": "sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==", - "cpu": [ - "x64" - ], + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "dev": true, "optional": true, - "os": [ - "openbsd" - ], "engines": { - "node": ">=12" + "node": ">=14" } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/sunos-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.5.tgz", - "integrity": "sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } + "node_modules/@polka/url": { + "version": "1.0.0-next.23", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.23.tgz", + "integrity": "sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==", + "dev": true }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/win32-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.5.tgz", - "integrity": "sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==", - "cpu": [ - "arm64" - ], + "node_modules/@rollup/plugin-alias": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.0.1.tgz", + "integrity": "sha512-JObvbWdOHoMy9W7SU0lvGhDtWq9PllP5mjpAy+TUslZG/WzOId9u80Hsqq1vCUn9pFJ0cxpdcnAv+QzU2zFH3Q==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "slash": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/win32-ia32": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.5.tgz", - "integrity": "sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==", - "cpu": [ - "ia32" - ], + "node_modules/@rollup/plugin-commonjs": { + "version": "25.0.7", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.7.tgz", + "integrity": "sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.30.3" + }, "engines": { - "node": ">=12" + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxt/vite-builder/node_modules/@esbuild/win32-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.5.tgz", - "integrity": "sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==", - "cpu": [ - "x64" - ], + "node_modules/@rollup/plugin-inject": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.5.tgz", + "integrity": "sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.3" + }, "engines": { - "node": ">=12" + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxt/vite-builder/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "node_modules/@rollup/plugin-json": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.0.1.tgz", + "integrity": "sha512-RgVfl5hWMkxN1h/uZj8FVESvPuBJ/uf6ly6GTj0GONnkfoBN5KC0MSz+PN2OLDgYXMhtG0mWpTrkiOjoxAIevw==", "dev": true, + "dependencies": { + "@rollup/pluginutils": "^5.0.1" + }, "engines": { - "node": "^14.18.0 || >=16.10.0" + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxt/vite-builder/node_modules/esbuild": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz", - "integrity": "sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==", + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.2.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz", + "integrity": "sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==", "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.2.1", + "is-module": "^1.0.0", + "resolve": "^1.22.1" }, "engines": { - "node": ">=12" + "node": ">=14.0.0" }, - "optionalDependencies": { - "@esbuild/android-arm": "0.19.5", - "@esbuild/android-arm64": "0.19.5", - "@esbuild/android-x64": "0.19.5", - "@esbuild/darwin-arm64": "0.19.5", - "@esbuild/darwin-x64": "0.19.5", - "@esbuild/freebsd-arm64": "0.19.5", - "@esbuild/freebsd-x64": "0.19.5", - "@esbuild/linux-arm": "0.19.5", - "@esbuild/linux-arm64": "0.19.5", - "@esbuild/linux-ia32": "0.19.5", - "@esbuild/linux-loong64": "0.19.5", - "@esbuild/linux-mips64el": "0.19.5", - "@esbuild/linux-ppc64": "0.19.5", - "@esbuild/linux-riscv64": "0.19.5", - "@esbuild/linux-s390x": "0.19.5", - "@esbuild/linux-x64": "0.19.5", - "@esbuild/netbsd-x64": "0.19.5", - "@esbuild/openbsd-x64": "0.19.5", - "@esbuild/sunos-x64": "0.19.5", - "@esbuild/win32-arm64": "0.19.5", - "@esbuild/win32-ia32": "0.19.5", - "@esbuild/win32-x64": "0.19.5" + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxthq/studio": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nuxthq/studio/-/studio-1.0.0.tgz", - "integrity": "sha512-W4dUsj4ypJc2jG6cE8ECmnAx99SKX0qqzoAYqj1KJ9QmknLON/DIHdyhUtIoPMHlzcBgErTeUzy4prxsO5cHBg==", + "node_modules/@rollup/plugin-replace": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-5.0.5.tgz", + "integrity": "sha512-rYO4fOi8lMaTg/z5Jb+hKnrHHVn8j2lwkqwyS4kTRhKyWOLf2wST2sWXr4WzWiTcoHTp2sTjqUbqIj2E39slKQ==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.7.1", - "defu": "^6.1.2", - "nuxt-component-meta": "^0.5.3", - "nuxt-config-schema": "^0.4.6", - "socket.io-client": "^4.7.2", - "ufo": "^1.3.0" + "@rollup/pluginutils": "^5.0.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxtjs/color-mode": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@nuxtjs/color-mode/-/color-mode-3.2.0.tgz", - "integrity": "sha512-isDR01yfadopiHQ/VEVUpyNSPrk5PCjUHS4t1qYRZwuRGefU4s9Iaxf6H9nmr1QFzoMgTm+3T0r/54jLwtpZbA==", + "node_modules/@rollup/plugin-terser": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-0.4.4.tgz", + "integrity": "sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.0.0", - "lodash.template": "^4.5.0", - "pathe": "^1.0.0" + "serialize-javascript": "^6.0.1", + "smob": "^1.0.0", + "terser": "^5.17.4" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxtjs/eslint-module": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@nuxtjs/eslint-module/-/eslint-module-4.1.0.tgz", - "integrity": "sha512-lW9ozEjOrnU8Uot3GOAZ/0ThNAds0d6UAp9n46TNxcTvH/MOcAggGbMNs16c0HYT2HlyPQvXORCHQ5+9p87mmw==", + "node_modules/@rollup/plugin-wasm": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-wasm/-/plugin-wasm-6.2.2.tgz", + "integrity": "sha512-gpC4R1G9Ni92ZIRTexqbhX7U+9estZrbhP+9SRb0DW9xpB9g7j34r+J2hqrcW/lRI7dJaU84MxZM0Rt82tqYPQ==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.5.0", - "chokidar": "^3.5.3", - "eslint-webpack-plugin": "^4.0.1", - "pathe": "^1.1.0", - "vite-plugin-eslint": "^1.8.1" + "@rollup/pluginutils": "^5.0.2" + }, + "engines": { + "node": ">=14.0.0" }, "peerDependencies": { - "eslint": ">=7" + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxtjs/mdc": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@nuxtjs/mdc/-/mdc-0.2.1.tgz", - "integrity": "sha512-14TPZ4p2UcG3IWqdPArx03hsUmWYQBlEYXkfm2Eq5sXu7hAg8UI9wEqZNNadMdnEi/WZvcMNf0xsbBhcRnxqew==", + "node_modules/@rollup/pluginutils": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.5.tgz", + "integrity": "sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==", "dev": true, "dependencies": { - "@nuxt/kit": "latest", - "@types/hast": "^3.0.1", - "@types/mdast": "^4.0.1", - "@vue/compiler-core": "^3.3.4", - "consola": "^3.2.3", - "defu": "^6.1.2", - "destr": "^2.0.1", - "detab": "^3.0.2", - "github-slugger": "^2.0.0", - "hast-util-to-string": "^3.0.0", - "mdast-util-to-hast": "^13.0.2", - "micromark-util-sanitize-uri": "^2.0.0", - "ohash": "^1.1.3", - "property-information": "^6.3.0", - "rehype-external-links": "^3.0.0", - "rehype-raw": "^6.1.1", - "rehype-slug": "^6.0.0", - "rehype-sort-attribute-values": "^5.0.0", - "rehype-sort-attributes": "^5.0.0", - "remark-emoji": "^4.0.0", - "remark-gfm": "^3.0.1", - "remark-mdc": "^2.0.0", - "remark-parse": "^10.0.2", - "remark-rehype": "^10.1.0", - "scule": "^1.0.0", - "shikiji": "^0.6.8", - "ufo": "^1.3.1", - "unified": "^11.0.3", - "unist-builder": "^4.0.0", - "unist-util-visit": "^5.0.0" + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/@nuxtjs/mdc/node_modules/@types/mdast": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.1.tgz", - "integrity": "sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==", + "node_modules/@sigstore/bundle": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", + "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", "dev": true, "dependencies": { - "@types/unist": "*" + "@sigstore/protobuf-specs": "^0.2.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@nuxtjs/mdc/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, - "node_modules/@nuxtjs/mdc/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "node_modules/@sigstore/protobuf-specs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", "dev": true, "engines": { - "node": "^14.18.0 || >=16.10.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@nuxtjs/mdc/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "node_modules/@sigstore/sign": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.0.tgz", + "integrity": "sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "make-fetch-happen": "^13.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@nuxtjs/mdc/node_modules/micromark-util-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", - "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "node_modules/@sigstore/tuf": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", + "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.1", + "tuf-js": "^2.1.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } }, - "node_modules/@nuxtjs/mdc/node_modules/micromark-util-sanitize-uri": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", - "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sindresorhus/is": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-3.1.2.tgz", + "integrity": "sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" } }, - "node_modules/@nuxtjs/mdc/node_modules/micromark-util-symbol": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", - "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "node_modules/@socket.io/component-emitter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", + "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==", + "dev": true + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] + "engines": { + "node": ">=10.13.0" + } }, - "node_modules/@nuxtjs/mdc/node_modules/micromark-util-types": { + "node_modules/@tufjs/canonical-json": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", - "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] + "engines": { + "node": "^16.14.0 || >=18.0.0" + } }, - "node_modules/@nuxtjs/mdc/node_modules/unified": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.3.tgz", - "integrity": "sha512-jlCV402P+YDcFcB2VcN/n8JasOddqIiaxv118wNBoZXEhOn+lYG7BR4Bfg2BwxvlK58dwbuH2w7GX2esAjL6Mg==", + "node_modules/@tufjs/models": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", + "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "bail": "^2.0.0", - "devlop": "^1.0.0", - "extend": "^3.0.0", - "is-plain-obj": "^4.0.0", - "trough": "^2.0.0", - "vfile": "^6.0.0" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.3" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@nuxtjs/mdc/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "node_modules/@tufjs/models/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "balanced-match": "^1.0.0" } }, - "node_modules/@nuxtjs/mdc/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "node_modules/@tufjs/models/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@nuxtjs/mdc/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "node_modules/@types/debug": { + "version": "4.1.10", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.10.tgz", + "integrity": "sha512-tOSCru6s732pofZ+sMv9o4o3Zc+Sa8l3bxd/tweTQudFn06vAzb13ZX46Zi6m6EJ+RUbRTHvgQJ1gBtSgkaUYA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "@types/ms": "*" } }, - "node_modules/@nuxtjs/mdc/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/@types/eslint": { + "version": "8.44.6", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.6.tgz", + "integrity": "sha512-P6bY56TVmX8y9J87jHNgQh43h6VVU+6H7oN7hgvivV81K2XY8qJZ5vqPy/HdUoVIelii2kChYVzQanlswPWVFw==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "@types/estree": "*", + "@types/json-schema": "*" } }, - "node_modules/@nuxtjs/mdc/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "node_modules/@types/eslint-scope": { + "version": "3.7.6", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.6.tgz", + "integrity": "sha512-zfM4ipmxVKWdxtDaJ3MP3pBurDXOCoyjvlpE3u6Qzrmw4BPbfm4/ambIeTk/r/J0iq/+2/xp0Fmt+gFvXJY2PQ==", "dev": true, + "peer": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "@types/eslint": "*", + "@types/estree": "*" } }, - "node_modules/@nuxtjs/mdc/node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "node_modules/@types/estree": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.4.tgz", + "integrity": "sha512-2JwWnHK9H+wUZNorf2Zr6ves96WHoWDJIftkcxPKsS7Djta6Zu519LarhRNljPXkpsZR2ZMwNCPeW7omW07BJw==", + "dev": true + }, + "node_modules/@types/hast": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.2.tgz", + "integrity": "sha512-B5hZHgHsXvfCoO3xgNJvBnX7N8p86TqQeGKXcokW4XXi+qY4vxxPSFYofytvVmpFxzPv7oxDQzjg5Un5m2/xiw==", + "dev": true, + "dependencies": { + "@types/unist": "*" } }, - "node_modules/@nuxtjs/robots": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nuxtjs/robots/-/robots-3.0.0.tgz", - "integrity": "sha512-qsHGW1KXBvV5Kq7u3huPnFCUTbHS4Fk8Za2mNPgmUXcwLgp3exvhPtdZfIdjrCF/aZk3A8OZONNmGghs6CecBA==", + "node_modules/@types/http-proxy": { + "version": "1.17.13", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.13.tgz", + "integrity": "sha512-GkhdWcMNiR5QSQRYnJ+/oXzu0+7JJEPC8vkWXK351BkhjraZF+1W13CUYARUvX9+NqIU2n6YHA4iwywsc/M6Sw==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.0.0", - "h3": "^1.0.1" + "@types/node": "*" } }, - "node_modules/@nuxtlabs/github-module": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@nuxtlabs/github-module/-/github-module-1.6.3.tgz", - "integrity": "sha512-oeZKBToETzJJGK9tB3vy6+pTdN6e9p8KIUHBK3kObO9VJZOeOuB4t9kK9jC6ld3LIB2CwWUT5WVkEB+TATdIMw==", + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.2.tgz", + "integrity": "sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.3.2", - "@octokit/graphql": "^5.0.5", - "@octokit/rest": "^19.0.7", - "defu": "^6.1.2", - "h3": "^1.6.2", - "remark-gfm": "^3.0.1", - "remark-github": "^11.2.4", - "ufo": "^1.1.1" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/@octokit/auth-token": { + "node_modules/@types/istanbul-reports": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.3.tgz", - "integrity": "sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA==", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.3.tgz", + "integrity": "sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0" - }, - "engines": { - "node": ">= 14" + "@types/istanbul-lib-report": "*" } }, - "node_modules/@octokit/core": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.0.tgz", - "integrity": "sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg==", + "node_modules/@types/json-schema": { + "version": "7.0.14", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.14.tgz", + "integrity": "sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==", + "dev": true + }, + "node_modules/@types/mdast": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.2.tgz", + "integrity": "sha512-tYR83EignvhYO9iU3kDg8V28M0jqyh9zzp5GV+EO+AYnyUl3P5ltkTeJuTiFZQFz670FSb3EwT/6LQdX+UdKfw==", "dev": true, "dependencies": { - "@octokit/auth-token": "^3.0.0", - "@octokit/graphql": "^5.0.0", - "@octokit/request": "^6.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^9.0.0", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 14" + "@types/unist": "*" } }, - "node_modules/@octokit/endpoint": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.5.tgz", - "integrity": "sha512-LG4o4HMY1Xoaec87IqQ41TQ+glvIeTKqfjkCEmt5AIwDZJwQeVZFIEYXrYY6yLwK+pAScb9Gj4q+Nz2qSw1roA==", + "node_modules/@types/ms": { + "version": "0.7.33", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.33.tgz", + "integrity": "sha512-AuHIyzR5Hea7ij0P9q7vx7xu4z0C28ucwjAZC0ja7JhINyCnOw8/DnvAPQQ9TfOlCtZAmCERKQX9+o1mgQhuOQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.8.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.10.tgz", + "integrity": "sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 14" + "undici-types": "~5.26.4" } }, - "node_modules/@octokit/graphql": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.5.tgz", - "integrity": "sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ==", + "node_modules/@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==", + "dev": true + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true + }, + "node_modules/@types/unist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.1.tgz", + "integrity": "sha512-ue/hDUpPjC85m+PM9OQDMZr3LywT+CT6mPsQq8OJtCLiERkGRcQUFvu9XASF5XWqyZFXbf15lvb3JFJ4dRLWPg==", + "dev": true + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz", + "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==", + "dev": true + }, + "node_modules/@types/yargs": { + "version": "17.0.29", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.29.tgz", + "integrity": "sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==", "dev": true, "dependencies": { - "@octokit/request": "^6.0.0", - "@octokit/types": "^9.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 14" + "@types/yargs-parser": "*" } }, - "node_modules/@octokit/openapi-types": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", - "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==", + "node_modules/@types/yargs-parser": { + "version": "21.0.2", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.2.tgz", + "integrity": "sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw==", "dev": true }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.0.0.tgz", - "integrity": "sha512-Sq5VU1PfT6/JyuXPyt04KZNVsFOSBaYOAq2QRZUwzVlI10KFvcbUo8lR258AAQL1Et60b0WuVik+zOWKLuDZxw==", + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, + "node_modules/@unhead/dom": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@unhead/dom/-/dom-1.8.3.tgz", + "integrity": "sha512-rPj9PiRTDf+Qy7tSK/UCGxwKfsOOQ+YniANxQy9v2AhWsDy2amW7kbfgR9fVaSlOFdpsyuh2wLCbMcyj9Wn0Jw==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0" - }, - "engines": { - "node": ">= 14" + "@unhead/schema": "1.8.3", + "@unhead/shared": "1.8.3" }, - "peerDependencies": { - "@octokit/core": ">=4" + "funding": { + "url": "https://github.com/sponsors/harlan-zw" } }, - "node_modules/@octokit/plugin-request-log": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", - "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "node_modules/@unhead/schema": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@unhead/schema/-/schema-1.8.3.tgz", + "integrity": "sha512-3XbcJzdlyLr/RV2TKaygI21YorlU6XPgHn/MoWjQvH4PYiHkH8PtTGg8Je6k3gvcUURSiDfucFKaGEYdJXAVqQ==", "dev": true, - "peerDependencies": { - "@octokit/core": ">=3" + "dependencies": { + "hookable": "^5.5.3", + "zhead": "^2.2.4" + }, + "funding": { + "url": "https://github.com/sponsors/harlan-zw" } }, - "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.0.1.tgz", - "integrity": "sha512-pnCaLwZBudK5xCdrR823xHGNgqOzRnJ/mpC/76YPpNP7DybdsJtP7mdOwh+wYZxK5jqeQuhu59ogMI4NRlBUvA==", + "node_modules/@unhead/shared": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@unhead/shared/-/shared-1.8.3.tgz", + "integrity": "sha512-E1knEiAO0iENLzZd+LjWA4mUp8JRaSxo5V0vMjSENyf5hSVB/SxAVjDPmTIelLY7KrP5mJrNMen2ZmQrr/AZJw==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0", - "deprecation": "^2.3.1" - }, - "engines": { - "node": ">= 14" + "@unhead/schema": "1.8.3" }, - "peerDependencies": { - "@octokit/core": ">=3" + "funding": { + "url": "https://github.com/sponsors/harlan-zw" } }, - "node_modules/@octokit/request": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.3.tgz", - "integrity": "sha512-TNAodj5yNzrrZ/VxP+H5HiYaZep0H3GU0O7PaF+fhDrt8FPrnkei9Aal/txsN/1P7V3CPiThG0tIvpPDYUsyAA==", + "node_modules/@unhead/ssr": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@unhead/ssr/-/ssr-1.8.3.tgz", + "integrity": "sha512-GSTkUCL4qymGkPU8BXiV74Epj0yyXJgmfTSJ3EqalpQTYyJHl910Mq2oDWk7Xyl5lHBrz2Bn0lzNXfSkS7Ao0Q==", "dev": true, "dependencies": { - "@octokit/endpoint": "^7.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^9.0.0", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.7", - "universal-user-agent": "^6.0.0" + "@unhead/schema": "1.8.3", + "@unhead/shared": "1.8.3" }, - "engines": { - "node": ">= 14" + "funding": { + "url": "https://github.com/sponsors/harlan-zw" } }, - "node_modules/@octokit/request-error": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz", - "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==", + "node_modules/@unhead/vue": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@unhead/vue/-/vue-1.8.3.tgz", + "integrity": "sha512-sj/1VosMreUQXd68rn5jDLdpgFVdN0mKrjW/8eZMWbomZkzbzs7FxyRUApd584xNjFVdtyWrTepmrNSKmEwKgg==", "dev": true, "dependencies": { - "@octokit/types": "^9.0.0", - "deprecation": "^2.0.0", - "once": "^1.4.0" + "@unhead/schema": "1.8.3", + "@unhead/shared": "1.8.3", + "hookable": "^5.5.3", + "unhead": "1.8.3" }, - "engines": { - "node": ">= 14" + "funding": { + "url": "https://github.com/sponsors/harlan-zw" + }, + "peerDependencies": { + "vue": ">=2.7 || >=3" } }, - "node_modules/@octokit/rest": { - "version": "19.0.7", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.7.tgz", - "integrity": "sha512-HRtSfjrWmWVNp2uAkEpQnuGMJsu/+dBr47dRc5QVgsCbnIc1+GFEaoKBWkYG+zjrsHpSqcAElMio+n10c0b5JA==", + "node_modules/@unocss/reset": { + "version": "0.50.8", + "resolved": "https://registry.npmjs.org/@unocss/reset/-/reset-0.50.8.tgz", + "integrity": "sha512-2WoM6O9VyuHDPAnvCXr7LBJQ8ZRHDnuQAFsL1dWXp561Iq2l9whdNtPuMcozLGJGUUrFfVBXIrHY4sfxxScgWg==", "dev": true, - "dependencies": { - "@octokit/core": "^4.1.0", - "@octokit/plugin-paginate-rest": "^6.0.0", - "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^7.0.0" - }, - "engines": { - "node": ">= 14" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@octokit/types": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", - "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "node_modules/@vercel/nft": { + "version": "0.24.3", + "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.24.3.tgz", + "integrity": "sha512-IyBdIxmFAeGZnEfMgt4QrGK7XX4lWazlQj34HEi9dw04/WeDBJ7r1yaOIO5tTf9pbfvwUFodj9b0H+NDGGoOMg==", "dev": true, "dependencies": { - "@octokit/openapi-types": "^16.0.0" + "@mapbox/node-pre-gyp": "^1.0.5", + "@rollup/pluginutils": "^4.0.0", + "acorn": "^8.6.0", + "async-sema": "^3.1.1", + "bindings": "^1.4.0", + "estree-walker": "2.0.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.2", + "node-gyp-build": "^4.2.2", + "resolve-from": "^5.0.0" + }, + "bin": { + "nft": "out/cli.js" + }, + "engines": { + "node": ">=16" } }, - "node_modules/@parcel/watcher": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.3.0.tgz", - "integrity": "sha512-pW7QaFiL11O0BphO+bq3MgqeX/INAk9jgBldVDYjlQPO4VddoZnF22TcF9onMhnLVHuNqBJeRf+Fj7eezi/+rQ==", + "node_modules/@vercel/nft/node_modules/@rollup/pluginutils": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", + "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", "dev": true, - "hasInstallScript": true, "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" + "estree-walker": "^2.0.1", + "picomatch": "^2.2.2" }, "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.3.0", - "@parcel/watcher-darwin-arm64": "2.3.0", - "@parcel/watcher-darwin-x64": "2.3.0", - "@parcel/watcher-freebsd-x64": "2.3.0", - "@parcel/watcher-linux-arm-glibc": "2.3.0", - "@parcel/watcher-linux-arm64-glibc": "2.3.0", - "@parcel/watcher-linux-arm64-musl": "2.3.0", - "@parcel/watcher-linux-x64-glibc": "2.3.0", - "@parcel/watcher-linux-x64-musl": "2.3.0", - "@parcel/watcher-win32-arm64": "2.3.0", - "@parcel/watcher-win32-ia32": "2.3.0", - "@parcel/watcher-win32-x64": "2.3.0" + "node": ">= 8.0.0" } }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.3.0.tgz", - "integrity": "sha512-f4o9eA3dgk0XRT3XhB0UWpWpLnKgrh1IwNJKJ7UJek7eTYccQ8LR7XUWFKqw6aEq5KUNlCcGvSzKqSX/vtWVVA==", - "cpu": [ - "arm64" - ], + "node_modules/@vercel/nft/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, "engines": { - "node": ">= 10.0.0" + "node": "*" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.3.0.tgz", - "integrity": "sha512-mKY+oijI4ahBMc/GygVGvEdOq0L4DxhYgwQqYAz/7yPzuGi79oXrZG52WdpGA1wLBPrYb0T8uBaGFo7I6rvSKw==", - "cpu": [ - "arm64" - ], + "node_modules/@vercel/nft/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "node": ">=8" } }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.3.0.tgz", - "integrity": "sha512-20oBj8LcEOnLE3mgpy6zuOq8AplPu9NcSSSfyVKgfOhNAc4eF4ob3ldj0xWjGGbOF7Dcy1Tvm6ytvgdjlfUeow==", - "cpu": [ - "x64" - ], + "node_modules/@vitejs/plugin-vue": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.4.0.tgz", + "integrity": "sha512-xdguqb+VUwiRpSg+nsc2HtbAUSGak25DXYvpQQi4RVU1Xq1uworyoH/md9Rfd8zMmPR/pSghr309QNcftUVseg==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": ">= 10.0.0" + "node": "^14.18.0 || >=16.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "peerDependencies": { + "vite": "^4.0.0", + "vue": "^3.2.25" } }, - "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.3.0.tgz", - "integrity": "sha512-7LftKlaHunueAEiojhCn+Ef2CTXWsLgTl4hq0pkhkTBFI3ssj2bJXmH2L67mKpiAD5dz66JYk4zS66qzdnIOgw==", - "cpu": [ - "x64" - ], + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.0.2.tgz", + "integrity": "sha512-obF26P2Z4Ogy3cPp07B4VaW6rpiu0ue4OT2Y15UxT5BZZ76haUY9guOsZV3uWh/I6xc+VeiW+ZVabRE82FyzWw==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "@babel/core": "^7.22.10", + "@babel/plugin-transform-typescript": "^7.22.10", + "@vue/babel-plugin-jsx": "^1.1.5" + }, "engines": { - "node": ">= 10.0.0" + "node": "^14.18.0 || >=16.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "peerDependencies": { + "vite": "^4.0.0", + "vue": "^3.0.0" } }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.3.0.tgz", - "integrity": "sha512-1apPw5cD2xBv1XIHPUlq0cO6iAaEUQ3BcY0ysSyD9Kuyw4MoWm1DV+W9mneWI+1g6OeP6dhikiFE6BlU+AToTQ==", - "cpu": [ - "arm" - ], + "node_modules/@volar/language-core": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.4.1.tgz", + "integrity": "sha512-EIY+Swv+TjsWpxOxujjMf1ZXqOjg9MT2VMXZ+1dKva0wD8W0L6EtptFFcCJdBbcKmGMFkr57Qzz9VNMWhs3jXQ==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "dependencies": { + "@volar/source-map": "1.4.1" } }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.3.0.tgz", - "integrity": "sha512-mQ0gBSQEiq1k/MMkgcSB0Ic47UORZBmWoAWlMrTW6nbAGoLZP+h7AtUM7H3oDu34TBFFvjy4JCGP43JlylkTQA==", - "cpu": [ - "arm64" - ], + "node_modules/@volar/source-map": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.4.1.tgz", + "integrity": "sha512-bZ46ad72dsbzuOWPUtJjBXkzSQzzSejuR3CT81+GvTEI2E994D8JPXzM3tl98zyCNnjgs4OkRyliImL1dvJ5BA==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "dependencies": { + "muggle-string": "^0.2.2" } }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.3.0.tgz", - "integrity": "sha512-LXZAExpepJew0Gp8ZkJ+xDZaTQjLHv48h0p0Vw2VMFQ8A+RKrAvpFuPVCVwKJCr5SE+zvaG+Etg56qXvTDIedw==", - "cpu": [ - "arm64" - ], + "node_modules/@volar/typescript": { + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.10.10.tgz", + "integrity": "sha512-4a2r5bdUub2m+mYVnLu2wt59fuoYWe7nf0uXtGHU8QQ5LDNfzAR0wK7NgDiQ9rcl2WT3fxT2AA9AylAwFtj50A==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "dependencies": { + "@volar/language-core": "1.10.10", + "path-browserify": "^1.0.1" } }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.3.0.tgz", - "integrity": "sha512-P7Wo91lKSeSgMTtG7CnBS6WrA5otr1K7shhSjKHNePVmfBHDoAOHYRXgUmhiNfbcGk0uMCHVcdbfxtuiZCHVow==", - "cpu": [ - "x64" - ], + "node_modules/@volar/typescript/node_modules/@volar/language-core": { + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.10.tgz", + "integrity": "sha512-nsV1o3AZ5n5jaEAObrS3MWLBWaGwUj/vAsc15FVNIv+DbpizQRISg9wzygsHBr56ELRH8r4K75vkYNMtsSNNWw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "dependencies": { + "@volar/source-map": "1.10.10" } }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.3.0.tgz", - "integrity": "sha512-+kiRE1JIq8QdxzwoYY+wzBs9YbJ34guBweTK8nlzLKimn5EQ2b2FSC+tAOpq302BuIMjyuUGvBiUhEcLIGMQ5g==", - "cpu": [ - "x64" - ], + "node_modules/@volar/typescript/node_modules/@volar/source-map": { + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.10.tgz", + "integrity": "sha512-GVKjLnifV4voJ9F0vhP56p4+F3WGf+gXlRtjFZsv6v3WxBTWU3ZVeaRaEHJmWrcv5LXmoYYpk/SC25BKemPRkg==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "dependencies": { + "muggle-string": "^0.3.1" } }, - "node_modules/@parcel/watcher-wasm": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-wasm/-/watcher-wasm-2.3.0.tgz", - "integrity": "sha512-ejBAX8H0ZGsD8lSICDNyMbSEtPMWgDL0WFCt/0z7hyf5v8Imz4rAM8xY379mBsECkq/Wdqa5WEDLqtjZ+6NxfA==", - "bundleDependencies": [ - "napi-wasm" - ], + "node_modules/@volar/typescript/node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "dev": true + }, + "node_modules/@volar/vue-language-core": { + "version": "1.6.5", + "resolved": "https://registry.npmjs.org/@volar/vue-language-core/-/vue-language-core-1.6.5.tgz", + "integrity": "sha512-IF2b6hW4QAxfsLd5mePmLgtkXzNi+YnH6ltCd80gb7+cbdpFMjM1I+w+nSg2kfBTyfu+W8useCZvW89kPTBpzg==", "dev": true, "dependencies": { - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "napi-wasm": "^1.1.0" + "@volar/language-core": "1.4.1", + "@volar/source-map": "1.4.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/compiler-sfc": "^3.3.0", + "@vue/reactivity": "^3.3.0", + "@vue/shared": "^3.3.0", + "minimatch": "^9.0.0", + "muggle-string": "^0.2.2", + "vue-template-compiler": "^2.7.14" + } + }, + "node_modules/@volar/vue-language-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@volar/vue-language-core/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=16 || 14 >=14.17" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@parcel/watcher-wasm/node_modules/napi-wasm": { - "version": "1.1.0", - "dev": true, - "inBundle": true, - "license": "MIT" - }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.3.0.tgz", - "integrity": "sha512-35gXCnaz1AqIXpG42evcoP2+sNL62gZTMZne3IackM+6QlfMcJLy3DrjuL6Iks7Czpd3j4xRBzez3ADCj1l7Aw==", - "cpu": [ - "arm64" - ], + "node_modules/@vue-macros/common": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-1.8.0.tgz", + "integrity": "sha512-auDJJzE0z3uRe3867e0DsqcseKImktNf5ojCZgUKqiVxb2yTlwlgOVAYCgoep9oITqxkXQymSvFeKhedi8PhaA==", "dev": true, - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "@babel/types": "^7.22.17", + "@rollup/pluginutils": "^5.0.4", + "@vue/compiler-sfc": "^3.3.4", + "ast-kit": "^0.11.2", + "local-pkg": "^0.4.3", + "magic-string-ast": "^0.3.0" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=16.14.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "peerDependencies": { + "vue": "^2.7.0 || ^3.2.25" + }, + "peerDependenciesMeta": { + "vue": { + "optional": true + } } }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.3.0.tgz", - "integrity": "sha512-FJS/IBQHhRpZ6PiCjFt1UAcPr0YmCLHRbTc00IBTrelEjlmmgIVLeOx4MSXzx2HFEy5Jo5YdhGpxCuqCyDJ5ow==", - "cpu": [ - "ia32" - ], + "node_modules/@vue-macros/common/node_modules/local-pkg": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz", + "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==", "dev": true, - "optional": true, - "os": [ - "win32" - ], "engines": { - "node": ">= 10.0.0" + "node": ">=14" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.3.0.tgz", - "integrity": "sha512-dLx+0XRdMnVI62kU3wbXvbIRhLck4aE28bIGKbRGS7BJNt54IIj9+c/Dkqb+7DJEbHUZAX1bwaoM8PqVlHJmCA==", - "cpu": [ - "x64" - ], + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.1.5.tgz", + "integrity": "sha512-SgUymFpMoAyWeYWLAY+MkCK3QEROsiUnfaw5zxOVD/M64KQs8D/4oK6Q5omVA2hnvEOE0SCkH2TZxs/jnnUj7w==", + "dev": true + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.5.tgz", + "integrity": "sha512-nKs1/Bg9U1n3qSWnsHhCVQtAzI6aQXqua8j/bZrau8ywT1ilXQbK4FwEJGmU8fV7tcpuFvWmmN7TMmV1OBma1g==", "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.5", + "@babel/types": "^7.22.5", + "@vue/babel-helper-vue-transform-on": "^1.1.5", + "camelcase": "^6.3.0", + "html-tags": "^3.3.1", + "svg-tags": "^1.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@parcel/watcher/node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "node_modules/@vue/compiler-core": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.8.tgz", + "integrity": "sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==", "dev": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" + "dependencies": { + "@babel/parser": "^7.23.0", + "@vue/shared": "3.3.8", + "estree-walker": "^2.0.2", + "source-map-js": "^1.0.2" } }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "node_modules/@vue/compiler-dom": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz", + "integrity": "sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==", "dev": true, - "optional": true, - "engines": { - "node": ">=14" + "dependencies": { + "@vue/compiler-core": "3.3.8", + "@vue/shared": "3.3.8" } }, - "node_modules/@polka/url": { - "version": "1.0.0-next.23", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.23.tgz", - "integrity": "sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg==", + "node_modules/@vue/compiler-sfc": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz", + "integrity": "sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.23.0", + "@vue/compiler-core": "3.3.8", + "@vue/compiler-dom": "3.3.8", + "@vue/compiler-ssr": "3.3.8", + "@vue/reactivity-transform": "3.3.8", + "@vue/shared": "3.3.8", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.5", + "postcss": "^8.4.31", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz", + "integrity": "sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==", + "dev": true, + "dependencies": { + "@vue/compiler-dom": "3.3.8", + "@vue/shared": "3.3.8" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.1.tgz", + "integrity": "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==", "dev": true }, - "node_modules/@rollup/plugin-alias": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.0.1.tgz", - "integrity": "sha512-JObvbWdOHoMy9W7SU0lvGhDtWq9PllP5mjpAy+TUslZG/WzOId9u80Hsqq1vCUn9pFJ0cxpdcnAv+QzU2zFH3Q==", + "node_modules/@vue/language-core": { + "version": "1.8.22", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.22.tgz", + "integrity": "sha512-bsMoJzCrXZqGsxawtUea1cLjUT9dZnDsy5TuZ+l1fxRMzUGQUG9+Ypq4w//CqpWmrx7nIAJpw2JVF/t258miRw==", "dev": true, "dependencies": { - "slash": "^4.0.0" - }, - "engines": { - "node": ">=14.0.0" + "@volar/language-core": "~1.10.5", + "@volar/source-map": "~1.10.5", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "vue-template-compiler": "^2.7.14" }, "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + "typescript": "*" }, "peerDependenciesMeta": { - "rollup": { + "typescript": { "optional": true } } }, - "node_modules/@rollup/plugin-commonjs": { - "version": "24.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-24.1.0.tgz", - "integrity": "sha512-eSL45hjhCWI0jCCXcNtLVqM5N1JlBGvlFfY0m6oOYnLCJ6N0qEXoZql4sY2MOUArzhH4SA/qBpTxvvZp2Sc+DQ==", + "node_modules/@vue/language-core/node_modules/@volar/language-core": { + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.10.tgz", + "integrity": "sha512-nsV1o3AZ5n5jaEAObrS3MWLBWaGwUj/vAsc15FVNIv+DbpizQRISg9wzygsHBr56ELRH8r4K75vkYNMtsSNNWw==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "commondir": "^1.0.1", - "estree-walker": "^2.0.2", - "glob": "^8.0.3", - "is-reference": "1.2.1", - "magic-string": "^0.27.0" + "@volar/source-map": "1.10.10" + } + }, + "node_modules/@vue/language-core/node_modules/@volar/source-map": { + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.10.tgz", + "integrity": "sha512-GVKjLnifV4voJ9F0vhP56p4+F3WGf+gXlRtjFZsv6v3WxBTWU3ZVeaRaEHJmWrcv5LXmoYYpk/SC25BKemPRkg==", + "dev": true, + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@vue/language-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^2.68.0||^3.0.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@rollup/plugin-commonjs/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "node_modules/@vue/language-core/node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", "dev": true }, - "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", - "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "node_modules/@vue/reactivity": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.8.tgz", + "integrity": "sha512-ctLWitmFBu6mtddPyOKpHg8+5ahouoTCRtmAHZAXmolDtuZXfjL2T3OJ6DL6ezBPQB1SmMnpzjiWjCiMYmpIuw==", "dev": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.13" - }, - "engines": { - "node": ">=12" + "@vue/shared": "3.3.8" } }, - "node_modules/@rollup/plugin-inject": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@rollup/plugin-inject/-/plugin-inject-5.0.5.tgz", - "integrity": "sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==", + "node_modules/@vue/reactivity-transform": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz", + "integrity": "sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.1", + "@babel/parser": "^7.23.0", + "@vue/compiler-core": "3.3.8", + "@vue/shared": "3.3.8", "estree-walker": "^2.0.2", - "magic-string": "^0.30.3" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "magic-string": "^0.30.5" } }, - "node_modules/@rollup/plugin-inject/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true + "node_modules/@vue/runtime-core": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.8.tgz", + "integrity": "sha512-qurzOlb6q26KWQ/8IShHkMDOuJkQnQcTIp1sdP4I9MbCf9FJeGVRXJFr2mF+6bXh/3Zjr9TDgURXrsCr9bfjUw==", + "dev": true, + "dependencies": { + "@vue/reactivity": "3.3.8", + "@vue/shared": "3.3.8" + } }, - "node_modules/@rollup/plugin-json": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.0.1.tgz", - "integrity": "sha512-RgVfl5hWMkxN1h/uZj8FVESvPuBJ/uf6ly6GTj0GONnkfoBN5KC0MSz+PN2OLDgYXMhtG0mWpTrkiOjoxAIevw==", + "node_modules/@vue/runtime-dom": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.8.tgz", + "integrity": "sha512-Noy5yM5UIf9UeFoowBVgghyGGPIDPy1Qlqt0yVsUdAVbqI8eeMSsTqBtauaEoT2UFXUk5S64aWVNJN4MJ2vRdA==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.1" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "@vue/runtime-core": "3.3.8", + "@vue/shared": "3.3.8", + "csstype": "^3.1.2" } }, - "node_modules/@rollup/plugin-node-resolve": { - "version": "15.2.3", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz", - "integrity": "sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==", + "node_modules/@vue/server-renderer": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.8.tgz", + "integrity": "sha512-zVCUw7RFskvPuNlPn/8xISbrf0zTWsTSdYTsUTN1ERGGZGVnRxM2QZ3x1OR32+vwkkCm0IW6HmJ49IsPm7ilLg==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "@types/resolve": "1.20.2", - "deepmerge": "^4.2.2", - "is-builtin-module": "^3.2.1", - "is-module": "^1.0.0", - "resolve": "^1.22.1" - }, - "engines": { - "node": ">=14.0.0" + "@vue/compiler-ssr": "3.3.8", + "@vue/shared": "3.3.8" }, "peerDependencies": { - "rollup": "^2.78.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "vue": "3.3.8" } }, - "node_modules/@rollup/plugin-replace": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-5.0.4.tgz", - "integrity": "sha512-E2hmRnlh09K8HGT0rOnnri9OTh+BILGr7NVJGB30S4E3cLRn3J0xjdiyOZ74adPs4NiAMgrjUMGAZNJDBgsdmQ==", + "node_modules/@vue/shared": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.8.tgz", + "integrity": "sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==", + "dev": true + }, + "node_modules/@vueuse/core": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.13.0.tgz", + "integrity": "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "magic-string": "^0.30.3" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + "@types/web-bluetooth": "^0.0.16", + "@vueuse/metadata": "9.13.0", + "@vueuse/shared": "9.13.0", + "vue-demi": "*" }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@rollup/plugin-terser": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-0.4.4.tgz", - "integrity": "sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==", + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", "dev": true, - "dependencies": { - "serialize-javascript": "^6.0.1", - "smob": "^1.0.0", - "terser": "^5.17.4" + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" }, "engines": { - "node": ">=14.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" }, "peerDependencies": { - "rollup": "^2.0.0||^3.0.0||^4.0.0" + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" }, "peerDependenciesMeta": { - "rollup": { + "@vue/composition-api": { "optional": true } } }, - "node_modules/@rollup/plugin-wasm": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/@rollup/plugin-wasm/-/plugin-wasm-6.2.2.tgz", - "integrity": "sha512-gpC4R1G9Ni92ZIRTexqbhX7U+9estZrbhP+9SRb0DW9xpB9g7j34r+J2hqrcW/lRI7dJaU84MxZM0Rt82tqYPQ==", + "node_modules/@vueuse/head": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@vueuse/head/-/head-2.0.0.tgz", + "integrity": "sha512-ykdOxTGs95xjD4WXE4na/umxZea2Itl0GWBILas+O4oqS7eXIods38INvk3XkJKjqMdWPcpCyLX/DioLQxU1KA==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.2" - }, - "engines": { - "node": ">=14.0.0" + "@unhead/dom": "^1.7.0", + "@unhead/schema": "^1.7.0", + "@unhead/ssr": "^1.7.0", + "@unhead/vue": "^1.7.0" }, "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "vue": ">=2.7 || >=3" } }, - "node_modules/@rollup/pluginutils": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.5.tgz", - "integrity": "sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==", + "node_modules/@vueuse/integrations": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-10.5.0.tgz", + "integrity": "sha512-fm5sXLCK0Ww3rRnzqnCQRmfjDURaI4xMsx+T+cec0ngQqHx/JgUtm8G0vRjwtonIeTBsH1Q8L3SucE+7K7upJQ==", "dev": true, "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^2.0.2", - "picomatch": "^2.3.1" + "@vueuse/core": "10.5.0", + "@vueuse/shared": "10.5.0", + "vue-demi": ">=0.14.6" }, - "engines": { - "node": ">=14.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" }, "peerDependencies": { - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + "async-validator": "*", + "axios": "*", + "change-case": "*", + "drauu": "*", + "focus-trap": "*", + "fuse.js": "*", + "idb-keyval": "*", + "jwt-decode": "*", + "nprogress": "*", + "qrcode": "*", + "sortablejs": "*", + "universal-cookie": "*" }, "peerDependenciesMeta": { - "rollup": { + "async-validator": { + "optional": true + }, + "axios": { + "optional": true + }, + "change-case": { + "optional": true + }, + "drauu": { + "optional": true + }, + "focus-trap": { + "optional": true + }, + "fuse.js": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "jwt-decode": { + "optional": true + }, + "nprogress": { + "optional": true + }, + "qrcode": { + "optional": true + }, + "sortablejs": { + "optional": true + }, + "universal-cookie": { "optional": true } } }, - "node_modules/@rollup/pluginutils/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "node_modules/@vueuse/integrations/node_modules/@types/web-bluetooth": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.18.tgz", + "integrity": "sha512-v/ZHEj9xh82usl8LMR3GarzFY1IrbXJw5L4QfQhokjRV91q+SelFqxQWSep1ucXEZ22+dSTwLFkXeur25sPIbw==", "dev": true }, - "node_modules/@sigstore/bundle": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", - "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", + "node_modules/@vueuse/integrations/node_modules/@vueuse/core": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.5.0.tgz", + "integrity": "sha512-z/tI2eSvxwLRjOhDm0h/SXAjNm8N5ld6/SC/JQs6o6kpJ6Ya50LnEL8g5hoYu005i28L0zqB5L5yAl8Jl26K3A==", "dev": true, "dependencies": { - "@sigstore/protobuf-specs": "^0.2.1" + "@types/web-bluetooth": "^0.0.18", + "@vueuse/metadata": "10.5.0", + "@vueuse/shared": "10.5.0", + "vue-demi": ">=0.14.6" }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@sigstore/protobuf-specs": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", - "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", + "node_modules/@vueuse/integrations/node_modules/@vueuse/metadata": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.5.0.tgz", + "integrity": "sha512-fEbElR+MaIYyCkeM0SzWkdoMtOpIwO72x8WsZHRE7IggiOlILttqttM69AS13nrDxosnDBYdyy3C5mR1LCxHsw==", "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@sigstore/sign": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.1.0.tgz", - "integrity": "sha512-4VRpfJxs+8eLqzLVrZngVNExVA/zAhVbi4UT4zmtLi4xRd7vz5qie834OgkrGsLlLB1B2nz/3wUxT1XAUBe8gw==", + "node_modules/@vueuse/integrations/node_modules/@vueuse/shared": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.5.0.tgz", + "integrity": "sha512-18iyxbbHYLst9MqU1X1QNdMHIjks6wC7XTVf0KNOv5es/Ms6gjVFCAAWTVP2JStuGqydg3DT+ExpFORUEi9yhg==", "dev": true, "dependencies": { - "@sigstore/bundle": "^2.1.0", - "@sigstore/protobuf-specs": "^0.2.1", - "make-fetch-happen": "^13.0.0" + "vue-demi": ">=0.14.6" }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@sigstore/sign/node_modules/make-fetch-happen": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", - "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "node_modules/@vueuse/integrations/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", "dev": true, - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@sigstore/tuf": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", - "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", + "node_modules/@vueuse/metadata": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.13.0.tgz", + "integrity": "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==", "dev": true, - "dependencies": { - "@sigstore/protobuf-specs": "^0.2.1", - "tuf-js": "^2.1.0" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@sinclair/typebox": { - "version": "0.25.24", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", - "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==", - "dev": true - }, - "node_modules/@sindresorhus/is": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-3.1.2.tgz", - "integrity": "sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==", + "node_modules/@vueuse/nuxt": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/nuxt/-/nuxt-10.5.0.tgz", + "integrity": "sha512-x1mpjwcPB5DGA3cTM29Hf3bralslrma3Jr0fXm3Js3dbUHdadC/iVMf831W+sKPjZBhiZxR0S94B8gmGlvZ/1Q==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@nuxt/kit": "^3.7.4", + "@vueuse/core": "10.5.0", + "@vueuse/metadata": "10.5.0", + "local-pkg": "^0.5.0", + "nuxt": "^3.7.4", + "vue-demi": ">=0.14.6" }, "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "nuxt": "^3.0.0" } }, - "node_modules/@socket.io/component-emitter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", - "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==", + "node_modules/@vueuse/nuxt/node_modules/@types/web-bluetooth": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.18.tgz", + "integrity": "sha512-v/ZHEj9xh82usl8LMR3GarzFY1IrbXJw5L4QfQhokjRV91q+SelFqxQWSep1ucXEZ22+dSTwLFkXeur25sPIbw==", "dev": true }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "node_modules/@vueuse/nuxt/node_modules/@vueuse/core": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.5.0.tgz", + "integrity": "sha512-z/tI2eSvxwLRjOhDm0h/SXAjNm8N5ld6/SC/JQs6o6kpJ6Ya50LnEL8g5hoYu005i28L0zqB5L5yAl8Jl26K3A==", "dev": true, - "engines": { - "node": ">=10.13.0" + "dependencies": { + "@types/web-bluetooth": "^0.0.18", + "@vueuse/metadata": "10.5.0", + "@vueuse/shared": "10.5.0", + "vue-demi": ">=0.14.6" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@tufjs/canonical-json": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", - "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", + "node_modules/@vueuse/nuxt/node_modules/@vueuse/metadata": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.5.0.tgz", + "integrity": "sha512-fEbElR+MaIYyCkeM0SzWkdoMtOpIwO72x8WsZHRE7IggiOlILttqttM69AS13nrDxosnDBYdyy3C5mR1LCxHsw==", "dev": true, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@tufjs/models": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", - "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", + "node_modules/@vueuse/nuxt/node_modules/@vueuse/shared": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.5.0.tgz", + "integrity": "sha512-18iyxbbHYLst9MqU1X1QNdMHIjks6wC7XTVf0KNOv5es/Ms6gjVFCAAWTVP2JStuGqydg3DT+ExpFORUEi9yhg==", "dev": true, "dependencies": { - "@tufjs/canonical-json": "2.0.0", - "minimatch": "^9.0.3" + "vue-demi": ">=0.14.6" }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/@vueuse/nuxt/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "node_modules/@vueuse/shared": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.13.0.tgz", + "integrity": "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==", "dev": true, "dependencies": { - "@types/ms": "*" + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@types/eslint": { - "version": "8.40.2", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.40.2.tgz", - "integrity": "sha512-PRVjQ4Eh9z9pmmtaq8nTjZjQwKFk7YIHIud3lRoKRBgUQjgjRmoGxxGEPXQkF+lH7QkHJRNr5F4aBgYCW0lqpQ==", + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "node_modules/@webassemblyjs/ast": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", + "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", "dev": true, "peer": true, "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" } }, - "node_modules/@types/estree": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", - "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==", - "dev": true + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true, + "peer": true }, - "node_modules/@types/hast": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.1.tgz", - "integrity": "sha512-hs/iBJx2aydugBQx5ETV3ZgeSS0oIreQrFJ4bjBl0XvM4wAmDjFEALY7p0rTSLt2eL+ibjRAAs9dTPiCLtmbqQ==", + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", "dev": true, - "dependencies": { - "@types/unist": "*" - } + "peer": true }, - "node_modules/@types/http-proxy": { - "version": "1.17.13", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.13.tgz", - "integrity": "sha512-GkhdWcMNiR5QSQRYnJ+/oXzu0+7JJEPC8vkWXK351BkhjraZF+1W13CUYARUvX9+NqIU2n6YHA4iwywsc/M6Sw==", + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", + "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", "dev": true, + "peer": true, "dependencies": { - "@types/node": "*" + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" } }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", - "dev": true + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true, + "peer": true }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", + "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", "dev": true, + "peer": true, "dependencies": { - "@types/istanbul-lib-coverage": "*" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6" } }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", "dev": true, + "peer": true, "dependencies": { - "@types/istanbul-lib-report": "*" + "@xtuc/ieee754": "^1.2.0" } }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/mdast": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.11.tgz", - "integrity": "sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==", + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dev": true, + "peer": true, "dependencies": { - "@types/unist": "*" + "@xtuc/long": "4.2.2" } }, - "node_modules/@types/ms": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", - "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "18.15.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", - "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==", - "dev": true - }, - "node_modules/@types/parse5": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", - "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==", - "dev": true - }, - "node_modules/@types/resolve": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", - "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", - "dev": true - }, - "node_modules/@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==", - "dev": true - }, - "node_modules/@types/web-bluetooth": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz", - "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==", - "dev": true + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true, + "peer": true }, - "node_modules/@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", + "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", "dev": true, + "peer": true, "dependencies": { - "@types/yargs-parser": "*" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-opt": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6", + "@webassemblyjs/wast-printer": "1.11.6" } }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true - }, - "node_modules/@unhead/dom": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@unhead/dom/-/dom-1.7.4.tgz", - "integrity": "sha512-xanQMtGmgikqTvDtuyJy6GXgqvUXOdrdnIyqAabpeS8goD8udxo0stzjtbT8ERbMQibzPGSGcN+Ux+MKoWzrjQ==", + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", + "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", "dev": true, + "peer": true, "dependencies": { - "@unhead/schema": "1.7.4", - "@unhead/shared": "1.7.4" - }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/@unhead/schema": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@unhead/schema/-/schema-1.7.4.tgz", - "integrity": "sha512-wUL4CK0NSEm3KH4kYsiqVYQw5xBk1hpBi5tiNj0BTZgpQVrRufICdK5EHA9Fh7OIAR6tOTWwTvsf5+nK0BgQDA==", + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", + "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", "dev": true, + "peer": true, "dependencies": { - "hookable": "^5.5.3", - "zhead": "^2.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6" } }, - "node_modules/@unhead/shared": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@unhead/shared/-/shared-1.7.4.tgz", - "integrity": "sha512-YUNA2UxAuDPnDps41BQ8aEIY5hdyvruSB1Vs3AALhRo07MxMivSq5DjNKfYr/JvRN6593RtfI1NHnP9x5M57xA==", + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", + "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", "dev": true, + "peer": true, "dependencies": { - "@unhead/schema": "1.7.4" - }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/@unhead/ssr": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@unhead/ssr/-/ssr-1.7.4.tgz", - "integrity": "sha512-2QqaHdC48XJGP9Pd0F2fblPv9/6G4IU04iZ5qLRAs6MFFmFEzrdvoooFlcwdcoH/WDGRnpYBmo+Us2nzQz1MMQ==", + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", + "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", "dev": true, + "peer": true, "dependencies": { - "@unhead/schema": "1.7.4", - "@unhead/shared": "1.7.4" - }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "@webassemblyjs/ast": "1.11.6", + "@xtuc/long": "4.2.2" } }, - "node_modules/@unhead/vue": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@unhead/vue/-/vue-1.7.4.tgz", - "integrity": "sha512-ZfgzOhg1Bxo9xwp3upawqerw4134hc9Lhz6t005ixcBwPX+39Wpgc9dC3lf+owFQEVuWkf8F+eAwK2sghVBK4A==", + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true, - "dependencies": { - "@unhead/schema": "1.7.4", - "@unhead/shared": "1.7.4", - "hookable": "^5.5.3", - "unhead": "1.7.4" - }, - "funding": { - "url": "https://github.com/sponsors/harlan-zw" + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", + "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "dev": true, + "bin": { + "acorn": "bin/acorn" }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peer": true, "peerDependencies": { - "vue": ">=2.7 || >=3" + "acorn": "^8" } }, - "node_modules/@unocss/reset": { - "version": "0.50.8", - "resolved": "https://registry.npmjs.org/@unocss/reset/-/reset-0.50.8.tgz", - "integrity": "sha512-2WoM6O9VyuHDPAnvCXr7LBJQ8ZRHDnuQAFsL1dWXp561Iq2l9whdNtPuMcozLGJGUUrFfVBXIrHY4sfxxScgWg==", + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" + "peer": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@vercel/nft": { - "version": "0.24.3", - "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.24.3.tgz", - "integrity": "sha512-IyBdIxmFAeGZnEfMgt4QrGK7XX4lWazlQj34HEi9dw04/WeDBJ7r1yaOIO5tTf9pbfvwUFodj9b0H+NDGGoOMg==", + "node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dev": true, "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.5", - "@rollup/pluginutils": "^4.0.0", - "acorn": "^8.6.0", - "async-sema": "^3.1.1", - "bindings": "^1.4.0", - "estree-walker": "2.0.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.2", - "node-gyp-build": "^4.2.2", - "resolve-from": "^5.0.0" - }, - "bin": { - "nft": "out/cli.js" + "debug": "^4.3.4" }, "engines": { - "node": ">=16" + "node": ">= 14" } }, - "node_modules/@vercel/nft/node_modules/@rollup/pluginutils": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", - "integrity": "sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==", + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, "dependencies": { - "estree-walker": "^2.0.1", - "picomatch": "^2.2.2" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" }, "engines": { - "node": ">= 8.0.0" + "node": ">=8" } }, - "node_modules/@vercel/nft/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "peer": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@vercel/nft/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/@vercel/nft/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "ajv": "^8.0.0" }, - "engines": { - "node": "*" + "peerDependencies": { + "ajv": "^8.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "peerDependenciesMeta": { + "ajv": { + "optional": true + } } }, - "node_modules/@vercel/nft/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" }, - "engines": { - "node": "*" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@vitejs/plugin-vue": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.4.0.tgz", - "integrity": "sha512-xdguqb+VUwiRpSg+nsc2HtbAUSGak25DXYvpQQi4RVU1Xq1uworyoH/md9Rfd8zMmPR/pSghr309QNcftUVseg==", + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, + "peer": true, "peerDependencies": { - "vite": "^4.0.0", - "vue": "^3.2.25" + "ajv": "^6.9.1" } }, - "node_modules/@vitejs/plugin-vue-jsx": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.0.2.tgz", - "integrity": "sha512-obF26P2Z4Ogy3cPp07B4VaW6rpiu0ue4OT2Y15UxT5BZZ76haUY9guOsZV3uWh/I6xc+VeiW+ZVabRE82FyzWw==", + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", "dev": true, - "dependencies": { - "@babel/core": "^7.22.10", - "@babel/plugin-transform-typescript": "^7.22.10", - "@vue/babel-plugin-jsx": "^1.1.5" - }, "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "peerDependencies": { - "vite": "^4.0.0", - "vue": "^3.0.0" + "node": ">=6" } }, - "node_modules/@volar/language-core": { - "version": "1.4.0-alpha.7", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.4.0-alpha.7.tgz", - "integrity": "sha512-kn/xA+RANXogFHv8Md7lmM4BsVcV51EmgROPiiE1km0PtZ7Po8VFj0Y5B5MNd3RZO/DLWiNfUtXC8MKmHGeDgA==", + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "dependencies": { - "@volar/source-map": "1.4.0-alpha.7" + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@volar/source-map": { - "version": "1.4.0-alpha.7", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.4.0-alpha.7.tgz", - "integrity": "sha512-JV5LAe7kgjM8l9yvnve15M2rAJnJ+1hi4G7AbkfMvfn9IkH/BFeSwJo/aIFSRMH0m67BMbP30Ao03NQvCgqOcQ==", + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "dev": true, - "dependencies": { - "muggle-string": "^0.2.2" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@volar/typescript": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.10.1.tgz", - "integrity": "sha512-+iiO9yUSRHIYjlteT+QcdRq8b44qH19/eiUZtjNtuh6D9ailYM7DVR0zO2sEgJlvCaunw/CF9Ov2KooQBpR4VQ==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "dependencies": { - "@volar/language-core": "1.10.1" + "engines": { + "node": ">=8" } }, - "node_modules/@volar/typescript/node_modules/@volar/language-core": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.1.tgz", - "integrity": "sha512-JnsM1mIPdfGPxmoOcK1c7HYAsL6YOv0TCJ4aW3AXPZN/Jb4R77epDyMZIVudSGjWMbvv/JfUa+rQ+dGKTmgwBA==", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "@volar/source-map": "1.10.1" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@volar/typescript/node_modules/@volar/source-map": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.1.tgz", - "integrity": "sha512-3/S6KQbqa7pGC8CxPrg69qHLpOvkiPHGJtWPkI/1AXCsktkJ6gIk/5z4hyuMp8Anvs6eS/Kvp/GZa3ut3votKA==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "dependencies": { - "muggle-string": "^0.3.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/@volar/typescript/node_modules/muggle-string": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", - "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", "dev": true }, - "node_modules/@volar/vue-language-core": { - "version": "1.3.14", - "resolved": "https://registry.npmjs.org/@volar/vue-language-core/-/vue-language-core-1.3.14.tgz", - "integrity": "sha512-qXRoOe/B3lWYrbKHw5YInGxoIbBoFSKxVJjLML3RGE/nL1+b0CtqGD+TO9pfwMnjuhHAqzvTm7Hw2l5sLxjbYA==", - "dev": true, - "dependencies": { - "@volar/language-core": "1.4.0-alpha.7", - "@volar/source-map": "1.4.0-alpha.7", - "@vue/compiler-dom": "^3.2.0", - "@vue/compiler-sfc": "^3.2.0", - "@vue/reactivity": "^3.2.0", - "@vue/shared": "^3.2.0", - "minimatch": "^6.1.6", - "muggle-string": "^0.2.2", - "vue-template-compiler": "^2.7.14" + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/archiver": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-6.0.1.tgz", + "integrity": "sha512-CXGy4poOLBKptiZH//VlWdFuUC1RESbdZjGjILwBuZ73P7WkAUN0htfSfBq/7k6FRFlpu7bg4JOkj1vU9G6jcQ==", + "dev": true, + "dependencies": { + "archiver-utils": "^4.0.1", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^3.0.0", + "zip-stream": "^5.0.1" + }, + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@volar/vue-language-core/node_modules/minimatch": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz", - "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==", + "node_modules/archiver-utils": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-4.0.1.tgz", + "integrity": "sha512-Q4Q99idbvzmgCTEAAhi32BkOyq8iVI5EwdO0PmBDSGIzzjYNdcFn7Q7k3OzbLy4kLUPXfJtG6fO2RjftXbobBg==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "glob": "^8.0.0", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash": "^4.17.15", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 12.0.0" } }, - "node_modules/@vue-macros/common": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-1.8.0.tgz", - "integrity": "sha512-auDJJzE0z3uRe3867e0DsqcseKImktNf5ojCZgUKqiVxb2yTlwlgOVAYCgoep9oITqxkXQymSvFeKhedi8PhaA==", + "node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", "dev": true, "dependencies": { - "@babel/types": "^7.22.17", - "@rollup/pluginutils": "^5.0.4", - "@vue/compiler-sfc": "^3.3.4", - "ast-kit": "^0.11.2", - "local-pkg": "^0.4.3", - "magic-string-ast": "^0.3.0" + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">=16.14.0" - }, - "peerDependencies": { - "vue": "^2.7.0 || ^3.2.25" - }, - "peerDependenciesMeta": { - "vue": { - "optional": true - } + "node": ">=10" } }, - "node_modules/@vue/babel-helper-vue-transform-on": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.1.5.tgz", - "integrity": "sha512-SgUymFpMoAyWeYWLAY+MkCK3QEROsiUnfaw5zxOVD/M64KQs8D/4oK6Q5omVA2hnvEOE0SCkH2TZxs/jnnUj7w==", + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "node_modules/@vue/babel-plugin-jsx": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.5.tgz", - "integrity": "sha512-nKs1/Bg9U1n3qSWnsHhCVQtAzI6aQXqua8j/bZrau8ywT1ilXQbK4FwEJGmU8fV7tcpuFvWmmN7TMmV1OBma1g==", + "node_modules/assert": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz", + "integrity": "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.5", - "@babel/types": "^7.22.5", - "@vue/babel-helper-vue-transform-on": "^1.1.5", - "camelcase": "^6.3.0", - "html-tags": "^3.3.1", - "svg-tags": "^1.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "call-bind": "^1.0.2", + "is-nan": "^1.3.2", + "object-is": "^1.1.5", + "object.assign": "^4.1.4", + "util": "^0.12.5" } }, - "node_modules/@vue/compiler-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz", - "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", + "node_modules/ast-kit": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.11.2.tgz", + "integrity": "sha512-Q0DjXK4ApbVoIf9GLyCo252tUH44iTnD/hiJ2TQaJeydYWSpKk0sI34+WMel8S9Wt5pbLgG02oJ+gkgX5DV3sQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" + "@babel/parser": "^7.22.14", + "@rollup/pluginutils": "^5.0.4", + "pathe": "^1.1.1" + }, + "engines": { + "node": ">=16.14.0" } }, - "node_modules/@vue/compiler-core/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/@vue/compiler-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", - "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", + "node_modules/ast-types": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.15.2.tgz", + "integrity": "sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4" + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@vue/compiler-sfc": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", - "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", + "node_modules/ast-walker-scope": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/ast-walker-scope/-/ast-walker-scope-0.5.0.tgz", + "integrity": "sha512-NsyHMxBh4dmdEHjBo1/TBZvCKxffmZxRYhmclfu0PP6Aftre47jOHYaYaNqJcV0bxihxFXhDkzLHUwHc0ocd0Q==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-ssr": "3.3.4", - "@vue/reactivity-transform": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0", - "postcss": "^8.1.10", - "source-map-js": "^1.0.2" + "@babel/parser": "^7.22.7", + "ast-kit": "^0.9.4" + }, + "engines": { + "node": ">=16.14.0" } }, - "node_modules/@vue/compiler-sfc/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/@vue/compiler-ssr": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", - "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", + "node_modules/ast-walker-scope/node_modules/ast-kit": { + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.9.5.tgz", + "integrity": "sha512-kbL7ERlqjXubdDd+szuwdlQ1xUxEz9mCz1+m07ftNVStgwRb2RWw+U6oKo08PAvOishMxiqz1mlJyLl8yQx2Qg==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/shared": "3.3.4" + "@babel/parser": "^7.22.7", + "@rollup/pluginutils": "^5.0.2", + "pathe": "^1.1.1" + }, + "engines": { + "node": ">=16.14.0" } }, - "node_modules/@vue/devtools-api": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz", - "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==", + "node_modules/async": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", + "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", "dev": true }, - "node_modules/@vue/language-core": { - "version": "1.8.15", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.15.tgz", - "integrity": "sha512-zche5Aw8kkvp3YaghuLiOZyVIpoWHjSQ0EfjxGSsqHOPMamdCoa9x3HtbenpR38UMUoKJ88wiWuiOrV3B/Yq+A==", + "node_modules/async-sema": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/async-sema/-/async-sema-3.1.1.tgz", + "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==", + "dev": true + }, + "node_modules/autoprefixer": { + "version": "10.4.16", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz", + "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "@volar/language-core": "~1.10.0", - "@volar/source-map": "~1.10.0", - "@vue/compiler-dom": "^3.3.0", - "@vue/reactivity": "^3.3.0", - "@vue/shared": "^3.3.0", - "minimatch": "^9.0.0", - "muggle-string": "^0.3.1", - "vue-template-compiler": "^2.7.14" + "browserslist": "^4.21.10", + "caniuse-lite": "^1.0.30001538", + "fraction.js": "^4.3.6", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" }, - "peerDependencies": { - "typescript": "*" + "bin": { + "autoprefixer": "bin/autoprefixer" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@vue/language-core/node_modules/@volar/language-core": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.1.tgz", - "integrity": "sha512-JnsM1mIPdfGPxmoOcK1c7HYAsL6YOv0TCJ4aW3AXPZN/Jb4R77epDyMZIVudSGjWMbvv/JfUa+rQ+dGKTmgwBA==", - "dev": true, - "dependencies": { - "@volar/source-map": "1.10.1" - } - }, - "node_modules/@vue/language-core/node_modules/@volar/source-map": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.1.tgz", - "integrity": "sha512-3/S6KQbqa7pGC8CxPrg69qHLpOvkiPHGJtWPkI/1AXCsktkJ6gIk/5z4hyuMp8Anvs6eS/Kvp/GZa3ut3votKA==", - "dev": true, - "dependencies": { - "muggle-string": "^0.3.1" + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "node_modules/@vue/language-core/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@vue/language-core/node_modules/muggle-string": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", - "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "node_modules/b4a": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", + "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", "dev": true }, - "node_modules/@vue/reactivity": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz", - "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==", + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", "dev": true, - "dependencies": { - "@vue/shared": "3.3.4" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", - "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0" - } + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true }, - "node_modules/@vue/reactivity-transform/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", "dev": true }, - "node_modules/@vue/runtime-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz", - "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==", + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, - "dependencies": { - "@vue/reactivity": "3.3.4", - "@vue/shared": "3.3.4" + "engines": { + "node": ">=8" } }, - "node_modules/@vue/runtime-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz", - "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==", + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", "dev": true, "dependencies": { - "@vue/runtime-core": "3.3.4", - "@vue/shared": "3.3.4", - "csstype": "^3.1.1" + "file-uri-to-path": "1.0.0" } }, - "node_modules/@vue/server-renderer": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz", - "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==", + "node_modules/birpc": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.14.tgz", + "integrity": "sha512-37FHE8rqsYM5JEKCnXFyHpBCzvgHEExwVVTq+nUmloInU7l8ezD1TpOhKpS8oe1DTYFqEK27rFZVKG43oTqXRA==", "dev": true, - "dependencies": { - "@vue/compiler-ssr": "3.3.4", - "@vue/shared": "3.3.4" - }, - "peerDependencies": { - "vue": "3.3.4" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@vue/shared": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz", - "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==", + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", "dev": true }, - "node_modules/@vueuse/core": { - "version": "9.13.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.13.0.tgz", - "integrity": "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==", + "node_modules/bplist-parser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", "dev": true, "dependencies": { - "@types/web-bluetooth": "^0.0.16", - "@vueuse/metadata": "9.13.0", - "@vueuse/shared": "9.13.0", - "vue-demi": "*" + "big-integer": "^1.6.44" }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "engines": { + "node": ">= 5.10.0" } }, - "node_modules/@vueuse/head": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@vueuse/head/-/head-2.0.0.tgz", - "integrity": "sha512-ykdOxTGs95xjD4WXE4na/umxZea2Itl0GWBILas+O4oqS7eXIods38INvk3XkJKjqMdWPcpCyLX/DioLQxU1KA==", + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "dependencies": { - "@unhead/dom": "^1.7.0", - "@unhead/schema": "^1.7.0", - "@unhead/ssr": "^1.7.0", - "@unhead/vue": "^1.7.0" - }, - "peerDependencies": { - "vue": ">=2.7 || >=3" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@vueuse/integrations": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-10.4.1.tgz", - "integrity": "sha512-uRBPyG5Lxoh1A/J+boiioPT3ELEAPEo4t8W6Mr4yTKIQBeW/FcbsotZNPr4k9uz+3QEksMmflWloS9wCnypM7g==", + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "dependencies": { - "@vueuse/core": "10.4.1", - "@vueuse/shared": "10.4.1", - "vue-demi": ">=0.14.5" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "async-validator": "*", - "axios": "*", - "change-case": "*", - "drauu": "*", - "focus-trap": "*", - "fuse.js": "*", - "idb-keyval": "*", - "jwt-decode": "*", - "nprogress": "*", - "qrcode": "*", - "sortablejs": "*", - "universal-cookie": "*" + "fill-range": "^7.0.1" }, - "peerDependenciesMeta": { - "async-validator": { - "optional": true - }, - "axios": { - "optional": true - }, - "change-case": { - "optional": true - }, - "drauu": { - "optional": true - }, - "focus-trap": { - "optional": true - }, - "fuse.js": { - "optional": true - }, - "idb-keyval": { - "optional": true - }, - "jwt-decode": { - "optional": true - }, - "nprogress": { - "optional": true - }, - "qrcode": { - "optional": true + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "sortablejs": { - "optional": true + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" }, - "universal-cookie": { - "optional": true + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/@vueuse/integrations/node_modules/@types/web-bluetooth": { - "version": "0.0.17", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.17.tgz", - "integrity": "sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA==", - "dev": true - }, - "node_modules/@vueuse/integrations/node_modules/@vueuse/core": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.4.1.tgz", - "integrity": "sha512-DkHIfMIoSIBjMgRRvdIvxsyboRZQmImofLyOHADqiVbQVilP8VVHDhBX2ZqoItOgu7dWa8oXiNnScOdPLhdEXg==", + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "dev": true, - "dependencies": { - "@types/web-bluetooth": "^0.0.17", - "@vueuse/metadata": "10.4.1", - "@vueuse/shared": "10.4.1", - "vue-demi": ">=0.14.5" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "engines": { + "node": "*" } }, - "node_modules/@vueuse/integrations/node_modules/@vueuse/metadata": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.4.1.tgz", - "integrity": "sha512-2Sc8X+iVzeuMGHr6O2j4gv/zxvQGGOYETYXEc41h0iZXIRnRbJZGmY/QP8dvzqUelf8vg0p/yEA5VpCEu+WpZg==", + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", "dev": true, + "engines": { + "node": ">=6" + }, "funding": { - "url": "https://github.com/sponsors/antfu" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@vueuse/integrations/node_modules/@vueuse/shared": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.4.1.tgz", - "integrity": "sha512-vz5hbAM4qA0lDKmcr2y3pPdU+2EVw/yzfRsBdu+6+USGa4PxqSQRYIUC9/NcT06y+ZgaTsyURw2I9qOFaaXHAg==", + "node_modules/builtins": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", "dev": true, "dependencies": { - "vue-demi": ">=0.14.5" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "semver": "^7.0.0" } }, - "node_modules/@vueuse/integrations/node_modules/vue-demi": { - "version": "0.14.6", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", - "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "node_modules/bundle-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", + "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" + "dependencies": { + "run-applescript": "^5.0.0" }, "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@vueuse/metadata": { - "version": "9.13.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.13.0.tgz", - "integrity": "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==", + "node_modules/c12": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/c12/-/c12-1.5.1.tgz", + "integrity": "sha512-BWZRJgDEveT8uI+cliCwvYSSSSvb4xKoiiu5S0jaDbKBopQLQF7E+bq9xKk1pTcG+mUa3yXuFO7bD9d8Lr9Xxg==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" + "dependencies": { + "chokidar": "^3.5.3", + "defu": "^6.1.2", + "dotenv": "^16.3.1", + "giget": "^1.1.3", + "jiti": "^1.20.0", + "mlly": "^1.4.2", + "ohash": "^1.1.3", + "pathe": "^1.1.1", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "rc9": "^2.1.1" } }, - "node_modules/@vueuse/nuxt": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/nuxt/-/nuxt-10.4.1.tgz", - "integrity": "sha512-tJ25KCkozZaQEy0qli4Ta8WXlbMIjSD7gPnVfLScZ2DpSSgImMB5R66PQEkrbSg4GfFj0OuoYc4+vCHQ/FqTsw==", + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacache": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.6.5", - "@vueuse/core": "10.4.1", - "@vueuse/metadata": "10.4.1", - "local-pkg": "^0.4.3", - "nuxt": "^3.6.5", - "vue-demi": ">=0.14.5" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" }, - "peerDependencies": { - "nuxt": "^3.0.0" + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@vueuse/nuxt/node_modules/@types/web-bluetooth": { - "version": "0.0.17", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.17.tgz", - "integrity": "sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA==", - "dev": true - }, - "node_modules/@vueuse/nuxt/node_modules/@vueuse/core": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.4.1.tgz", - "integrity": "sha512-DkHIfMIoSIBjMgRRvdIvxsyboRZQmImofLyOHADqiVbQVilP8VVHDhBX2ZqoItOgu7dWa8oXiNnScOdPLhdEXg==", + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "@types/web-bluetooth": "^0.0.17", - "@vueuse/metadata": "10.4.1", - "@vueuse/shared": "10.4.1", - "vue-demi": ">=0.14.5" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/nuxt/node_modules/@vueuse/metadata": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.4.1.tgz", - "integrity": "sha512-2Sc8X+iVzeuMGHr6O2j4gv/zxvQGGOYETYXEc41h0iZXIRnRbJZGmY/QP8dvzqUelf8vg0p/yEA5VpCEu+WpZg==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" + "balanced-match": "^1.0.0" } }, - "node_modules/@vueuse/nuxt/node_modules/@vueuse/shared": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.4.1.tgz", - "integrity": "sha512-vz5hbAM4qA0lDKmcr2y3pPdU+2EVw/yzfRsBdu+6+USGa4PxqSQRYIUC9/NcT06y+ZgaTsyURw2I9qOFaaXHAg==", + "node_modules/cacache/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { - "vue-demi": ">=0.14.5" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/nuxt/node_modules/vue-demi": { - "version": "0.14.6", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", - "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", - "dev": true, - "hasInstallScript": true, "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=12" + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@vueuse/shared": { - "version": "9.13.0", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.13.0.tgz", - "integrity": "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==", + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { - "vue-demi": "*" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" }, "funding": { - "url": "https://github.com/sponsors/antfu" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "node_modules/call-bind": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", "dev": true, - "peer": true, "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, "peer": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" + "engines": { + "node": ">=6" } }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", "dev": true, - "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" } }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, - "peer": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", "dev": true, - "peer": true, "dependencies": { - "@xtuc/long": "4.2.2" + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" } }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "node_modules/caniuse-lite": { + "version": "1.0.30001561", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001561.tgz", + "integrity": "sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==", "dev": true, - "peer": true + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "node_modules/capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", "dev": true, - "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" } }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "node_modules/change-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", + "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", "dev": true, - "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" + "camel-case": "^4.1.2", + "capital-case": "^1.0.4", + "constant-case": "^3.0.4", + "dot-case": "^3.0.4", + "header-case": "^2.0.4", + "no-case": "^3.0.4", + "param-case": "^3.0.4", + "pascal-case": "^3.1.2", + "path-case": "^3.0.4", + "sentence-case": "^3.0.4", + "snake-case": "^3.0.4", + "tslib": "^2.0.3" } }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" + "engines": { + "node": ">=10" } }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true, - "peer": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true, - "peer": true - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", "dev": true, - "peer": true, - "peerDependencies": { - "acorn": "^8" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", "dev": true, - "peer": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "node_modules/character-reference-invalid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", + "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", "dev": true, - "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "dependencies": { - "humanize-ms": "^1.2.1" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">= 8.0.0" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/chroma-js": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chroma-js/-/chroma-js-2.4.2.tgz", + "integrity": "sha512-U9eDw6+wt7V8z5NncY2jJfZa+hUH8XEj8FQHgFJTrUFnJfXYf4Ml4adI2vXZOjqRDpFWtYVWypDfZwnJ+HIR4A==", + "dev": true + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", "dev": true, "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=6.0" } }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" } + ], + "engines": { + "node": ">=8" } }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "node_modules/citty": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.4.tgz", + "integrity": "sha512-Q3bK1huLxzQrvj7hImJ7Z1vKYJRPQCDnd0EjXfHMidcjecGOMuLrmuQmtWmFkuKLcMThlGh1yCKG8IEc6VeNXQ==", "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "consola": "^3.2.3" } }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "dev": true, - "peer": true, - "peerDependencies": { - "ajv": "^6.9.1" + "engines": { + "node": ">=6" } }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "node_modules/clear": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/clear/-/clear-0.1.0.tgz", + "integrity": "sha512-qMjRnoL+JDPJHeLePZJuao6+8orzHMGP04A8CdwCNsKhRbOnKRjefxONR7bwILT3MHecxKBjHkKL/tkZ8r4Uzw==", "dev": true, "engines": { - "node": ">=6" + "node": "*" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/clipboardy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-3.0.0.tgz", + "integrity": "sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==", "dev": true, "dependencies": { - "type-fest": "^0.21.3" + "arch": "^2.2.0", + "execa": "^5.1.1", + "is-wsl": "^2.2.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=12" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/cluster-key-slot": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz", + "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" - }, + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "dev": true, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/ansi-styles/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/commander": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=16" } }, - "node_modules/ansi-styles/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/compress-commons": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-5.0.1.tgz", + "integrity": "sha512-MPh//1cERdLtqwO3pOFLeXtpuai0Y2WCd5AhtKxznqM7WtaMYaOEMSgn45d9D10sIHSfIKE603HlOp8OPGrvag==", "dev": true, "dependencies": { + "crc-32": "^1.2.0", + "crc32-stream": "^5.0.0", "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "readable-stream": "^3.6.0" }, "engines": { - "node": ">= 8" + "node": ">= 12.0.0" } }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", "dev": true }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true }, - "node_modules/archiver": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-6.0.1.tgz", - "integrity": "sha512-CXGy4poOLBKptiZH//VlWdFuUC1RESbdZjGjILwBuZ73P7WkAUN0htfSfBq/7k6FRFlpu7bg4JOkj1vU9G6jcQ==", + "node_modules/consola": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", + "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", "dev": true, - "dependencies": { - "archiver-utils": "^4.0.1", - "async": "^3.2.4", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.1.2", - "tar-stream": "^3.0.0", - "zip-stream": "^5.0.1" - }, "engines": { - "node": ">= 12.0.0" + "node": "^14.18.0 || >=16.10.0" } }, - "node_modules/archiver-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-4.0.1.tgz", - "integrity": "sha512-Q4Q99idbvzmgCTEAAhi32BkOyq8iVI5EwdO0PmBDSGIzzjYNdcFn7Q7k3OzbLy4kLUPXfJtG6fO2RjftXbobBg==", + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/constant-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", + "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", "dev": true, "dependencies": { - "glob": "^8.0.0", - "graceful-fs": "^4.2.0", - "lazystream": "^1.0.0", - "lodash": "^4.17.15", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 12.0.0" + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case": "^2.0.2" } }, - "node_modules/are-we-there-yet": { + "node_modules/convert-source-map": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10" - } + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "node_modules/cookie-es": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.0.0.tgz", + "integrity": "sha512-mWYvfOLrfEc996hlKcdABeIiPHUPC6DM2QYZdGGOvhOTbA3tjm2eBwqlJpoFdjC89NI4Qt6h0Pu06Mp+1Pj5OQ==", "dev": true }, - "node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "dev": true, - "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true }, - "node_modules/ast-kit": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.11.2.tgz", - "integrity": "sha512-Q0DjXK4ApbVoIf9GLyCo252tUH44iTnD/hiJ2TQaJeydYWSpKk0sI34+WMel8S9Wt5pbLgG02oJ+gkgX5DV3sQ==", + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", "dev": true, - "dependencies": { - "@babel/parser": "^7.22.14", - "@rollup/pluginutils": "^5.0.4", - "pathe": "^1.1.1" + "bin": { + "crc32": "bin/crc32.njs" }, "engines": { - "node": ">=16.14.0" + "node": ">=0.8" } }, - "node_modules/ast-types": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.15.2.tgz", - "integrity": "sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==", + "node_modules/crc32-stream": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-5.0.0.tgz", + "integrity": "sha512-B0EPa1UK+qnpBZpG+7FgPCu0J2ETLpXq09o9BkLkEAhdB6Z61Qo4pJ3JYu0c+Qi+/SAL7QThqnzS06pmSSyZaw==", "dev": true, "dependencies": { - "tslib": "^2.0.1" + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" }, "engines": { - "node": ">=4" + "node": ">= 12.0.0" } }, - "node_modules/ast-walker-scope": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/ast-walker-scope/-/ast-walker-scope-0.5.0.tgz", - "integrity": "sha512-NsyHMxBh4dmdEHjBo1/TBZvCKxffmZxRYhmclfu0PP6Aftre47jOHYaYaNqJcV0bxihxFXhDkzLHUwHc0ocd0Q==", + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "dependencies": { - "@babel/parser": "^7.22.7", - "ast-kit": "^0.9.4" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">=16.14.0" + "node": ">= 8" } }, - "node_modules/ast-walker-scope/node_modules/ast-kit": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-0.9.5.tgz", - "integrity": "sha512-kbL7ERlqjXubdDd+szuwdlQ1xUxEz9mCz1+m07ftNVStgwRb2RWw+U6oKo08PAvOishMxiqz1mlJyLl8yQx2Qg==", + "node_modules/css-declaration-sorter": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz", + "integrity": "sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==", "dev": true, - "dependencies": { - "@babel/parser": "^7.22.7", - "@rollup/pluginutils": "^5.0.2", - "pathe": "^1.1.1" - }, "engines": { - "node": ">=16.14.0" + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.0.9" } }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/async-sema": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/async-sema/-/async-sema-3.1.1.tgz", - "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==", - "dev": true - }, - "node_modules/autoprefixer": { - "version": "10.4.16", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz", - "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==", + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "browserslist": "^4.21.10", - "caniuse-lite": "^1.0.30001538", - "fraction.js": "^4.3.6", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", "dev": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, - "node_modules/b4a": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", - "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", - "dev": true - }, - "node_modules/bail": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", - "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", "dev": true, + "engines": { + "node": ">= 6" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/fb55" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", - "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", - "dev": true - }, - "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, "engines": { - "node": ">=0.6" + "node": ">=4" } }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/cssnano": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.0.1.tgz", + "integrity": "sha512-fVO1JdJ0LSdIGJq68eIxOqFpIJrZqXUsBt8fkrBcztCQqAjQD51OhZp7tc0ImcbwXD4k7ny84QTV90nZhmqbkg==", "dev": true, + "dependencies": { + "cssnano-preset-default": "^6.0.1", + "lilconfig": "^2.1.0" + }, "engines": { - "node": ">=8" + "node": "^14 || ^16 || >=18.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.2.15" } }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "node_modules/cssnano-preset-default": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.0.1.tgz", + "integrity": "sha512-7VzyFZ5zEB1+l1nToKyrRkuaJIx0zi/1npjvZfbBwbtNTzhLtlvYraK/7/uqmX2Wb2aQtd983uuGw79jAjLSuQ==", "dev": true, "dependencies": { - "file-uri-to-path": "1.0.0" + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^4.0.0", + "postcss-calc": "^9.0.0", + "postcss-colormin": "^6.0.0", + "postcss-convert-values": "^6.0.0", + "postcss-discard-comments": "^6.0.0", + "postcss-discard-duplicates": "^6.0.0", + "postcss-discard-empty": "^6.0.0", + "postcss-discard-overridden": "^6.0.0", + "postcss-merge-longhand": "^6.0.0", + "postcss-merge-rules": "^6.0.1", + "postcss-minify-font-values": "^6.0.0", + "postcss-minify-gradients": "^6.0.0", + "postcss-minify-params": "^6.0.0", + "postcss-minify-selectors": "^6.0.0", + "postcss-normalize-charset": "^6.0.0", + "postcss-normalize-display-values": "^6.0.0", + "postcss-normalize-positions": "^6.0.0", + "postcss-normalize-repeat-style": "^6.0.0", + "postcss-normalize-string": "^6.0.0", + "postcss-normalize-timing-functions": "^6.0.0", + "postcss-normalize-unicode": "^6.0.0", + "postcss-normalize-url": "^6.0.0", + "postcss-normalize-whitespace": "^6.0.0", + "postcss-ordered-values": "^6.0.0", + "postcss-reduce-initial": "^6.0.0", + "postcss-reduce-transforms": "^6.0.0", + "postcss-svgo": "^6.0.0", + "postcss-unique-selectors": "^6.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" } }, - "node_modules/birpc": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.14.tgz", - "integrity": "sha512-37FHE8rqsYM5JEKCnXFyHpBCzvgHEExwVVTq+nUmloInU7l8ezD1TpOhKpS8oe1DTYFqEK27rFZVKG43oTqXRA==", + "node_modules/cssnano-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.0.tgz", + "integrity": "sha512-Z39TLP+1E0KUcd7LGyF4qMfu8ZufI0rDzhdyAMsa/8UyNUU8wpS0fhdBxbQbv32r64ea00h4878gommRVg2BHw==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" } }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", "dev": true, "dependencies": { - "big-integer": "^1.6.44" + "css-tree": "~2.2.0" }, "engines": { - "node": ">= 5.10.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0" + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", + "dev": true + }, + "node_modules/csstype": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", + "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "dev": true + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "ms": "2.1.2" }, "engines": { - "node": ">=8" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" + "character-entities": "^2.0.0" }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "peer": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "engines": { - "node": "*" + "node": ">=0.10.0" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "node_modules/default-browser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", + "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", "dev": true, + "dependencies": { + "bundle-name": "^3.0.0", + "default-browser-id": "^3.0.0", + "execa": "^7.1.1", + "titleize": "^3.0.0" + }, "engines": { - "node": ">=6" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/bundle-name": { + "node_modules/default-browser-id": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", + "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", "dev": true, "dependencies": { - "run-applescript": "^5.0.0" + "bplist-parser": "^0.2.0", + "untildify": "^4.0.0" }, "engines": { "node": ">=12" @@ -6388,2508 +6117,2469 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/c12": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/c12/-/c12-1.5.1.tgz", - "integrity": "sha512-BWZRJgDEveT8uI+cliCwvYSSSSvb4xKoiiu5S0jaDbKBopQLQF7E+bq9xKk1pTcG+mUa3yXuFO7bD9d8Lr9Xxg==", + "node_modules/default-browser/node_modules/execa": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", "dev": true, "dependencies": { - "chokidar": "^3.5.3", - "defu": "^6.1.2", - "dotenv": "^16.3.1", - "giget": "^1.1.3", - "jiti": "^1.20.0", - "mlly": "^1.4.2", - "ohash": "^1.1.3", - "pathe": "^1.1.1", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "rc9": "^2.1.1" - } - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, "engines": { - "node": ">=8" + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/cacache": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", - "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", + "node_modules/default-browser/node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", "dev": true, - "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^10.0.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" - }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=14.18.0" } }, - "node_modules/cacache/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "node_modules/default-browser/node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "node_modules/default-browser/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", "dev": true, "engines": { - "node": "14 || >=16.14" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cacache/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/default-browser/node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "path-key": "^4.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "node_modules/default-browser/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "mimic-fn": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "peer": true, "engines": { - "node": ">=6" - } - }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/default-browser/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/caniuse-api": { + "node_modules/default-browser/node_modules/strip-final-newline": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", "dev": true, - "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001540", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001540.tgz", - "integrity": "sha512-9JL38jscuTJBTcuETxm8QLsFr/F6v0CYYTEU6r5+qSM98P2Q0Hmu0eG1dTG5GBUmywU3UlcVOUSIJYY47rdFSw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/capital-case": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", - "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", "dev": true, "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case-first": "^2.0.2" + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/ccount": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", - "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">=8" } }, - "node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/change-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", - "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", + "node_modules/defu": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.3.tgz", + "integrity": "sha512-Vy2wmG3NTkmHNg/kzpuvHhkqeIx3ODWqasgCRbKtbXEN0G+HpEEv9BtJLp7ZG1CZloFaC41Ah3ZFbq7aqCqMeQ==", + "dev": true + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "node_modules/denque": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", + "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==", "dev": true, - "dependencies": { - "camel-case": "^4.1.2", - "capital-case": "^1.0.4", - "constant-case": "^3.0.4", - "dot-case": "^3.0.4", - "header-case": "^2.0.4", - "no-case": "^3.0.4", - "param-case": "^3.0.4", - "pascal-case": "^3.1.2", - "path-case": "^3.0.4", - "sentence-case": "^3.0.4", - "snake-case": "^3.0.4", - "tslib": "^2.0.3" + "engines": { + "node": ">=0.10" } }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "engines": { - "node": ">=10" + "node": ">= 0.8" } }, - "node_modules/character-entities": { + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", + "dev": true + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/destr": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", - "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.2.tgz", + "integrity": "sha512-65AlobnZMiCET00KaFFjUefxDX0khFA/E4myqZ7a6Sq1yZtR8+FVIvilVX66vF2uobSumxooYZChiRPCKNqhmg==", + "dev": true + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/character-entities-html4": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", - "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "node_modules/detab": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/detab/-/detab-3.0.2.tgz", + "integrity": "sha512-7Bp16Bk8sk0Y6gdXiCtnpGbghn8atnTJdd/82aWvS5ESnlcNvgUc10U2NYS0PAiDSGjWiI8qs/Cv1b2uSGdQ8w==", "dev": true, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/character-entities-legacy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", - "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" } }, - "node_modules/character-reference-invalid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", - "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", + "node_modules/devalue": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.3.2.tgz", + "integrity": "sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg==", + "dev": true + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", "dev": true, + "dependencies": { + "dequal": "^2.0.0" + }, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/diff": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "node": ">=0.3.1" } }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/chroma-js": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chroma-js/-/chroma-js-2.4.2.tgz", - "integrity": "sha512-U9eDw6+wt7V8z5NncY2jJfZa+hUH8XEj8FQHgFJTrUFnJfXYf4Ml4adI2vXZOjqRDpFWtYVWypDfZwnJ+HIR4A==", - "dev": true - }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "peer": true, + "dependencies": { + "esutils": "^2.0.2" + }, "engines": { - "node": ">=6.0" + "node": ">=6.0.0" } }, - "node_modules/ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "dev": true, "funding": [ { "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" + "url": "https://github.com/sponsors/fb55" } - ], - "engines": { - "node": ">=8" - } + ] }, - "node_modules/citty": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.4.tgz", - "integrity": "sha512-Q3bK1huLxzQrvj7hImJ7Z1vKYJRPQCDnd0EjXfHMidcjecGOMuLrmuQmtWmFkuKLcMThlGh1yCKG8IEc6VeNXQ==", + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, "dependencies": { - "consola": "^3.2.3" - } - }, - "node_modules/citty/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, + "domelementtype": "^2.3.0" + }, "engines": { - "node": "^14.18.0 || >=16.10.0" + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", "dev": true, - "engines": { - "node": ">=6" + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/clear": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/clear/-/clear-0.1.0.tgz", - "integrity": "sha512-qMjRnoL+JDPJHeLePZJuao6+8orzHMGP04A8CdwCNsKhRbOnKRjefxONR7bwILT3MHecxKBjHkKL/tkZ8r4Uzw==", + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", "dev": true, - "engines": { - "node": "*" + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" } }, - "node_modules/clipboardy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-3.0.0.tgz", - "integrity": "sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==", + "node_modules/dot-prop": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-8.0.2.tgz", + "integrity": "sha512-xaBe6ZT4DHPkg0k4Ytbvn5xoxgpG0jOS1dYxSOwAHPuNLjP3/OzN0gH55SrLqpx8cBfSaVt91lXYkApjb+nYdQ==", "dev": true, "dependencies": { - "arch": "^2.2.0", - "execa": "^5.1.1", - "is-wsl": "^2.2.0" + "type-fest": "^3.8.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "node_modules/dot-prop/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, "engines": { - "node": ">=12" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cluster-key-slot": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz", - "integrity": "sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==", + "node_modules/dotenv": { + "version": "16.3.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", + "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?sponsor=1" } }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", "dev": true }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true }, - "node_modules/colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "node_modules/electron-to-chromium": { + "version": "1.4.576", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.576.tgz", + "integrity": "sha512-yXsZyXJfAqzWk1WKryr0Wl0MN2D47xodPvEEwlVePBnhU5E7raevLQR+E6b9JAD3GfL/7MbAL9ZtWQQPcLx7wA==", "dev": true }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "node_modules/comma-separated-tokens": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", - "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "node_modules/emojilib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/emojilib/-/emojilib-2.4.0.tgz", + "integrity": "sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==", + "dev": true + }, + "node_modules/emoticon": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-4.0.1.tgz", + "integrity": "sha512-dqx7eA9YaqyvYtUhJwT4rC1HIp82j5ybS1/vQ42ur+jBe17dJMwZE4+gvL1XadSFfxaPFFGt3Xsw+Y8akThDlw==", "dev": true, "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true, "engines": { - "node": ">=14" + "node": ">= 0.8" } }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/compress-commons": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-5.0.1.tgz", - "integrity": "sha512-MPh//1cERdLtqwO3pOFLeXtpuai0Y2WCd5AhtKxznqM7WtaMYaOEMSgn45d9D10sIHSfIKE603HlOp8OPGrvag==", + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "dev": true, + "optional": true, "dependencies": { - "crc-32": "^1.2.0", - "crc32-stream": "^5.0.0", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 12.0.0" + "iconv-lite": "^0.6.2" } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/consola": { - "version": "2.15.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", - "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", - "dev": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true - }, - "node_modules/constant-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", - "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", + "node_modules/engine.io-client": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.2.tgz", + "integrity": "sha512-CQZqbrpEYnrpGqC07a9dJDz4gePZUgTPMU3NKJPSeQOyw27Tst4Pl3FemKoFGAlHzgZmKjoRmiJvbWfhCXUlIg==", "dev": true, "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case": "^2.0.2" + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0", + "xmlhttprequest-ssl": "~2.0.0" } }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/cookie-es": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.0.0.tgz", - "integrity": "sha512-mWYvfOLrfEc996hlKcdABeIiPHUPC6DM2QYZdGGOvhOTbA3tjm2eBwqlJpoFdjC89NI4Qt6h0Pu06Mp+1Pj5OQ==", - "dev": true - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "node_modules/engine.io-client/node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "dev": true, - "bin": { - "crc32": "bin/crc32.njs" - }, "engines": { - "node": ">=0.8" + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/crc32-stream": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-5.0.0.tgz", - "integrity": "sha512-B0EPa1UK+qnpBZpG+7FgPCu0J2ETLpXq09o9BkLkEAhdB6Z61Qo4pJ3JYu0c+Qi+/SAL7QThqnzS06pmSSyZaw==", + "node_modules/engine.io-parser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.1.tgz", + "integrity": "sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==", "dev": true, - "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" - }, "engines": { - "node": ">= 12.0.0" + "node": ">=10.0.0" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/enhanced-resolve": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" }, "engines": { - "node": ">= 8" + "node": ">=10.13.0" } }, - "node_modules/css-declaration-sorter": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.0.tgz", - "integrity": "sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==", + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">=0.12" }, - "peerDependencies": { - "postcss": "^8.0.9" + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/error-stack-parser-es": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-0.1.1.tgz", + "integrity": "sha512-g/9rfnvnagiNf+DRMHEVGuGuIBlCIMDFoTA616HaP2l9PlCjGjVhD98PNbVSJvmK4TttqT5mV5tInMhoFgi+aA==", "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, "funding": { - "url": "https://github.com/sponsors/fb55" + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/css-tree": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", - "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "node_modules/es-module-lexer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.1.tgz", + "integrity": "sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==", "dev": true, - "dependencies": { - "mdn-data": "2.0.30", - "source-map-js": "^1.0.1" + "peer": true + }, + "node_modules/esbuild": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz", + "integrity": "sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.19.5", + "@esbuild/android-arm64": "0.19.5", + "@esbuild/android-x64": "0.19.5", + "@esbuild/darwin-arm64": "0.19.5", + "@esbuild/darwin-x64": "0.19.5", + "@esbuild/freebsd-arm64": "0.19.5", + "@esbuild/freebsd-x64": "0.19.5", + "@esbuild/linux-arm": "0.19.5", + "@esbuild/linux-arm64": "0.19.5", + "@esbuild/linux-ia32": "0.19.5", + "@esbuild/linux-loong64": "0.19.5", + "@esbuild/linux-mips64el": "0.19.5", + "@esbuild/linux-ppc64": "0.19.5", + "@esbuild/linux-riscv64": "0.19.5", + "@esbuild/linux-s390x": "0.19.5", + "@esbuild/linux-x64": "0.19.5", + "@esbuild/netbsd-x64": "0.19.5", + "@esbuild/openbsd-x64": "0.19.5", + "@esbuild/sunos-x64": "0.19.5", + "@esbuild/win32-arm64": "0.19.5", + "@esbuild/win32-ia32": "0.19.5", + "@esbuild/win32-x64": "0.19.5" } }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/fb55" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "node_modules/eslint": { + "version": "8.53.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.53.0.tgz", + "integrity": "sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==", "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.3", + "@eslint/js": "8.53.0", + "@humanwhocodes/config-array": "^0.11.13", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, "bin": { - "cssesc": "bin/cssesc" + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/cssnano": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.0.1.tgz", - "integrity": "sha512-fVO1JdJ0LSdIGJq68eIxOqFpIJrZqXUsBt8fkrBcztCQqAjQD51OhZp7tc0ImcbwXD4k7ny84QTV90nZhmqbkg==", + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, + "peer": true, "dependencies": { - "cssnano-preset-default": "^6.0.1", - "lilconfig": "^2.1.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "peerDependencies": { - "postcss": "^8.2.15" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/cssnano-preset-default": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.0.1.tgz", - "integrity": "sha512-7VzyFZ5zEB1+l1nToKyrRkuaJIx0zi/1npjvZfbBwbtNTzhLtlvYraK/7/uqmX2Wb2aQtd983uuGw79jAjLSuQ==", + "node_modules/eslint-webpack-plugin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-4.0.1.tgz", + "integrity": "sha512-fUFcXpui/FftGx3NzvWgLZXlLbu+m74sUxGEgxgoxYcUtkIQbS6SdNNZkS99m5ycb23TfoNYrDpp1k/CK5j6Hw==", "dev": true, "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^4.0.0", - "postcss-calc": "^9.0.0", - "postcss-colormin": "^6.0.0", - "postcss-convert-values": "^6.0.0", - "postcss-discard-comments": "^6.0.0", - "postcss-discard-duplicates": "^6.0.0", - "postcss-discard-empty": "^6.0.0", - "postcss-discard-overridden": "^6.0.0", - "postcss-merge-longhand": "^6.0.0", - "postcss-merge-rules": "^6.0.1", - "postcss-minify-font-values": "^6.0.0", - "postcss-minify-gradients": "^6.0.0", - "postcss-minify-params": "^6.0.0", - "postcss-minify-selectors": "^6.0.0", - "postcss-normalize-charset": "^6.0.0", - "postcss-normalize-display-values": "^6.0.0", - "postcss-normalize-positions": "^6.0.0", - "postcss-normalize-repeat-style": "^6.0.0", - "postcss-normalize-string": "^6.0.0", - "postcss-normalize-timing-functions": "^6.0.0", - "postcss-normalize-unicode": "^6.0.0", - "postcss-normalize-url": "^6.0.0", - "postcss-normalize-whitespace": "^6.0.0", - "postcss-ordered-values": "^6.0.0", - "postcss-reduce-initial": "^6.0.0", - "postcss-reduce-transforms": "^6.0.0", - "postcss-svgo": "^6.0.0", - "postcss-unique-selectors": "^6.0.0" + "@types/eslint": "^8.37.0", + "jest-worker": "^29.5.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0" }, "engines": { - "node": "^14 || ^16 || >=18.0" + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "postcss": "^8.2.15" + "eslint": "^8.0.0", + "webpack": "^5.0.0" } }, - "node_modules/cssnano-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.0.tgz", - "integrity": "sha512-Z39TLP+1E0KUcd7LGyF4qMfu8ZufI0rDzhdyAMsa/8UyNUU8wpS0fhdBxbQbv32r64ea00h4878gommRVg2BHw==", + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, - "engines": { - "node": "^14 || ^16 || >=18.0" + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" }, - "peerDependencies": { - "postcss": "^8.2.15" + "engines": { + "node": ">=10.13.0" } }, - "node_modules/csso": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", - "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, + "peer": true, "dependencies": { - "css-tree": "~2.2.0" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/csso/node_modules/css-tree": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", - "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "dependencies": { - "mdn-data": "2.0.28", - "source-map-js": "^1.0.1" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", - "npm": ">=7.0.0" + "node": ">=4" } }, - "node_modules/csso/node_modules/mdn-data": { - "version": "2.0.28", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", - "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", - "dev": true - }, - "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", - "dev": true - }, - "node_modules/cuint": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", - "integrity": "sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==", - "dev": true - }, - "node_modules/de-indent": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", - "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", - "dev": true - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, + "peer": true, "dependencies": { - "ms": "2.1.2" + "estraverse": "^5.1.0" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=0.10" } }, - "node_modules/decode-named-character-reference": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", - "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "peer": true, "dependencies": { - "character-entities": "^2.0.0" + "estraverse": "^5.2.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">=4.0" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "peer": true + "peer": true, + "engines": { + "node": ">=4.0" + } }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, - "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" - }, "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.6" } }, - "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, - "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - }, + "peer": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.x" } }, - "node_modules/default-browser/node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + "node": ">=10" }, "funding": { "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/default-browser/node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "dev": true + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/externality": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/externality/-/externality-1.0.2.tgz", + "integrity": "sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==", "dev": true, - "engines": { - "node": ">=14.18.0" + "dependencies": { + "enhanced-resolve": "^5.14.1", + "mlly": "^1.3.0", + "pathe": "^1.1.1", + "ufo": "^1.1.2" } }, - "node_modules/default-browser/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "peer": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "peer": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" } }, - "node_modules/default-browser/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, - "engines": { - "node": ">=12" + "peer": true, + "dependencies": { + "flat-cache": "^3.0.4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/default-browser/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "dependencies": { - "path-key": "^4.0.0" + "to-regex-range": "^5.0.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/default-browser/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, + "peer": true, "dependencies": { - "mimic-fn": "^4.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/default-browser/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "flat": "cli.js" } }, - "node_modules/default-browser/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "node_modules/flat-cache": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", + "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", "dev": true, - "engines": { - "node": ">=12" + "peer": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=12.0.0" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "dev": true + }, + "node_modules/focus-trap": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.4.tgz", + "integrity": "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "tabbable": "^6.2.0" } }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" + "is-callable": "^1.1.3" + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/defu": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.2.tgz", - "integrity": "sha512-+uO4+qr7msjNNWKYPHqN/3+Dx3NFkmIzayk2L1MyZQlvgZb/J1A0fo410dpKrN2SnqFjt8n4JL8fDJE0wIgjFQ==", - "dev": true - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "node_modules/denque": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/denque/-/denque-2.1.0.tgz", - "integrity": "sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==", + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, "engines": { - "node": ">=0.10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, "engines": { - "node": ">= 0.8" + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" } }, - "node_modules/deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", - "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "dev": true - }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 0.6" } }, - "node_modules/destr": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.1.tgz", - "integrity": "sha512-M1Ob1zPSIvlARiJUkKqvAZ3VAqQY6Jcuth/pBKQ2b1dX/Qx0OnJ8Vux6J2H5PTMQeRzWrrbTu70VxBfv/OPDJA==", - "dev": true - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "node_modules/fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">=14.14" } }, - "node_modules/detab": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/detab/-/detab-3.0.2.tgz", - "integrity": "sha512-7Bp16Bk8sk0Y6gdXiCtnpGbghn8atnTJdd/82aWvS5ESnlcNvgUc10U2NYS0PAiDSGjWiI8qs/Cv1b2uSGdQ8w==", + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/devalue": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.3.2.tgz", - "integrity": "sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg==", - "dev": true - }, - "node_modules/devlop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", - "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "dev": true, - "dependencies": { - "dequal": "^2.0.0" - }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/ljharb" } - }, - "node_modules/diff": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", - "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + }, + "node_modules/fuse.js": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-6.6.2.tgz", + "integrity": "sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA==", "dev": true, "engines": { - "node": ">=0.3.1" + "node": ">=10" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", "dev": true, "dependencies": { - "path-type": "^4.0.0" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, - "peer": true, - "dependencies": { - "esutils": "^2.0.2" - }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" } }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", "dev": true, "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] + "node_modules/get-port-please": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.1.tgz", + "integrity": "sha512-3UBAyM3u4ZBVYDsxOQfJDxEa6XTbpBDrOjp4mf7ExFRt5BKs/QywQQiJsh2B+hxcZLSapWqCRvElUe8DnKcFHA==", + "dev": true }, - "node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, - "dependencies": { - "domelementtype": "^2.3.0" - }, "engines": { - "node": ">= 4" + "node": ">=10" }, "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "node_modules/giget": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/giget/-/giget-1.1.3.tgz", + "integrity": "sha512-zHuCeqtfgqgDwvXlR84UNgnJDuUHQcNI5OqWqFxxuk2BshuKbYhJWdxBsEo4PvKqoGh23lUAIvBNpChMLv7/9Q==", "dev": true, "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" + "colorette": "^2.0.20", + "defu": "^6.1.2", + "https-proxy-agent": "^7.0.2", + "mri": "^1.2.0", + "node-fetch-native": "^1.4.0", + "pathe": "^1.1.1", + "tar": "^6.2.0" }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" + "bin": { + "giget": "dist/cli.mjs" } }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "node_modules/git-config-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/git-config-path/-/git-config-path-2.0.0.tgz", + "integrity": "sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA==", "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" + "engines": { + "node": ">=4" } }, - "node_modules/dot-prop": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-8.0.2.tgz", - "integrity": "sha512-xaBe6ZT4DHPkg0k4Ytbvn5xoxgpG0jOS1dYxSOwAHPuNLjP3/OzN0gH55SrLqpx8cBfSaVt91lXYkApjb+nYdQ==", + "node_modules/git-up": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", + "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", "dev": true, "dependencies": { - "type-fest": "^3.8.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "is-ssh": "^1.4.0", + "parse-url": "^8.1.0" } }, - "node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "node_modules/git-url-parse": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.1.tgz", + "integrity": "sha512-PCFJyeSSdtnbfhSNRw9Wk96dDCNx+sogTe4YNXeXSJxt7xz5hvXekuRn9JX7m+Mf4OscCu8h+mtAl3+h5Fo8lQ==", "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" + "dependencies": { + "git-up": "^7.0.0" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.512", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.512.tgz", - "integrity": "sha512-1W8wRbYlQE4ph7eoj3TJ+uqwO6+xvAE/L+KGU7WTQQvX3tnSIGZAb90MTsMoJqzntamiwJhBAj4WZmygXhsOUg==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/emojilib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/emojilib/-/emojilib-2.4.0.tgz", - "integrity": "sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==", + "node_modules/github-slugger": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", + "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", "dev": true }, - "node_modules/emoticon": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-4.0.1.tgz", - "integrity": "sha512-dqx7eA9YaqyvYtUhJwT4rC1HIp82j5ybS1/vQ42ur+jBe17dJMwZE4+gvL1XadSFfxaPFFGt3Xsw+Y8akThDlw==", + "node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">= 0.8" + "node": ">= 6" } }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true, - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } + "peer": true }, - "node_modules/engine.io-client": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.2.tgz", - "integrity": "sha512-CQZqbrpEYnrpGqC07a9dJDz4gePZUgTPMU3NKJPSeQOyw27Tst4Pl3FemKoFGAlHzgZmKjoRmiJvbWfhCXUlIg==", + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1", - "engine.io-parser": "~5.2.1", - "ws": "~8.11.0", - "xmlhttprequest-ssl": "~2.0.0" + "balanced-match": "^1.0.0" } - }, - "node_modules/engine.io-client/node_modules/ws": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", - "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + }, + "node_modules/glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "dependencies": { + "brace-expansion": "^2.0.1" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": ">=10" } }, - "node_modules/engine.io-parser": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.1.tgz", - "integrity": "sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==", + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", "dev": true, + "dependencies": { + "ini": "2.0.0" + }, "engines": { - "node": ">=10.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dev": true, + "peer": true, "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=10.13.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", "dev": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, "engines": { - "node": ">=0.12" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dev": true, - "engines": { - "node": ">=6" + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, - "node_modules/errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "peer": true + }, + "node_modules/gzip-size": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-7.0.0.tgz", + "integrity": "sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==", "dev": true, "dependencies": { - "prr": "~1.0.1" + "duplexer": "^0.1.2" }, - "bin": { - "errno": "cli.js" + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/error-stack-parser-es": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-0.1.1.tgz", - "integrity": "sha512-g/9rfnvnagiNf+DRMHEVGuGuIBlCIMDFoTA616HaP2l9PlCjGjVhD98PNbVSJvmK4TttqT5mV5tInMhoFgi+aA==", + "node_modules/h3": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/h3/-/h3-1.8.2.tgz", + "integrity": "sha512-1Ca0orJJlCaiFY68BvzQtP2lKLk46kcLAxVM8JgYbtm2cUg6IY7pjpYgWMwUvDO9QI30N5JAukOKoT8KD3Q0PQ==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" + "dependencies": { + "cookie-es": "^1.0.0", + "defu": "^6.1.2", + "destr": "^2.0.1", + "iron-webcrypto": "^0.10.1", + "radix3": "^1.1.0", + "ufo": "^1.3.0", + "uncrypto": "^0.1.3", + "unenv": "^1.7.4" } }, - "node_modules/es-module-lexer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.1.tgz", - "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==", + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "peer": true - }, - "node_modules/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==", - "dev": true + "engines": { + "node": ">=8" + } }, - "node_modules/esbuild": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", - "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "node_modules/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" + "dependencies": { + "get-intrinsic": "^1.2.2" }, - "optionalDependencies": { - "@esbuild/android-arm": "0.17.19", - "@esbuild/android-arm64": "0.17.19", - "@esbuild/android-x64": "0.17.19", - "@esbuild/darwin-arm64": "0.17.19", - "@esbuild/darwin-x64": "0.17.19", - "@esbuild/freebsd-arm64": "0.17.19", - "@esbuild/freebsd-x64": "0.17.19", - "@esbuild/linux-arm": "0.17.19", - "@esbuild/linux-arm64": "0.17.19", - "@esbuild/linux-ia32": "0.17.19", - "@esbuild/linux-loong64": "0.17.19", - "@esbuild/linux-mips64el": "0.17.19", - "@esbuild/linux-ppc64": "0.17.19", - "@esbuild/linux-riscv64": "0.17.19", - "@esbuild/linux-s390x": "0.17.19", - "@esbuild/linux-x64": "0.17.19", - "@esbuild/netbsd-x64": "0.17.19", - "@esbuild/openbsd-x64": "0.17.19", - "@esbuild/sunos-x64": "0.17.19", - "@esbuild/win32-arm64": "0.17.19", - "@esbuild/win32-ia32": "0.17.19", - "@esbuild/win32-x64": "0.17.19" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/escape-html": { + "node_modules/has-symbols": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true, "engines": { - "node": ">=12" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz", - "integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==", + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, - "peer": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.2", - "@eslint/js": "8.38.0", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-visitor-keys": "^3.4.0", - "espree": "^9.5.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-sdsl": "^4.1.4", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" + "has-symbols": "^1.0.2" }, - "bin": { - "eslint": "bin/eslint.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "dev": true + }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">= 0.4" } }, - "node_modules/eslint-scope": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", - "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", + "node_modules/hast-util-from-parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", + "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", "dev": true, - "peer": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@types/hast": "^2.0.0", + "@types/unist": "^2.0.0", + "hastscript": "^7.0.0", + "property-information": "^6.0.0", + "vfile": "^5.0.0", + "vfile-location": "^4.0.0", + "web-namespaces": "^2.0.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", - "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==", + "node_modules/hast-util-from-parse5/node_modules/@types/hast": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", + "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", "dev": true, - "peer": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "dependencies": { + "@types/unist": "^2" } }, - "node_modules/eslint-webpack-plugin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-4.0.1.tgz", - "integrity": "sha512-fUFcXpui/FftGx3NzvWgLZXlLbu+m74sUxGEgxgoxYcUtkIQbS6SdNNZkS99m5ycb23TfoNYrDpp1k/CK5j6Hw==", + "node_modules/hast-util-from-parse5/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/hast-util-heading-rank": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-heading-rank/-/hast-util-heading-rank-3.0.0.tgz", + "integrity": "sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==", "dev": true, "dependencies": { - "@types/eslint": "^8.37.0", - "jest-worker": "^29.5.0", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 14.15.0" + "@types/hast": "^3.0.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "eslint": "^8.0.0", - "webpack": "^5.0.0" + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "node_modules/hast-util-is-element": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "@types/hast": "^3.0.0" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "node_modules/hast-util-parse-selector": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", + "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.3" + "@types/hast": "^2.0.0" }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/eslint-webpack-plugin/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint-webpack-plugin/node_modules/jest-worker": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.5.0.tgz", - "integrity": "sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==", + "node_modules/hast-util-parse-selector/node_modules/@types/hast": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", + "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", "dev": true, "dependencies": { - "@types/node": "*", - "jest-util": "^29.5.0", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "@types/unist": "^2" } }, - "node_modules/eslint-webpack-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "node_modules/hast-util-parse-selector/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", "dev": true }, - "node_modules/eslint-webpack-plugin/node_modules/schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "node_modules/hast-util-raw": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.2.3.tgz", + "integrity": "sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" + "@types/hast": "^2.0.0", + "@types/parse5": "^6.0.0", + "hast-util-from-parse5": "^7.0.0", + "hast-util-to-parse5": "^7.0.0", + "html-void-elements": "^2.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0", + "vfile": "^5.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint-webpack-plugin/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/hast-util-raw/node_modules/@types/hast": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", + "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@types/unist": "^2" + } + }, + "node_modules/hast-util-raw/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/hast-util-raw/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dev": true, + "dependencies": { + "@types/unist": "^2.0.0" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/hast-util-raw/node_modules/unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", "dev": true, - "peer": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/chalk": { + "node_modules/hast-util-raw/node_modules/unist-util-visit": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", "dev": true, - "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/hast-util-raw/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", "dev": true, - "peer": true, - "engines": { - "node": ">=10" + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "node_modules/hast-util-to-html": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.0.tgz", + "integrity": "sha512-IVGhNgg7vANuUA2XKrT6sOIIPgaYZnmLx3l/CCOAK0PtgfoHrZwX7jCSYyFxHTrGmC6S9q8aQQekjp4JPZF+cw==", "dev": true, - "peer": true, "dependencies": { - "is-glob": "^4.0.3" + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-raw": "^9.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" }, - "engines": { - "node": ">=10.13.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "node_modules/hast-util-to-html/node_modules/hast-util-from-parse5": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz", + "integrity": "sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==", "dev": true, - "peer": true, "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "hastscript": "^8.0.0", + "property-information": "^6.0.0", + "vfile": "^6.0.0", + "vfile-location": "^5.0.0", + "web-namespaces": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/has-flag": { + "node_modules/hast-util-to-html/node_modules/hast-util-parse-selector": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", "dev": true, - "peer": true, "dependencies": { - "brace-expansion": "^1.1.7" + "@types/hast": "^3.0.0" }, - "engines": { - "node": "*" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/hast-util-to-html/node_modules/hast-util-raw": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.1.tgz", + "integrity": "sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==", "dev": true, - "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-from-parse5": "^8.0.0", + "hast-util-to-parse5": "^8.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "parse5": "^7.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/hast-util-to-html/node_modules/hast-util-to-parse5": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", + "integrity": "sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==", "dev": true, - "peer": true, - "engines": { - "node": ">=10" + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/espree": { - "version": "9.5.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", - "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", + "node_modules/hast-util-to-html/node_modules/hastscript": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", + "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", "dev": true, - "peer": true, "dependencies": { - "acorn": "^8.8.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/hast-util-to-html/node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "node_modules/hast-util-to-html/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", "dev": true, - "peer": true, "dependencies": { - "estraverse": "^5.1.0" + "entities": "^4.4.0" }, - "engines": { - "node": ">=0.10" + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/hast-util-to-html/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", "dev": true, - "peer": true, "dependencies": { - "estraverse": "^5.2.0" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "node_modules/hast-util-to-html/node_modules/vfile-location": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.2.tgz", + "integrity": "sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==", "dev": true, "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" + "@types/unist": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "node_modules/hast-util-to-html/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", "dev": true, - "peer": true, - "engines": { - "node": ">=0.8.x" + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "node_modules/hast-util-to-parse5": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", + "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/exponential-backoff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", - "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", - "dev": true - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/externality": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/externality/-/externality-1.0.2.tgz", - "integrity": "sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==", + "node_modules/hast-util-to-parse5/node_modules/@types/hast": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", + "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", "dev": true, "dependencies": { - "enhanced-resolve": "^5.14.1", - "mlly": "^1.3.0", - "pathe": "^1.1.1", - "ufo": "^1.1.2" + "@types/unist": "^2" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-fifo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", - "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "node_modules/hast-util-to-parse5/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", "dev": true }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "node_modules/hast-util-to-string": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.0.tgz", + "integrity": "sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "@types/hast": "^3.0.0" }, - "engines": { - "node": ">=8.6.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", "dev": true, - "peer": true + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "node_modules/hastscript": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", + "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", "dev": true, - "peer": true + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^3.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/hastscript/node_modules/@types/hast": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", + "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", "dev": true, "dependencies": { - "reusify": "^1.0.4" + "@types/unist": "^2" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "node_modules/hastscript/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/header-case": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", + "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", "dev": true, - "peer": true, "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" + "capital-case": "^1.0.4", + "tslib": "^2.0.3" } }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "node_modules/hookable": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", + "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", "dev": true }, - "node_modules/fill-range": { + "node_modules/hosted-git-info": { "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dev": true, "dependencies": { - "to-regex-range": "^5.0.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": ">=8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, - "peer": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": "14 || >=16.14" + } + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "dev": true, + "engines": { + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "node_modules/html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", "dev": true, - "bin": { - "flat": "cli.js" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, - "peer": true, "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">= 0.8" } }, - "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", - "dev": true - }, - "node_modules/focus-trap": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.3.tgz", - "integrity": "sha512-7UsT/eSJcTPF0aZp73u7hBRTABz26knRRTJfoTGFCQD5mUImLIIOwWWCrtoQdmWa7dykBi6H+Cp5i3S/kvsMeA==", + "node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, "dependencies": { - "tabbable": "^6.2.0" + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "node_modules/http-shutdown": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/http-shutdown/-/http-shutdown-1.2.2.tgz", + "integrity": "sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==", "dev": true, - "dependencies": { - "is-callable": "^1.1.3" + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" } }, - "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" + "agent-base": "^7.0.2", + "debug": "4" }, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 14" } }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } + "node_modules/httpxy": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/httpxy/-/httpxy-0.1.5.tgz", + "integrity": "sha512-hqLDO+rfststuyEUTWObQK6zHEEmZ/kaIP2/zclGGZn6X8h/ESTWg+WKecQ/e5k4nPswjzZD+q2VqZIbr15CoQ==", + "dev": true }, - "node_modules/fraction.js": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.6.tgz", - "integrity": "sha512-n2aZ9tNfYDwaHhvFTkhFErqOMIb8uyzSQ+vGJBjZyanAKZVbGUQ1sngfk9FdkBw7G26O7AgNjLcecLffD1c7eg==", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" + "node": ">=10.17.0" } }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=0.10.0" } }, - "node_modules/fs-extra": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", - "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, "engines": { - "node": ">=14.14" + "node": ">= 4" } }, - "node_modules/fs-minipass": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", - "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "node_modules/ignore-walk": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.3.tgz", + "integrity": "sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==", "dev": true, "dependencies": { - "minipass": "^7.0.3" + "minimatch": "^9.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "node_modules/ignore-walk/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/fuse.js": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-6.6.2.tgz", - "integrity": "sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA==", + "node_modules/image-meta": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/image-meta/-/image-meta-0.1.1.tgz", + "integrity": "sha512-+oXiHwOEPr1IE5zY0tcBLED/CYcre15J4nwL50x3o0jxWqEkyjrusiKP3YSU+tr9fvJp33ZcP5Gpj2295g3aEw==", "dev": true, "engines": { - "node": ">=10" + "node": ">=10.18.0" } }, - "node_modules/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, + "peer": true, "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, "engines": { - "node": ">=6.9.0" + "node": ">=0.8.19" } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=8" } }, - "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/get-port-please": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.1.tgz", - "integrity": "sha512-3UBAyM3u4ZBVYDsxOQfJDxEa6XTbpBDrOjp4mf7ExFRt5BKs/QywQQiJsh2B+hxcZLSapWqCRvElUe8DnKcFHA==", + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", "dev": true, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/giget": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/giget/-/giget-1.1.3.tgz", - "integrity": "sha512-zHuCeqtfgqgDwvXlR84UNgnJDuUHQcNI5OqWqFxxuk2BshuKbYhJWdxBsEo4PvKqoGh23lUAIvBNpChMLv7/9Q==", + "node_modules/ioredis": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.3.2.tgz", + "integrity": "sha512-1DKMMzlIHM02eBBVOFQ1+AolGjs6+xEcM4PDL7NqOS6szq7H9jSaEkIUH6/a5Hl241LzW6JLSiAbNvTQjUupUA==", "dev": true, "dependencies": { - "colorette": "^2.0.20", - "defu": "^6.1.2", - "https-proxy-agent": "^7.0.2", - "mri": "^1.2.0", - "node-fetch-native": "^1.4.0", - "pathe": "^1.1.1", - "tar": "^6.2.0" + "@ioredis/commands": "^1.1.1", + "cluster-key-slot": "^1.1.0", + "debug": "^4.3.4", + "denque": "^2.1.0", + "lodash.defaults": "^4.2.0", + "lodash.isarguments": "^3.1.0", + "redis-errors": "^1.2.0", + "redis-parser": "^3.0.0", + "standard-as-callback": "^2.1.0" }, - "bin": { - "giget": "dist/cli.mjs" + "engines": { + "node": ">=12.22.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ioredis" } }, - "node_modules/git-config-path": { + "node_modules/ip": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/git-config-path/-/git-config-path-2.0.0.tgz", - "integrity": "sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA==", - "dev": true, - "engines": { - "node": ">=4" - } + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true }, - "node_modules/git-up": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz", - "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==", + "node_modules/iron-webcrypto": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-0.10.1.tgz", + "integrity": "sha512-QGOS8MRMnj/UiOa+aMIgfyHcvkhqNUsUxb1XzskENvbo+rEfp6TOwqd1KPuDzXC4OnGHcMSVxDGRoilqB8ViqA==", "dev": true, - "dependencies": { - "is-ssh": "^1.4.0", - "parse-url": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/brc-dd" } }, - "node_modules/git-url-parse": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-13.1.0.tgz", - "integrity": "sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA==", + "node_modules/is-absolute-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz", + "integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==", "dev": true, - "dependencies": { - "git-up": "^7.0.0" + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/github-slugger": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", - "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", - "dev": true - }, - "node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "node_modules/is-alphabetical": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", + "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/is-alphanumerical": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", + "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "is-alphabetical": "^2.0.0", + "is-decimal": "^2.0.0" }, - "engines": { - "node": ">= 6" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true, - "peer": true - }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", "dev": true, "dependencies": { - "ini": "2.0.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/global-dirs/node_modules/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "engines": { "node": ">=4" } }, - "node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", "dev": true, "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" + "builtin-modules": "^3.3.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "node_modules/is-decimal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", + "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", "dev": true, - "peer": true + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "node_modules/gzip-size": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-7.0.0.tgz", - "integrity": "sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==", + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true, - "dependencies": { - "duplexer": "^0.1.2" + "bin": { + "is-docker": "cli.js" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/h3": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/h3/-/h3-1.8.2.tgz", - "integrity": "sha512-1Ca0orJJlCaiFY68BvzQtP2lKLk46kcLAxVM8JgYbtm2cUg6IY7pjpYgWMwUvDO9QI30N5JAukOKoT8KD3Q0PQ==", - "dev": true, - "dependencies": { - "cookie-es": "^1.0.0", - "defu": "^6.1.2", - "destr": "^2.0.1", - "iron-webcrypto": "^0.10.1", - "radix3": "^1.1.0", - "ufo": "^1.3.0", - "uncrypto": "^0.1.3", - "unenv": "^1.7.4" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, "engines": { - "node": ">= 0.4.0" + "node": ">=0.10.0" } }, - "node_modules/has-flag": { + "node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.1" + "has-tostringtag": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, "engines": { "node": ">= 0.4" }, @@ -8897,2129 +8587,2545 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/has-unicode": { + "node_modules/is-hexadecimal": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true - }, - "node_modules/hash-sum": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", - "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", - "dev": true - }, - "node_modules/hast-util-from-parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", - "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", + "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", "dev": true, - "dependencies": { - "@types/hast": "^2.0.0", - "@types/unist": "^2.0.0", - "hastscript": "^7.0.0", - "property-information": "^6.0.0", - "vfile": "^5.0.0", - "vfile-location": "^4.0.0", - "web-namespaces": "^2.0.0" - }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-from-parse5/node_modules/@types/hast": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.6.tgz", - "integrity": "sha512-47rJE80oqPmFdVDCD7IheXBrVdwuBgsYwoczFvKmwfo2Mzsnt+V9OONsYauFmICb6lQPpCuXYJWejBNs4pDJRg==", - "dev": true, - "dependencies": { - "@types/unist": "^2" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/hast-util-heading-rank": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-heading-rank/-/hast-util-heading-rank-3.0.0.tgz", - "integrity": "sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==", + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", "dev": true, "dependencies": { - "@types/hast": "^3.0.0" + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hast-util-is-element": { + "node_modules/is-inside-container/node_modules/is-docker": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", - "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hast-util-parse-selector": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", - "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", "dev": true, "dependencies": { - "@types/hast": "^2.0.0" + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hast-util-parse-selector/node_modules/@types/hast": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.6.tgz", - "integrity": "sha512-47rJE80oqPmFdVDCD7IheXBrVdwuBgsYwoczFvKmwfo2Mzsnt+V9OONsYauFmICb6lQPpCuXYJWejBNs4pDJRg==", - "dev": true, - "dependencies": { - "@types/unist": "^2" - } + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true }, - "node_modules/hast-util-raw": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.2.3.tgz", - "integrity": "sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg==", + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, + "node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", "dev": true, "dependencies": { - "@types/hast": "^2.0.0", - "@types/parse5": "^6.0.0", - "hast-util-from-parse5": "^7.0.0", - "hast-util-to-parse5": "^7.0.0", - "html-void-elements": "^2.0.0", - "parse5": "^6.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^4.0.0", - "vfile": "^5.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hast-util-raw/node_modules/@types/hast": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.6.tgz", - "integrity": "sha512-47rJE80oqPmFdVDCD7IheXBrVdwuBgsYwoczFvKmwfo2Mzsnt+V9OONsYauFmICb6lQPpCuXYJWejBNs4pDJRg==", + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "dependencies": { - "@types/unist": "^2" + "engines": { + "node": ">=0.12.0" } }, - "node_modules/hast-util-raw/node_modules/unist-util-position": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", - "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, - "dependencies": { - "@types/unist": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=8" } }, - "node_modules/hast-util-to-html": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.0.tgz", - "integrity": "sha512-IVGhNgg7vANuUA2XKrT6sOIIPgaYZnmLx3l/CCOAK0PtgfoHrZwX7jCSYyFxHTrGmC6S9q8aQQekjp4JPZF+cw==", + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "ccount": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-raw": "^9.0.0", - "hast-util-whitespace": "^3.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "stringify-entities": "^4.0.0", - "zwitch": "^2.0.4" + "engines": { + "node": ">=12" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hast-util-to-html/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/hast-util-to-html/node_modules/hast-util-from-parse5": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz", - "integrity": "sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==", + "node_modules/is-primitive": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-3.0.1.tgz", + "integrity": "sha512-GljRxhWvlCNRfZyORiH77FwdFwGcMO620o37EOYC0ORWdq+WYNVqW0w2Juzew4M+L81l6/QS3t5gkkihyRqv9w==", "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "devlop": "^1.0.0", - "hastscript": "^8.0.0", - "property-information": "^6.0.0", - "vfile": "^6.0.0", - "vfile-location": "^5.0.0", - "web-namespaces": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/hast-util-to-html/node_modules/hast-util-parse-selector": { + "node_modules/is-promise": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", - "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", + "dev": true + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", "dev": true, "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "@types/estree": "*" } }, - "node_modules/hast-util-to-html/node_modules/hast-util-raw": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.1.tgz", - "integrity": "sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==", + "node_modules/is-ssh": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz", + "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==", "dev": true, "dependencies": { - "@types/hast": "^3.0.0", - "@types/unist": "^3.0.0", - "@ungap/structured-clone": "^1.0.0", - "hast-util-from-parse5": "^8.0.0", - "hast-util-to-parse5": "^8.0.0", - "html-void-elements": "^3.0.0", - "mdast-util-to-hast": "^13.0.0", - "parse5": "^7.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0", - "vfile": "^6.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "protocols": "^2.0.1" } }, - "node_modules/hast-util-to-html/node_modules/hast-util-to-parse5": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", - "integrity": "sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "devlop": "^1.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" + "engines": { + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hast-util-to-html/node_modules/hastscript": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", - "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", "dev": true, "dependencies": { - "@types/hast": "^3.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^4.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0" + "which-typed-array": "^1.1.11" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hast-util-to-html/node_modules/html-void-elements": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", - "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/hast-util-to-html/node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", "dev": true, "dependencies": { - "entities": "^4.4.0" + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" }, "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/hast-util-to-html/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/hast-util-to-html/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/hast-util-to-html/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/hast-util-to-html/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "bin": { + "jiti": "bin/jiti.js" } }, - "node_modules/hast-util-to-html/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", - "vfile-message": "^4.0.0" + "argparse": "^2.0.1" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/hast-util-to-html/node_modules/vfile-location": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.2.tgz", - "integrity": "sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==", + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "vfile": "^6.0.0" + "bin": { + "jsesc": "bin/jsesc" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=4" } }, - "node_modules/hast-util-to-html/node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" + "peer": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", + "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "peer": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=6" } }, - "node_modules/hast-util-to-parse5": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", - "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0", - "web-namespaces": "^2.0.0", - "zwitch": "^2.0.0" + "universalify": "^2.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/hast-util-to-parse5/node_modules/@types/hast": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.6.tgz", - "integrity": "sha512-47rJE80oqPmFdVDCD7IheXBrVdwuBgsYwoczFvKmwfo2Mzsnt+V9OONsYauFmICb6lQPpCuXYJWejBNs4pDJRg==", + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, + "peer": true, "dependencies": { - "@types/unist": "^2" + "json-buffer": "3.0.1" } }, - "node_modules/hast-util-to-string": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.0.tgz", - "integrity": "sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==", + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=6" } }, - "node_modules/hast-util-whitespace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", - "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", "dev": true, - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">= 8" + } + }, + "node_modules/knitwork": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/knitwork/-/knitwork-1.0.0.tgz", + "integrity": "sha512-dWl0Dbjm6Xm+kDxhPQJsCBTxrJzuGl0aP9rhr+TG8D3l+GL90N8O8lYUi7dTSAN2uuDqCtNgb6aEuQH5wsiV8Q==", + "dev": true + }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "dev": true + }, + "node_modules/launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dev": true, + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" } }, - "node_modules/hastscript": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", - "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", + "node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "dev": true, "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^2.0.0", - "hast-util-parse-selector": "^3.0.0", - "property-information": "^6.0.0", - "space-separated-tokens": "^2.0.0" + "readable-stream": "^2.0.5" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">= 0.6.3" } }, - "node_modules/hastscript/node_modules/@types/hast": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.6.tgz", - "integrity": "sha512-47rJE80oqPmFdVDCD7IheXBrVdwuBgsYwoczFvKmwfo2Mzsnt+V9OONsYauFmICb6lQPpCuXYJWejBNs4pDJRg==", + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "dependencies": { - "@types/unist": "^2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" - } + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, - "node_modules/header-case": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", - "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "dependencies": { - "capital-case": "^1.0.4", - "tslib": "^2.0.3" + "safe-buffer": "~5.1.0" } }, - "node_modules/hookable": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", - "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", - "dev": true - }, - "node_modules/hosted-git-info": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", - "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, + "peer": true, "dependencies": { - "lru-cache": "^10.0.1" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 0.8.0" } }, - "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", - "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", "dev": true, "engines": { - "node": "14 || >=16.14" + "node": ">=10" } }, - "node_modules/html-tags": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", - "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "node_modules/listhen": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.5.5.tgz", + "integrity": "sha512-LXe8Xlyh3gnxdv4tSjTjscD1vpr/2PRpzq8YIaMJgyKzRG8wdISlWVWnGThJfHnlJ6hmLt2wq1yeeix0TEbuoA==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "@parcel/watcher": "^2.3.0", + "@parcel/watcher-wasm": "2.3.0", + "citty": "^0.1.4", + "clipboardy": "^3.0.0", + "consola": "^3.2.3", + "defu": "^6.1.2", + "get-port-please": "^3.1.1", + "h3": "^1.8.1", + "http-shutdown": "^1.2.2", + "jiti": "^1.20.0", + "mlly": "^1.4.2", + "node-forge": "^1.3.1", + "pathe": "^1.1.1", + "std-env": "^3.4.3", + "ufo": "^1.3.0", + "untun": "^0.1.2", + "uqr": "^0.1.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "listen": "bin/listhen.mjs", + "listhen": "bin/listhen.mjs" } }, - "node_modules/html-void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", - "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "peer": true, + "engines": { + "node": ">=6.11.5" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "node_modules/local-pkg": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", + "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", "dev": true, "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" }, "engines": { - "node": ">= 0.8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, + "peer": true, "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "p-locate": "^5.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/http-proxy-agent/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "dev": true + }, + "node_modules/lodash.isarguments": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", + "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } + "peer": true }, - "node_modules/http-shutdown": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/http-shutdown/-/http-shutdown-1.2.2.tgz", - "integrity": "sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==", + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==", + "dev": true + }, + "node_modules/lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" + "dependencies": { + "lodash._reinterpolate": "^3.0.0", + "lodash.templatesettings": "^4.0.0" } }, - "node_modules/https-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", - "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "node_modules/lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", "dev": true, "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "engines": { - "node": ">= 14" + "lodash._reinterpolate": "^3.0.0" } }, - "node_modules/httpxy": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/httpxy/-/httpxy-0.1.5.tgz", - "integrity": "sha512-hqLDO+rfststuyEUTWObQK6zHEEmZ/kaIP2/zclGGZn6X8h/ESTWg+WKecQ/e5k4nPswjzZD+q2VqZIbr15CoQ==", + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", "dev": true }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", "dev": true, - "engines": { - "node": ">=10.17.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", "dev": true, "dependencies": { - "ms": "^2.0.0" + "tslib": "^2.0.3" } }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, - "optional": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true, - "engines": { - "node": ">= 4" + "yallist": "^3.0.2" } }, - "node_modules/ignore-walk": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.3.tgz", - "integrity": "sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==", + "node_modules/magic-string": { + "version": "0.30.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", "dev": true, "dependencies": { - "minimatch": "^9.0.0" + "@jridgewell/sourcemap-codec": "^1.4.15" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=12" } }, - "node_modules/ignore-walk/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/magic-string-ast": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/magic-string-ast/-/magic-string-ast-0.3.0.tgz", + "integrity": "sha512-0shqecEPgdFpnI3AP90epXyxZy9g6CRZ+SZ7BcqFwYmtFEnZ1jpevcV5HoyVnlDS9gCnc1UIg3Rsvp3Ci7r8OA==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "magic-string": "^0.30.2" }, "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=16.14.0" } }, - "node_modules/image-meta": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/image-meta/-/image-meta-0.1.1.tgz", - "integrity": "sha512-+oXiHwOEPr1IE5zY0tcBLED/CYcre15J4nwL50x3o0jxWqEkyjrusiKP3YSU+tr9fvJp33ZcP5Gpj2295g3aEw==", + "node_modules/magicast": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.0.tgz", + "integrity": "sha512-ZsEzw35h7xYoFlWHIyxU6zmH4sdwzdmY0DY4s/Lie/qKimeijz2jRw8/OV2248kt/y6FbvoTvGRKyB7y/Mpx8w==", "dev": true, - "engines": { - "node": ">=10.18.0" + "dependencies": { + "@babel/parser": "^7.22.16", + "@babel/types": "^7.22.19", + "source-map-js": "^1.0.2" } }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, - "peer": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "semver": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "engines": { - "node": ">=0.8.19" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "node_modules/make-fetch-happen": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", "dev": true, + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, "engines": { - "node": ">=8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "node_modules/markdown-table": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", + "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "node_modules/ioredis": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.3.2.tgz", - "integrity": "sha512-1DKMMzlIHM02eBBVOFQ1+AolGjs6+xEcM4PDL7NqOS6szq7H9jSaEkIUH6/a5Hl241LzW6JLSiAbNvTQjUupUA==", + "node_modules/mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", "dev": true, "dependencies": { - "@ioredis/commands": "^1.1.1", - "cluster-key-slot": "^1.1.0", - "debug": "^4.3.4", - "denque": "^2.1.0", - "lodash.defaults": "^4.2.0", - "lodash.isarguments": "^3.1.0", - "redis-errors": "^1.2.0", - "redis-parser": "^3.0.0", - "standard-as-callback": "^2.1.0" - }, - "engines": { - "node": ">=12.22.0" + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/ioredis" + "url": "https://opencollective.com/unified" } }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "node_modules/iron-webcrypto": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-0.10.1.tgz", - "integrity": "sha512-QGOS8MRMnj/UiOa+aMIgfyHcvkhqNUsUxb1XzskENvbo+rEfp6TOwqd1KPuDzXC4OnGHcMSVxDGRoilqB8ViqA==", + "node_modules/mdast-util-definitions/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, - "funding": { - "url": "https://github.com/sponsors/brc-dd" + "dependencies": { + "@types/unist": "^2" } }, - "node_modules/is-absolute-url": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz", - "integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/mdast-util-definitions/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true }, - "node_modules/is-alphabetical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", - "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", + "node_modules/mdast-util-definitions/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", "dev": true, + "dependencies": { + "@types/unist": "^2.0.0" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-alphanumerical": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", - "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", + "node_modules/mdast-util-definitions/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", "dev": true, "dependencies": { - "is-alphabetical": "^2.0.0", - "is-decimal": "^2.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", + "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", "dev": true, "dependencies": { - "binary-extensions": "^2.0.0" + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "engines": { - "node": ">=4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-builtin-module": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", - "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "node_modules/mdast-util-from-markdown": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz", + "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==", "dev": true, "dependencies": { - "builtin-modules": "^3.3.0" - }, - "engines": { - "node": ">=6" + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "mdast-util-to-string": "^3.1.0", + "micromark": "^3.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-decode-string": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "unist-util-stringify-position": "^3.0.0", + "uvu": "^0.5.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "node_modules/mdast-util-from-markdown/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "@types/unist": "^2" } }, - "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "node_modules/mdast-util-from-markdown/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/mdast-util-from-markdown/node_modules/mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", "dev": true, "dependencies": { - "has": "^1.0.3" + "@types/mdast": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-decimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", - "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", + "node_modules/mdast-util-from-markdown/node_modules/micromark": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", + "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "micromark-core-commonmark": "^1.0.1", + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-combine-extensions": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-sanitize-uri": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" } }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-core-commonmark": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz", + "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==", "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-factory-destination": "^1.0.0", + "micromark-factory-label": "^1.0.0", + "micromark-factory-space": "^1.0.0", + "micromark-factory-title": "^1.0.0", + "micromark-factory-whitespace": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-classify-character": "^1.0.0", + "micromark-util-html-tag-name": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-factory-destination": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz", + "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==", "dev": true, - "engines": { - "node": ">=0.10.0" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-factory-label": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz", + "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==", "dev": true, - "engines": { - "node": ">=8" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" } }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-factory-space": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-factory-title": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz", + "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-hexadecimal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", - "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-factory-whitespace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz", + "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-inside-container": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", - "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "is-docker": "^3.0.0" - }, - "bin": { - "is-inside-container": "cli.js" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-inside-container/node_modules/is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-chunked": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-classify-character": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", + "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true - }, - "node_modules/is-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", - "dev": true - }, - "node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-combine-extensions": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz", + "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "micromark-util-chunked": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-decode-numeric-character-reference": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz", + "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==", "dev": true, - "engines": { - "node": ">=0.12.0" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", "dev": true, - "engines": { - "node": ">=8" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-html-tag-name": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz", + "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==", "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-normalize-identifier": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", + "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", "dev": true, - "engines": { - "node": ">=0.10.0" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/is-primitive": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-3.0.1.tgz", - "integrity": "sha512-GljRxhWvlCNRfZyORiH77FwdFwGcMO620o37EOYC0ORWdq+WYNVqW0w2Juzew4M+L81l6/QS3t5gkkihyRqv9w==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-resolve-all": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", + "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", "dev": true, - "engines": { - "node": ">=0.10.0" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^1.0.0" } }, - "node_modules/is-promise": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", - "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", - "dev": true - }, - "node_modules/is-reference": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", - "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-sanitize-uri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/estree": "*" + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/is-ssh": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz", - "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-subtokenize": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz", + "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "protocols": "^2.0.1" + "micromark-util-chunked": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" } }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/mdast-util-from-markdown/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" + "@types/unist": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "node_modules/mdast-util-gfm": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz", + "integrity": "sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==", "dev": true, "dependencies": { - "is-docker": "^2.0.0" + "mdast-util-from-markdown": "^1.0.0", + "mdast-util-gfm-autolink-literal": "^1.0.0", + "mdast-util-gfm-footnote": "^1.0.0", + "mdast-util-gfm-strikethrough": "^1.0.0", + "mdast-util-gfm-table": "^1.0.0", + "mdast-util-gfm-task-list-item": "^1.0.0", + "mdast-util-to-markdown": "^1.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz", + "integrity": "sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==", "dev": true, "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" + "@types/mdast": "^3.0.0", + "ccount": "^2.0.0", + "mdast-util-find-and-replace": "^2.0.0", + "micromark-util-character": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jest-util": { - "version": "29.5.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz", - "integrity": "sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==", + "node_modules/mdast-util-gfm-autolink-literal/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, "dependencies": { - "@jest/types": "^29.5.0", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "@types/unist": "^2" } }, - "node_modules/jest-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/mdast-util-gfm-autolink-literal/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/mdast-util-gfm-autolink-literal/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/jest-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/mdast-util-gfm-autolink-literal/node_modules/mdast-util-find-and-replace": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz", + "integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@types/mdast": "^3.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, - "peer": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, - "peer": true, - "engines": { - "node": ">=8" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/mdast-util-gfm-autolink-literal/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", "dev": true, - "peer": true, "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@types/unist": "^2.0.0" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/jiti": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.20.0.tgz", - "integrity": "sha512-3TV69ZbrvV6U5DfQimop50jE9Dl6J8O1ja1dvBbMba/sZ3YBEQqJ2VZRoQPVnhlzjNtU1vaXRZVrVjU4qtm8yA==", - "dev": true, - "bin": { - "jiti": "bin/jiti.js" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/js-sdsl": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", - "integrity": "sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==", + "node_modules/mdast-util-gfm-autolink-literal/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", "dev": true, - "peer": true, + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/js-sdsl" + "url": "https://opencollective.com/unified" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/mdast-util-gfm-footnote": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz", + "integrity": "sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==", "dev": true, "dependencies": { - "argparse": "^2.0.1" + "@types/mdast": "^3.0.0", + "mdast-util-to-markdown": "^1.3.0", + "micromark-util-normalize-identifier": "^1.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/mdast-util-gfm-footnote/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" + "dependencies": { + "@types/unist": "^2" } }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, - "peer": true + "node_modules/mdast-util-gfm-footnote/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "node_modules/mdast-util-gfm-footnote/node_modules/micromark-util-normalize-identifier": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", + "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", "dev": true, - "peer": true + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "node_modules/mdast-util-gfm-footnote/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, - "peer": true + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "node_modules/mdast-util-gfm-strikethrough": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz", + "integrity": "sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==", "dev": true, - "bin": { - "json5": "lib/cli.js" + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-markdown": "^1.3.0" }, - "engines": { - "node": ">=6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "node_modules/mdast-util-gfm-strikethrough/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "@types/unist": "^2" } }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true, - "engines": [ - "node >= 0.2.0" - ] + "node_modules/mdast-util-gfm-strikethrough/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "node_modules/mdast-util-gfm-table": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz", + "integrity": "sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==", "dev": true, - "engines": { - "node": ">=6" + "dependencies": { + "@types/mdast": "^3.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^1.0.0", + "mdast-util-to-markdown": "^1.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "node_modules/mdast-util-gfm-table/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, - "engines": { - "node": ">= 8" + "dependencies": { + "@types/unist": "^2" } }, - "node_modules/knitwork": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/knitwork/-/knitwork-1.0.0.tgz", - "integrity": "sha512-dWl0Dbjm6Xm+kDxhPQJsCBTxrJzuGl0aP9rhr+TG8D3l+GL90N8O8lYUi7dTSAN2uuDqCtNgb6aEuQH5wsiV8Q==", - "dev": true - }, - "node_modules/kolorist": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", - "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "node_modules/mdast-util-gfm-table/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", "dev": true }, - "node_modules/launch-editor": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", - "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "node_modules/mdast-util-gfm-task-list-item": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz", + "integrity": "sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==", "dev": true, "dependencies": { - "picocolors": "^1.0.0", - "shell-quote": "^1.8.1" + "@types/mdast": "^3.0.0", + "mdast-util-to-markdown": "^1.3.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lazystream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", - "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "node_modules/mdast-util-gfm-task-list-item/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, "dependencies": { - "readable-stream": "^2.0.5" - }, - "engines": { - "node": ">= 0.6.3" + "@types/unist": "^2" } }, - "node_modules/lazystream/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "node_modules/mdast-util-gfm-task-list-item/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/mdast-util-phrasing": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz", + "integrity": "sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==", "dev": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "@types/mdast": "^3.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lazystream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/lazystream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "node_modules/mdast-util-phrasing/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, "dependencies": { - "safe-buffer": "~5.1.0" + "@types/unist": "^2" } }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/mdast-util-phrasing/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/mdast-util-phrasing/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", "dev": true, - "peer": true, "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "@types/unist": "^2.0.0" }, - "engines": { - "node": ">= 0.8.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "node_modules/mdast-util-to-hast": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.0.2.tgz", + "integrity": "sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/listhen": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.5.5.tgz", - "integrity": "sha512-LXe8Xlyh3gnxdv4tSjTjscD1vpr/2PRpzq8YIaMJgyKzRG8wdISlWVWnGThJfHnlJ6hmLt2wq1yeeix0TEbuoA==", + "node_modules/mdast-util-to-markdown": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz", + "integrity": "sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==", "dev": true, "dependencies": { - "@parcel/watcher": "^2.3.0", - "@parcel/watcher-wasm": "2.3.0", - "citty": "^0.1.4", - "clipboardy": "^3.0.0", - "consola": "^3.2.3", - "defu": "^6.1.2", - "get-port-please": "^3.1.1", - "h3": "^1.8.1", - "http-shutdown": "^1.2.2", - "jiti": "^1.20.0", - "mlly": "^1.4.2", - "node-forge": "^1.3.1", - "pathe": "^1.1.1", - "std-env": "^3.4.3", - "ufo": "^1.3.0", - "untun": "^0.1.2", - "uqr": "^0.1.2" + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^3.0.0", + "mdast-util-to-string": "^3.0.0", + "micromark-util-decode-string": "^1.0.0", + "unist-util-visit": "^4.0.0", + "zwitch": "^2.0.0" }, - "bin": { - "listen": "bin/listhen.mjs", - "listhen": "bin/listhen.mjs" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/listhen/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "node_modules/mdast-util-to-markdown/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" + "dependencies": { + "@types/unist": "^2" } }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=6.11.5" - } + "node_modules/mdast-util-to-markdown/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true }, - "node_modules/local-pkg": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz", - "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==", + "node_modules/mdast-util-to-markdown/node_modules/mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", "dev": true, - "engines": { - "node": ">=14" + "dependencies": { + "@types/mdast": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/antfu" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/mdast-util-to-markdown/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", "dev": true, - "peer": true, "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" + "@types/unist": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", - "dev": true - }, - "node_modules/lodash.isarguments": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==", - "dev": true - }, - "node_modules/lodash.memoize": { + "node_modules/mdast-util-to-markdown/node_modules/unist-util-visit": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", "dev": true, - "peer": true - }, - "node_modules/lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==", - "dev": true + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "node_modules/mdast-util-to-markdown/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", "dev": true, "dependencies": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lodash.templatesettings": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", "dev": true, "dependencies": { - "lodash._reinterpolate": "^3.0.0" + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", "dev": true }, - "node_modules/longest-streak": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", - "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==", + "dev": true + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">= 8" } }, - "node_modules/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "tslib": "^2.0.3" + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "node_modules/micromark-core-commonmark": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.0.tgz", + "integrity": "sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "yallist": "^3.0.2" + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/magic-string": { - "version": "0.30.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", - "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", + "node_modules/micromark-extension-gfm": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-2.0.3.tgz", + "integrity": "sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ==", "dev": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" + "micromark-extension-gfm-autolink-literal": "^1.0.0", + "micromark-extension-gfm-footnote": "^1.0.0", + "micromark-extension-gfm-strikethrough": "^1.0.0", + "micromark-extension-gfm-table": "^1.0.0", + "micromark-extension-gfm-tagfilter": "^1.0.0", + "micromark-extension-gfm-task-list-item": "^1.0.0", + "micromark-util-combine-extensions": "^1.0.0", + "micromark-util-types": "^1.0.0" }, - "engines": { - "node": ">=12" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/magic-string-ast": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/magic-string-ast/-/magic-string-ast-0.3.0.tgz", - "integrity": "sha512-0shqecEPgdFpnI3AP90epXyxZy9g6CRZ+SZ7BcqFwYmtFEnZ1jpevcV5HoyVnlDS9gCnc1UIg3Rsvp3Ci7r8OA==", + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.5.tgz", + "integrity": "sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg==", "dev": true, "dependencies": { - "magic-string": "^0.30.2" + "micromark-util-character": "^1.0.0", + "micromark-util-sanitize-uri": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" }, - "engines": { - "node": ">=16.14.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/magicast": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.0.tgz", - "integrity": "sha512-ZsEzw35h7xYoFlWHIyxU6zmH4sdwzdmY0DY4s/Lie/qKimeijz2jRw8/OV2248kt/y6FbvoTvGRKyB7y/Mpx8w==", + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@babel/parser": "^7.22.16", - "@babel/types": "^7.22.19", - "source-map-js": "^1.0.2" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-sanitize-uri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, - "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", - "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^10.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/make-fetch-happen/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/make-fetch-happen/node_modules/cacache": { - "version": "17.1.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.4.tgz", - "integrity": "sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==", + "node_modules/micromark-extension-gfm-footnote": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.2.tgz", + "integrity": "sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q==", "dev": true, "dependencies": { - "@npmcli/fs": "^3.1.0", - "fs-minipass": "^3.0.0", - "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^7.0.3", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "p-map": "^4.0.0", - "ssri": "^10.0.0", - "tar": "^6.1.11", - "unique-filename": "^3.0.0" + "micromark-core-commonmark": "^1.0.0", + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-sanitize-uri": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/make-fetch-happen/node_modules/cacache/node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-core-commonmark": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz", + "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==", "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-factory-destination": "^1.0.0", + "micromark-factory-label": "^1.0.0", + "micromark-factory-space": "^1.0.0", + "micromark-factory-title": "^1.0.0", + "micromark-factory-whitespace": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-classify-character": "^1.0.0", + "micromark-util-html-tag-name": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" } }, - "node_modules/make-fetch-happen/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-factory-destination": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz", + "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/make-fetch-happen/node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-factory-label": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz", + "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" } }, - "node_modules/make-fetch-happen/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-factory-space": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "micromark-util-character": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/make-fetch-happen/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-factory-title": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz", + "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==", "dev": true, - "engines": { - "node": ">=8" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/markdown-table": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", - "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-factory-whitespace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz", + "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==", "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-definitions": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", - "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "unist-util-visit": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-find-and-replace": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz", - "integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-chunked": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "escape-string-regexp": "^5.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/mdast-util-from-markdown": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz", - "integrity": "sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-classify-character": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", + "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "decode-named-character-reference": "^1.0.0", - "mdast-util-to-string": "^3.1.0", - "micromark": "^3.0.0", - "micromark-util-decode-numeric-character-reference": "^1.0.0", - "micromark-util-decode-string": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "unist-util-stringify-position": "^3.0.0", - "uvu": "^0.5.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-gfm": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz", - "integrity": "sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", "dev": true, - "dependencies": { - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-gfm-autolink-literal": "^1.0.0", - "mdast-util-gfm-footnote": "^1.0.0", - "mdast-util-gfm-strikethrough": "^1.0.0", - "mdast-util-gfm-table": "^1.0.0", - "mdast-util-gfm-task-list-item": "^1.0.0", - "mdast-util-to-markdown": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-html-tag-name": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz", + "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-normalize-identifier": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", + "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/mdast-util-gfm-autolink-literal": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz", - "integrity": "sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-resolve-all": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", + "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "ccount": "^2.0.0", - "mdast-util-find-and-replace": "^2.0.0", - "micromark-util-character": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-gfm-footnote": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz", - "integrity": "sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-sanitize-uri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0", - "micromark-util-normalize-identifier": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/mdast-util-gfm-strikethrough": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz", - "integrity": "sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==", + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-subtokenize": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz", + "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-chunked": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" } }, - "node_modules/mdast-util-gfm-table": { + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-extension-gfm-strikethrough": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz", - "integrity": "sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz", + "integrity": "sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==", "dev": true, "dependencies": { - "@types/mdast": "^3.0.0", - "markdown-table": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "mdast-util-to-markdown": "^1.3.0" + "micromark-util-chunked": "^1.0.0", + "micromark-util-classify-character": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-gfm-task-list-item": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz", - "integrity": "sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==", + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-to-markdown": "^1.3.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-phrasing": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz", - "integrity": "sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==", + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-chunked": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^3.0.0", - "unist-util-is": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/mdast-util-to-hast": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.0.2.tgz", - "integrity": "sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==", + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-classify-character": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", + "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/hast": "^3.0.0", - "@types/mdast": "^4.0.0", - "@ungap/structured-clone": "^1.0.0", - "devlop": "^1.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "trim-lines": "^3.0.0", - "unist-util-position": "^5.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-to-hast/node_modules/@types/mdast": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.1.tgz", - "integrity": "sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==", + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-resolve-all": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", + "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/unist": "*" + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-to-hast/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, "funding": [ { @@ -11030,16 +11136,29 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], + ] + }, + "node_modules/micromark-extension-gfm-table": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.7.tgz", + "integrity": "sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw==", + "dev": true, "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", - "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "node_modules/micromark-extension-gfm-table/node_modules/micromark-factory-space": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", "dev": true, "funding": [ { @@ -11050,12 +11169,16 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ] + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-types": "^1.0.0" + } }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-sanitize-uri": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", - "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, "funding": [ { @@ -11068,15 +11191,14 @@ } ], "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-symbol": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", - "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, "funding": [ { @@ -11089,10 +11211,10 @@ } ] }, - "node_modules/mdast-util-to-hast/node_modules/micromark-util-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", - "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, "funding": [ { @@ -11105,155 +11227,56 @@ } ] }, - "node_modules/mdast-util-to-hast/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/mdast-util-to-hast/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz", + "integrity": "sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" + "micromark-util-types": "^1.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdast-util-to-markdown": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz", - "integrity": "sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==", + "node_modules/micromark-extension-gfm-tagfilter/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, - "dependencies": { - "@types/mdast": "^3.0.0", - "@types/unist": "^2.0.0", - "longest-streak": "^3.0.0", - "mdast-util-phrasing": "^3.0.0", - "mdast-util-to-string": "^3.0.0", - "micromark-util-decode-string": "^1.0.0", - "unist-util-visit": "^4.0.0", - "zwitch": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/mdast-util-to-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", - "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.5.tgz", + "integrity": "sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ==", "dev": true, "dependencies": { - "@types/mdast": "^3.0.0" + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/mdn-data": { - "version": "2.0.30", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", - "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", - "dev": true - }, - "node_modules/mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==", - "dev": true - }, - "node_modules/memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "dependencies": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - }, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - } - }, - "node_modules/memory-fs/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/memory-fs/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/memory-fs/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromark": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz", - "integrity": "sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==", + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-factory-space": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", "dev": true, "funding": [ { @@ -11266,29 +11289,14 @@ } ], "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "micromark-core-commonmark": "^1.0.1", - "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", - "micromark-util-chunked": "^1.0.0", - "micromark-util-combine-extensions": "^1.0.0", - "micromark-util-decode-numeric-character-reference": "^1.0.0", - "micromark-util-encode": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", - "micromark-util-resolve-all": "^1.0.0", - "micromark-util-sanitize-uri": "^1.0.0", - "micromark-util-subtokenize": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.1", - "uvu": "^0.5.0" + "micromark-util-types": "^1.0.0" } }, - "node_modules/micromark-core-commonmark": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz", - "integrity": "sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==", + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, "funding": [ { @@ -11301,150 +11309,117 @@ } ], "dependencies": { - "decode-named-character-reference": "^1.0.0", - "micromark-factory-destination": "^1.0.0", - "micromark-factory-label": "^1.0.0", - "micromark-factory-space": "^1.0.0", - "micromark-factory-title": "^1.0.0", - "micromark-factory-whitespace": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-chunked": "^1.0.0", - "micromark-util-classify-character": "^1.0.0", - "micromark-util-html-tag-name": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", - "micromark-util-resolve-all": "^1.0.0", - "micromark-util-subtokenize": "^1.0.0", "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.1", - "uvu": "^0.5.0" - } - }, - "node_modules/micromark-extension-gfm": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-2.0.1.tgz", - "integrity": "sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA==", - "dev": true, - "dependencies": { - "micromark-extension-gfm-autolink-literal": "^1.0.0", - "micromark-extension-gfm-footnote": "^1.0.0", - "micromark-extension-gfm-strikethrough": "^1.0.0", - "micromark-extension-gfm-table": "^1.0.0", - "micromark-extension-gfm-tagfilter": "^1.0.0", - "micromark-extension-gfm-task-list-item": "^1.0.0", - "micromark-util-combine-extensions": "^1.0.0", "micromark-util-types": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" } }, - "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.3.tgz", - "integrity": "sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==", + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, - "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-sanitize-uri": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/micromark-extension-gfm-footnote": { + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-types": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.0.tgz", - "integrity": "sha512-RWYce7j8+c0n7Djzv5NzGEGitNNYO3uj+h/XYMdS/JinH1Go+/Qkomg/rfxExFzYTiydaV6GLeffGO5qcJbMPA==", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, - "dependencies": { - "micromark-core-commonmark": "^1.0.0", - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-normalize-identifier": "^1.0.0", - "micromark-util-sanitize-uri": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/micromark-extension-gfm-strikethrough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.5.tgz", - "integrity": "sha512-X0oI5eYYQVARhiNfbETy7BfLSmSilzN1eOuoRnrf9oUNsPRrWOAe9UqSizgw1vNxQBfOwL+n2610S3bYjVNi7w==", + "node_modules/micromark-extension-gfm/node_modules/micromark-util-chunked": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "micromark-util-chunked": "^1.0.0", - "micromark-util-classify-character": "^1.0.0", - "micromark-util-resolve-all": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/micromark-extension-gfm-table": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.5.tgz", - "integrity": "sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg==", + "node_modules/micromark-extension-gfm/node_modules/micromark-util-combine-extensions": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz", + "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "micromark-util-chunked": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/micromark-extension-gfm-tagfilter": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz", - "integrity": "sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==", + "node_modules/micromark-extension-gfm/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, - "dependencies": { - "micromark-util-types": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/micromark-extension-gfm-task-list-item": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.4.tgz", - "integrity": "sha512-9XlIUUVnYXHsFF2HZ9jby4h3npfX10S1coXTnV035QGPgrtNYQq3J6IfIvcCIUAJrrqBVi5BqA/LmaOMJqPwMQ==", + "node_modules/micromark-extension-gfm/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, - "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, "node_modules/micromark-factory-destination": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz", - "integrity": "sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", "dev": true, "funding": [ { @@ -11457,15 +11432,15 @@ } ], "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-label": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz", - "integrity": "sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", "dev": true, "funding": [ { @@ -11478,16 +11453,16 @@ } ], "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-space": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz", - "integrity": "sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", "dev": true, "funding": [ { @@ -11500,14 +11475,14 @@ } ], "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-title": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz", - "integrity": "sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", + "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", "dev": true, "funding": [ { @@ -11520,17 +11495,16 @@ } ], "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-factory-whitespace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz", - "integrity": "sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", + "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", "dev": true, "funding": [ { @@ -11543,16 +11517,16 @@ } ], "dependencies": { - "micromark-factory-space": "^1.0.0", - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-character": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz", - "integrity": "sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", + "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", "dev": true, "funding": [ { @@ -11565,14 +11539,14 @@ } ], "dependencies": { - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-chunked": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz", - "integrity": "sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", "dev": true, "funding": [ { @@ -11585,13 +11559,13 @@ } ], "dependencies": { - "micromark-util-symbol": "^1.0.0" + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-classify-character": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz", - "integrity": "sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", + "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", "dev": true, "funding": [ { @@ -11604,15 +11578,15 @@ } ], "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-combine-extensions": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz", - "integrity": "sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", + "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", "dev": true, "funding": [ { @@ -11625,14 +11599,14 @@ } ], "dependencies": { - "micromark-util-chunked": "^1.0.0", - "micromark-util-types": "^1.0.0" + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz", - "integrity": "sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz", + "integrity": "sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==", "dev": true, "funding": [ { @@ -11645,13 +11619,13 @@ } ], "dependencies": { - "micromark-util-symbol": "^1.0.0" + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-decode-string": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz", - "integrity": "sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz", + "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==", "dev": true, "funding": [ { @@ -11670,10 +11644,81 @@ "micromark-util-symbol": "^1.0.0" } }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-decode-numeric-character-reference": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz", + "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, "node_modules/micromark-util-encode": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz", - "integrity": "sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", "dev": true, "funding": [ { @@ -11687,9 +11732,9 @@ ] }, "node_modules/micromark-util-html-tag-name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz", - "integrity": "sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", + "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", "dev": true, "funding": [ { @@ -11703,9 +11748,9 @@ ] }, "node_modules/micromark-util-normalize-identifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz", - "integrity": "sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", "dev": true, "funding": [ { @@ -11718,13 +11763,13 @@ } ], "dependencies": { - "micromark-util-symbol": "^1.0.0" + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-resolve-all": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz", - "integrity": "sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", + "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", "dev": true, "funding": [ { @@ -11737,13 +11782,13 @@ } ], "dependencies": { - "micromark-util-types": "^1.0.0" + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-sanitize-uri": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz", - "integrity": "sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", "dev": true, "funding": [ { @@ -11756,15 +11801,15 @@ } ], "dependencies": { - "micromark-util-character": "^1.0.0", - "micromark-util-encode": "^1.0.0", - "micromark-util-symbol": "^1.0.0" + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, "node_modules/micromark-util-subtokenize": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz", - "integrity": "sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.0.tgz", + "integrity": "sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==", "dev": true, "funding": [ { @@ -11777,16 +11822,16 @@ } ], "dependencies": { - "micromark-util-chunked": "^1.0.0", - "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, "node_modules/micromark-util-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz", - "integrity": "sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", "dev": true, "funding": [ { @@ -11800,9 +11845,9 @@ ] }, "node_modules/micromark-util-types": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz", - "integrity": "sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", "dev": true, "funding": [ { @@ -11822,715 +11867,441 @@ "dev": true, "dependencies": { "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", - "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "peer": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-fetch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", - "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", - "dev": true, - "dependencies": { - "minipass": "^7.0.3", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-flush/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-flush/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", - "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", - "dev": true, - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/minipass-json-stream/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-json-stream/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-pipeline/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-pipeline/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" + "picomatch": "^2.3.1" }, "engines": { - "node": ">=8" + "node": ">=8.6" } }, - "node_modules/minipass-sized/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "dev": true, - "dependencies": { - "yallist": "^4.0.0" + "bin": { + "mime": "cli.js" }, "engines": { - "node": ">=8" + "node": ">=10.0.0" } }, - "node_modules/minipass-sized/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, + "peer": true, "engines": { - "node": ">= 8" + "node": ">= 0.6" } }, - "node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "mime-db": "1.52.0" }, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/mkdist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mkdist/-/mkdist-1.2.0.tgz", - "integrity": "sha512-UTqu/bXmIk/+VKNVgufAeMyjUcNy1dn9Bl7wL1zZlCKVrpDgj/VllmZBeh3ZCC/2HWqUrt6frNFTKt9TRZbNvQ==", + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "defu": "^6.1.2", - "esbuild": "^0.17.14", - "fs-extra": "^11.1.1", - "globby": "^13.1.3", - "jiti": "^1.18.2", - "mlly": "^1.2.0", - "mri": "^1.2.0", - "pathe": "^1.1.0" - }, - "bin": { - "mkdist": "dist/cli.cjs" - }, - "peerDependencies": { - "sass": "^1.60.0", - "typescript": ">=4.9.5" + "brace-expansion": "^1.1.7" }, - "peerDependenciesMeta": { - "sass": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/mlly": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", - "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", - "dev": true, - "dependencies": { - "acorn": "^8.10.0", - "pathe": "^1.1.1", - "pkg-types": "^1.0.3", - "ufo": "^1.3.0" - } - }, - "node_modules/mri": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", - "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", - "dev": true, "engines": { - "node": ">=4" + "node": "*" } }, - "node_modules/mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/muggle-string": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.2.2.tgz", - "integrity": "sha512-YVE1mIJ4VpUMqZObFndk9CJu6DBJR/GB13p3tXuNbwD4XExaI5EOuRl6BHeIDxIqXZVxSfAC+y6U1Z/IxCfKUg==", - "dev": true - }, - "node_modules/nanoid": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz", - "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==", + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.js" + "dependencies": { + "minipass": "^3.0.0" }, "engines": { - "node": "^14 || ^16 || >=18" + "node": ">= 8" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true, - "peer": true - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true, - "peer": true - }, - "node_modules/nitropack": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.7.0.tgz", - "integrity": "sha512-U5/Uq0k4PO3/yDM1Sao6JZc/i1DhiI2Eq/AMm92idgQ6B3NbwD0A3u9SZNIHyqEyFogOgi3qsdnRo9KWc5jgVg==", - "dev": true, - "dependencies": { - "@cloudflare/kv-asset-handler": "^0.3.0", - "@netlify/functions": "^2.3.0", - "@rollup/plugin-alias": "^5.0.1", - "@rollup/plugin-commonjs": "^25.0.7", - "@rollup/plugin-inject": "^5.0.5", - "@rollup/plugin-json": "^6.0.1", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-replace": "^5.0.4", - "@rollup/plugin-terser": "^0.4.4", - "@rollup/plugin-wasm": "^6.2.2", - "@rollup/pluginutils": "^5.0.5", - "@types/http-proxy": "^1.17.13", - "@vercel/nft": "^0.24.3", - "archiver": "^6.0.1", - "c12": "^1.5.1", - "chalk": "^5.3.0", - "chokidar": "^3.5.3", - "citty": "^0.1.4", - "consola": "^3.2.3", - "cookie-es": "^1.0.0", - "defu": "^6.1.2", - "destr": "^2.0.1", - "dot-prop": "^8.0.2", - "esbuild": "^0.19.5", - "escape-string-regexp": "^5.0.0", - "etag": "^1.8.1", - "fs-extra": "^11.1.1", - "globby": "^13.2.2", - "gzip-size": "^7.0.0", - "h3": "^1.8.2", - "hookable": "^5.5.3", - "httpxy": "^0.1.5", - "is-primitive": "^3.0.1", - "jiti": "^1.20.0", - "klona": "^2.0.6", - "knitwork": "^1.0.0", - "listhen": "^1.5.5", - "magic-string": "^0.30.5", - "mime": "^3.0.0", - "mlly": "^1.4.2", - "mri": "^1.2.0", - "node-fetch-native": "^1.4.0", - "ofetch": "^1.3.3", - "ohash": "^1.1.3", - "openapi-typescript": "^6.7.0", - "pathe": "^1.1.1", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "pretty-bytes": "^6.1.1", - "radix3": "^1.1.0", - "rollup": "^3.29.4", - "rollup-plugin-visualizer": "^5.9.2", - "scule": "^1.0.0", - "semver": "^7.5.4", - "serve-placeholder": "^2.0.1", - "serve-static": "^1.15.0", - "std-env": "^3.4.3", - "ufo": "^1.3.1", - "uncrypto": "^0.1.3", - "unctx": "^2.3.1", - "unenv": "^1.7.4", - "unimport": "^3.4.0", - "unstorage": "^1.9.0" + "node_modules/minipass-collect/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dev": true, + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, - "bin": { - "nitro": "dist/cli/index.mjs", - "nitropack": "dist/cli/index.mjs" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" }, "engines": { - "node": "^16.11.0 || >=17.0.0" + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" }, - "peerDependencies": { - "xml2js": "^0.6.2" + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" }, - "peerDependenciesMeta": { - "xml2js": { - "optional": true - } + "engines": { + "node": ">=8" } }, - "node_modules/nitropack/node_modules/@esbuild/android-arm": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.5.tgz", - "integrity": "sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==", - "cpu": [ - "arm" - ], + "node_modules/minipass-json-stream/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "minipass": "^3.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/nitropack/node_modules/@esbuild/android-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.5.tgz", - "integrity": "sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==", - "cpu": [ - "arm64" - ], + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/nitropack/node_modules/@esbuild/android-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.5.tgz", - "integrity": "sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==", - "cpu": [ - "x64" - ], + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "minipass": "^3.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/nitropack/node_modules/@esbuild/darwin-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", - "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", - "cpu": [ - "arm64" - ], + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/nitropack/node_modules/@esbuild/darwin-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.5.tgz", - "integrity": "sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==", - "cpu": [ - "x64" - ], + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/minisearch": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-6.2.0.tgz", + "integrity": "sha512-BECkorDF1TY2rGKt9XHdSeP9TP29yUbrAaCh/C03wpyf1vx3uYcP/+8XlMcpTkgoU0rBVnHMAOaP83Rc9Tm+TQ==", + "dev": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">= 8" } }, - "node_modules/nitropack/node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.5.tgz", - "integrity": "sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==", - "cpu": [ - "arm64" - ], + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/nitropack/node_modules/@esbuild/freebsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.5.tgz", - "integrity": "sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==", - "cpu": [ - "x64" - ], + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], + "bin": { + "mkdirp": "bin/cmd.js" + }, "engines": { - "node": ">=12" + "node": ">=10" + } + }, + "node_modules/mkdist": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mkdist/-/mkdist-1.3.0.tgz", + "integrity": "sha512-ZQrUvcL7LkRdzMREpDyg9AT18N9Tl5jc2qeKAUeEw0KGsgykbHbuRvysGAzTuGtwuSg0WQyNit5jh/k+Er3JEg==", + "dev": true, + "dependencies": { + "citty": "^0.1.2", + "defu": "^6.1.2", + "esbuild": "^0.18.14", + "fs-extra": "^11.1.1", + "globby": "^13.2.2", + "jiti": "^1.19.1", + "mlly": "^1.4.0", + "mri": "^1.2.0", + "pathe": "^1.1.1" + }, + "bin": { + "mkdist": "dist/cli.cjs" + }, + "peerDependencies": { + "sass": "^1.63.6", + "typescript": ">=5.1.6" + }, + "peerDependenciesMeta": { + "sass": { + "optional": true + }, + "typescript": { + "optional": true + } } }, - "node_modules/nitropack/node_modules/@esbuild/linux-arm": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.5.tgz", - "integrity": "sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==", + "node_modules/mkdist/node_modules/@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], "dev": true, "optional": true, "os": [ - "linux" + "android" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.5.tgz", - "integrity": "sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==", + "node_modules/mkdist/node_modules/@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], "dev": true, "optional": true, "os": [ - "linux" + "android" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-ia32": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.5.tgz", - "integrity": "sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==", + "node_modules/mkdist/node_modules/@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ - "ia32" + "x64" ], "dev": true, "optional": true, "os": [ - "linux" + "android" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-loong64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.5.tgz", - "integrity": "sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==", + "node_modules/mkdist/node_modules/@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ - "loong64" + "arm64" ], "dev": true, "optional": true, "os": [ - "linux" + "darwin" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-mips64el": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.5.tgz", - "integrity": "sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==", + "node_modules/mkdist/node_modules/@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ - "mips64el" + "x64" ], "dev": true, "optional": true, "os": [ - "linux" + "darwin" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-ppc64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.5.tgz", - "integrity": "sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==", + "node_modules/mkdist/node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ - "ppc64" + "arm64" ], "dev": true, "optional": true, "os": [ - "linux" + "freebsd" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-riscv64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.5.tgz", - "integrity": "sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==", + "node_modules/mkdist/node_modules/@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ - "riscv64" + "x64" ], "dev": true, "optional": true, "os": [ - "linux" + "freebsd" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-s390x": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.5.tgz", - "integrity": "sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==", + "node_modules/mkdist/node_modules/@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ - "s390x" + "arm" ], "dev": true, "optional": true, @@ -12541,12 +12312,12 @@ "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/linux-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz", - "integrity": "sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==", + "node_modules/mkdist/node_modules/@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ - "x64" + "arm64" ], "dev": true, "optional": true, @@ -12557,1110 +12328,974 @@ "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/netbsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.5.tgz", - "integrity": "sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==", + "node_modules/mkdist/node_modules/@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ - "x64" + "ia32" ], "dev": true, "optional": true, "os": [ - "netbsd" + "linux" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/openbsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.5.tgz", - "integrity": "sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==", + "node_modules/mkdist/node_modules/@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ - "x64" + "loong64" ], "dev": true, "optional": true, "os": [ - "openbsd" + "linux" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/sunos-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.5.tgz", - "integrity": "sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==", + "node_modules/mkdist/node_modules/@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ - "x64" + "mips64el" ], "dev": true, "optional": true, "os": [ - "sunos" + "linux" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/win32-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.5.tgz", - "integrity": "sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==", + "node_modules/mkdist/node_modules/@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ - "arm64" + "ppc64" ], "dev": true, "optional": true, "os": [ - "win32" + "linux" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/win32-ia32": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.5.tgz", - "integrity": "sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==", + "node_modules/mkdist/node_modules/@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ - "ia32" + "riscv64" ], "dev": true, "optional": true, "os": [ - "win32" + "linux" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@esbuild/win32-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.5.tgz", - "integrity": "sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==", + "node_modules/mkdist/node_modules/@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ - "x64" + "s390x" ], "dev": true, "optional": true, "os": [ - "win32" + "linux" ], "engines": { "node": ">=12" } }, - "node_modules/nitropack/node_modules/@rollup/plugin-commonjs": { - "version": "25.0.7", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.7.tgz", - "integrity": "sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==", - "dev": true, - "dependencies": { - "@rollup/pluginutils": "^5.0.1", - "commondir": "^1.0.1", - "estree-walker": "^2.0.2", - "glob": "^8.0.3", - "is-reference": "1.2.1", - "magic-string": "^0.30.3" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "rollup": "^2.68.0||^3.0.0||^4.0.0" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } - } - }, - "node_modules/nitropack/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, - "node_modules/nitropack/node_modules/esbuild": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz", - "integrity": "sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.19.5", - "@esbuild/android-arm64": "0.19.5", - "@esbuild/android-x64": "0.19.5", - "@esbuild/darwin-arm64": "0.19.5", - "@esbuild/darwin-x64": "0.19.5", - "@esbuild/freebsd-arm64": "0.19.5", - "@esbuild/freebsd-x64": "0.19.5", - "@esbuild/linux-arm": "0.19.5", - "@esbuild/linux-arm64": "0.19.5", - "@esbuild/linux-ia32": "0.19.5", - "@esbuild/linux-loong64": "0.19.5", - "@esbuild/linux-mips64el": "0.19.5", - "@esbuild/linux-ppc64": "0.19.5", - "@esbuild/linux-riscv64": "0.19.5", - "@esbuild/linux-s390x": "0.19.5", - "@esbuild/linux-x64": "0.19.5", - "@esbuild/netbsd-x64": "0.19.5", - "@esbuild/openbsd-x64": "0.19.5", - "@esbuild/sunos-x64": "0.19.5", - "@esbuild/win32-arm64": "0.19.5", - "@esbuild/win32-ia32": "0.19.5", - "@esbuild/win32-x64": "0.19.5" - } - }, - "node_modules/nitropack/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node_modules/node-addon-api": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", - "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==", - "dev": true - }, - "node_modules/node-emoji": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-2.1.0.tgz", - "integrity": "sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^3.1.2", - "char-regex": "^1.0.2", - "emojilib": "^2.4.0", - "skin-tone": "^2.0.0" - } - }, - "node_modules/node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "node_modules/mkdist/node_modules/@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": ">=12" } }, - "node_modules/node-fetch-native": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.4.0.tgz", - "integrity": "sha512-F5kfEj95kX8tkDhUCYdV8dg3/8Olx/94zB8+ZNthFs6Bz31UpUi8Xh40TN3thLwXgrwXry1pEg9lJ++tLWTcqA==", - "dev": true - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "node_modules/mkdist/node_modules/@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "cpu": [ + "x64" + ], "dev": true, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": ">= 6.13.0" + "node": ">=12" } }, - "node_modules/node-gyp": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.0.tgz", - "integrity": "sha512-dMXsYP6gc9rRbejLXmTbVRYjAHw7ppswsKyMxuxJxxOHzluIO1rGp9TOQgjFJ+2MCqcOcQTOPB/8Xwhr+7s4Eg==", + "node_modules/mkdist/node_modules/@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "env-paths": "^2.2.0", - "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^11.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": "^12.13 || ^14.13 || >=16" + "node": ">=12" } }, - "node_modules/node-gyp-build": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.1.tgz", - "integrity": "sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==", + "node_modules/mkdist/node_modules/@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "cpu": [ + "x64" + ], "dev": true, - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" } }, - "node_modules/node-gyp/node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "node_modules/mkdist/node_modules/@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=12" } }, - "node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/mkdist/node_modules/@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "cpu": [ + "ia32" + ], "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } }, - "node_modules/node-gyp/node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "node_modules/mkdist/node_modules/@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=12" } }, - "node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "node_modules/mkdist/node_modules/esbuild": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" }, "engines": { - "node": "*" + "node": ">=12" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "optionalDependencies": { + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, - "node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/mlly": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", + "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "acorn": "^8.10.0", + "pathe": "^1.1.1", + "pkg-types": "^1.0.3", + "ufo": "^1.3.0" } }, - "node_modules/node-gyp/node_modules/nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "node_modules/mri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", + "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", "dev": true, - "dependencies": { - "abbrev": "^1.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=4" } }, - "node_modules/node-gyp/node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=10" } }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } + "node_modules/muggle-string": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.2.2.tgz", + "integrity": "sha512-YVE1mIJ4VpUMqZObFndk9CJu6DBJR/GB13p3tXuNbwD4XExaI5EOuRl6BHeIDxIqXZVxSfAC+y6U1Z/IxCfKUg==", + "dev": true }, - "node_modules/normalize-package-data": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", - "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^7.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" + "node_modules/nanoid": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-4.0.2.tgz", + "integrity": "sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.js" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "^14 || ^16 || >=18" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true, - "engines": { - "node": ">=0.10.0" - } + "peer": true }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/npm-bundled": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", - "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true, - "dependencies": { - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } + "peer": true }, - "node_modules/npm-install-checks": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", - "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", + "node_modules/nitropack": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.7.2.tgz", + "integrity": "sha512-6vQbGdBNR20N8wTChzIQUZQmNVhWVDrjUdpOYD68u2hlyUiJembth2fQuoWw3KlsoNYWFvcyqL9X3DPjjnoEUQ==", "dev": true, "dependencies": { - "semver": "^7.1.1" + "@cloudflare/kv-asset-handler": "^0.3.0", + "@netlify/functions": "^2.3.0", + "@rollup/plugin-alias": "^5.0.1", + "@rollup/plugin-commonjs": "^25.0.7", + "@rollup/plugin-inject": "^5.0.5", + "@rollup/plugin-json": "^6.0.1", + "@rollup/plugin-node-resolve": "^15.2.3", + "@rollup/plugin-replace": "^5.0.4", + "@rollup/plugin-terser": "^0.4.4", + "@rollup/plugin-wasm": "^6.2.2", + "@rollup/pluginutils": "^5.0.5", + "@types/http-proxy": "^1.17.13", + "@vercel/nft": "^0.24.3", + "archiver": "^6.0.1", + "c12": "^1.5.1", + "chalk": "^5.3.0", + "chokidar": "^3.5.3", + "citty": "^0.1.4", + "consola": "^3.2.3", + "cookie-es": "^1.0.0", + "defu": "^6.1.3", + "destr": "^2.0.2", + "dot-prop": "^8.0.2", + "esbuild": "^0.19.5", + "escape-string-regexp": "^5.0.0", + "etag": "^1.8.1", + "fs-extra": "^11.1.1", + "globby": "^13.2.2", + "gzip-size": "^7.0.0", + "h3": "^1.8.2", + "hookable": "^5.5.3", + "httpxy": "^0.1.5", + "is-primitive": "^3.0.1", + "jiti": "^1.20.0", + "klona": "^2.0.6", + "knitwork": "^1.0.0", + "listhen": "^1.5.5", + "magic-string": "^0.30.5", + "mime": "^3.0.0", + "mlly": "^1.4.2", + "mri": "^1.2.0", + "node-fetch-native": "^1.4.1", + "ofetch": "^1.3.3", + "ohash": "^1.1.3", + "openapi-typescript": "^6.7.0", + "pathe": "^1.1.1", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "pretty-bytes": "^6.1.1", + "radix3": "^1.1.0", + "rollup": "^3.29.4", + "rollup-plugin-visualizer": "^5.9.2", + "scule": "^1.0.0", + "semver": "^7.5.4", + "serve-placeholder": "^2.0.1", + "serve-static": "^1.15.0", + "std-env": "^3.4.3", + "ufo": "^1.3.1", + "uncrypto": "^0.1.3", + "unctx": "^2.3.1", + "unenv": "^1.7.4", + "unimport": "^3.4.0", + "unstorage": "^1.9.0" + }, + "bin": { + "nitro": "dist/cli/index.mjs", + "nitropack": "dist/cli/index.mjs" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.11.0 || >=17.0.0" + }, + "peerDependencies": { + "xml2js": "^0.6.2" + }, + "peerDependenciesMeta": { + "xml2js": { + "optional": true + } } }, - "node_modules/npm-normalize-package-bin": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", - "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "node_modules/nitropack/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/npm-package-arg": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", - "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", + "node_modules/nitropack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, - "dependencies": { - "hosted-git-info": "^7.0.0", - "proc-log": "^3.0.0", - "semver": "^7.3.5", - "validate-npm-package-name": "^5.0.0" - }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-packlist": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.0.tgz", - "integrity": "sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==", + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", "dev": true, "dependencies": { - "ignore-walk": "^6.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "lower-case": "^2.0.2", + "tslib": "^2.0.3" } }, - "node_modules/npm-pick-manifest": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", - "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", + "node_modules/node-addon-api": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", + "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==", + "dev": true + }, + "node_modules/node-emoji": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-2.1.0.tgz", + "integrity": "sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A==", "dev": true, "dependencies": { - "npm-install-checks": "^6.0.0", - "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^11.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" + "@sindresorhus/is": "^3.1.2", + "char-regex": "^1.0.2", + "emojilib": "^2.4.0", + "skin-tone": "^2.0.0" } }, - "node_modules/npm-registry-fetch": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", - "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "dev": true, "dependencies": { - "make-fetch-happen": "^13.0.0", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^11.0.0", - "proc-log": "^3.0.0" + "whatwg-url": "^5.0.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/npm-registry-fetch/node_modules/make-fetch-happen": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", - "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "node_modules/node-fetch-native": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.4.1.tgz", + "integrity": "sha512-NsXBU0UgBxo2rQLOeWNZqS3fvflWePMECr8CoSWoSTqCqGbVVsvl9vZu1HfQicYN0g5piV9Gh8RTEvo/uP752w==", + "dev": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", "dev": true, - "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" - }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">= 6.13.0" } }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "node_modules/node-gyp": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", + "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", "dev": true, "dependencies": { - "path-key": "^3.0.0" + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^4.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": ">=8" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "node_modules/node-gyp-build": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.1.tgz", + "integrity": "sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==", "dev": true, - "dependencies": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "node_modules/node-gyp/node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nuxi": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/nuxi/-/nuxi-3.9.1.tgz", - "integrity": "sha512-4R4tcC2uQ5QCnHxyKoX5nZm/YUesCcQM3bZBKYU/8ZWrWjK6aPG6Q5zOQG1aLPkAotyahNsqtSiU/CrRoenEgA==", + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, - "bin": { - "nuxi": "bin/nuxi.mjs", - "nuxi-ng": "bin/nuxi.mjs", - "nuxt": "bin/nuxi.mjs", - "nuxt-cli": "bin/nuxi.mjs" - }, - "engines": { - "node": "^14.18.0 || >=16.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/nuxt": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/nuxt/-/nuxt-3.8.0.tgz", - "integrity": "sha512-ZnisJYx5AcUl7xlw18m6zfINBpNhld+ZF+jdTLRZxkLjKSFZeFMGqKxOR1jNVSmxfIXM/guK0uV9GPm6HK/z7g==", + "node_modules/node-gyp/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { - "@nuxt/devalue": "^2.0.2", - "@nuxt/devtools": "^1.0.0", - "@nuxt/kit": "3.8.0", - "@nuxt/schema": "3.8.0", - "@nuxt/telemetry": "^2.5.2", - "@nuxt/ui-templates": "^1.3.1", - "@nuxt/vite-builder": "3.8.0", - "@unhead/dom": "^1.7.4", - "@unhead/ssr": "^1.7.4", - "@unhead/vue": "^1.7.4", - "@vue/shared": "^3.3.4", - "acorn": "8.10.0", - "c12": "^1.5.1", - "chokidar": "^3.5.3", - "cookie-es": "^1.0.0", - "defu": "^6.1.2", - "destr": "^2.0.1", - "devalue": "^4.3.2", - "esbuild": "^0.19.5", - "escape-string-regexp": "^5.0.0", - "estree-walker": "^3.0.3", - "fs-extra": "^11.1.1", - "globby": "^13.2.2", - "h3": "^1.8.2", - "hookable": "^5.5.3", - "jiti": "^1.20.0", - "klona": "^2.0.6", - "knitwork": "^1.0.0", - "magic-string": "^0.30.5", - "mlly": "^1.4.2", - "nitropack": "^2.7.0", - "nuxi": "^3.9.1", - "nypm": "^0.3.3", - "ofetch": "^1.3.3", - "ohash": "^1.1.3", - "pathe": "^1.1.1", - "perfect-debounce": "^1.0.0", - "pkg-types": "^1.0.3", - "radix3": "^1.1.0", - "scule": "^1.0.0", - "std-env": "^3.4.3", - "strip-literal": "^1.3.0", - "ufo": "^1.3.1", - "ultrahtml": "^1.5.2", - "uncrypto": "^0.1.3", - "unctx": "^2.3.1", - "unenv": "^1.7.4", - "unimport": "^3.4.0", - "unplugin": "^1.5.0", - "unplugin-vue-router": "^0.7.0", - "untyped": "^1.4.0", - "vue": "^3.3.4", - "vue-bundle-renderer": "^2.0.0", - "vue-devtools-stub": "^0.1.0", - "vue-router": "^4.2.5" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, "bin": { - "nuxi": "bin/nuxt.mjs", - "nuxt": "bin/nuxt.mjs" + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "^14.18.0 || >=16.10.0" - }, - "peerDependencies": { - "@parcel/watcher": "^2.1.0", - "@types/node": "^14.18.0 || >=16.10.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependenciesMeta": { - "@parcel/watcher": { - "optional": true - }, - "@types/node": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nuxt-component-meta": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/nuxt-component-meta/-/nuxt-component-meta-0.5.4.tgz", - "integrity": "sha512-0ou1O5Dky/avUAm6XrO4r4aZiRgP3wCwBlOe49FcyVZo0uAULFw8b3j48BvKWzBdOywf8hJEL4V5o7FWnd1E+A==", + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true, - "dependencies": { - "@nuxt/kit": "^3.3.1", - "scule": "^1.0.0", - "typescript": "^5.0.2", - "vue-component-meta": "^1.2.0" + "engines": { + "node": ">=16" } }, - "node_modules/nuxt-config-schema": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/nuxt-config-schema/-/nuxt-config-schema-0.4.6.tgz", - "integrity": "sha512-kHLWJFynj5QrxVZ1MjY2xmDaTSN1BCMLGExA+hMMLoCb3wn9TJlDVqnE/nSdUJPMRkNn/NQ5WP9NLA9vlAXRUw==", + "node_modules/node-gyp/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { - "@nuxt/kit": "^3.4.2", - "defu": "^6.1.2", - "jiti": "^1.18.2", - "pathe": "^1.0.0", - "untyped": "^1.3.2" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nuxt-icon": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/nuxt-icon/-/nuxt-icon-0.3.3.tgz", - "integrity": "sha512-KdhJAigBGTP8/YIFZ3orwetk40AgLq6VQ5HRYuDLmv5hiDptor9Ro+WIdZggHw7nciRxZvDdQkEwi9B5G/jrkQ==", + "node_modules/node-gyp/node_modules/nopt": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", "dev": true, "dependencies": { - "@iconify/vue": "^4.1.0", - "@nuxt/kit": "^3.3.1", - "nuxt-config-schema": "^0.4.5" - } - }, - "node_modules/nuxt/node_modules/@esbuild/android-arm": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.5.tgz", - "integrity": "sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/android-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.5.tgz", - "integrity": "sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==", - "cpu": [ - "arm64" - ], + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, - "optional": true, - "os": [ - "android" - ], + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, "engines": { - "node": ">=12" + "node": "^16.13.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/android-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.5.tgz", - "integrity": "sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true }, - "node_modules/nuxt/node_modules/@esbuild/darwin-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", - "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", - "cpu": [ - "arm64" - ], + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, "engines": { - "node": ">=12" + "node": ">=6" } }, - "node_modules/nuxt/node_modules/@esbuild/darwin-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.5.tgz", - "integrity": "sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==", - "cpu": [ - "x64" - ], + "node_modules/normalize-package-data": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dev": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "hosted-git-info": "^7.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, "engines": { - "node": ">=12" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.5.tgz", - "integrity": "sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==", - "cpu": [ - "arm64" - ], + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/nuxt/node_modules/@esbuild/freebsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.5.tgz", - "integrity": "sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==", - "cpu": [ - "x64" - ], + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", "dev": true, - "optional": true, - "os": [ - "freebsd" - ], "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-arm": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.5.tgz", - "integrity": "sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==", - "cpu": [ - "arm" - ], + "node_modules/npm-bundled": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.0.tgz", + "integrity": "sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "npm-normalize-package-bin": "^3.0.0" + }, "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.5.tgz", - "integrity": "sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==", - "cpu": [ - "arm64" - ], + "node_modules/npm-install-checks": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "semver": "^7.1.1" + }, "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-ia32": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.5.tgz", - "integrity": "sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==", - "cpu": [ - "ia32" - ], + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", "dev": true, - "optional": true, - "os": [ - "linux" - ], "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-loong64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.5.tgz", - "integrity": "sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==", - "cpu": [ - "loong64" - ], + "node_modules/npm-package-arg": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", + "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "hosted-git-info": "^7.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, "engines": { - "node": ">=12" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-mips64el": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.5.tgz", - "integrity": "sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==", - "cpu": [ - "mips64el" - ], + "node_modules/npm-packlist": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.0.tgz", + "integrity": "sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "ignore-walk": "^6.0.0" + }, "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-ppc64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.5.tgz", - "integrity": "sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==", - "cpu": [ - "ppc64" - ], + "node_modules/npm-pick-manifest": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", + "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^11.0.0", + "semver": "^7.3.5" + }, "engines": { - "node": ">=12" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-riscv64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.5.tgz", - "integrity": "sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==", - "cpu": [ - "riscv64" - ], + "node_modules/npm-registry-fetch": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", + "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^11.0.0", + "proc-log": "^3.0.0" + }, "engines": { - "node": ">=12" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-s390x": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.5.tgz", - "integrity": "sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==", - "cpu": [ - "s390x" - ], + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "path-key": "^3.0.0" + }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/nuxt/node_modules/@esbuild/linux-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz", - "integrity": "sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==", - "cpu": [ - "x64" - ], + "node_modules/npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" } }, - "node_modules/nuxt/node_modules/@esbuild/netbsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.5.tgz", - "integrity": "sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" } }, - "node_modules/nuxt/node_modules/@esbuild/openbsd-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.5.tgz", - "integrity": "sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==", - "cpu": [ - "x64" - ], + "node_modules/nuxi": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/nuxi/-/nuxi-3.9.1.tgz", + "integrity": "sha512-4R4tcC2uQ5QCnHxyKoX5nZm/YUesCcQM3bZBKYU/8ZWrWjK6aPG6Q5zOQG1aLPkAotyahNsqtSiU/CrRoenEgA==", "dev": true, - "optional": true, - "os": [ - "openbsd" - ], + "bin": { + "nuxi": "bin/nuxi.mjs", + "nuxi-ng": "bin/nuxi.mjs", + "nuxt": "bin/nuxi.mjs", + "nuxt-cli": "bin/nuxi.mjs" + }, "engines": { - "node": ">=12" + "node": "^14.18.0 || >=16.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" } }, - "node_modules/nuxt/node_modules/@esbuild/sunos-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.5.tgz", - "integrity": "sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==", - "cpu": [ - "x64" - ], + "node_modules/nuxt": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/nuxt/-/nuxt-3.8.1.tgz", + "integrity": "sha512-RSGO56Gv0x2f6AXWw4o4GoBaVdsD0qkPCjrX7Ud/jzH3cRJoyYMPuq/9AOLvf2o1ecZWl39j5elqJ4QHmggyOA==", "dev": true, - "optional": true, - "os": [ - "sunos" - ], + "dependencies": { + "@nuxt/devalue": "^2.0.2", + "@nuxt/devtools": "^1.0.0", + "@nuxt/kit": "3.8.1", + "@nuxt/schema": "3.8.1", + "@nuxt/telemetry": "^2.5.2", + "@nuxt/ui-templates": "^1.3.1", + "@nuxt/vite-builder": "3.8.1", + "@unhead/dom": "^1.8.3", + "@unhead/ssr": "^1.8.3", + "@unhead/vue": "^1.8.3", + "@vue/shared": "^3.3.8", + "acorn": "8.11.2", + "c12": "^1.5.1", + "chokidar": "^3.5.3", + "cookie-es": "^1.0.0", + "defu": "^6.1.3", + "destr": "^2.0.2", + "devalue": "^4.3.2", + "esbuild": "^0.19.5", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fs-extra": "^11.1.1", + "globby": "^13.2.2", + "h3": "^1.8.2", + "hookable": "^5.5.3", + "jiti": "^1.21.0", + "klona": "^2.0.6", + "knitwork": "^1.0.0", + "magic-string": "^0.30.5", + "mlly": "^1.4.2", + "nitropack": "^2.7.2", + "nuxi": "^3.9.1", + "nypm": "^0.3.3", + "ofetch": "^1.3.3", + "ohash": "^1.1.3", + "pathe": "^1.1.1", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.0.3", + "radix3": "^1.1.0", + "scule": "^1.0.0", + "std-env": "^3.4.3", + "strip-literal": "^1.3.0", + "ufo": "^1.3.1", + "ultrahtml": "^1.5.2", + "uncrypto": "^0.1.3", + "unctx": "^2.3.1", + "unenv": "^1.7.4", + "unimport": "^3.4.0", + "unplugin": "^1.5.0", + "unplugin-vue-router": "^0.7.0", + "untyped": "^1.4.0", + "vue": "^3.3.8", + "vue-bundle-renderer": "^2.0.0", + "vue-devtools-stub": "^0.1.0", + "vue-router": "^4.2.5" + }, + "bin": { + "nuxi": "bin/nuxt.mjs", + "nuxt": "bin/nuxt.mjs" + }, "engines": { - "node": ">=12" + "node": "^14.18.0 || >=16.10.0" + }, + "peerDependencies": { + "@parcel/watcher": "^2.1.0", + "@types/node": "^14.18.0 || >=16.10.0" + }, + "peerDependenciesMeta": { + "@parcel/watcher": { + "optional": true + }, + "@types/node": { + "optional": true + } } }, - "node_modules/nuxt/node_modules/@esbuild/win32-arm64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.5.tgz", - "integrity": "sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==", - "cpu": [ - "arm64" - ], + "node_modules/nuxt-component-meta": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/nuxt-component-meta/-/nuxt-component-meta-0.5.4.tgz", + "integrity": "sha512-0ou1O5Dky/avUAm6XrO4r4aZiRgP3wCwBlOe49FcyVZo0uAULFw8b3j48BvKWzBdOywf8hJEL4V5o7FWnd1E+A==", "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" + "dependencies": { + "@nuxt/kit": "^3.3.1", + "scule": "^1.0.0", + "typescript": "^5.0.2", + "vue-component-meta": "^1.2.0" } }, - "node_modules/nuxt/node_modules/@esbuild/win32-ia32": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.5.tgz", - "integrity": "sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==", - "cpu": [ - "ia32" - ], + "node_modules/nuxt-config-schema": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/nuxt-config-schema/-/nuxt-config-schema-0.4.6.tgz", + "integrity": "sha512-kHLWJFynj5QrxVZ1MjY2xmDaTSN1BCMLGExA+hMMLoCb3wn9TJlDVqnE/nSdUJPMRkNn/NQ5WP9NLA9vlAXRUw==", "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" + "dependencies": { + "@nuxt/kit": "^3.4.2", + "defu": "^6.1.2", + "jiti": "^1.18.2", + "pathe": "^1.0.0", + "untyped": "^1.3.2" } }, - "node_modules/nuxt/node_modules/@esbuild/win32-x64": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.5.tgz", - "integrity": "sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==", - "cpu": [ - "x64" - ], + "node_modules/nuxt-icon": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/nuxt-icon/-/nuxt-icon-0.3.3.tgz", + "integrity": "sha512-KdhJAigBGTP8/YIFZ3orwetk40AgLq6VQ5HRYuDLmv5hiDptor9Ro+WIdZggHw7nciRxZvDdQkEwi9B5G/jrkQ==", "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" + "dependencies": { + "@iconify/vue": "^4.1.0", + "@nuxt/kit": "^3.3.1", + "nuxt-config-schema": "^0.4.5" } }, - "node_modules/nuxt/node_modules/esbuild": { - "version": "0.19.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz", - "integrity": "sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==", + "node_modules/nuxt/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, "engines": { "node": ">=12" }, - "optionalDependencies": { - "@esbuild/android-arm": "0.19.5", - "@esbuild/android-arm64": "0.19.5", - "@esbuild/android-x64": "0.19.5", - "@esbuild/darwin-arm64": "0.19.5", - "@esbuild/darwin-x64": "0.19.5", - "@esbuild/freebsd-arm64": "0.19.5", - "@esbuild/freebsd-x64": "0.19.5", - "@esbuild/linux-arm": "0.19.5", - "@esbuild/linux-arm64": "0.19.5", - "@esbuild/linux-ia32": "0.19.5", - "@esbuild/linux-loong64": "0.19.5", - "@esbuild/linux-mips64el": "0.19.5", - "@esbuild/linux-ppc64": "0.19.5", - "@esbuild/linux-riscv64": "0.19.5", - "@esbuild/linux-s390x": "0.19.5", - "@esbuild/linux-x64": "0.19.5", - "@esbuild/netbsd-x64": "0.19.5", - "@esbuild/openbsd-x64": "0.19.5", - "@esbuild/sunos-x64": "0.19.5", - "@esbuild/win32-arm64": "0.19.5", - "@esbuild/win32-ia32": "0.19.5", - "@esbuild/win32-x64": "0.19.5" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nuxt/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0" } }, "node_modules/nypm": { @@ -13849,6 +13484,24 @@ "node": ">= 0.4" } }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/ofetch": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.3.3.tgz", @@ -13936,19 +13589,31 @@ "openapi-typescript": "bin/cli.js" } }, + "node_modules/openapi-typescript/node_modules/supports-color": { + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-9.4.0.tgz", + "integrity": "sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "peer": true, "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" }, "engines": { "node": ">= 0.8.0" @@ -14088,6 +13753,12 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/parse-entities/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, "node_modules/parse-git-config": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/parse-git-config/-/parse-git-config-3.0.0.tgz", @@ -14101,6 +13772,12 @@ "node": ">=8" } }, + "node_modules/parse-git-config/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, "node_modules/parse-path": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz", @@ -14144,6 +13821,12 @@ "tslib": "^2.0.3" } }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, "node_modules/path-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", @@ -14252,26 +13935,17 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/pinceau": { - "version": "0.18.9", - "resolved": "https://registry.npmjs.org/pinceau/-/pinceau-0.18.9.tgz", - "integrity": "sha512-GJ+l8a5Y+7PP/diwuajJhd2QONTIFkk2YXjrVTh7QKC3sMQEphpLH6ZJfXSeeSonQ0/BnhrrMi9a5e14mmqXug==", + "version": "0.18.8", + "resolved": "https://registry.npmjs.org/pinceau/-/pinceau-0.18.8.tgz", + "integrity": "sha512-aVIRYxz80nweDjabJzauKtsSVS48JdWWVwWnHxG/e1HI9/aV0/RmdTD3P/8KXfYZ9OySl3MjCgUc7MZb+IwwEw==", "dev": true, "dependencies": { "@unocss/reset": "^0.50.3", "@volar/vue-language-core": "^1.2.0", "acorn": "^8.8.2", "chroma-js": "^2.4.2", - "consola": "^3.0.1", + "consola": "^2.15.3", "csstype": "^3.1.1", "defu": "^6.1.2", "magic-string": "^0.30.0", @@ -14290,9 +13964,9 @@ } }, "node_modules/pinceau/node_modules/consola": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.0.2.tgz", - "integrity": "sha512-o/Wau2FmZKiQgyp3c3IULgN6J5yc0lwYMnoyiZdEpdGxKGBtt2ACbkulBZ6BUsHy1HlSJqoP4YOyPIJLgRJyKQ==", + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", "dev": true }, "node_modules/pkg-types": { @@ -14470,55 +14144,6 @@ "postcss": "^8.2.15" } }, - "node_modules/postcss-import": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", - "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-import-resolver": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-import-resolver/-/postcss-import-resolver-2.0.0.tgz", - "integrity": "sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw==", - "dev": true, - "dependencies": { - "enhanced-resolve": "^4.1.1" - } - }, - "node_modules/postcss-import-resolver/node_modules/enhanced-resolve": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", - "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/postcss-import-resolver/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/postcss-merge-longhand": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.0.tgz", @@ -14817,9 +14442,9 @@ } }, "node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", + "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -14860,58 +14485,6 @@ "postcss": "^8.2.15" } }, - "node_modules/postcss-url": { - "version": "10.1.3", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-10.1.3.tgz", - "integrity": "sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==", - "dev": true, - "dependencies": { - "make-dir": "~3.1.0", - "mime": "~2.5.2", - "minimatch": "~3.0.4", - "xxhashjs": "~0.2.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-url/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/postcss-url/node_modules/mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/postcss-url/node_modules/minimatch": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", - "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/postcss-value-parser": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", @@ -14919,9 +14492,9 @@ "dev": true }, "node_modules/postcss/node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ { @@ -15006,9 +14579,9 @@ } }, "node_modules/property-information": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.3.0.tgz", - "integrity": "sha512-gVNZ74nqhRMiIUYWGQdosYetaKc83x8oT41a0LlV3AAFCAZwCpg4vmGkq8t34+cUhp3cnM4XDiU/7xlgK7HGrg==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.0.tgz", + "integrity": "sha512-9t5qARVofg2xQqKtytzt+lZ4d1Qvj8t5B8fEwXK6qOfgRLgH/b13QlgEyDh033NOS31nXeFbYv7CLUDG1CeifQ==", "dev": true, "funding": { "type": "github", @@ -15021,16 +14594,10 @@ "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==", "dev": true }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true - }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { "node": ">=6" @@ -15097,15 +14664,6 @@ "flat": "^5.0.2" } }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "dependencies": { - "pify": "^2.3.0" - } - }, "node_modules/read-package-json": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", @@ -15134,13 +14692,13 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/read-package-json-fast/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", + "node_modules/read-package-json/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "dependencies": { + "balanced-match": "^1.0.0" } }, "node_modules/read-package-json/node_modules/glob": { @@ -15165,15 +14723,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/read-package-json/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.0.tgz", - "integrity": "sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==", - "dev": true, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/read-package-json/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", @@ -15212,6 +14761,27 @@ "minimatch": "^5.1.0" } }, + "node_modules/readdir-glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -15279,54 +14849,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-external-links/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, - "node_modules/rehype-external-links/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-external-links/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-external-links/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/rehype-raw": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-6.1.1.tgz", @@ -15343,73 +14865,50 @@ } }, "node_modules/rehype-raw/node_modules/@types/hast": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.6.tgz", - "integrity": "sha512-47rJE80oqPmFdVDCD7IheXBrVdwuBgsYwoczFvKmwfo2Mzsnt+V9OONsYauFmICb6lQPpCuXYJWejBNs4pDJRg==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", + "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", "dev": true, "dependencies": { "@types/unist": "^2" } }, - "node_modules/rehype-slug": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/rehype-slug/-/rehype-slug-6.0.0.tgz", - "integrity": "sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==", - "dev": true, - "dependencies": { - "@types/hast": "^3.0.0", - "github-slugger": "^2.0.0", - "hast-util-heading-rank": "^3.0.0", - "hast-util-to-string": "^3.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-slug/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", + "node_modules/rehype-raw/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", "dev": true }, - "node_modules/rehype-slug/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dev": true, - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-slug/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "node_modules/rehype-raw/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-slug/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/rehype-slug": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/rehype-slug/-/rehype-slug-6.0.0.tgz", + "integrity": "sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" + "@types/hast": "^3.0.0", + "github-slugger": "^2.0.0", + "hast-util-heading-rank": "^3.0.0", + "hast-util-to-string": "^3.0.0", + "unist-util-visit": "^5.0.0" }, "funding": { "type": "opencollective", @@ -15431,215 +14930,214 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-sort-attribute-values/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, - "node_modules/rehype-sort-attribute-values/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "node_modules/rehype-sort-attributes": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/rehype-sort-attributes/-/rehype-sort-attributes-5.0.0.tgz", + "integrity": "sha512-6tJUH4xHFcdO85CZRwAcEtHNCzjZ9V9S0VZLgo1pzbN04qy8jiVCZ3oAxDmBVG3Rth5b1xFTDet5WG/UYZeJLQ==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "@types/hast": "^3.0.0", + "unist-util-visit": "^5.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-sort-attribute-values/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "node_modules/remark-emoji": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-4.0.1.tgz", + "integrity": "sha512-fHdvsTR1dHkWKev9eNyhTo4EFwbUvJ8ka9SgeWkMPYFX4WoI7ViVBms3PjlQYgw5TLvNQso3GUB/b/8t3yo+dg==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "@types/mdast": "^4.0.2", + "emoticon": "^4.0.1", + "mdast-util-find-and-replace": "^3.0.1", + "node-emoji": "^2.1.0", + "unified": "^11.0.4" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, - "node_modules/rehype-sort-attribute-values/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/remark-gfm": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz", + "integrity": "sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" + "@types/mdast": "^3.0.0", + "mdast-util-gfm": "^2.0.0", + "micromark-extension-gfm": "^2.0.0", + "unified": "^10.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-sort-attributes": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rehype-sort-attributes/-/rehype-sort-attributes-5.0.0.tgz", - "integrity": "sha512-6tJUH4xHFcdO85CZRwAcEtHNCzjZ9V9S0VZLgo1pzbN04qy8jiVCZ3oAxDmBVG3Rth5b1xFTDet5WG/UYZeJLQ==", + "node_modules/remark-gfm/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, "dependencies": { - "@types/hast": "^3.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "@types/unist": "^2" } }, - "node_modules/rehype-sort-attributes/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", + "node_modules/remark-gfm/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", "dev": true }, - "node_modules/rehype-sort-attributes/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "node_modules/remark-gfm/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-sort-attributes/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "node_modules/remark-github": { + "version": "11.2.4", + "resolved": "https://registry.npmjs.org/remark-github/-/remark-github-11.2.4.tgz", + "integrity": "sha512-GJjWFpwqdrHHhPWqMbb8+lqFLiHQ9pCzUmXmRrhMFXGpYov5n2ljsZzuWgXlfzArfQYkiKIZczA2I8IHYMHqCA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "@types/mdast": "^3.0.0", + "mdast-util-find-and-replace": "^2.0.0", + "mdast-util-to-string": "^3.0.0", + "unified": "^10.0.0", + "unist-util-visit": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/rehype-sort-attributes/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/remark-github/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "@types/unist": "^2" } }, - "node_modules/remark-emoji": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-4.0.0.tgz", - "integrity": "sha512-lQP1lFaYOz6zyJTBfOwYChM1YkgJEVcxSnUBkjo9qujqWwpY36MRFzDjYDk9YNdHqkw5yExB8MnVVHb6wX9QNA==", + "node_modules/remark-github/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/remark-github/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true, - "dependencies": { - "emoticon": "^4.0.1", - "mdast-util-find-and-replace": "^3.0.0", - "node-emoji": "^2.1.0" - }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/remark-emoji/node_modules/@types/mdast": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.1.tgz", - "integrity": "sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==", + "node_modules/remark-github/node_modules/mdast-util-find-and-replace": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz", + "integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==", "dev": true, "dependencies": { - "@types/unist": "*" + "@types/mdast": "^3.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-emoji/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, - "node_modules/remark-emoji/node_modules/mdast-util-find-and-replace": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", - "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", + "node_modules/remark-github/node_modules/mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", "dev": true, "dependencies": { - "@types/mdast": "^4.0.0", - "escape-string-regexp": "^5.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "@types/mdast": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-emoji/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "node_modules/remark-github/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-emoji/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/remark-github/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" + "@types/unist": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-gfm": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz", - "integrity": "sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==", + "node_modules/remark-github/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", "dev": true, "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-gfm": "^2.0.0", - "micromark-extension-gfm": "^2.0.0", - "unified": "^10.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-github": { - "version": "11.2.4", - "resolved": "https://registry.npmjs.org/remark-github/-/remark-github-11.2.4.tgz", - "integrity": "sha512-GJjWFpwqdrHHhPWqMbb8+lqFLiHQ9pCzUmXmRrhMFXGpYov5n2ljsZzuWgXlfzArfQYkiKIZczA2I8IHYMHqCA==", + "node_modules/remark-github/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", "dev": true, "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-find-and-replace": "^2.0.0", - "mdast-util-to-string": "^3.0.0", - "unified": "^10.0.0", - "unist-util-visit": "^4.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" }, "funding": { "type": "opencollective", @@ -15647,9 +15145,9 @@ } }, "node_modules/remark-mdc": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/remark-mdc/-/remark-mdc-2.0.0.tgz", - "integrity": "sha512-zBonqJya1254h84GRLjJc1fU4aXng2cKaie5qk0T1edUIkP4lVY1kJD4TP+uoFaUziTeyR6LSvkmRcHDZiWtoA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/remark-mdc/-/remark-mdc-2.1.0.tgz", + "integrity": "sha512-N1jHp5fjzCvY6qXmhfoFOMjCauu6CfNz1q79vihtgwnUrp3/C0e6Nzkzm6QeoFLHhxrTRu0epWi6A3nQUUxOIA==", "dev": true, "dependencies": { "@types/mdast": "^4.0.0", @@ -15672,21 +15170,6 @@ "unist-util-visit-parents": "^6.0.1" } }, - "node_modules/remark-mdc/node_modules/@types/mdast": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.1.tgz", - "integrity": "sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==", - "dev": true, - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/remark-mdc/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, "node_modules/remark-mdc/node_modules/mdast-util-from-markdown": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.0.tgz", @@ -15745,23 +15228,141 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdc/node_modules/mdast-util-to-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", - "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "node_modules/remark-mdc/node_modules/micromark-util-decode-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "@types/mdast": "^4.0.0" + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/remark-parse": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz", + "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==", + "dev": true, + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-from-markdown": "^1.0.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "dev": true, + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/remark-parse/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/remark-parse/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "dev": true, + "dependencies": { + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", + "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", + "dev": true, + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-to-hast": "^12.1.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype/node_modules/@types/hast": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", + "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", + "dev": true, + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/remark-rehype/node_modules/@types/mdast": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", + "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "dev": true, + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/remark-rehype/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/remark-rehype/node_modules/mdast-util-to-hast": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", + "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==", + "dev": true, + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-definitions": "^5.0.0", + "micromark-util-sanitize-uri": "^1.1.0", + "trim-lines": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdc/node_modules/micromark": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", - "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "node_modules/remark-rehype/node_modules/micromark-util-character": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "dev": true, "funding": [ { @@ -15774,29 +15375,14 @@ } ], "dependencies": { - "@types/debug": "^4.0.0", - "debug": "^4.0.0", - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-core-commonmark": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-combine-extensions": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-sanitize-uri": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" } }, - "node_modules/remark-mdc/node_modules/micromark-core-commonmark": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.0.tgz", - "integrity": "sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==", + "node_modules/remark-rehype/node_modules/micromark-util-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", "dev": true, "funding": [ { @@ -15807,30 +15393,12 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], - "dependencies": { - "decode-named-character-reference": "^1.0.0", - "devlop": "^1.0.0", - "micromark-factory-destination": "^2.0.0", - "micromark-factory-label": "^2.0.0", - "micromark-factory-space": "^2.0.0", - "micromark-factory-title": "^2.0.0", - "micromark-factory-whitespace": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-classify-character": "^2.0.0", - "micromark-util-html-tag-name": "^2.0.0", - "micromark-util-normalize-identifier": "^2.0.0", - "micromark-util-resolve-all": "^2.0.0", - "micromark-util-subtokenize": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } + ] }, - "node_modules/remark-mdc/node_modules/micromark-factory-destination": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", - "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", + "node_modules/remark-rehype/node_modules/micromark-util-sanitize-uri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", "dev": true, "funding": [ { @@ -15843,15 +15411,15 @@ } ], "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" } }, - "node_modules/remark-mdc/node_modules/micromark-factory-label": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", - "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", + "node_modules/remark-rehype/node_modules/micromark-util-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "dev": true, "funding": [ { @@ -15862,18 +15430,12 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" - } + ] }, - "node_modules/remark-mdc/node_modules/micromark-factory-space": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", - "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "node_modules/remark-rehype/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "dev": true, "funding": [ { @@ -15884,1914 +15446,1994 @@ "type": "OpenCollective", "url": "https://opencollective.com/unified" } - ], + ] + }, + "node_modules/remark-rehype/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "dev": true, "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-types": "^2.0.0" + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdc/node_modules/micromark-factory-title": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", - "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", + "node_modules/remark-rehype/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdc/node_modules/micromark-factory-whitespace": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", - "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", + "node_modules/remark-rehype/node_modules/unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-factory-space": "^2.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdc/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "node_modules/remark-rehype/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/remark-mdc/node_modules/micromark-util-chunked": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", - "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", + "node_modules/remark-rehype/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-util-symbol": "^2.0.0" + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" } }, - "node_modules/remark-mdc/node_modules/micromark-util-classify-character": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", - "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/remark-mdc/node_modules/micromark-util-combine-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", - "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-util-chunked": "^2.0.0", - "micromark-util-types": "^2.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/remark-mdc/node_modules/micromark-util-decode-numeric-character-reference": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.0.tgz", - "integrity": "sha512-pIgcsGxpHEtTG/rPJRz/HOLSqp5VTuIIjXlPI+6JSDlK2oljApusG6KzpS8AF0ENUMCHlC/IBb5B9xdFiVlm5Q==", + "node_modules/rollup": { + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-symbol": "^2.0.0" + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/remark-mdc/node_modules/micromark-util-decode-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", - "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", + "node_modules/rollup-plugin-dts": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-5.3.1.tgz", + "integrity": "sha512-gusMi+Z4gY/JaEQeXnB0RUdU82h1kF0WYzCWgVmV4p3hWXqelaKuCvcJawfeg+EKn2T1Ie+YWF2OiN1/L8bTVg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "decode-named-character-reference": "^1.0.0", - "micromark-util-character": "^2.0.0", - "micromark-util-decode-numeric-character-reference": "^2.0.0", - "micromark-util-symbol": "^2.0.0" + "magic-string": "^0.30.2" + }, + "engines": { + "node": ">=v14.21.3" + }, + "funding": { + "url": "https://github.com/sponsors/Swatinem" + }, + "optionalDependencies": { + "@babel/code-frame": "^7.22.5" + }, + "peerDependencies": { + "rollup": "^3.0", + "typescript": "^4.1 || ^5.0" } }, - "node_modules/remark-mdc/node_modules/micromark-util-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", - "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "node_modules/rollup-plugin-visualizer": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.9.2.tgz", + "integrity": "sha512-waHktD5mlWrYFrhOLbti4YgQCn1uR24nYsNuXxg7LkPH8KdTXVWR9DNY1WU0QqokyMixVXJS4J04HNrVTMP01A==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" + "dependencies": { + "open": "^8.4.0", + "picomatch": "^2.3.1", + "source-map": "^0.7.4", + "yargs": "^17.5.1" + }, + "bin": { + "rollup-plugin-visualizer": "dist/bin/cli.js" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "rollup": "2.x || 3.x" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true } - ] + } }, - "node_modules/remark-mdc/node_modules/micromark-util-html-tag-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", - "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", + "node_modules/rollup-plugin-visualizer/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] + "engines": { + "node": ">= 8" + } }, - "node_modules/remark-mdc/node_modules/micromark-util-normalize-identifier": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", - "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", + "node_modules/run-applescript": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", + "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], "dependencies": { - "micromark-util-symbol": "^2.0.0" + "execa": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/remark-mdc/node_modules/micromark-util-resolve-all": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", - "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, "funding": [ { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "micromark-util-types": "^2.0.0" - } - }, - "node_modules/remark-mdc/node_modules/micromark-util-sanitize-uri": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", - "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" + "type": "patreon", + "url": "https://www.patreon.com/feross" }, { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" + "type": "consulting", + "url": "https://feross.org/support" } ], "dependencies": { - "micromark-util-character": "^2.0.0", - "micromark-util-encode": "^2.0.0", - "micromark-util-symbol": "^2.0.0" + "queue-microtask": "^1.2.2" } }, - "node_modules/remark-mdc/node_modules/micromark-util-subtokenize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.0.tgz", - "integrity": "sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" - }, - { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ], - "dependencies": { - "devlop": "^1.0.0", - "micromark-util-chunked": "^2.0.0", - "micromark-util-symbol": "^2.0.0", - "micromark-util-types": "^2.0.0" + "node_modules/sade": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz", + "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==", + "dev": true, + "dependencies": { + "mri": "^1.1.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/remark-mdc/node_modules/micromark-util-symbol": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", - "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "dev": true, "funding": [ { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" - } - ] - }, - "node_modules/remark-mdc/node_modules/micromark-util-types": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", - "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", - "dev": true, - "funding": [ - { - "type": "GitHub Sponsors", - "url": "https://github.com/sponsors/unifiedjs" + "type": "patreon", + "url": "https://www.patreon.com/feross" }, { - "type": "OpenCollective", - "url": "https://opencollective.com/unified" + "type": "consulting", + "url": "https://feross.org/support" } ] }, - "node_modules/remark-mdc/node_modules/unified": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.3.tgz", - "integrity": "sha512-jlCV402P+YDcFcB2VcN/n8JasOddqIiaxv118wNBoZXEhOn+lYG7BR4Bfg2BwxvlK58dwbuH2w7GX2esAjL6Mg==", + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "optional": true + }, + "node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "bail": "^2.0.0", - "devlop": "^1.0.0", - "extend": "^3.0.0", - "is-plain-obj": "^4.0.0", - "trough": "^2.0.0", - "vfile": "^6.0.0" + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://opencollective.com/webpack" } }, - "node_modules/remark-mdc/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "node_modules/schema-utils/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/remark-mdc/node_modules/unist-util-stringify-position": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", - "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0" + "fast-deep-equal": "^3.1.3" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "peerDependencies": { + "ajv": "^8.8.2" } }, - "node_modules/remark-mdc/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/scule": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/scule/-/scule-1.0.0.tgz", + "integrity": "sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==", + "dev": true + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" + "lru-cache": "^6.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/remark-mdc/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" + "yallist": "^4.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=10" } }, - "node_modules/remark-mdc/node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", - "vfile-message": "^4.0.0" + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/remark-mdc/node_modules/vfile-message": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", - "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0" + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=4" } }, - "node_modules/remark-parse": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz", - "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==", + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/sentence-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", + "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", "dev": true, "dependencies": { - "@types/mdast": "^3.0.0", - "mdast-util-from-markdown": "^1.0.0", - "unified": "^10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" } }, - "node_modules/remark-rehype": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", - "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", "dev": true, "dependencies": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-to-hast": "^12.1.0", - "unified": "^10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "randombytes": "^2.1.0" } }, - "node_modules/remark-rehype/node_modules/@types/hast": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.6.tgz", - "integrity": "sha512-47rJE80oqPmFdVDCD7IheXBrVdwuBgsYwoczFvKmwfo2Mzsnt+V9OONsYauFmICb6lQPpCuXYJWejBNs4pDJRg==", + "node_modules/serve-placeholder": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/serve-placeholder/-/serve-placeholder-2.0.1.tgz", + "integrity": "sha512-rUzLlXk4uPFnbEaIz3SW8VISTxMuONas88nYWjAWaM2W9VDbt9tyFOr3lq8RhVOFrT3XISoBw8vni5una8qMnQ==", + "dev": true, + "dependencies": { + "defu": "^6.0.0" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dev": true, "dependencies": { - "@types/unist": "^2" + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/remark-rehype/node_modules/mdast-util-to-hast": { - "version": "12.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", - "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==", + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "node_modules/set-function-length": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", + "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", "dev": true, "dependencies": { - "@types/hast": "^2.0.0", - "@types/mdast": "^3.0.0", - "mdast-util-definitions": "^5.0.0", - "micromark-util-sanitize-uri": "^1.1.0", - "trim-lines": "^3.0.0", - "unist-util-generated": "^2.0.0", - "unist-util-position": "^4.0.0", - "unist-util-visit": "^4.0.0" + "define-data-property": "^1.1.1", + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">= 0.4" } }, - "node_modules/remark-rehype/node_modules/unist-util-position": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", - "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "dependencies": { - "@types/unist": "^2.0.0" + "shebang-regex": "^3.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/resolve": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.3.tgz", - "integrity": "sha512-P8ur/gp/AmbEzjr729bZnLjXK5Z+4P0zhIJgBgzqRih7hL7BOukHGtSTA3ACMY467GRFz3duQsi0bDZdR7DKdw==", + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", "dev": true, - "dependencies": { - "is-core-module": "^2.12.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/shiki-es": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/shiki-es/-/shiki-es-0.14.0.tgz", + "integrity": "sha512-e+/aueHx0YeIEut6RXC6K8gSf0PykwZiHD7q7AHtpTW8Kd8TpFUIWqTwhAnrGjOyOMyrwv+syr5WPagMpDpVYQ==", + "dev": true }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "node_modules/shikiji": { + "version": "0.6.12", + "resolved": "https://registry.npmjs.org/shikiji/-/shikiji-0.6.12.tgz", + "integrity": "sha512-sm7Wg8P4w6T3quDAZQxvk0P02o2hheIFEdbaEuGOhGnqLDjVsP28GDUVPdgbacOIc1auapNVNCVEykhPploLyg==", "dev": true, - "engines": { - "node": ">= 4" + "dependencies": { + "hast-util-to-html": "^9.0.0" } }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sigstore": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", + "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", "dev": true, + "dependencies": { + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "@sigstore/sign": "^2.1.0", + "@sigstore/tuf": "^2.1.0" + }, "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "node_modules/simple-git": { + "version": "3.20.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.20.0.tgz", + "integrity": "sha512-ozK8tl2hvLts8ijTs18iFruE+RoqmC/mqZhjs/+V7gS5W68JpJ3+FCTmLVqmR59MaUQ52MfGQuWsIqfsTbbJ0Q==", "dev": true, "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" + "@kwsites/file-exists": "^1.1.1", + "@kwsites/promise-deferred": "^1.1.1", + "debug": "^4.3.4" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "github", + "url": "https://github.com/steveukx/git-js?sponsor=1" } }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/sirv": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.3.tgz", + "integrity": "sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">= 10" } }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/skin-tone": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/skin-tone/-/skin-tone-2.0.0.tgz", + "integrity": "sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "unicode-emoji-modifier-base": "^1.0.0" }, "engines": { - "node": "*" + "node": ">=8" + } + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/slugify": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", + "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==", "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, "engines": { - "node": "*" + "node": ">=8.0.0" } }, - "node_modules/rollup": { - "version": "3.29.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", - "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true, - "bin": { - "rollup": "dist/bin/rollup" - }, "engines": { - "node": ">=14.18.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "node": ">= 6.0.0", + "npm": ">= 3.0.0" } }, - "node_modules/rollup-plugin-dts": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-5.3.0.tgz", - "integrity": "sha512-8FXp0ZkyZj1iU5klkIJYLjIq/YZSwBoERu33QBDxm/1yw5UU4txrEtcmMkrq+ZiKu3Q4qvPCNqc3ovX6rjqzbQ==", + "node_modules/smob": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/smob/-/smob-1.4.1.tgz", + "integrity": "sha512-9LK+E7Hv5R9u4g4C3p+jjLstaLe11MDsL21UpYaCNmapvMkYhqCV4A/f/3gyH8QjMyh6l68q9xC85vihY9ahMQ==", + "dev": true + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", "dev": true, "dependencies": { - "magic-string": "^0.30.0" - }, - "engines": { - "node": ">=v14" - }, - "funding": { - "url": "https://github.com/sponsors/Swatinem" - }, - "optionalDependencies": { - "@babel/code-frame": "^7.18.6" - }, - "peerDependencies": { - "rollup": "^3.0.0", - "typescript": "^4.1 || ^5.0" + "dot-case": "^3.0.4", + "tslib": "^2.0.3" } }, - "node_modules/rollup-plugin-visualizer": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.9.2.tgz", - "integrity": "sha512-waHktD5mlWrYFrhOLbti4YgQCn1uR24nYsNuXxg7LkPH8KdTXVWR9DNY1WU0QqokyMixVXJS4J04HNrVTMP01A==", + "node_modules/socket.io-client": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.2.tgz", + "integrity": "sha512-vtA0uD4ibrYD793SOIAwlo8cj6haOeMHrGvwPxJsxH7CeIksqJ+3Zc06RvWTIFgiSqx4A3sOnTXpfAEE2Zyz6w==", "dev": true, "dependencies": { - "open": "^8.4.0", - "picomatch": "^2.3.1", - "source-map": "^0.7.4", - "yargs": "^17.5.1" - }, - "bin": { - "rollup-plugin-visualizer": "dist/bin/cli.js" + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.2", + "engine.io-client": "~6.5.2", + "socket.io-parser": "~4.2.4" }, "engines": { - "node": ">=14" - }, - "peerDependencies": { - "rollup": "2.x || 3.x" - }, - "peerDependenciesMeta": { - "rollup": { - "optional": true - } + "node": ">=10.0.0" } }, - "node_modules/rollup-plugin-visualizer/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, "engines": { - "node": ">= 8" + "node": ">=10.0.0" } }, - "node_modules/run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", + "node_modules/socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "dev": true, "dependencies": { - "execa": "^5.0.0" + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 10.13.0", + "npm": ">= 3.0.0" } }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "node_modules/socks-proxy-agent": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], "dependencies": { - "queue-microtask": "^1.2.2" + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/sade": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz", - "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==", + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "dependencies": { - "mri": "^1.1.0" - }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, - "optional": true + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } }, - "node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", "dev": true, - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/scule": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/scule/-/scule-1.0.0.tgz", - "integrity": "sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==", - "dev": true - }, - "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/semver/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/spdx-license-ids": { + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", "dev": true }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "node_modules/ssri": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", "dev": true, "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "minipass": "^7.0.3" }, "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "node_modules/standard-as-callback": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz", + "integrity": "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==", "dev": true }, - "node_modules/send/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, "engines": { - "node": ">=4" + "node": ">= 0.8" } }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "node_modules/std-env": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.4.3.tgz", + "integrity": "sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==", "dev": true }, - "node_modules/sentence-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", - "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", + "node_modules/streamx": { + "version": "2.15.2", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.2.tgz", + "integrity": "sha512-b62pAV/aeMjUoRN2C/9F0n+G8AfcJjNC0zw/ZmOHeFsIe4m4GzjVW9m6VHXVjk536NbdU9JRwKMJRfkc+zUFTg==", "dev": true, "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3", - "upper-case-first": "^2.0.2" + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" } }, - "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, "dependencies": { - "randombytes": "^2.1.0" + "safe-buffer": "~5.2.0" } }, - "node_modules/serve-placeholder": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/serve-placeholder/-/serve-placeholder-2.0.1.tgz", - "integrity": "sha512-rUzLlXk4uPFnbEaIz3SW8VISTxMuONas88nYWjAWaM2W9VDbt9tyFOr3lq8RhVOFrT3XISoBw8vni5una8qMnQ==", + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "dependencies": { - "defu": "^6.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true + "node_modules/stringify-entities": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.3.tgz", + "integrity": "sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==", + "dev": true, + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "dependencies": { - "shebang-regex": "^3.0.0" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, + "peer": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "node_modules/strip-literal": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.3.0.tgz", + "integrity": "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==", "dev": true, + "dependencies": { + "acorn": "^8.10.0" + }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/shiki-es": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/shiki-es/-/shiki-es-0.14.0.tgz", - "integrity": "sha512-e+/aueHx0YeIEut6RXC6K8gSf0PykwZiHD7q7AHtpTW8Kd8TpFUIWqTwhAnrGjOyOMyrwv+syr5WPagMpDpVYQ==", - "dev": true + "node_modules/style-dictionary-esm": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/style-dictionary-esm/-/style-dictionary-esm-1.8.4.tgz", + "integrity": "sha512-R4N/s/6KYU62+Q+wl/fSm9Eh2AbbUQoPJZfEl1EZbDEYZSb9fqprKDwbNLbYqH4XnV9L8GIYkijXXf4z9iv3mw==", + "dev": true, + "dependencies": { + "chalk": "^5.3.0", + "change-case": "^4.1.2", + "commander": "^11.0.0", + "consola": "^3.2.3", + "fast-glob": "^3.3.1", + "glob": "^10.3.3", + "jiti": "^1.19.3", + "json5": "^2.2.3", + "jsonc-parser": "^3.2.0", + "lodash.template": "^4.5.0", + "tinycolor2": "^1.6.0" + }, + "bin": { + "style-dictionary": "bin/style-dictionary.js" + } }, - "node_modules/shikiji": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/shikiji/-/shikiji-0.6.9.tgz", - "integrity": "sha512-GiqOwPZ27/CFiBjssmsIFhvT1IAs2UP9fuWIWYCV9b09AoFcgrxd6hOALRRNmYehbvTdaycGw+jIiOL4T5mI+A==", + "node_modules/style-dictionary-esm/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "hast-util-to-html": "^9.0.0" + "balanced-match": "^1.0.0" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "node_modules/style-dictionary-esm/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } }, - "node_modules/sigstore": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", - "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", + "node_modules/style-dictionary-esm/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { - "@sigstore/bundle": "^2.1.0", - "@sigstore/protobuf-specs": "^0.2.1", - "@sigstore/sign": "^2.1.0", - "@sigstore/tuf": "^2.1.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/simple-git": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.20.0.tgz", - "integrity": "sha512-ozK8tl2hvLts8ijTs18iFruE+RoqmC/mqZhjs/+V7gS5W68JpJ3+FCTmLVqmR59MaUQ52MfGQuWsIqfsTbbJ0Q==", + "node_modules/style-dictionary-esm/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { - "@kwsites/file-exists": "^1.1.1", - "@kwsites/promise-deferred": "^1.1.1", - "debug": "^4.3.4" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" }, "funding": { - "type": "github", - "url": "https://github.com/steveukx/git-js?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/sirv": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.3.tgz", - "integrity": "sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==", + "node_modules/stylehacks": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.0.0.tgz", + "integrity": "sha512-+UT589qhHPwz6mTlCLSt/vMNTJx8dopeJlZAlBMJPWA3ORqu6wmQY7FBXf+qD+FsqoBJODyqNxOUP3jdntFRdw==", "dev": true, "dependencies": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^3.0.0" + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" }, "engines": { - "node": ">= 10" + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" } }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "node_modules/skin-tone": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/skin-tone/-/skin-tone-2.0.0.tgz", - "integrity": "sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==", + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "unicode-emoji-modifier-base": "^1.0.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, "engines": { - "node": ">=12" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/slugify": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", - "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==", + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true + }, + "node_modules/svgo": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz", + "integrity": "sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==", "dev": true, + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^5.1.0", + "css-tree": "^2.2.1", + "csso": "^5.0.5", + "picocolors": "^1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, "engines": { - "node": ">=8.0.0" + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" } }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "dev": true, "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" + "node": ">= 10" } }, - "node_modules/smob": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/smob/-/smob-1.4.1.tgz", - "integrity": "sha512-9LK+E7Hv5R9u4g4C3p+jjLstaLe11MDsL21UpYaCNmapvMkYhqCV4A/f/3gyH8QjMyh6l68q9xC85vihY9ahMQ==", + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", "dev": true }, - "node_modules/snake-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", - "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", - "dev": true, - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/socket.io-client": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.2.tgz", - "integrity": "sha512-vtA0uD4ibrYD793SOIAwlo8cj6haOeMHrGvwPxJsxH7CeIksqJ+3Zc06RvWTIFgiSqx4A3sOnTXpfAEE2Zyz6w==", + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", "dev": true, - "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.2", - "engine.io-client": "~6.5.2", - "socket.io-parser": "~4.2.4" - }, "engines": { - "node": ">=10.0.0" + "node": ">=6" } }, - "node_modules/socket.io-parser": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", - "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "node_modules/tar": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", + "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", "dev": true, "dependencies": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1" + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=10" } }, - "node_modules/socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "node_modules/tar-stream": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", + "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", "dev": true, "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, - "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "dev": true, "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "minipass": "^3.0.0" }, "engines": { - "node": ">= 10" + "node": ">= 8" } }, - "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, "dependencies": { - "debug": "4" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 6.0.0" + "node": ">=8" } }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "node_modules/terser": { + "version": "5.24.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", + "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", "dev": true, "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" } }, - "node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "node_modules/terser-webpack-plugin": { + "version": "5.3.9", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", + "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.17", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.16.8" + }, + "engines": { + "node": ">= 10.13.0" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } } }, - "node_modules/spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, + "peer": true, "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, + "peer": true, "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "node_modules/spdx-license-ids": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", - "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", - "dev": true - }, - "node_modules/ssri": { - "version": "10.0.5", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", - "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "node_modules/terser-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, + "peer": true, "dependencies": { - "minipass": "^7.0.3" + "has-flag": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/standard-as-callback": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz", - "integrity": "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==", + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true, - "engines": { - "node": ">= 0.8" - } + "peer": true }, - "node_modules/std-env": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.4.3.tgz", - "integrity": "sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==", + "node_modules/theme-colors": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/theme-colors/-/theme-colors-0.1.0.tgz", + "integrity": "sha512-6gTEHQqWlQNiOEGHCSSQmU//E5SnXHJ4H7oHQOD8x77CvNYNQAmt73dqR71mzw5ULV87zaHLxK5pIBnsToFuZw==", "dev": true }, - "node_modules/streamx": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz", - "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==", - "dev": true, - "dependencies": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" - } + "node_modules/tiny-invariant": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", + "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==", + "dev": true }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } + "node_modules/tinycolor2": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==", + "dev": true }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/titleize": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", + "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "node": ">=12" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/stringify-entities": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.3.tgz", - "integrity": "sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==", + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, - "dependencies": { - "character-entities-html4": "^2.0.0", - "character-entities-legacy": "^3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">=4" } }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" + "is-number": "^7.0.0" }, "engines": { - "node": ">=8" + "node": ">=8.0" } }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, "engines": { - "node": ">=8" + "node": ">=0.6" } }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "node_modules/totalist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", + "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", "dev": true, "engines": { "node": ">=6" } }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", "dev": true, - "peer": true, - "engines": { - "node": ">=8" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/strip-literal": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.3.0.tgz", - "integrity": "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==", + "node_modules/trough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz", + "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==", "dev": true, - "dependencies": { - "acorn": "^8.10.0" - }, "funding": { - "url": "https://github.com/sponsors/antfu" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/style-dictionary-esm": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/style-dictionary-esm/-/style-dictionary-esm-1.3.7.tgz", - "integrity": "sha512-xO2o8sKGera0SMLCLtix1dPvgD2ZyX2VohZ09cGRRuXBb8HQObqhgDQw4dLW+qJy4gj7r4Mdhz9J1rS2p50xDw==", + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true + }, + "node_modules/tuf-js": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", + "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", "dev": true, "dependencies": { - "chalk": "^4.1.2", - "change-case": "^4.1.2", - "commander": "^10.0.0", - "consola": "^2.15.3", - "glob": "^8.1.0", - "jiti": "^1.17.1", - "json5": "^2.2.3", - "jsonc-parser": "^3.2.0", - "lodash.template": "^4.5.0", - "tinycolor2": "^1.6.0" - }, - "bin": { - "style-dictionary": "bin/style-dictionary.js" + "@tufjs/models": "2.0.0", + "debug": "^4.3.4", + "make-fetch-happen": "^13.0.0" }, "engines": { - "node": ">=12.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/style-dictionary-esm/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "prelude-ls": "^1.2.1" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/style-dictionary-esm/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/typesafe-path": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/typesafe-path/-/typesafe-path-0.2.2.tgz", + "integrity": "sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==", + "dev": true + }, + "node_modules/typescript": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, "engines": { - "node": ">=8" + "node": ">=14.17" } }, - "node_modules/style-dictionary-esm/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/ufo": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.1.tgz", + "integrity": "sha512-uY/99gMLIOlJPwATcMVYfqDSxUR9//AUcgZMzwfSTJPDKzA1S8mX4VLqa+fiAtveraQUBCz4FFcwVZBGbwBXIw==", + "dev": true + }, + "node_modules/ultrahtml": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.5.2.tgz", + "integrity": "sha512-qh4mBffhlkiXwDAOxvSGxhL0QEQsTbnP9BozOK3OYPEGvPvdWzvAUaXNtUSMdNsKDtuyjEbyVUPFZ52SSLhLqw==", + "dev": true + }, + "node_modules/unbuild": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/unbuild/-/unbuild-1.2.1.tgz", + "integrity": "sha512-J4efk69Aye43tWcBPCsLK7TIRppGrEN4pAlDzRKo3HSE6MgTSTBxSEuE3ccx7ixc62JvGQ/CoFXYqqF2AHozow==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@rollup/plugin-alias": "^5.0.0", + "@rollup/plugin-commonjs": "^24.1.0", + "@rollup/plugin-json": "^6.0.0", + "@rollup/plugin-node-resolve": "^15.0.2", + "@rollup/plugin-replace": "^5.0.2", + "@rollup/pluginutils": "^5.0.2", + "chalk": "^5.2.0", + "consola": "^3.0.2", + "defu": "^6.1.2", + "esbuild": "^0.17.16", + "globby": "^13.1.4", + "hookable": "^5.5.3", + "jiti": "^1.18.2", + "magic-string": "^0.30.0", + "mkdist": "^1.2.0", + "mlly": "^1.2.0", + "mri": "^1.2.0", + "pathe": "^1.1.0", + "pkg-types": "^1.0.2", + "pretty-bytes": "^6.1.0", + "rollup": "^3.20.2", + "rollup-plugin-dts": "^5.3.0", + "scule": "^1.0.0", + "typescript": "^5.0.4", + "untyped": "^1.3.2" }, - "engines": { - "node": ">=8" + "bin": { + "unbuild": "dist/cli.mjs" } }, - "node_modules/stylehacks": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.0.0.tgz", - "integrity": "sha512-+UT589qhHPwz6mTlCLSt/vMNTJx8dopeJlZAlBMJPWA3ORqu6wmQY7FBXf+qD+FsqoBJODyqNxOUP3jdntFRdw==", + "node_modules/unbuild/node_modules/@esbuild/android-arm": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", + "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "cpu": [ + "arm" + ], "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - }, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^14 || ^16 || >=18.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=12" } }, - "node_modules/supports-color": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-9.4.0.tgz", - "integrity": "sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==", + "node_modules/unbuild/node_modules/@esbuild/android-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", + "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", + "cpu": [ + "arm64" + ], "dev": true, + "optional": true, + "os": [ + "android" + ], "engines": { "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "node_modules/unbuild/node_modules/@esbuild/android-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", + "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", + "cpu": [ + "x64" + ], "dev": true, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=12" } }, - "node_modules/svg-tags": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", - "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", - "dev": true - }, - "node_modules/svgo": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz", - "integrity": "sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==", + "node_modules/unbuild/node_modules/@esbuild/darwin-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", + "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^5.1.0", - "css-tree": "^2.2.1", - "csso": "^5.0.5", - "picocolors": "^1.0.0" - }, - "bin": { - "svgo": "bin/svgo" - }, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/svgo" + "node": ">=12" } }, - "node_modules/svgo/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "node_modules/unbuild/node_modules/@esbuild/darwin-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", + "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", + "cpu": [ + "x64" + ], "dev": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 10" + "node": ">=12" } }, - "node_modules/tabbable": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", - "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", - "dev": true - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "node_modules/unbuild/node_modules/@esbuild/freebsd-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", + "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", + "cpu": [ + "arm64" + ], "dev": true, + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=6" + "node": ">=12" } }, - "node_modules/tar": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", - "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", + "node_modules/unbuild/node_modules/@esbuild/freebsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", + "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/tar-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", - "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", + "node_modules/unbuild/node_modules/@esbuild/linux-arm": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", + "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", + "cpu": [ + "arm" + ], "dev": true, - "dependencies": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" } }, - "node_modules/tar/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "node_modules/unbuild/node_modules/@esbuild/linux-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", + "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 8" + "node": ">=12" } }, - "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/unbuild/node_modules/@esbuild/linux-ia32": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", + "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", + "cpu": [ + "ia32" + ], "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/tar/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "node_modules/unbuild/node_modules/@esbuild/linux-loong64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", + "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "cpu": [ + "loong64" + ], "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/terser": { - "version": "5.17.7", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.7.tgz", - "integrity": "sha512-/bi0Zm2C6VAexlGgLlVxA0P2lru/sdLyfCVaRMfKVo9nWxbmz7f/sD8VPybPeSUJaJcwmCJis9pBIhcVcG1QcQ==", + "node_modules/unbuild/node_modules/@esbuild/linux-mips64el": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", + "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", + "cpu": [ + "mips64el" + ], "dev": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz", - "integrity": "sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==", + "node_modules/unbuild/node_modules/@esbuild/linux-ppc64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", + "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", + "cpu": [ + "ppc64" + ], "dev": true, - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.16.5" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } + "node": ">=12" } }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "node_modules/unbuild/node_modules/@esbuild/linux-riscv64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", + "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", + "cpu": [ + "riscv64" + ], "dev": true, - "peer": true - }, - "node_modules/theme-colors": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/theme-colors/-/theme-colors-0.1.0.tgz", - "integrity": "sha512-6gTEHQqWlQNiOEGHCSSQmU//E5SnXHJ4H7oHQOD8x77CvNYNQAmt73dqR71mzw5ULV87zaHLxK5pIBnsToFuZw==", - "dev": true - }, - "node_modules/tiny-invariant": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", - "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==", - "dev": true - }, - "node_modules/tinycolor2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz", - "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==", - "dev": true + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } }, - "node_modules/titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", + "node_modules/unbuild/node_modules/@esbuild/linux-s390x": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", + "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", + "cpu": [ + "s390x" + ], "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "node_modules/unbuild/node_modules/@esbuild/linux-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", + "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", + "cpu": [ + "x64" + ], "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=4" + "node": ">=12" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/unbuild/node_modules/@esbuild/netbsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", + "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, + "optional": true, + "os": [ + "netbsd" + ], "engines": { - "node": ">=8.0" + "node": ">=12" } }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "node_modules/unbuild/node_modules/@esbuild/openbsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", + "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", + "cpu": [ + "x64" + ], "dev": true, + "optional": true, + "os": [ + "openbsd" + ], "engines": { - "node": ">=0.6" + "node": ">=12" } }, - "node_modules/totalist": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", - "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", + "node_modules/unbuild/node_modules/@esbuild/sunos-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", + "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", + "cpu": [ + "x64" + ], "dev": true, + "optional": true, + "os": [ + "sunos" + ], "engines": { - "node": ">=6" + "node": ">=12" } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/trim-lines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", - "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "node_modules/unbuild/node_modules/@esbuild/win32-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", + "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", + "cpu": [ + "arm64" + ], "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } }, - "node_modules/trough": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz", - "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "node_modules/unbuild/node_modules/@esbuild/win32-ia32": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", + "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } }, - "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - }, - "node_modules/tuf-js": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", - "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", + "node_modules/unbuild/node_modules/@esbuild/win32-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", + "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "@tufjs/models": "2.0.0", - "debug": "^4.3.4", - "make-fetch-happen": "^13.0.0" - }, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=12" } }, - "node_modules/tuf-js/node_modules/make-fetch-happen": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", - "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "node_modules/unbuild/node_modules/@rollup/plugin-commonjs": { + "version": "24.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-24.1.0.tgz", + "integrity": "sha512-eSL45hjhCWI0jCCXcNtLVqM5N1JlBGvlFfY0m6oOYnLCJ6N0qEXoZql4sY2MOUArzhH4SA/qBpTxvvZp2Sc+DQ==", "dev": true, "dependencies": { - "@npmcli/agent": "^2.0.0", - "cacache": "^18.0.0", - "http-cache-semantics": "^4.1.1", - "is-lambda": "^1.0.1", - "minipass": "^7.0.2", - "minipass-fetch": "^3.0.0", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "ssri": "^10.0.0" + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.27.0" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "node_modules/unbuild/node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", "dev": true, - "peer": true, "dependencies": { - "prelude-ls": "^1.2.1" + "@jridgewell/sourcemap-codec": "^1.4.13" }, "engines": { - "node": ">= 0.8.0" + "node": ">=12" } }, - "node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "node_modules/unbuild/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "dev": true, "engines": { - "node": ">=14.16" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/typesafe-path": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/typesafe-path/-/typesafe-path-0.2.2.tgz", - "integrity": "sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==", - "dev": true - }, - "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "node_modules/unbuild/node_modules/esbuild": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", + "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", "dev": true, + "hasInstallScript": true, "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "esbuild": "bin/esbuild" }, "engines": { - "node": ">=12.20" - } - }, - "node_modules/ufo": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.1.tgz", - "integrity": "sha512-uY/99gMLIOlJPwATcMVYfqDSxUR9//AUcgZMzwfSTJPDKzA1S8mX4VLqa+fiAtveraQUBCz4FFcwVZBGbwBXIw==", - "dev": true - }, - "node_modules/ultrahtml": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.5.2.tgz", - "integrity": "sha512-qh4mBffhlkiXwDAOxvSGxhL0QEQsTbnP9BozOK3OYPEGvPvdWzvAUaXNtUSMdNsKDtuyjEbyVUPFZ52SSLhLqw==", - "dev": true - }, - "node_modules/unbuild": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/unbuild/-/unbuild-1.2.1.tgz", - "integrity": "sha512-J4efk69Aye43tWcBPCsLK7TIRppGrEN4pAlDzRKo3HSE6MgTSTBxSEuE3ccx7ixc62JvGQ/CoFXYqqF2AHozow==", - "dev": true, - "dependencies": { - "@rollup/plugin-alias": "^5.0.0", - "@rollup/plugin-commonjs": "^24.1.0", - "@rollup/plugin-json": "^6.0.0", - "@rollup/plugin-node-resolve": "^15.0.2", - "@rollup/plugin-replace": "^5.0.2", - "@rollup/pluginutils": "^5.0.2", - "chalk": "^5.2.0", - "consola": "^3.0.2", - "defu": "^6.1.2", - "esbuild": "^0.17.16", - "globby": "^13.1.4", - "hookable": "^5.5.3", - "jiti": "^1.18.2", - "magic-string": "^0.30.0", - "mkdist": "^1.2.0", - "mlly": "^1.2.0", - "mri": "^1.2.0", - "pathe": "^1.1.0", - "pkg-types": "^1.0.2", - "pretty-bytes": "^6.1.0", - "rollup": "^3.20.2", - "rollup-plugin-dts": "^5.3.0", - "scule": "^1.0.0", - "typescript": "^5.0.4", - "untyped": "^1.3.2" + "node": ">=12" }, - "bin": { - "unbuild": "dist/cli.mjs" + "optionalDependencies": { + "@esbuild/android-arm": "0.17.19", + "@esbuild/android-arm64": "0.17.19", + "@esbuild/android-x64": "0.17.19", + "@esbuild/darwin-arm64": "0.17.19", + "@esbuild/darwin-x64": "0.17.19", + "@esbuild/freebsd-arm64": "0.17.19", + "@esbuild/freebsd-x64": "0.17.19", + "@esbuild/linux-arm": "0.17.19", + "@esbuild/linux-arm64": "0.17.19", + "@esbuild/linux-ia32": "0.17.19", + "@esbuild/linux-loong64": "0.17.19", + "@esbuild/linux-mips64el": "0.17.19", + "@esbuild/linux-ppc64": "0.17.19", + "@esbuild/linux-riscv64": "0.17.19", + "@esbuild/linux-s390x": "0.17.19", + "@esbuild/linux-x64": "0.17.19", + "@esbuild/netbsd-x64": "0.17.19", + "@esbuild/openbsd-x64": "0.17.19", + "@esbuild/sunos-x64": "0.17.19", + "@esbuild/win32-arm64": "0.17.19", + "@esbuild/win32-ia32": "0.17.19", + "@esbuild/win32-x64": "0.17.19" } }, - "node_modules/unbuild/node_modules/consola": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.0.2.tgz", - "integrity": "sha512-o/Wau2FmZKiQgyp3c3IULgN6J5yc0lwYMnoyiZdEpdGxKGBtt2ACbkulBZ6BUsHy1HlSJqoP4YOyPIJLgRJyKQ==", - "dev": true - }, "node_modules/uncrypto": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz", @@ -17810,10 +17452,19 @@ "unplugin": "^1.3.1" } }, + "node_modules/unctx/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0" + } + }, "node_modules/undici": { - "version": "5.26.4", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.26.4.tgz", - "integrity": "sha512-OG+QOf0fTLtazL9P9X7yqWxQ+Z0395Wk6DSkyTxtaq3wQEjIroVe7Y4asCX/vcCxYpNGMnwz8F0qbRYUoaQVMw==", + "version": "5.27.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.27.2.tgz", + "integrity": "sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ==", "dev": true, "dependencies": { "@fastify/busboy": "^2.0.0" @@ -17822,6 +17473,12 @@ "node": ">=14.0" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, "node_modules/unenv": { "version": "1.7.4", "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.7.4.tgz", @@ -17835,24 +17492,15 @@ "pathe": "^1.1.1" } }, - "node_modules/unenv/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, "node_modules/unhead": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/unhead/-/unhead-1.7.4.tgz", - "integrity": "sha512-oOv+9aQS85DQUd0f1uJBtb2uG3SKwCURSTuUWp9WKKzANCb1TjW2dWp5TFmJH5ILF6urXi4uUQfjK+SawzBJAA==", + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/unhead/-/unhead-1.8.3.tgz", + "integrity": "sha512-2/5NJs7nY1MgCkUNuyevALM9nSgGp2loRv5QPhYyZXUPdF+F76CpKvkqATEOEJ/1yDzWjCaWrNh4u5lS6BEioA==", "dev": true, "dependencies": { - "@unhead/dom": "1.7.4", - "@unhead/schema": "1.7.4", - "@unhead/shared": "1.7.4", + "@unhead/dom": "1.8.3", + "@unhead/schema": "1.8.3", + "@unhead/shared": "1.8.3", "hookable": "^5.5.3" }, "funding": { @@ -17869,18 +17517,47 @@ } }, "node_modules/unified": { - "version": "10.1.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", - "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", + "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", "dev": true, "dependencies": { - "@types/unist": "^2.0.0", + "@types/unist": "^3.0.0", "bail": "^2.0.0", + "devlop": "^1.0.0", "extend": "^3.0.0", - "is-buffer": "^2.0.0", "is-plain-obj": "^4.0.0", "trough": "^2.0.0", - "vfile": "^5.0.0" + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unified/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unified/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dev": true, + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" }, "funding": { "type": "opencollective", @@ -17892,18 +17569,42 @@ "resolved": "https://registry.npmjs.org/unimport/-/unimport-3.4.0.tgz", "integrity": "sha512-M/lfFEgufIT156QAr/jWHLUn55kEmxBBiQsMxvRSIbquwmeJEyQYgshHDEvQDWlSJrVOOTAgnJ3FvlsrpGkanA==", "dev": true, - "dependencies": { - "@rollup/pluginutils": "^5.0.4", - "escape-string-regexp": "^5.0.0", - "fast-glob": "^3.3.1", - "local-pkg": "^0.4.3", - "magic-string": "^0.30.3", - "mlly": "^1.4.2", - "pathe": "^1.1.1", - "pkg-types": "^1.0.3", - "scule": "^1.0.0", - "strip-literal": "^1.3.0", - "unplugin": "^1.5.0" + "dependencies": { + "@rollup/pluginutils": "^5.0.4", + "escape-string-regexp": "^5.0.0", + "fast-glob": "^3.3.1", + "local-pkg": "^0.4.3", + "magic-string": "^0.30.3", + "mlly": "^1.4.2", + "pathe": "^1.1.1", + "pkg-types": "^1.0.3", + "scule": "^1.0.0", + "strip-literal": "^1.3.0", + "unplugin": "^1.5.0" + } + }, + "node_modules/unimport/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unimport/node_modules/local-pkg": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz", + "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, "node_modules/unique-filename": { @@ -17943,12 +17644,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-builder/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, "node_modules/unist-util-generated": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", @@ -17960,12 +17655,12 @@ } }, "node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", "dev": true, "dependencies": { - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", @@ -17985,19 +17680,13 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-position/node_modules/@types/unist": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", - "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==", - "dev": true - }, "node_modules/unist-util-stringify-position": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", - "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dev": true, "dependencies": { - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", @@ -18005,14 +17694,14 @@ } }, "node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", "dev": true, "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, "funding": { "type": "opencollective", @@ -18020,13 +17709,13 @@ } }, "node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", "dev": true, "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" }, "funding": { "type": "opencollective", @@ -18034,15 +17723,15 @@ } }, "node_modules/universal-user-agent": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", - "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz", + "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==", "dev": true }, "node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true, "engines": { "node": ">= 10.0.0" @@ -18089,6 +17778,18 @@ } } }, + "node_modules/unplugin-vue-router/node_modules/local-pkg": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz", + "integrity": "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/unstorage": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.9.0.tgz", @@ -18157,9 +17858,9 @@ } }, "node_modules/unstorage/node_modules/lru-cache": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", - "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, "engines": { "node": "14 || >=16.14" @@ -18188,15 +17889,6 @@ "untun": "bin/untun.mjs" } }, - "node_modules/untun/node_modules/consola": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", - "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", - "dev": true, - "engines": { - "node": "^14.18.0 || >=16.10.0" - } - }, "node_modules/untyped": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/untyped/-/untyped-1.4.0.tgz", @@ -18216,9 +17908,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "funding": [ { @@ -18382,6 +18074,12 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/vfile-location/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, "node_modules/vfile-message": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", @@ -18396,6 +18094,44 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/vfile-message/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/vfile-message/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dev": true, + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile/node_modules/@types/unist": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", + "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==", + "dev": true + }, + "node_modules/vfile/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dev": true, + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/vite": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz", @@ -18539,22 +18275,6 @@ } } }, - "node_modules/vite-plugin-checker/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/vite-plugin-checker/node_modules/commander": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", @@ -18564,27 +18284,6 @@ "node": ">= 12" } }, - "node_modules/vite-plugin-checker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/vite-plugin-checker/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/vite-plugin-eslint": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/vite-plugin-eslint/-/vite-plugin-eslint-1.8.1.tgz", @@ -18613,12 +18312,6 @@ "node": ">= 8.0.0" } }, - "node_modules/vite-plugin-eslint/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, "node_modules/vite-plugin-eslint/node_modules/rollup": { "version": "2.79.1", "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", @@ -18635,13 +18328,13 @@ } }, "node_modules/vite-plugin-inspect": { - "version": "0.7.40", - "resolved": "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.7.40.tgz", - "integrity": "sha512-tsfva6MCg0ch6ckReWHvJ/9xf/zjTuJvakONf2qcMBB/iu9JqiRixfxMa/yLGrlNaBe6fUZHOVhtN2Me3Kthow==", + "version": "0.7.41", + "resolved": "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.7.41.tgz", + "integrity": "sha512-gASdFRO4CHDQF8qAk9LZEJyzlIJM4bFvDn7hz0e2r1PS6uq+yukd8+jHctOAbvCceQoTS5iDAgd4/mWcGWYoMw==", "dev": true, "dependencies": { "@antfu/utils": "^0.7.6", - "@rollup/pluginutils": "^5.0.4", + "@rollup/pluginutils": "^5.0.5", "debug": "^4.3.4", "error-stack-parser-es": "^0.1.1", "fs-extra": "^11.1.1", @@ -18656,7 +18349,7 @@ "url": "https://github.com/sponsors/antfu" }, "peerDependencies": { - "vite": "^3.1.0 || ^4.0.0" + "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0" }, "peerDependenciesMeta": { "@nuxt/kit": { @@ -19126,28 +18819,6 @@ "vscode": "^1.52.0" } }, - "node_modules/vscode-languageclient/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/vscode-languageclient/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/vscode-languageserver": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz", @@ -19171,9 +18842,9 @@ } }, "node_modules/vscode-languageserver-textdocument": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.8.tgz", - "integrity": "sha512-1bonkGqQs5/fxGT5UchTgjGVnfysL0O8v1AYMBjqTbWQTFn721zaPGDYFkOKtfDgFiSgXM3KwaG3FMGfW4Ed9Q==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.11.tgz", + "integrity": "sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==", "dev": true }, "node_modules/vscode-languageserver-types": { @@ -19183,22 +18854,30 @@ "dev": true }, "node_modules/vscode-uri": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.7.tgz", - "integrity": "sha512-eOpPHogvorZRobNqJGhapa0JdwaxpjVvyBp0QIUMRMSf8ZAlqOdEquKuRmw9Qwu0qXtJIWqFtMkmvJjUZmMjVA==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", + "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==", "dev": true }, "node_modules/vue": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz", - "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.8.tgz", + "integrity": "sha512-5VSX/3DabBikOXMsxzlW8JyfeLKlG9mzqnWgLQLty88vdZL7ZJgrdgBOmrArwxiLtmS+lNNpPcBYqrhE6TQW5w==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-sfc": "3.3.4", - "@vue/runtime-dom": "3.3.4", - "@vue/server-renderer": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-dom": "3.3.8", + "@vue/compiler-sfc": "3.3.8", + "@vue/runtime-dom": "3.3.8", + "@vue/server-renderer": "3.3.8", + "@vue/shared": "3.3.8" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/vue-bundle-renderer": { @@ -19211,15 +18890,15 @@ } }, "node_modules/vue-component-meta": { - "version": "1.8.15", - "resolved": "https://registry.npmjs.org/vue-component-meta/-/vue-component-meta-1.8.15.tgz", - "integrity": "sha512-eQ2fdJ/sQuI/SZhTEEYgEfc7QXl1MLfKbAxkUiTr9IE3TyWmW6JQzzp0EgVEOaGKzSNuw8Zau6uWC8RVsK7mlA==", + "version": "1.8.22", + "resolved": "https://registry.npmjs.org/vue-component-meta/-/vue-component-meta-1.8.22.tgz", + "integrity": "sha512-xic335E3KOm3uMcg23UDqo0y1XII8PVPjwoIkzi3tjUzP0edM3m9jF8SYevnJLp1NqiZ035iG1N6QMEauSAulA==", "dev": true, "dependencies": { - "@volar/typescript": "~1.10.0", - "@vue/language-core": "1.8.15", + "@volar/typescript": "~1.10.5", + "@vue/language-core": "1.8.22", "typesafe-path": "^0.2.2", - "vue-component-type-helpers": "1.8.15" + "vue-component-type-helpers": "1.8.22" }, "peerDependencies": { "typescript": "*" @@ -19231,37 +18910,11 @@ } }, "node_modules/vue-component-type-helpers": { - "version": "1.8.15", - "resolved": "https://registry.npmjs.org/vue-component-type-helpers/-/vue-component-type-helpers-1.8.15.tgz", - "integrity": "sha512-RKiPRKW4BdwgmQ9vaNkHYKAThdTbgU4TOphVyyzqxRwsOJOoRIrb+vB49XLvs5CKPNrvxMXZMwPe5FyJCqFWyg==", + "version": "1.8.22", + "resolved": "https://registry.npmjs.org/vue-component-type-helpers/-/vue-component-type-helpers-1.8.22.tgz", + "integrity": "sha512-LK3wJHs3vJxHG292C8cnsRusgyC5SEZDCzDCD01mdE/AoREFMl2tzLRuzwyuEsOIz13tqgBcnvysN3Lxsa14Fw==", "dev": true }, - "node_modules/vue-demi": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz", - "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==", - "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, "node_modules/vue-devtools-stub": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/vue-devtools-stub/-/vue-devtools-stub-0.1.0.tgz", @@ -19284,9 +18937,9 @@ } }, "node_modules/vue-template-compiler": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz", - "integrity": "sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==", + "version": "2.7.15", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.15.tgz", + "integrity": "sha512-yQxjxMptBL7UAog00O8sANud99C6wJF+7kgbcwqkvA38vCGF7HWE66w0ZFnS/kX5gSoJr/PQ4/oS3Ne2pW37Og==", "dev": true, "dependencies": { "de-indent": "^1.0.2", @@ -19324,22 +18977,22 @@ "dev": true }, "node_modules/webpack": { - "version": "5.79.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.79.0.tgz", - "integrity": "sha512-3mN4rR2Xq+INd6NnYuL9RC9GAmc1ROPKJoHhrZ4pAjdMFEkJJWrsPw8o2JjCIyQyTu7rTXYn4VG6OpyB3CobZg==", + "version": "5.89.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", + "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", "dev": true, "peer": true, "dependencies": { "@types/eslint-scope": "^3.7.3", "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", + "acorn-import-assertions": "^1.9.0", "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", + "enhanced-resolve": "^5.15.0", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -19349,7 +19002,7 @@ "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", + "schema-utils": "^3.2.0", "tapable": "^2.1.1", "terser-webpack-plugin": "^5.3.7", "watchpack": "^2.4.0", @@ -19410,6 +19063,32 @@ "node": ">=4.0" } }, + "node_modules/webpack/node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "peer": true + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, "node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", @@ -19436,17 +19115,16 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", + "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", "dev": true, "dependencies": { "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "call-bind": "^1.0.4", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -19464,16 +19142,6 @@ "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -19545,15 +19213,6 @@ "node": ">=0.4.0" } }, - "node_modules/xxhashjs": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", - "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", - "dev": true, - "dependencies": { - "cuint": "^0.2.2" - } - }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", @@ -19570,9 +19229,9 @@ "dev": true }, "node_modules/yaml": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.2.tgz", - "integrity": "sha512-N/lyzTPaJasoDmfV7YTrYCI0G/3ivm/9wdG0aHuheKowWQwGTsK0Eoiw6utmzAnI6pkJa0DUVygvp3spqqEKXg==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", + "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", "dev": true, "engines": { "node": ">= 14" @@ -19619,9 +19278,9 @@ } }, "node_modules/zhead": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/zhead/-/zhead-2.1.1.tgz", - "integrity": "sha512-FRmjAFioi07R+bmL+fqbkXF/pCbC9PwcKQ8RDluC5xTaVbNBgYRQ4eKuS1C8c7Sil//UIxet/AGp7D6royoHhA==", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/zhead/-/zhead-2.2.4.tgz", + "integrity": "sha512-8F0OI5dpWIA5IGG5NHUg9staDwz/ZPxZtvGVf01j7vHqSyZ0raHY+78atOVxRqb73AotX22uV1pXt3gYSstGag==", "dev": true, "funding": { "url": "https://github.com/sponsors/harlan-zw" diff --git a/docs/package.json b/docsALT/package.json similarity index 82% rename from docs/package.json rename to docsALT/package.json index 7267d836c0..54685b62be 100755 --- a/docs/package.json +++ b/docsALT/package.json @@ -22,14 +22,17 @@ "dev": "nuxi dev", "build": "nuxi build", "generate": "nuxi generate", - "preview": "nuxi preview" + "preview": "nuxi preview", + "docs:dev": "vitepress dev", + "docs:build": "vitepress build", + "docs:preview": "vitepress preview" }, "devDependencies": { "@nuxt-themes/docus": "1.15.0", "@nuxtjs/eslint-module": "4.1.0", "@nuxtjs/robots": "3.0.0", "@nuxtlabs/github-module": "1.6.3", - "nuxt": "3.8.0", + "nuxt": "3.8.1", "theme-colors": "0.1.0" } -} +} \ No newline at end of file diff --git a/docsALT/public/CNAME b/docsALT/public/CNAME new file mode 100644 index 0000000000..2a58383f47 --- /dev/null +++ b/docsALT/public/CNAME @@ -0,0 +1 @@ +nuxt-speedkit.grabarzundpartner.dev diff --git a/docsALT/public/favicon.ico b/docsALT/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..2d976abf5c6c64e9055d1531ec98e0f1d3d763aa GIT binary patch literal 5430 zcmeH}ziX307{||8tb;V2#G$l7L>xqsii4CWB7)%HUy!98#36%-NGYf-1aS~2=T1_b zM4X%=2z3y3?ofi0NWmx~6(i^8o4i*p$-PIKUsA{mU!HrPAK&M>=kDHnjoD{1W^&RX zbLPgFF~^NDxm@FY4gF(uC(tp(qoGIanP-0XOCG5Form|!;NXrTWq{8WPy_Ekoda0_ z7Q6yc4(wB41IWM5fjkMmCb~9`!qw9munb;<9DX5=Qz4Ed_6gF0EwBkX=D^p*78xG} zpFtYO0c!B;c!BSIpxjH~7*PBM&>U39CQvWlg0^@q1HO)<8i}1C-p}3CN8)Y+)f37a zjrF$zIi`VMvtpy`*AlONRs)*vglx!;_fO(~-o-j@-aFdA&VN|aT4Nl3e>7%$-I(|D z#+1$&Gkc@~jknOrCLiZ7sqahR;yfc+5A_fd9-zSIEUO^?%YH}wH~20RP+^{WQI zw`n!#9(>+Q4cv2MU;#V@*Zp;dcc3*SxmS_8_Z=38QA0}Zq0|t_T|@WM>w)SRNFP#i z7tm)w3Ai2%qz3p~*Sp}>JE`Ge7d8A~ukx4Bco?Uhiw|%wr|~EGAGO$vj#m=yMc~e( zlT~zwonI`!d;&Gx=`r`Y4sthrmjX4EyPWr~bGuptHMqUkY0taP9jRexxxE^$CB3-h zbdr(1*7LmmJfZP_&V7sg?rb@!Gv?2GVD~S1TK_+qawlsu$p4Q#HRyjsb8pM-)(e|| zKR2Ck=hLl(dk*N|;%tlqd*A;*WBEq5Q3rbIfDJw0{#d*I-P)CkwQnl-Y^8ePZ}sj> ob$c#bS(+X%=d=4uGvg1k*_E=Ov2?P@N4|=w$BIK-;tV|h063$ax&QzG literal 0 HcmV?d00001 diff --git a/docsALT/public/icon.png b/docsALT/public/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0b5785b517dcb541be1d3f9298c8b6af49249526 GIT binary patch literal 4863 zcmd^DYgiN47CnPo<<>i|;o`8#J8;uS5ua|7hDC=X&s7nh zg!BD2gh|2|hlj0-jruiwCPG7x`+0dT+4`WVS{S{e;*ut8?wZA4FG+suRAMSuoV8@^ zTIPtqhM-f!_btbM8L-+bmihI&2X>xbGSYMVrwr+W;S=AkyX8CWM$%hjjhAP&c3c-v z|1~~TQ&3vcdwGC&x(_7rC-@7x=X4Owebp!xmM<^_l*P4%P7HQnp_jcSszt>!-1j!=@TVtlNMe<4Oysw&@5CEe|uB4VN1 zA?ooR(^#`d1d=g1xvyS3KI&9{tLWJk-DMNN#ZaS=(HTrW8&2MIeZWp4I-N=Bi9BH) z7sHXe(M8>zf>_92#u4kiAyBFche3oPO(+Wn350ZRjGd*SEI#7L>%B!S^z_|w6@Jx; zdQ7}%<6`Gw4jZv&8(sKP8l?ml)TXO&5fXKGrw~;z2S+$h#@Q#J!5_nd=zj;QUVgrD zs8}E2?UX0oP&HlKn66Qc%+FKKSk6KjLZcuvO@$Y9SGFE-%d=G;!E5gI;KXJg;n&lC zyhz-2trSxVd)Ekh6+P3D6x9qa%#^DHnB<||*7O!ujV;P(Yaz9s{*{?TRi1P_HD!16 znYzXWYTmTViW~tXIz4PecZRn*qS!9JoT6g9#=SH4J74w0m$4LAmDg-)ChCV?@e%dv zg@>U=0#8aMl21@Iva#8=Y>baYEY=I==U#|Gh<*6)G4#P(fh+zYPLgWanN3vyD#|`T zkL`$+hXAp7mu75I8WE7b3~sJ&p59)BKIcTX8dA1di|Y@8Duk%{;FD1WLvy7J#f(oV zq>30RHf8iNR?VWG=-MP|N>w3}2PfYbU@J!R1|&h6xg7V1Iif&T1}>5&c%gu%^m*!q z`?&=-+Mj+qAu9WI$1vxgA2-!E$(i4!IVtnkN?IkW`A~q1h?RucC<$@+3@?NuF9L@_ zpn-lsIf8mX&~?+ZscPxjY(zg`(>&0#Sr!<^9|S|i<}=tB;3F4EjJ~BZ{uik*Bgw~h zor&4A$8`!79XsB>*3V#y;EHr17(a^P#95>TVE}6B5W=_Py z(H?hwXX4uYnOip2Cm!=r$5roPkY}B+3wcQt^1ih!`J+?(2Q}vy8!G<4X zG4n}IVae4|19f!?L(}klCV2_)vp%L~k6zea$ zB~q>e@u-0GFYqj30RfjmW~Mx#vp_F0+mS)FD+_y&GX$rS!Kp4q|8fx_Xk>lF_k&~o z;B?t$a8^G!f%?HACeH#6F-P}-+sn*hfGVBbk~t>Ub1+lBk@H(Fur%bI6p5Q##?hzo z7e?G1_YJXbNh{-eT-@RoR?yX@DdAEuYnv1{6d?+> z`a*zlf4kvyti|HVjp}bMu23Ws_w%$szLqlTzDBv`*)zZQBv;QWG?_ zZ$Q(0^qH4P@p`hlMztvV1&q`7&3C|xgr1zplb0gOk1@^8WDz*O!&c<46aLMKOy95{ zKeVYUBmLUS`qeUzsDW&huRE64aeskby8U+dBX`&J;mLq(F#O5W%#4ZUp{|kjU^*p1aLegE?mE|h(o<7>}5LTDMiom zHu;hWk~fetD^PcH(?XwPg{ol@dbiqTZvNktg<4Of#yyM`J+^0NDjdnV9bL>^sFIBV zfz}TinyXc9su#+hY~z-Dq1$HvNa`DPPabJo$tewW`CI0fbsXMb_kLD{XfouQ*CuSJ zALu~Z#NFR9<|pb+rtWqm)osG}j3xdE8VDr;#3~P=ZX(y}$3HC-QX?Q%r48b+hhohY z@2Q+RJLauSRblRyi3x43YXaXGpkVr*zHvj`flnum7Fwyq4SB(v7f6Tz$K-L53*S_y zCDI70JV&H!Z5lw}cnU?|5TZ@m#SpP}dlQhOmAYFHhw&LDR1GpPWM&Z*6h@a|j!m5T zU&5g`G1&ciOs$FnZ7olkM@^P6AHqm3N<_(@C#H@Ov`~5OCI1n z%lcWsq=kN8SY;s?H@SeK&>85Zyl2wnzh~MHUIbqm6gXukE(I=cEA6&{FC4fC;vl)X z=@5`o-WSmnn-ZlxV2VtegHm-CgO-t&n?-9w`v6BJF5+d*b|#}KIyaS$wLjNuCkrg) zp7f5ZQ%x}$goP@&SZ8AW=Gg1^YIt?a9E?Tf0Od&KHUO=2VhEm=wM;4syel=Vm{r~G z0q%r{nEFQvr3`Zc4@^qUxTYruH2*guC>A9WMF{i z3yu>evfPdKvQ!n^nt1}FP(qA`cQ9=X4!p+ARJdD;wWl}2Eb5SAqOs2d{{hA#lrI2I zhM@4m=fS@7{D0w_)2upK=!!AJ^ixY!>Bf0bD+jGA?$vr2bD1xGt8|oQ@0Fv#S8d9( zQgZhYBG1EEz!aSeKFHsKx}0*_N}bRYt)XItiWii85sU27@TBPKx#po)Y}Lbj*8^7V zk@KuvW=&I?kU@Ag=g8&G1(18fFk=QYapct5%ISWVa7bl}!+l*O3ZYmq%Y!{qt zjne%c6(xh!%A3W;aq7c))>8Ch!7a2ZwxQ{g6Z%Oz@Sb*1MTh_1sYs&SZaAP8lsi{p z{NL|oX;mCCDqoa6zsTlHWEUK2MkUNZb~92DGjcL@k=*>TgM)V6-r@J5L375r_?=rQ zzPeKWu+pDO#EZb#Sh+I`b{y<3$PqRz4CYy5&_rOcau>A$5vQh!1E2YW2|TikI(b=% zSkvRE69<#e$N-m^Vc_6G!^ja)3(L>b%h)3^E4~Lk?Ss*3RO>^)UKOoo*%MVX8lHxj z`y8;-?OTJ&ceFIPz{!B~;=;^v0q$tCULJJUGn3rW^Ha>P$+X zi`nrJ4HeN{69Q~8v^~w!uv+~3@Y`8#-8Lt*h90>uNgA*T`8^o=GyD;5Jxatx;|up3 T=y4s3QziR(FYwC#K)mzsM^Oqa literal 0 HcmV?d00001 diff --git a/docsALT/public/intro-light.png b/docsALT/public/intro-light.png new file mode 100755 index 0000000000000000000000000000000000000000..80d60a88652ae9a4f1b753ea4ed7605919388aa9 GIT binary patch literal 108412 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

XLluN0s+&)t-=PsY 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 literal 0 HcmV?d00001 diff --git a/docsALT/public/logo-dark.svg b/docsALT/public/logo-dark.svg new file mode 100644 index 0000000000..d5f36f965d --- /dev/null +++ b/docsALT/public/logo-dark.svg @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docsALT/public/logo-light.svg b/docsALT/public/logo-light.svg new file mode 100644 index 0000000000..11ed0d4167 --- /dev/null +++ b/docsALT/public/logo-light.svg @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docsALT/public/logo.svg b/docsALT/public/logo.svg new file mode 100644 index 0000000000..0b4e44ed5f --- /dev/null +++ b/docsALT/public/logo.svg @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docsALT/public/preview.png b/docsALT/public/preview.png new file mode 100755 index 0000000000000000000000000000000000000000..80d60a88652ae9a4f1b753ea4ed7605919388aa9 GIT binary patch literal 108412 zcmc$_by$;a_&+>C5m8Z8KmkGNR#0Jt15r8zq)SDl1Z1OQLlKM4Nh{rxX0#|0qeGBX zV2nm;#Ol2PeV*s{d%xd5-oM@*hsWgJ73X#4=Q_{xetS<_<>c{;$3Y;_Nj23wdLYmd z;J?%X$BqJDUp59m0$=pcR83$Y5ChZxKdQcQI1vQm0;%0myziB?H16wVu$8<`TDA1$ zf5|Sb8o+d9hU;_gPp-LhYj;%KWJE7L+3Og8hmcDzl-c&uNv=?095OEMvT%w2K2mcl zy!pE}?n3bd$KqQVj{N(DFAQmI*F;ymrZuX@mRN>X5tZ zAYW=h-S?5#OQbdz5cz(>Oxc}*_dYI%Y+V|17|HwMntjKt*;a~QvgKb#?lFt26 zFY_4aYgw6052AE#qPcLt4k;o-FSpjbxC-&F0>t`=mBX!-;{ILo_R6!CGr2_;FGg`eO2u3lW*4E7wB^FJms3%j5#@#pU@)Y!Mq(L3T37S&!K zHH+l$ehba*!t6XJ{6}rkkQs@8h)&`}7p+_ZQ8h7K$6@a zo{c>yd_7___CBE&rP3TH<#g>W<#(-`JCMG; z67f8GNS@I}@SSMOdcW(5HawUA<)jt#9|0kgk}TVOf2EZ&#Hqd!t3$j_L$c|xL$rlv z<1}=vQbjDEF?U=2>#o9pnSYMXGMQ8am(8kHFEaMHjNIglDXN$2JKlkE9`D*n`iEa* z5$FM(6w_4fUvaEqr~>_;eTc=p`Bw?C*h9hoUAc420BP|UCBfj;OZ*J?#?|rJgNKF2 z#umpdp&SlmiYCaJ+vths95u z#fQ~CMXFIpi(vYg^8BX#>Rim-jqaHB5@KX_t@A&-G)sEwQMD#(9CG+bD$UeSBUGJO z!}#tg6x%`A3<0-e4|mJg3~v+rP^Mqj{pWH>wr? z3XCN>$pQq;{-de0|CO+Uo|B`W#>EQfN|p=1w*GN^Vy5VUz0i{;f7PN(^OS&lvP$*i zfgGrs88b@!AEM5**;Gj$+ADer<|DWo6xm-DrmM`W-N-Oc1Zi4O;6NniTg<*jB@Q zz6l=lzQZgo9Xxd7pW|GCc^~284?j>y-fKh94+h@`?yGs5{L=8J`pSu#{)b;dF#do1 z0P-t)Kwr;9ub`H%*-X!`Q(!`e}orhv?4^bu(c~ z)}f%re@70$Jg8d#gm2e&Cj<;>fuCoGn}VnniWBhVs*YwgN!P6NVr*D1tNzgo;m|`f z{uA$-dFep#-9bkb#>KP#%j%IoXEUFI{*jbM*JEc4o2-rJhNW+8XZt%{JqWBiqkk8P zEx+V|>?(35G;E3g&JN+wznabM53h8rBu!d7@s-VAaz=a$Unfmv zy5hlF67~~i(cCOZa~BuXfL4Nl{vscy>e`_91<)I6PKp0!6(#^Wu+u(K)kA1_9`Pb>E^w9T5wrT#R@6exL&n z^tw(#tqsrcsE9$bCuQ^DaY-=4x{N|169*{j-M{k%_8rJd*$ggWyP`ED*WJVQ##)T4 z_XV$gmGY>g`1+oEsAI*+fQ%4+nPGLQ&jJ{~@_E&Gk3jd>VU8 z9U&XYhy(;FoQR1u>ZhuqCF6_E!TSd7uNQ6GiRjYiM`93=YSI@Dm6_ymt@W-H zzWJ4T?Dk(?uVk3#<=60I)ab?OV$$Mh3QHDAlcOpV{r$qY6n{S6kBsQh#L6Gs!Hc%q zr7%!H-?vqbL;e-H9eAvmXHd|qESSZL6WC7N8~_K{FSZ>Yc-$iTqss9yu1cv7KniO1 z04K--LG~NL_wWc}&(UX(aCsKRn~%?!qTSliK+L!z zPQz90<~|J=nr~NaTY2`^5*}JmV}2L6g@nU>bVlI}xj5ud^MsrC1Djs$fwlB)u&9q` zjMT2usGdrWzNd12!SVLTK{xkbp@pN9n^<={)A7gXr8G#SW`aF%ar`{;eJAdz-LS(X zUn!_7!4c8!M8>h^-OdhTCFgEXinZ}>67(Muo(@r=Kb|P!NH{DndRpr z+7-3M`eAPF8d?UKnuUoX)8FpH;8dWGdp{NOlO#Me)3W=y4x>=idyVn!pXq=f@&uEf z-6CxEFEQeP+p0pYkNcv>k6I^{rOC;^Z0-DUgo}|HhXzzZ&$qp*7DWS$%v8;8>jAs# z5PEnFvHXXtUWxnT-LBiB>&fuhpVYv>cQZJ4^u9M@QP##OFR#p(Q))^c#SC;OSw8c5 zIm?L05E>{CzOn<5w*i)0w2}g#xcsO4GvR$_UI0HeB*9ISW3JuaH|{eX^XB6+fu7#p z@$xF$UjtBk{kj9DLfUy8R?m9QgbPD0p$9Ru9Rkef5~=<)0fY|gNtsj#K!B}8c4i8* zqkFWYlHiu+ueIAi$}Sx+?CW5@StVxHNp`6Y zw{Zdt?QNakSl=d?E@9kSzTa;vn9t@VON?K=`dSG62$s9W##WLfcX;S7A0OY$!a61G z3$n_6_QI>GJ3XplNxNgQ7_q2z39x_Wtz1^=vRU!0@fhW;Daw*9$}$yFF`BVC9X3&aOHJ+F{F&C1i2zR5zO;X+ zj77OV-gMw&+sO_a^|cIh_aDu*Is4q^eUfuV z0|54MUpSKSh>eet=D9PQt`L|*a+17fMY2-KZ#jM`Y2?DfN?TleTcV+q33(~1SyOI5 z*Ye@R)0@J%)Tt~x&(y@6(SUG}49s2PUM2!j%Rp%Jo{G2nk)ORmI(fmydZsfI&03}Qp(0_&t(zjZc5 zHZych?P_%GUzF5jy|*N@+m7H;L~Sk@^6jhVPsUp>qc&u-jmku8e#_k&ZIVoB$c&fG z1!?xF^@8Q%#4PP7Tl=a3BK8fAbMI?1uwC?*WEECdr7l%xLSjt@3T4HYBw+{u_pm8O z<=;fnaUjlJ738XgdjTV33rahfkVTtnqpMMXL0f@GGO$@8EKJD(Dkl1>?d`v#q? zGVveP&MxWtEA+TMjBt{jhzi=6U9S~6jDSy>wD&m;`WhRjgra!xbHkVtXr=;iE+vO3 znQc38Kh+h$Gq=1L4dkf|h0e!!o6Q_Q@KX3UT_bDLkEdR`N;vM>A6b>+I^~tZ4?(^q zeBS4qg5HVpo#o2B{k@qOU<4x9nV{M%aP-_5q>CVP+6ZQ=Rmq}1sM{*n9UXt@ zQx23H^hT;KWM>G~@Q{;+6F!bD1NDOU_=Zxhz-&{y-rR~|x8T3od~D{J-#@ENkW+A36N*l*mq1yg>(kayC2U0RjNVwE!yl{}QF=UR0eH8IYt764V zf8>;BYm1nrCYrh5+>(m*`{(*<_nMHxqNoe{*{a?bkc0ycumS*hxbk9i)ID+7#CYwH zrI!+2$bm>p(rF;^qn;Lj)g+~ z&YUAHwT}5J$UOz{b!`b&3U6noUS)^VJ{KS|b8uh~C_4dP(V8)`b_Ca#@iJH$Kt_W5 zjtKZXVB$4*gC2N~7{uYDt6I48PC%fPe4<${zQGw%BKF?=TQ^(X-g>Z!I>*774|fK& z^2#aaZ=0}~i%qwLb|t{`%&TY2lvgJ4L&Jq`uKn$H^1e$yRiiug zyphT-`Ok(={ryP*PTJ5`))Qx}&~z%;P&Jy^K9pZTj$r1x4$NEfa`m`zbI$sk@z}$? z8e604ufDNyur_>dVDNW);UI(OqS0&zZU+RKO2aBRsudi6y6c*LI6`4yFh!!vn3EZ6 z{%W1^@L8tA%2L10+KW;qGqNCN<{NNP^31(uc=+RKB|w^~a{vW#ZJ~90doI&nki*qK z+_CAKucgr$Y2pHYD))2)+|L(YLck%}3bnkh1`jZsq2KQttY7`38B09H#QuZSAnC7M zxZ0yk$@X3A1m!=+70`h0W`hAT{v1hqesNXDZ8uxw-&65a9)G5XfwY|ufRD|Q1D)iC z59gltRuiM#-_HaUa7vj%Uafpb0KDC+RguvmSr)|`PDfjnrvBp7s23&(4@+-iV{T%w%e~5S3 zCw`S}yvp0`<*Mo7`$_RS_eVRDjNiW{EIrtmG%!PQ&EOwLE%=m@t#ixBeF6Z z^?!KtQuOWq@DDC-p8XR5jy>G`p@aNDN-J=7!yYLaz{3M~+=CC7W^B4J`?k4jn@!rY z(}&L#-nV1gAAjG}$EIyC^W+ir_xW`ahCBQJJ>Wl9a^aLr_?)iDh(RQjHjSYxJ*BYze~k5*epEZ8 z)8ygG7;xv=kT@KwU~GD-j1Qp0aKPi#;iF@i_X$GQ@<#We7ydegpYPX8B;sWWZYH%q z3+@1GYuJ?jczW*dj5jaH%$c_Z`DR8?#8XCQZ_y}e<^BcEy5zK|VM?6|*az)Q8;yV(-D6JQXTHIImC z3#APi!8U%0Mes}H!|f>INE$#lKHQ(H9ky7sj4HxasN#P|Mu*8r+UA9rRx9KcnegQ% zs9!o8phS17;s@k34$z)?9bz-W?CvgIOju-lLsCvCtw;x0xPFwH{>>x1DAX8U1teT2JfryHu<#e+|#yK z%i^BiOElBo^Vw}e>(%Gn`W_w;m}(&^pLmgjbYeA<%GQUlH#67!v;YH%-N&WMPPmEj zei7lKYV&ps>xE3%&V zcRATHwXH_vCcnJRix4zv&zSjnGNU~A@}%GJT6boi3g+c&qYJVv3c2q_#{%YMS9bRD za+b{z6y0JG4eeyP;yawm0VbC15c)Of0~9v(8Tcv?Wq9m%Jrz{)>xkbz)$~u+T7}7> z6_t|_amMA=^2^or$R)qIA1{#2vv${p%bk@(CdDiKy*neCXFr9dhU?1F-5YZ&3;q$`DxQgpi8x{d{NF^N|@K?uJOfZz)L2T=JP6W_Q2aqnE#2 z!Ra&7y@IQd_7TtJKD*U7Q#I%4*DayGoR>3)32w&zS%}#bxZQlD|u;KMhK1&FBYmh^8VKh)wguohki> zF#-9yI`2uEtJf{iLpqAx^ma_V`wBYMk#}L)epM2d1*Oo4iR?V{2j;}S#r$rjjF7XE zWGNlBCjy$XNZ6qIFzOg8-k(Pp{SCgQfX7>J3de~@rf88V1v!)M9ovB}m34;t&dDPDz|gkT1LNMM!< zwZmm8z^5oz++b3sre>XMv$c$YP!`2ot8J~?g((9YsHbt=e!JS}t(8^S1PJsozj{sG zs3s!sk`s$-);wV$PRFk;rMsplDO^T;`ZJs1CFjR_f~SWsnIbK=2cTtWSFrf0M< z0ic+$9l}T@;@$wd=f!VdN6zV5D$woB)p!+g$mE*XfZtmGzDZOsRtKoB98Zk2Q_NwY zP^q2H2Gpe;!u3OdN=2Fe*n_Qv*X+rGtA+mNKy1<=18X$hn8hz&kI-@KX0M`1 z@2Rs%i4c#NRpX6}$D_OQ@4SNbfk-SIhULtsrs=vz9TviLTEHUIrGdYbV9L%(fw4)g z0XNZ?+A5o&4Twzni}y6@Kf8Sn&tpSHywxehXA&0y4IVUqDWk)6+P2d-ybck9i7k&8 zSRK0umTv>BUT)PFNOSRi@LBC;@t4=gVmaDYrzVJxq82x1r4`Uxemx$lUmK=}@O0nV)%LL94WOKSvg_Ai*|PM|+RecH78 zEiFYr*{t-^5`drpr2{EL@$seB&F1Eflt7%7#oRVQ~fXR z*1Jw3g)tc$P|!OiV7j`(!Ov%PSB46t;}8YMPk5>P^H||p+C(A%XcgwuXxT3uXgBDA zbc4_GRx4vsX<98T1`$9x6vh53tm-y*gGk8&+m7+lNCcadOY}x}JaXHei{7n#@m1ky z=GyZ1OnITKHhb?_e18Uf_PU7=`F3t@-gRh(DRtg{up5#@3R8)D&E-qrJLXd=vw1(T zi_a0`YC^}H4vzU@wmX@ZV0x-GRSYauLNetm!di)`P`%0MopM>8*1-gZLquQ8hRtw{ zXF0XBH!cu{+WVRrY_OriA?KdQ1aPO*9ssKohL(nWNGswQH8aDB?X*6WiK`eTAfvYz zj@YWKY~TKV%kmSEO|_w6#_N%gFFGNNIQUkfVhW#1O*B? z#XuRE{j`)R*@BYk5@Jj|nYFubD7$-;2<0N<*}7V5o}aDiPCO5s?=Og3O(bo%AT@45 z!_3i3)V|mA`kfYdS4=Hey$JI5euVLdoCF43XDm=NgRaz~OYF$;cm&-?dzav`O8hnN z6|5HjvX%Rw9pOEycJnsi1f01DX>O1duUTGia%?BRzkhp%DFJTmI*3hCrd?d@@n^i{ z(TCS^8Vw$^z87BSZH0L&IzPSYQdBpR!c5gWIJA?p`P89|QrTeNK$`rbW)L1%0(g|% zRH1lqe}*Qda)LsT9-R>600NPPj&lTgmc;MxGQi7_v7TT9#KVcTn>8t;SLzZyLcEsd z12_Xu+LBr_jdA)>tE&@2L#+Lv^s!XJyHvv zr{1ttVkaMDsVkIwV@dVMfV_gNK4bbEH#f`EydU~>U#lUwGs8R0>dDE`>d4!1RzAGG_q`ub6U4V>ZQX6jknR6Y1z?~u`%Ewu? zm|t|fI5Nz$tHXZ1(ZY(pmUdu$bx(X8ywpnhwG#MIz5nXmG=3ys3}*hmC6bvZc~5Z@ zEgB`iwCtJ4F3w)Ynr{q$KFw6bTHQc*tH$T6KSv$W?*fdl#qF#cd`=!N8a&o#T~zhx z?R|?I@T&w&x|tn$i~rQb zr;)Xa@~VpzQfv|4aTUxBG18i_ymo3FAHZ%>>Dv0Z7>)paSNLpy|LylawCwk6x@tkr#aaFkagTP$gvV`5IJK7q^`W!xj#Ln2akITCmfjRwRO?JIPNVs& zE8volVVT(jN7s?+btmfzOK2_0>*5r$q)K|$#fs%m;%7OCdj;4*3K2mrpS#lgmP9u? z(>8r1-16enc2Q5imI;qy%h3vpB0|0nE94d!eqkNCT8*0X({V}NPXUI@u-attj{XYk zIs^03zWH>7k1~{sD4TPt!DbNkt4;UHjV$0(l*QHt3Mn12?GG96vF_7Nkj(mi7fKoH zDalyg*j8^L>0A^)ceI}oEzgGFP7aq7&(*cjyXg{_z3fh$gJj^aQt!GJRTJBFEFVpJ zguy`&;xNA>(<~zraJDl;>~qyRkRG$D}yyx|@3CFFa!*hhxf#P5i6r4AsSP zd_|0SlG&z!ZZ=@f7Y#b_%Nnr_g#NTjHXeU+OlLgv$l~RzQSWrqA0r$SGy3OMx1KQX z>msDRfxRw7M;s^lJV;SFZXig}tqYQ!GFmnNRcDy{m`i>6T%@DrToYJk1Vbx2mLzsP zv)fufcQRmh87qf$AdnW=hx`yla=U zHuwkm3`>wxL|Q$fF$hO?o$-+jUS~X(lKRKyjGPV4Tx2YH=B>?*a!x^;J?aMZRoHwo zk9=S|Ia)!0n#)c=;itCBGwa@*@y}Zm#dS;R<9r01#m70kM6_;&NZ-i4)`)wRI?}Lf zP1x!VkG#{|C!wTqvJ&;#S$SzoiqqE*+YV`9h<#qB+S4bQ^GK6LxJQCNgkY>;Lm>JH zcm>C9PM?@YCk#L$WPah9OgXNZh)AIz%}=dVJXB0hqZk5MfZP0)A(Y9(v7ELfOS6+- z)lMH0|A4j3tB;!hP0P*$nUS8hxk_n)idMFQ;?}7iC*3UE$iN~-p<1hQ1AkI3jtgTe zMXchvWw-bFW=^CYcdwq3RbU`dfmL}I87(YN5~JF>j33rkfPZbfoekh@+6OL3M8e|I0)84!<#*=sF7oUU)9+nJvf3#!o`V}GC7*~Z zy2$=yx5TGYsYs(#Z{|t!Pj-L*YbI3-74J;Ey#<12Ne?fnTDVHJ147~M9YPDhKMi68 z1Jk&_H4y^}Dhu=Bd%Wt{Am&=9N>UH9Npij=H(&R)zn{$B)rIsn&0ybM{uUO7wyWSu7XtM#Kq_WQiIBf>YcM=v zTrBOJc2D3$c4aR`*IQBCOM+eW%D4#i)pO&9_r;bkX?E9y*-2go*qDCI3_`K6Cd?ST z-*|bnZJ@QG-7zi*E>g{yyI@DYG)Q{a1g3s>!@Eh)Lt+Uoijof=&1>9ad{ZJ2g8-v7 z77xHxKhwRs?Hn|?@n{^v|3|@Qo9;YhOmLMlE-wM^RBs#b<-C^uA0#>TI7saI^&39- zQe8~F61@tLFJh&NK3V0Dg%u2K_+vOGBk5N5+SPc?uWdq|NG9T_NZ1qY((s2L07SMQ z|I5YI!u$Mu_4x+d<*f)wbqLoC?su9oR`Fo{=DapU!TVtk=jUNLsygvp^VQL-tLe+h z%Ho{PHOo}-Rd(eW$CLE=Hzhi6(&V2AuYUYIMm!JMkwlyvl~42-#wLzVLx^?!OUsP6 zvbAHHTo>NRMrS56i`g8Rczrkb1Y=_EI%+mJb$xT^=G|=oD4@zzGL-G><^8odJhwX| zrBxJ)-P)5YC&sxE)iY!F2<0Jdp+S+QdV-hS-V_J`fm~OViXjdW6}!Qw6T!$K^GGM8 z(B-xO)wGt1y}#QUxWsL(>2kPIs+7!&?&aI3!3}=il1CmymX*~^Z=`N*`jq#>>uU7j z&{d8wxHjS&Cgze%!b*x6#ORaPfD|Cg-pVEPkuBFuVIh_TPQ8ZNC!A#+!db2T{)w`V z33ZS!^7!dSOb$;nN=@Y{kpFowoMhSL`*{3ljhySoM@e~JB4dzG!Fdc)wYl$zQXEv~ zcK#w-w6EMb5XW>kI3?_LO5_3?YO{=kV|+gIdS3O~@!URLr7!0qP2bPM9q2vhDmZ0s zc@T_&M2fX@!^9Sxk0f25Bc*%CzE{t+nJKsG@#jyg4bX0ry7iCumG@3Q$s@AW5s9jy zPx}dV_}oGKqU&ncb_UAT^D|gzoUEJP!>M|_7nfkUZg$glWF0To z3KzA8TI;q_>7Hp`7w322{rL%NWt5uSD-{zHu;$*T(p9WtcV0ivPA$!5AQovUP&wur zzKH7quF+z#{f;kFJUOo6%4r9@iJN5MS5NBV5Y^q>@H28xhD&?c4KcfIJJV|NcIsElQ$c;=UHUYYsUqCwLGQ#}lX_4f0acVaQHZj(;OGaUGL?TV5nWN*O=QU+@BOWmu*jfI~l z^Ep6_hI}9Yzo2qmhpbGczpoy5b?MVU6`*zCIGeEoA0r)%=g=A}Pv0i0I zHm@05lL${_mKCrp^4q$t;tY3Lw&r$Ll(bawo`5ZirWjs(CAmk{eUcwQ_)2a-obNx^lc%XJF2bHK2Mr$2JVQrmK=lOI+B)iw;a?$e$D~u zEBlW&Q&3USR_NUiVI{(M80eB^g--x`lfB~ubr6OOAaULg{`60tV>Xo2G9wdvU!zM} z7smqkYN~*Y1qUf4PE0$z{9IV6V=@6!Fz2f6=TMGgk~gyBucN(gK%OVuQ~peq$y+ed zkw&EHSj#8&d-uCR{ZX9l4D|W5Zu3G`ns7F~mmj!f+VCXEHJuOUvmPMuyOfBrh|1>lioQqfBS?V?P^D`b+1vn2C3Mlv zDW5&^!O@2@zZlLU^V)hk08HL&*aBePEqlR`pIcIBJNt*a&t``kajpG}a9+Ymw2^ndD_!n~)S@6>f%0hBdXpkxhW)5wK0B`~63%>nnw3 z`$$zEi8Mc(tFGO^8)!e=bTmxDKspV=ihg_Gsc2pZP@q$m)Cs^BK%gV`q;SYe;;4o^ z+az47JzH>nb4!KgnX87?*{yP2qaT9^ODlecI=(9-W9DHO`SHi@u)xTncY;|fk<^YR zGc&a{7N^tOUu!Vuvlqcf`tK3tP?^t?oWpfhcx1-2ABC>nd!lj%s3D%+Z$n^LZ+Oy- z2FhSSHJFy$TyZ}zi&AL;Uoio_k~VsUYv>=$osj;)?z`TXQ>v<_8B)tt+^XFRXlwh) zI4rrxzb7{1OiD=bpnFZK4&Gr59;3upvHbXRoHI-Mx6Kk;$U7Yl4&39f@9XIV@Y@JM z_U!1}Zd@FZcF=Q+3NjK>g6aDO;P+`XKbqzaP?f@P(>^;4srPjEbxRqe!cxO|?Pg4Z z5aQPR4^=P}EW$^SYRj_%IXUVxTFoeTstKFL)x(I%vP?|>hJp&TXt?&3=I&f+?R;0v zC;pbBpyL-<)Pn*bl|8xsZ6)Ur%N3Uk2ER7&feO2HjV_9tjzGaMD3Yd$=?MUwkW9Y^ z@{v1+2YbIRy0SF$HE%U0ueeXtFhBPzOY1KKkH~fz6bTy)0bSxchW=ZSl2DWu_ z?He*4Q?JxkK7Q)@0@DU!u1(Oh>RCtc6){h-py?&i^;?{pEJUpA2(r+uE5zPB% z5$dQZ^@7v9(}EMXpR-EMyd#Vt#TgeDjw%aogtO$+t3>uwx16lR)eiSM`^%1#>P29# zV6Wmn_p|I+-(Z1l^OtH^= zsntgFTODB)z;>ARUotb@i4+yXoj#e^w%)yY90Q8tb|K_)w=g5YV)s`>Dd9vpT6Q*HL%wghabLOThQO7`OA%d*|ukHq!WdeKle zOXP(c1|^L`;hpf;&wCM>ij<%GUC7bfa&-%25XPZ%j z&yj_*%)u4Ez{}#&Q?ol6-V~ylw1x}Xc~H|_v$?| z)v+izyn3%Bm^WGtH=Z|t;Nz2eBYm<|M&{q#<}ewagT`u#Qrt39>`lq>d#9Zpw#pub z)Qyj^;gMu=&H9Qy8!vZUZU4k&voQQlNjF;Roq~Bm)dJK?nPc&$`{BPlLLw<+mnQj{Y~QE%u>tA#MfP&fh4pU^GG?lC3h%Rz`OaazU4U{=DD6JA z9ywVPwko z`kN{<@9E>*Fv!A9H?uc%{+$Us0}gE+^zcUrj*r&iCx|=kJ?|PzK+GUT*Ql%h%Gajg zNs1x~XKzmQQ(gVs4exvhREN<11jgSWrJN=aDnW|&lWL+bkd){3ul>D|PdgKOB}##X z-eH9B9LL@3^xpK@vCln`0cS5+@)}54o>2#XM9Mjw$>FBfSnGShu3w*XotZ%>b~;2d zIa@bd2n4FEXh36z{_I0P-Llqrd#*`ff1g>EUF5V8z3T33o}M8Aec^Q9WQOyQnuVGi?yiuo6ejPkIbSPM`kjh8NorpjE@wV1 zR+rUcD^kLKY9A*gth^SW%tLFk&$*6npx)(nxQ#)8%kG|M2moBFMaQ$8+1Aq1sbF_M z)Qi#i+kXnH1^@mr_&hG)7*gzxufN8x~%RMm>D8Pqv*NtAla-Gnl4g9h@# z#VX`E%ATkZwFCXU2X>4{O(&OQ&8{qG@Q7g&kU%q zZD`O3-r3iZSbu3gZ@v~s^YiOnp!qH?R?4tjmC-hS%(w^bCPT>pJzR(J`~+~C@~)IZ z1lB5SC^8@hq58snx3a%Q!`*WP$voMn+W5YovDfEES`n+9_XdpwnH;OP(X7*!qrp6! zoD#=0jF_1mp(7zCF9IpUa-jRu|g!PPcN;?>!Iu2-heKa(Pj_>SrRLj-*oKO z0OdQjihdu4qI#Xq7<44L8lFj~ zWq4~AuY0^@9?u$hF`2oATGJ|V(?8qDl=@Qb!*X_SsM7FjTCOLW+xtnopWy;X;Cw4U zCiamA&`afYCiA>2#k+Gv0R!anwA35>B5EFcHGRonlIX$AC34NOFa4N7fLAN73wqqK z`N8hlkT?Ye+iDB4+X5B$BDmPXU60`^*4; zcPXVrOx-_?Wb>fA+Wv{K+gSuJ8lIGOHi`>1dkdV^#BkMl<|$$WKB>{jr986-7(unS z=tWHp1%Jv35VxSX>~}=`(vV0yq|r)O2r&B&AVMnvo-{viW@!}>zm9sjQ~aP=+{$D7 z*Cfx`{P0D`aPr1&oZ_IrqJ8gBkE*wU?HfyUXAzDf_y)m30c0*^Ua`|;iG42#B-S6QV_rzFO*rMOu z1tSPcoSwAy5I4t=(`Mn^Kvb=*z65h)4@C972o)pT!~H=p{oUA6gRbX#AGkrN>ZL2` zK-#GV=&_j2M7rAoEs+8_1f%tUMj=-d|=K1hBw`4UFd zb8On4Z7*S)QL0FKjk48HSAWWZe)vI^SAK4h+ZN2U?+U9ul7W3kEBGWtnaV-12mRe* zEyE@^x)+y@tRcvc?)H=xUp!)bpu7eEHoI9Z4u;3gJnX^6b?G}iD!$@Rl8%UA>dA98 zdiTxA-Hyx7CSG$w)Mx$x;7AzhTQmnU7N1oH{45T!i`3WE=jHUDRK|KtmGD9 z9LFmeL2$3S&|Y4hXYmk@Slnh30MdNG$`;Zsn@O*$DQXu;QW0durj+R)3iLV1ct?8H z?JFJ2F;X(I)Vy5xZP4uxm|%I8NGfXvre#AE|-2XVJ35gL~g70`+c zaNfq%Gnpja39culn%Ynv!<_wGr@r@niH z?--$P)lnt-K){_}sMvJ@3nc7Ngdi#BfwV z`7|#V*6KHQ66m5Lz|D?*GiSucAT>O-LTWc|V;UA4+_L3MIz>hME>$fG>*?Rvv?EB*}jw8oTVD2;8olklTgKk2 z*V)PY(i!r`=OZCE-D}J*Vi1{&TRG05x1i-|$j`w=^ z4H;PVH);Has!#G8R&)#up7QQ6jhpk9CyuA81Kn?8(t8+s4w8|7Gy$4l08gl!bl&Fn zT=GfPQ0K{nog56~Alrte26l0hUdy+aE!whWB9Ns7ISVPpc9!#2azJ+3p=cu#w~R|O ztMiGcaCc*RNlsBIS3QQU2dHbNcZ#>1N9Ol#GW4D)be`m__I9qRtJBp8?{peq`5j)s%-uT89#%gAlooL-@T%-?vPF8g7Re&Ah{J4Pm4Ry>Xsc`wMv;*IF?>Fy zCxDV((HPIJ&xLrS7(@)>Dh?={M z-B7i{jF~IvLtx#7m94h*e%Xto6ZTdz{@KKt30ZR&B^929DIUvr#vCN@v$eP&8s+l~ zcwAS)6HXNJOxDBSC7{=FA~HrF$ojbpy-M($!O?5ihEgY9^#@(m#B@e`*$oyOc+*+M zIW8E}iPm+~b&;}=){As|wdVT4xW4{EpyC`xJs>f>$nNI@hjveX zOsP>bpZOw6`Vz?ODZ@09KXy|S30$&T#sLWFmGI^I_DFm>Vz{+;*>)jY{YR4h$A)h- zia&rCy8Jb=_V&~BKoNQc@H2uG0m_58Td8i(>CW;dhna6mpi)vd`wW0CzIw8kU^#PV zs-w%a<0Sd{qSKu3(Ylb4&Ntmjj;QLfIn|EO!eCs5MTgv5-89Y$&EDIeSDQXSg9zXr z;sX?P9!7QFefoTn(Jyw@N?icmvI$;=rd0)K0LWVGXgV?~VFbkm93#S4$8oAS6RD3B zhf1MrjW=C!nIQJ3zpce8okYjn&&1t--p8SOysrH&j!p{5O8|{Q*S+G;My!XgGtSzB z(}V8y6>*a_ z0{5xBWwPHC!<>6nQCwpym~7CCX}v>A4?>>t1ezq`k2nQ*@oXd>R6$meT(4%`bYkp4pZ1BY$EsTyhk{T#9Y@uaWRw%zP zx4<96`>$16vFyQV)l}j~xCi9o0$j~ml~xzI-q~_+)Y7q&(cQHIKc-x z%XCws8fcm@!>h8AenP5F3~00%ntR7v5a)RxJI{^@y zJ(K6U+a;`(eZQWiILy6NsD#CI zbI~z?e5B_jzc5HP6Y<8_I~~Cr9~WR6b}~f?#mX0E)?HIi#jtlPykv~d1jWF=(>${p z_sD)NPL^M>n-V8XA&SXuDfvC=x}FZh#(xNU7lyy?P6X(T-sl5oc58{JUw7Y{mhLAw z12>7=-pR+JZ_Tgx~6va_?246w3k zh3cPgnT4{#A@eQv4wf?fM;lgQl1yEgwHmZMTGkz=Y=OVis$lW)Mb`>vlZAk zx3)3S-Su<6e|lSi_o-v)#2>I?Cx5H^&rGVY$fo*sVbniy_f9fuivoRwr|zm`+Fzc* z5ua5%CDXb6to89Zq3u#SOipPAWFZR8}P zP^`jHbbT=U^|cGPJ$?ZIH*|9EiSf$s8s`&ZGLKW`cq^Vd2TluN)0xyr+~AwM;Usq~y)r&@pz~ z=Jf~UoZN6KlK-z3o1Q(tUX8Km(m?C27zIDqy)0}6q!at{4GT@rZvj_?er?j}bZV+V z0m>_*1#IeY`j;#WqW-rd*nB20PsSGOj@Y7~#Ajz!_obBXzYTpCTmHa=gl#BCbe)su zM|iBMJbvBMEP1^5%&TouKSY((L2OCVK00=92K&iptUCD-!Zt;gqUk;LgC#S&(&g*& zesaU++kjv*M+BA6i49y=9L4WfY#Lr?b#-LTI&>v4ETb0sqj;NNb^`ACl_c;TN8Up% zSqBRzPperCVOY9iV;LMm|){e;ouIXjx`t_!fNsr3y% z?*fO*(f*egif^$}lS&JY+HKiHw-E4n-U zROaaT)aURyn^>RtQBSi4p)btGuqi#DX1lL2vB*aPX`_2@qkwzI)(^aWWBQa2bouh8 z0j+xqK*gWTOmMsa-Ho?j*W4G=m@NPh6+8`t)US4dC3t>yiPEUBe{OUg-qN`1LIU-)0nvF z*l~_`lR$A6kHE{loe&}cU7c9m;}y&5vXZ7{XNu>5&9564EV&%_W9Sgch??)^Q8 zyG0^Ik(jOh?8in*S&Q&{?$>b{RB2T*=u#9U1;t}n+Q~L=id^Y|ZLh-dh4Qc-tnU$Y zAI6>TD@~%jM}Xe&yWC{3FuHfdXO3*WIuivOR$Y9%{j^TU5X1E9HuKWEtM=gDP`-if zv}MVMZytKK#COh2XYNFdFZC{7JcYDi#$J?O+S#z$aJVE9Cb1PIRSHe)D>lPm<-5-x zB!6O&zwu~g@Q-bZ5JS<;w!;0^SDI6`=3$+(wB_S>-PXu$3Bt`8IuqUXFFsA}*+~B6 zlX|T)#a(VW5tmI_>?2e`sR|%E$&JFnbyLSl#saeY;@eIF8@-w=Y&4% zJDqNU-;}GK`#Jz!wET8jbl3Tn!=16AFI9}xJ#_2SlJ<3S%n6lT;M-75fCk2nkYfn9 zKID+7)hN-3M!{bJn0XLD|74y)-yi_k;9sF{fTyBmfQU5^k0BduTLtW@dsH$E$Kxu$ zMDR0+75>0W=1SlX85$vw>YmKDeNXWE4Jg0g=D)d35Sdey8}r+6WZ$7Iqc>!|v9I9| zIx_FI+i&(zJ9eYfB1rtMvSowuced&(?cuBDF5C1-^Q*dbkc7gYRw7FQn)}r#kzwLt z`cnV@Jy^yd@W`cBDG{_=3i6(tsSTI@+v`v<_)ZI8kINMqRRJmVx`sS|Hc`PKS_=E4 zvs;ZX?03OHhV1@*ATb`=dY;WB4M5yk@hTrE4FdJVe(-qRlWR-+O5lKlgST~<{106z zFavt#f;Gsb6^H@+CUHRvP3Ezf zI5=X=ey467T)()@O^cwt_zD;_j?IrS)+(1>wU&+V#7=44d6KD z?l%FXv#9X%J$Uo(XgrZ$sPS&>rQXCEco%%9-}{F+v7!GEAy8C}N5UO$0JGO@9BIz>Cu?sQ)G<>SP2sIvxF!sxcd1 zEV_U1dTJ%-FIuAj>frZkA*4o4d?mfF$Y4i4)b>;6fZIVyd1?ChaYI0m=&_eF0O%DN zn;rrOLpQ>IzOs^k;CL9Vd1c8_K(>)a#-8-`%O%^NkJ`1tc2~;dx0)I*TAw`~>H!kA zM7+hH&mLJ!r&|C;NMaX*8}FCmOVf5Ul4#?fu5gk)Jp_8nV4w6K5Z9f=YX<%Ob2Y%? ztk@s^T_EEh@^D~Q4W%$^4vTzGrN9u7Zu`@GS8-v{XScb*q3+c|U6w(SzcK(JkTDX- z9SH$AzKl)4u{dr0%Ls%rso2`+0AvB)X_s;~fadZ0U!c)iZDtt(KwYb;t=amAWeAa3 z09b|_2F>JkA%dp8)qe^M0NiR_asY2|pVgHwWBs(*@taS8fMC>915*cHQI6*KnL$8E z#=l(p4)8UEhW`%sSxZ&E(8X`8%AbDmYwi0|E~eKPQr^5|ysM7-%Z5|}w(FCtF8G>VN`JP`J_t>hJxt22R=FHY0w=`PG7?XrB>< zPAMyuyT45vHlH8fw4Q65Y?M4D58W)$VCMKc@q**kmm#tVAP>jH&=AJY|Ll1ik%bQh zfE>N&sm9(&{TT~_;oogV4=_jnMI8UkZGZq&Hrq-Is=u`Gc<@&c0%}T8+R@^#WAUFnX%!I`KLuEU=9Fg?Nf4DPgTdihiVf;N8$;>6OP{$UEq_&UqJ1czweJVBzqZvx7cpumNOBe_NoP^wc2fYp@n^!Upe-`r4W-`up=+1_5kc=+P; zw?xp_q3&C1xLHTUUmh%I!S~2>BR^i0c5!j>WZ{(Kg`6CcC8^{-J%CKPZ|#Mimf`Pd zUx~ki3)~s>#!;{wwcWM)0XTT+>+5U5352)yfK497e)k#3SOW04`$54zjhOw)j~9Q2 zPQ?DXRIlzeB4T6>P}XpEtb9s56d1=xmVb&5^bDGDpY+p7Bvg&UO=p|Es|*k?E-zi- z2;C#-ZA*4XE*}97-rp%q{qZ624&G1qT3g#PDKMh}E<8dLsAD}hO?$NOpyCHOP=7Tc zStCM!)gFim@0rs3^Sx5Kp>Nw#j%uWBK z&s>bh*S$@>G&{k{qp}WGxc@HBw~-N**(%F;(aQyn4WqkrBl8gw%l_$BkCgAJd@(l< zBv%;EQ#ZH)p(N{|x0t!B%)OvDPz-nBJ0hBqMuIs%l}ZiP1h z)!AD>s&Gp*2}m1LyYS=z#uCt-!VEtDt!3``0GR z9XT_t9Hj7oR*XG`@rlouY1IFW0F`C~y?FRp{!O}qf`!i3168I`k&1wMhg3yn&xW+W z!vvc2Vi;huPHu4`>5{vf5wpghabg`OvRhGw)L4{h5;c;U7t|u6wLNj-L$q zZyS8c*XZt```dxb0lAnDKDhN7?fFL>7v)INh*hImALfXz)dDM#V#KjxSCOQf|I7e( z%5ZpZELo==x9MT?RsCu>8Bn(DJxe%Es;8HN+`_C(pNjE8q5=EmKYcS%+SHI%fs*MK z$1mf8$E|+#<4TvIhC3~-7dBxN3zyO!+AWt+WU3V#i2gI$o*W=H@ZzO%$4Hup34|+C zJzs@fNcu&EG3u5<`tGR^Iz@uH<>ULs28N|iVo^mhoFWj`Vcg#8eECkvw3}OXq59kA`|Lus zDnimp$96T^Q2fU-f=B0{2dk?F3U@g5O4zafd8%{Z`}cNq^*pCgRGKiL&nB_lO3Y}L zV&~)kOjq2jnf%sBnvirTPMyYuQ>m!e?}_~$^3S_|bBd!7i7qJcc~z)EPA?sajxjwL zk*{$fwb~f?cY)TTr)+wFsUU{qN~49X>Rui55|}WQO;yd=ZF|Z*CyMyH37F{!V~`#n zA6w1WQp8Kpbh80XCFMK43La}QCHvP?v@k_QMVZ9{MoN%$q#mSV(8hgTGTM zOPv@Af^=|2MnIa66XOAoIhDeG zKc-h_PDEHb6PT)>Gj#j+9bT)=R{7SY!daMsUVhoQ68J1_F^O6oiXD68YZV)i|DBG) zg2|FM=)i&=A0LbMhQ1di-c10hu4d|gdH#1w2@-($8Wi(gKi>f!z+gt5$IdR9k~N$v^>!{KkzxZJV~?J>dyv5X~9D2r=yYRFX;) z=cuF~ykKP%LK&NFBa`ENyP)$UL)G&@0wZNH{jyP+bkg0|5cjoyHwYViG>ID(6$LdN zr>(Z0NHl%^fkTOirlMn#ye{;Y8jX|C<^26I z#;jXB`Fjd^0Fr$6h0MF5))1}}U#Lq-uZ_EwCmEB)I(asp2U_yY3DX z!5NCo1=?*Ym}kwcrSnde^)wa%qlZq$ui{6@w^&M^;;(CqaU)7S2q-Yhf5!5dMQAxd z1f8Sp>?6jlrT-1v_4%IBY((gL1*ByTmh}8|e)~CItic3tU4gbMdZ4fV1e(0%A`RxN zjl)~d^@|q4gwL$`+ZP9OK|sId(`|YTbyLBe^JEku-}lM4-E_Sv@%x%8JhkIa34BJ5 zdA_i1&lCw&JLGZ1ME670Eq{GBt;vS)I3wjNr|?6tA$^VRd*x;W8Ia@S4|Pmv=rpK> z+mPGJw?37K??XC!@5S;9Ygg`L43%`C3ZxAwOZE16ab|iloPwNq#YKcEBU$O$g3k~e zpatp{;G}#u##6g|kn{5mT>5XpotHb&e>BEQrhba$*v=Td@tI-E2qqu{)*g3jRCF?5 zLxqAVTL#ys$|$1(7KIzr%9IC*fRpHdbJkm7+V|_cMJ-2O2Y!k6CQTW&PzU1Q_||uK zqy<@J9cVG>b1E&-h{LP8y!pGc`*TcytG46%%S#lCTqv$y{bhj`{Q|(l-5Jl>x?Rdl zPg{h$=<`0s-NUr7*y^;a=y#{Mx|(gml`=~CY0v4nr2hy7WqqB1e4 z1NPRViJa%7pVFK5#;)y~Dy%k;?G`GqD~_Wo3vrnIWu0&c2*S$CIh#4n(JUnrOlfJ0 ze%brExNwJKki2{Mt{B`nwd0ly-RF6spinfqzFQi(_pM&3XsV2&`3kPpAQ~3(+Gpva zWn8Dxf==Qyu#`;d-NJg7>OX!t1}xGn)z$7VaU8AQ2#NWeH7|-dLF-fHQ{TJQj#+oV zjeYHWKt~@kZq>a9ZhH{Yfl#Uv;r#IW2TY;K=AinONo&i_0U;QHBYoQkdG(U9-dS0w0J*ADunSPm;*fyCvjmg|c z|EXPwF_lsYSaz7Js5ov!d=DT&D1_4zkJ`?FQ}NkwirIwtM=^R6t`XhM#lfcp(ArVJ z?X{GeK1_REN!XOTLjYF+DP-ecAT&9^?sV?O%8-od9BN zh41BIbJ}B6)X!vK5sv}umL!=H3PHb_SNn@i+5yjSL8+5qBdRLPyGUX8U5$&? z3t~T`Oiv*W4uoGT-Xk$FsBV$`eGGAFgJxuyBpTp~r*U=y24CTF2$MB*WBb zE^KkeeCHw|*TMywxE!6Nqduywm3c?Y4l~{X14g^ez)vtuzZgO``P*yEm7}AhCrghV z_hqoxz-@4sLRb_2v5!v+GZaaunR2d513uT0@ zpfQ%ReBB!7rjU@n-$uh{%&pfGAHJl8e4Q$)FXdgmp$9hkws$_mPhCv|C)rmzOZT2# z2{c92oBR5ls(l5V`r-ZiK$!@vwRj15d$t^?{cXiB&6~nkoM$Yo<#RIyF9&knr-^loJg@1 z`$rBiy`To8#Qmijbi8MxQCVH#rk$aWG2nv_4m+uFYloAMk;QNJCv4{);LbE)o}Vn1 z6?`57*b1Q3rWIxo$LnL!tCrXl{(IAPx|)h0tcuAR^)bf#Jsv}}Wr=Nr!u-`0?+id_?)8)P(9I4X@s^BPvylMyH?$IEw)i0}K(U0rpysc7s@jpNy{0v!dtnnLY_l z8pTgGH4W4ze*Aze)>YvUc_O-Q4a=PG@--V5zc7g$C3xG?;<*%nesg*Be7elQg!_x^ zY-;M;;t8890b(2yk|>^+mM7^wBtN2DRo!l;cB)Sr-pQL9qB8vS{2XM6n`H=}k0FB# zQ6)+2H<5cpP#A%32@JhVqA_xM#OLg^%q+M1cRGVtR*WAZBWumL%6-R}^@J3_BwRDf zD2UnC#&5;!yeHwwqu{~O*Y$EC4RCE?a1`pi?T+4yZfbm zI`er~!Q7b7PET$?8tJyTzh0f@hml)U?8m_wVC*hg>Bzo;!4Wy>A8)+bxb;fy#-spM z=5rRk5rwRZe7n(9n#c<*R+v_?oR-D2ul%-~njKG_<;cPFj%}EhA3tVJF>cQe21*(c zuxhodIubFFz0*P>OhJ1V^H3|L{=jcL@k6n6r;x~NZacu5@1a~A3iHq{MHUzL`L+4= z*L5;&3EpxH!jS@E8!U3LbB)^(uIez2j~|qkEUr(<@}>vlLunIsKf?QIb)VeT!gtTA zLPC_l++I;H2T&oGa>juYfT_2`uhd-4%|**Q(*u}-g8^c>z=*|s=(nP7vTdd%>n=(~ ze^{98Cw+ouS4+?XhbMy&~` z5}2r2Ni(zjvs?=ErG%Xv9!)YMZn&eKY>|?ikX0G0@$4`Rc}mbe*Q{NT z7ejVdpMmFMSe4}nHMeXCLj=j#w{X-SWumZT4&8KGN5_LxAM_?pN8NBhVnYR_4#`RFM zz3I}fqqf^;ZK}#IrL1(4waN9WdV2SW8RmOMHw@-Y%p<@M-?H zAzJ+7(;-N_;TvD(=dF*gMXk=Z6Vg1@?+*82N|6!9Az1gCD@R+cxgILJGg+oaz(zJ5 zq3euE0+a*~?g&BILVA|{MOtG~n3&fJr}g@pj40zXMH~DCJ>AC!QTicovePGQ-Jh+* zFbc)jbQ3yIUS}gQ9NcfxnH{t&@Mc^t0`GMxB$msWa+YUJ{cQLdQ>g@?wHsgg*v`p9 zj?U@n8n3kuE^OnglMR=-3dUCpRhEv0S_sjH%_bc|NYXDDnh$@RYN@UdlL5A%`N={U zh|Kd)#zo=lJ|$7WY6t~cDvpbJB+}3ICn{A^DEB&Lytq7lz)ou7+I=w`gkl=^M6iZoUl4=Iy%OV%!tUP=KEm+ygp`Kh0LZISvBPGKS7F_51@-^zc za`lr>$O2$iv0(VZvq?^@Yc4i*~l1Td+> z0Vm9KM72#a_cheJ65}P{;Lr1yu39=7_qO>wWPi&~lTLia2yzyl4cc(ItOWOiVVH zCfO`GyH4vXe=QYkZRz-Lzz?~V3A}UA~9`_hQe$iFnXQ^I9cx=ksUm@{yjAL#6M#3q> zgpZ&%gYRX(t1zh=XtkuRc14(M#Zh=Uf0LN|*+g7+TcI2);dx_xFn11kiyiMs9Qz@P zkBpq18Qy<%Q3;P|XlSUkEr(U=nj`63SUmgwOg%`K!}-K;rZ3hH>JYvrkr zAHIj5T(0$<2lBfE(3N%X-USPEJD!|mrN(|cM6Ypotfcp9x0$>OSzMQ8?R5y`jOe9y zD|@B_eOD`NHN$ldGTL^>#DYvFHx(}5Rg=0ij%Ovv2uuVe*yH@g+1}3&wwNDXVxXga zfXnY94Bq}K_zs;J@Luk>fSeCJAb{IXh!l@b1YyhayQ!+_^r4ubA0z2aZE4>;j|IMO z>SCBo(*;%UK=;!t{~G31tNG@N`Ah3@RE|C`@#H5NiaoAco8}Hb%M4h$+D3-`&_Y3E z*oDWp(RMQjU!a%EAWo+h>U$HH^NUh4{{cM=_){fQxFI-c)%e8=Mrj!t9CC8neD@f% zhThne{&h-9N<%Z_Jv&V5;EvGHN8R1s)a?9(`JYtiHWq|Z6_mQ8>IGAUT#Pg>1X5`8SYo~vLW5B zNEt(KuC$@@59825sf^L2SWOf!w|6WsWA#d+Kju=3-7p8})gprY%oul#j$)gbtQNef%1b3&%9MJT)XvGph1(Ur#5f&`AJ1on zzHBtUzYbEg>*t?yGVnLDiyi4~#d}adV$o%(Sjlz#Q!-U~s0XMNBFcwR-&#T0=EzG2 zO4c@mMx3rvv8(NSq?DkMkL6T}8g+jSI%>IOZ*)5hZoR!ezLo~R_9ewa1H^1T) ze#PK%v=sKUbRHiPEG=CQ&xj=!EtjwuPK|0y;^@1SfCYwQk|i{)(~$ZTSYp<(JZ4Z7 z>Bf)Mk@fQQbd(51NyWaCJv^U%E#mTy2sk^hUpuX|KX@}xXE*y}DBQGu>_t~YSvo38 z&-BH?Jo}Ac$CXXztI*KU_R(e4!(~9FnL`=!W`2V6WbU-W1W>NbbI^R_NXLs>A8;%_ zXy(<9zhmRhR(>d^WFgY3n;1)`du?)6>vm>~7il+<;K}BpO~aTHSU@041;qw&+>sdt zT!roX+@5P2t%8h3q+jdCop}Mmi$pA8+|0x2)xC24VR$RdH+Fhm>mU)DrX>35(j_goNq4~gbPvmaiK@V_ceLFZK+qwIsBlm zh9u^DDF>#hYd5PnfhK-r=xiVyPLTosTKjaYyUn-NRbtS`=jHBT@u1H0XldK+_FSjh z3Ky7&y-I_0S&bPnzZ{P1Iv1)rib(DCp4r*TBIgBT2{%WZj`62#=~u#H9MwZc20C>` zDk|pU?jzy*`leC)1G&R8-Tccw(=ApDMLD9B{!P_AOJcs|?n4$?kso- z?kI8ONwM5zXHdc|fyJI%OcBu1UzuKc**!T59Le>Yqqe@#V^hdXHxugP7{(POfS`D} zeAm9z;(I(MgKaXrn=n)7iJjMcK^P89O7vy#{1Gh=&qLKXj6g%z)~_n~)x&R0*;k@= z8tRsv87O`C)slywC2bu)rPZ0Rp4$GQgOqethwzRNi3)D=@n*cupIY4TGg{4)K%+Y@ zLeyVos9sqy&imFpMd3T+S=Q7)54Z_{QkO1!4~32BB+xg9dk><~hOqX#CQLmIiH}ZI zq@_i}7d)^>)qM!&T(6eNP{Qub!e3ELecDg>6V7;JD^H@Es4!Olyr`H@&+#=z3)1tr zp4DYcTdvzMOU~=o8)w(MLv}-#S|n^SF{JrvaQ6>6^yB>;?CkY$(5og7`#9IfKDGi! z?b;b|?BTuL@v^0!!s?0vQgTIBom&A1m{;@dg{ve^{jvRo&6lQ7u#wQT$_C{Wdnld=jSc zlmWfgfPHscM+LZH*p*dPkYArvGo5q7y)4#T1zn(#7+$HPmr&FA)n2j)S^)+k^nlyk zAMr*ny`P(|AMY(t;XKKdODPDJn#>C!A_GNcDr(q7v)7u(R@pd8iaewZv2&=ifFq|Y zSb!whU>MA>YJPNA0mdydS4Je6mcH=oY&~_B6HEWtqS@o`?f9NNF=CyQ+RNQ5h6eXX zu{^yqzMqO0N7gZc<(N(kfAP=KJ&oVpk1KPTh2P6nTNchJymPgY5!XTWLln&IroOM>Jc zO_+|u$w7&1U+Dw{h{VOk3)HHf!GdLk0_azEYHa+jj)5zdin+e|cf7LQxd_fmP7X** z|8RJspBvTl*4^6!w>=EmhVvYY4MTUj=C1qQ0+p6tmX=0+X$p3F+al48X>7rhN0V`9 zp2x-EjIT5fhhQIh^c|C8Wy;*Y-UC8x!t>gXuf>ezsetFs-M8g34{I?hK zSC%t_Evx2n32~!T;g`4L87Wylqqa9fm_K8BqraD68gM z9*%JA%+y{FYR$ebHAX0y7KH3Bk_z!@`OQ+;T-9}DNrexfY;o@kCat!ws$=a(R;+qu za~)M^lO{Io1?ojcLX6oQ4mIlA4hl%0t8QeQ;!$ZluFf%~!&FI~T2Dg)3Lc7sWHZLr zXRL?lRrlIcHLV3xS0c9L3$irrxG_@i;)6}2Hl>Yh7&b?msfzEhPlM;?DQzrI%Qg5|Cr>r z+`K`wneJ|N&aX-@fDp=AhfM##aKcouRt%EGryZDhp@vR{3q7fT1MQu`?5MBL(uTFy z*nb`N_;lCZjlxNCz(vSZj$lV!tJkj*_@+(db~yQ9Rf-hjNQb*aE3+e-ux4RV9dbp1 zg|yRaoT^ky$JG-Q>gqwR`oxIe%gSUt*_y#lr@=tKW3NzMT7U z)hNd2K>?MuTnlr1`nq`Xl{RuO7S>15QDnv1MiZ>!rXEwcl;CvQ#>^E@UvT*cw=251 zHAy&V#Gwz-R0T`iXDfC{eDjBW%le3j8hv&&thF-Z@~nB(b?10E|8*s4O8szijFTnuGn}-+LIDvDxP552W+Q^ zG6|`=sSanu=*T_z>u37Z${J5Bgq`>wa(*o#{-LtL4;$iTPHr1v%(!ba{i0JoOI4@u z*ku}`DflU`tC{ajeW@?PX6b2;XXp${Nc4PTDRdd9s#2vXiU5%G(H6gRyhw5$ z=V-<|KlMohizN^gZj6z%7}jNXL`{ zhi88+#V61aE=J|kWy@>6l6Zs!J>3dPpZ4;8K#fiMuL%cyWcE=zemY@c(k+*g9}_l{ z(ES7La_0$)bdKq53K7x}`0e%JJj~zS#a=w85b}&DIy+daI4s@}Gp+YQOD~oL6<_DW zz;a0>lLyRDG6Yb_!=M0CD*};fQWOkfBmj-Va$X%>Gq%OS^mer9_`AStfu3eW*>E+~ z#Qd4=PwZZ}=}xln4=Vc{yGTW?_1Q0PA~DA4R!erI%{FHbTeU-X{eEfBTnOdM63N4N zx(-C#d&}pacSukNN>H6O4^BWb|4YCbZk&GnsM2M{yBP*TRP-Pv_aGYu1l(7C`{;pB z4C}X-OY#S(a$0v&QDd1F^`y`7?C*6h{J_s?C6t0;L}#o#??J;e^j$eb>sgywl4&y} zmHavLPw~nmSWoj)jO&`Pvt+h(;VXSztTH$46Q{Kks49Vg2S z$h3+z`PVtWd>8cCX9N%#THGR=j6MMEuVW=lL8@ZWWEGeArn~CZSpeXmd*|k_O8vL+ z8{9|}c1H^e3Yr12W(5*eU1nmu@oN42&hv)CbFB$1(Ybdi$a!nYf?P9^Wl=z2Ta8v3 z%Zy=V9we1RO*8u-tvC9W1d30MhUuyW0p+%7&%QhJqpQ8+vsn3Ld*OF}eW7rQU?4i| zBsv}$fxP{}^tFlaJ4`m4*@~<364S2qb$-?bD|wGHq#(F3Z%LW_Iw{)MNsX~`VdF7< zgWMI>yCR%V#?mhW2_?YFGR4AhFSl}3PCm{r2dEIu^|Y{ON=-w7Q%$ZMWyjjzJ0&c~ zw7`b`7?h&KX~G8az-)9bFE95Hs7JTKuWg&JcdLu%l5Bh4oHMlQ>QAFB`d~}`D15YC zP5P*)sN*evL#iI^DpNZ#Jsb!;|9h`9$0q?Q$gwKxaLR}At&YkL^Wbw)k+ z2y9WVw`*L!f@N}o;<2pMCf+6Z5`;n@ET+sJpGs&gOl!wqoNK&Lm^S@!*)H?YO)vq` zF1mJo)L!0fbLJI~bc8N0^CYU~D|(%<1q)d6U3jZTQ$?B;4toxDhEq0EW=NR>X2BiCD_1VD zOA_;!gSr)_mYDtAUx8)ExJ%{n4)LRK@t5RM_L^4XdGe7!C{}<=ITlAECY9aJ(+be9 zh<@bUnLJ-O5+_O6Dl^Jp;=Gcv-zL%1>^OK&w&!NT+dK+!G^c{toiUcA%GHm~-YJ%yZkxh2gI?(PwLGYfduL>;>xiSiPb^Lf__L=1=PO<@l{30xuw5 zx;p^mG>xc7jQ({)%5l8gd+ zF$LV3_Tk7VD0J{&FYV^4AKPldV{2Fv-yWRM&r}B_=nK4ZD~U%CnWMeBf;e-7?h&q&W(#Hx-tgQ0k$AaD{Oiwi`dq zCAbdV$JeDg5b$Hr5#dCHeWYsm{u7u{DyBWz_1p79)`iJgY;*xqu7VcIm)380D<~FI z3d@ai2!t$a9KlFzS5t!O`!&hrD-DliR*$Et!$F1&q_H!` zHFM_F3;Cr~@I}Yo)4ChlKC`~Q7+0<>Yq6gP+N(q6LQoj4(RNMyjH=7{p0HT&nb`6J z=rOni6Vof_1NAqOg9Dh}w!xvMT=MVg z3ng<%jf{+7kS_8Ck9oFS{#xyrs@>C7hV)(@y!4e(losyuNdW1PvRMiw!TwA9mo4E1 z_2*{<1P3znfw!-^bse*^XzI6WQ^vqX5~45&9q}EcYkMLe+h(#P3aTCzDPB$`Qs>ay zNHA3H-NhV=9FeKEEtQ;3r3A@EPx0jj_sAEsOky-hEJ!G zPwaf6gr)LygO+9%wV)a@RcLl@9E%Dv+tkIya}1uc=nKEq>ZUJ#pK2j5Tfi|V@T&Ya zlH&Oj&FxvBgzyIV?pL-pix?sXmTb6HxmPiP6kPYLWh9)nic$hR)SIqDEjI5l{2Gi5k3szC>dkr@F9?Y?{e{?)hKT*HaIB;+;GnObu?*zN6DmP{WaxP6aG zOw|X88NvI1!Uk(z^R@O}wFbVK(69t3+=kDl{bNX4%1_gQwH|Jm8a`huP@=gEq&+)Q zY!qM=oKHojy|!uuOflqokLOq8J2L)~z7XuV4^o*0zgQk?RHB2K!KYPVshE9z9{F=j z$+}I_W|%3V?$7a+4^msj#M7|+l`8s%WVaNKIoa9cHGQ(|btT}|o- z{P6$-)zFRn5)Ub+u6yXP1-N{De?O5mPX;_&Pk_BB@>=DlMnpfPfmxH5%Vv_%@8*E@ z+qb;Ik-8qKM=p2pCS3R3$%I{o>KbZ$@`;sK-xFopR#`>3%22ul-AZNb{lyd2Ms@ zA4P2f3GzO%u>ZAE((5cvRrVKK6u$}O0(aU_)NVaf?#vt3!%?Gu;=1J*F9Cu-(4>=Q z`6U>GCd$P&4P-cMVv)(T0P-S?jMItwCwMs!*yhL*ca;boQc~b5s(?RMuKLI& zyYV$|3#0Oh0A=Bmx9=CDC3KR5P{jMYKP}IEa2ml%p@5!nkg;lA-WYt0%;Vu`gGHD4 zq@J$t10#P;p&jw?&TesFkG+Na7@rd3zooX<()f%Qi6E5pjBV&Ek7rt6&ErQEdp;?+@*JQ735E)6&dmQMe=c{J4LU)J2=38b`6VH@6ZGU=J z+LQ}cJ1olUUZq5$9=6`3zZHYK^zXDKiFyWfU%9TiA%7=~!FVV)M&v6@)aLlTbM=$Z z%#$?r-H8CCc+nHa?A@O|fO{2sFkhQ+4X7QxI{T#2kv(=XRbSHoZ{X?jrHOYVqDjAw zZ~d)%eUp#ZWbKw)F{uI|57K?EchI;-Mj%J8WithAf7aC>_tFSD)2b}_P8)cx)=V2F z*|u%u1Auxc0LnX_F^z8&9nF15>JFZt_XX4=0Hvkn=f9{NRnx6Uhs!4GEEEppJYS9& z8#}dCXO33TA`!-omE`8(alY7p^Ym%=kn;-_mELy(mR<(=%PhI_2aOPH)L*~%$<&rB zq4594`rdl4(nxt(&Y6A7%jx;Pq(Zo_qR$wX>~0CB)skB^M;18w{M3mwn5P6j5y$GLmNORHTuT^ z=MV$HwCQHe|0vb-w41N3=^yDZAGkRJMT#8O=gjEgxbh-*MPSP5>VDNeRCUI&WeGT& zx~#7-QZ@A4@m`qtpGb{i&uRF@0rK+;S<&0cM*u#I#WA`l|3ZM477=Jd94>vWg;-U7&82Jk8hQgls;<) z8u?w)sXWU~OmU_hE2SGrRp|}~!8-t-l*{|X40?0ZBsvm>I#XF$`ToNPnm&C$jv^@V z%f{te?e`L;Z~3`20@IQEsjNUGNWn;O&GFOhqZ|k~k2wNk9;uP%qPx{nGm>t#RS>&D zW46b^oHw|^<3M-8|FR!(-Wjk%Iqm0IDy_ruxTc_W%L@^)(}M}ffk{uu$=^*Iro@?a zg*PcBjEt_UiiU@w6Mh~P_j(f2K^^jj%Rp43S$yI&G~cEE%6g+C^WTcHC3;m%G=Tgb z^Wn#{Wl0_-vN3+E3^)*bTBVRd-;55cTCWYk7>9u-&qGNSEkYIgZj;-hgcpj639DL7 z9tWJTycDxKBV3DgAy;`Vp1g10`U`7l>qV&6%sb7vGmJ<^osZG4itfsI8Cf97=u;uX zDSXe5mRiQ!?hr_@M$&HRHiuIpa-N%Vn)d1ubG;26s$M5D^a6mCcZ&oq9xsnKl8kcX zV@U)QkFhc?mkS-D15X6QDFPG4Z~kz5uOuhIy?;^$nWcC_a?S zH9k!&bZ)5aiHlr4G8C~c zdzm6TG;C;jx1nP8#Zxh)1Z&{)lCtF~eTfFZ?qW18jI(srN=l=2NyHVD1O` zlJVO`0?@VrW2gNYXH+yaW+%{c>n&hRfrK0+Zh5J&B}7}L!$85iQ^h8;KP0?wbGDpS znPQ0kK==N0z|xNa%qZ9Dm9|+webFM;{<3xvnB`|z%GE9T{!9f0R?X7hXo%kPxQ}}W zQDXx(HJkoXw~WIG;HR^-_GIb44zzQ%)?vO!EhrLjDBZ_Tql4O3W0_g=+E2E+06a=I zz!h-u@6WEE<8+-aOLL$Cl44;=M(N=P^PX#k`RVcr%$kr{%Z#A|9EuM>3#Ou{-zQE4 zHF#Ar#4%gI5^E|x9>U^c01xLrEBT*6pE1`G;Se*jfFIQ@xx}Q-={{M{4yFTJhw0!s zet(Euq&s2=(nz5c1U4NFhKiDa+n1WyS3?0UT+s!v@RoR(}!E z^T|hV76rT@#!025qF#~vx~$uiJ3endXp>WdV2`Wq=W7Gs=(w){e5~japv29256`G5 zOGx`_mt!a3fdQE4%hl34i_gW*ZBM$niqye0-y7cCgTV^^;EMm(#Av--=#EO308y45 zEs#juo>kceI_Ivxrsu^;(cQ9M%hXi%@H@U(#hFy-9K+5$O{!-G7X@PwPJ3xW zoFQXUSB@kP6M^frvvCOA?=`L+zX-6u(Pyh=LtPY;;Phlsg19%!InM>U`}&Bk?Xrg; zDUPl5B4qL8-uWdE*ENSUNv01XvMj2q`>pDrkZWr7}>9WUkH@y{YT)1bPyOy4oA- zOI%UW2k-p}K*HMdSx#eg&n!sil*Kt_VF(d?A66}d7@7BHRoWaFB%+UM_9mrner@X_Mir~C{7 z%oa>;S?Z^VsWUS=e$ZnEsDB4X`TVGW-76{j{Iu57Lti9PvCk3C0oUUZ@BKF28s6L; zDd4Ju$8V+4ysS0kkGvw+0{wBqOjW z&=(R@Qewi;iQaC0cXZm8?lCuC8v?g>#L9%%?{k4i&lD!qZ(&=^C@5e4`$&X4!{fC0PFygx zi+CBu_y6d6%dk4OrE3&-cXxujJHdlXa0~A4PJ(*~!GZ+{?hxGFA$V|icNTh^z0djH zE$8OPdh+n2SFi3lt439gF(&cD)qV)TngX4!t)by>L=>%@pnbgfO2_iy=7a}t1wyTvM95(|!pcQ~L@Y?3m9!<^q@ng#KX5IoF z7dJ{tue9yx!nOJL9VFx(;zdF9Dg)lY+%V$S7yhMEgr%)M*L(`*d-m)D z2an?HH00}@J{mn&AV}$enHW6=R>`hhqG1Qf^`v0@jQvE>H$p-~appU3RV99|*+Mz* zjNs#wMHTfJ>vy{Beqk8Z!U=)vhE~gOOVI=$I7Aat^7<$E&h?;PSzu~r-8ql&^jX+4 zh7LptBhDqk3#%jxSn@xFE7fWoDv1qyThgaHWhhK~UqtUdlO>>-DM;Rq!*ox{(t|k_ z4CEoIAcLCuXrM;x8XqTZLfoY7qX&k@?$|iDQ3$VmD&v>ur|M6i8>FKvIJCCi!ZT@F zA+Q7gf%2p)8VqW~(MCL-FckZ;9M7300o~uPY)a=yr{yNMR_pZSkrx~v_v6or0f|hH zl$nz6!Tn#lQI$cVXZ#XCR_^*oNqSY@NBFyj;n|=HBAYy$`6N$^5vQ^5dkTs7Mh`sx zPp{$gyPdQOvpJJptkIGUg#6(zLs4+41@fu%gy&zcy_71Pz5bbX_Vmke@$kY$fI*!` zu8WtvKLrH^8VN~k3T4>#z4KxH$;G!#6)tv+Fci{woAn~>YwR+=WYXO$fYLVf?Qu%! z-8_201(a zcppf;#n9K@M#X;HP6LvCC<5lXQ{Txx8w}MWGdF^1wiBA5|4l4Mt%Td9EWwu61>jyb{n2p`8d9y~z zs2%2qo3ne8aJUqONlAL(g{Cf#f!C;Wch{Uq@b(Ky3EW~*3jAfPc zjCDG1n!!##rD(+(sDLD7)ZXQso(VT!!sV%>q+k1KuFcP9DB9CwcF@2khG|y3b?FLx#<_W_laE&_Y>VX@Fu>#V@zrqDxqoK;HOzmGcc)^H+ z2sDp__r%0R+4P;~4Tskc4-Y4ffdlFbbqj7lZ%DSA!dT9^)5*WDh0Lvl%I*#W5iJg& zhWx#bn7I5|Z}ecW#97GnLpn3Xs({hOpB(&N7CEIGs91b3yZe~ua*&X?ff;Y)>v&ZdH ztUmSFnNryVmZdW!5RMY73miZHovs4NFpLRyhtx~Zv9OM+nLhPQMeMnYYf`<*q@Q_m z{XH+n!0@@!h5FhV01s^XCA(ou_Gs43QH{7IU6InE7 zEvKPRHr>JvtbAVWA^rg=0n*{x@nQ|^X$$v^9cC<`e!@JQE$_q}R}4kJS6xIk&FT(@ zS8DL=X~yTa=sQwh!4R6m+oruasdFka=ks4^>kqbKn2cm*=5G#yI_`(k}?K# zB4%|gAO7mo7pX3W%LUsZhm2)|K}Yr$es4B=(BlGFaNIdBOEcWiDD7wgZ)+J zg9_jyM1U`rS4|4|E_BE6pmauHIx)vluf*_5>(tps05u{dz`E8Wt#sP#!vkhvH>WQZ z@^#DjV37y2Ky|*Z7aKE24#0R$v-6z40bW3)qOyWov-=$Yvz0n!m5ayFB%7rs+U@>K z{O*=%7KS;cb5CoIX*sa=5v|w<=ZC%A)k$singu=CILBDk+v5n;n^|+ z?XAOvi?{Of(T~4$iVok7>Z|XI}iX;hDP|W6=PZ?AHgKlsNZ#kZjFYw%$R3rIAYoJG#p*t`F)*gHRn-|yq%C65!?HY$2Ygc~t%JwX3rPfSEK@*0S| z{~d@l#!c(iQj02b#KU5fk=G>D6MLD63P{f9@f5f8;6L`_wL)x z?M+%(j@#iZP|x9JrG2$wwxivo>uKC9ea3uWqLcW#1g`)6439Gl+kCcX=FUL4hN8K% z4T8)f#u@dcM~p~#zepM89GVWExc1yq1RUCYh0gD1iZ!MCV>2Rs?KYN!LqolMA1+`6 z6sN7-J_Z2kqT(lT&;N{2Q9Q1DtUxD=1`0N;!PdiH0?v{>?d+}r_Pb_Dxp#o%W_SRP zeODOivy$S@(PW-ne1%*~GQi2g6Y(eV_45;Iia9CPczSxeY}V3jSn z2ToYF9NA!;ZUOa;xRw?#iLYa6f8F@}6VJ3kTob@e&DP#RMnN zd|*%AqP(oQrO9`ElO@*|PZ@T8r8bTQ(&_QppDjyU;#Qg2r@Lr+G2qR@lI-k>7zgAG zH|yJsMvU5b|4cUQ+vtrt17c{z`|-RYX_Yu! zC|Kz13F?fG??7a{yjqH+^*UvD>tUzBxdEVp=VC1E=}4d&;f&OZ5AUGt;BDvQ4^JTAH8Q=ST3*~79qU6U$qKzs@SQLp0gH{CjeX5o5vvr=q z;&A}dt^tY})m4Mt=~cv+KmdHn$iM-k{K``qq6+bzUyF+`jyi{p+C-!>Cv-ycFWooJpOs(Kd`eQwcNT^mu!_g_X zZh(kAp1Vl*$!y|WGd&m3gOj7HJ5g~Ptn|NTgMaT?hEoGqc}5-mRm|HszaIl=%E1Az z;^|jKHlQ*G`We+o7U>@iRN^u?c43cJS_y&q)LUg`UoSM++>pzg{q7XSeW3@WzRZGu4V?DWu^bLA6Ifk#N{1C;{eb~K>qWVM(_vZt zI^a*R?Pi9Jts5f5{pJk}sqY!dt2#bY$Ojwr*yDp{a}oh&54vdoP^Bg7*L*QXI@1fL zoIBIi&w^&8UVIL0N%?7gj@EZ{UxWIDd72&bIxyev(0W1)bWoC;znlGZYQeh|=4x*0AWI#+E>iJha zV<35XFk2SIWiw~ARXD*8HNEf3{6Ks6cscHPwWktI^hCyKZD(*9TBK$u;py41*bnH5 z3;|R%R^9W!=XcKuc-7giZNR77$PS$;<$aPW5V!Qic5P{6c>TH&wejbhG^>9VA~{|* z+^4}SEN~I$RVh3U!a$u0DV00Xt9!AF@$+CBQs@C0$`*%61Sbe+518Cv@oY`6wffv* zopEq*oGrN|D7SheGwRk&Z-c@;;^X5#z8a|fu3Xn@^~N4c=Tj?QOvZht+i*aJ2oiIA zSiapTM;8ZBt)}_E=uUg;?;XySRyTfiLf&0XDV-hHuda8(l1eyV%tP2)%ObQrt|9-l znFIIpzV2#vXooJDi3GYrP%zNOy^-x^n=n=W>2L`W;k3m=K)tvp*h!OK`(0&HEnW%tAc3t3Y^rEd5#e!cwRcWN zemoQEb#lpv@u{i%)yO>$aEOTF04Aw29sHs?U)M4u0{a1=k7E&iN-A62SafI$eKqv@ zql_^42=*B^Xys*I0JR~%{5D2JyRaz1^|n%<-lrToiEG6iqn*8eZm6d2EniXA< z*d@P!24{G$ak`KX4v@A(B#gE4<==DMecms~8hE4}Gv{SQW6`g&iG2j0a9hxZX6>%M!x zYQNlczTXUx6h99~Ie{+Bf}9yt_4F8lKZgMHiMzXLb}xa+Ty-fa7{KrY=rl1MQb8Ie zFhWBx>a;)|FVt~)rU{3I`@BzI6Yb&S`d{D3<9k=b>vGST1!4QHv7zAuz_?nH`NqDj z9+jj}ovGzYqKoLfKiTWsR8HNSpH@=~#-i5(<=}AovUM$$Zs+_dvE4yKt>FJ&dac$ONHtW$#lUb5kKYwfqx5bpXPX`JvjRgq zA?9$5RN3BTNQ3k!d=W=DWi0Q;Up{=kG)^Tud{_|38x&Sh ztw#M~miYB+a1<`fnSagCg<1#c9a1Ome)yuPzg**wOZrUmWw&AhLbsYo_(F{mK(oT( z2sGjVq}{!-olu$!>}l7%U*PUHH@^C!0WX2pr(p^&K%ct(gwL-H&4MBQGk?(E?u;_F zfhOb9)uXpqonigx$hJdUj8XT@q5Y{V;nQal(sy~Pj0P=G0JX3i=xv(BZ`x1f^aeb8 zQ;yy6lDiT7a}~Tmk7*wS*V+W|d|=9JXyE-lKi>`fvwk4c*07l^?c`7rfg~j*y*gPY z1cHCLJE-(!AGp>mZ#EO@-}clWuR{Ba4Jk=%txc&3M0HWeV!eYnFmftY6&}2hm22)# z=&5WQ9vP8vc9yNZMbG;7c8=xsnc0EX{`t@-$0qeoh5gRD?>`pMZs^ z+oJbnn;Ijc(s|ojm`PATfDlONQnt48iMN!rd|9fKCztK6PZ$<*>A#Xt|Ncf_-$rRC zm+d^de)H|dI5Z9?go|_aIbiSk9jJ_O7!pj0TQ7z@U5|dpOTV<+9y&a+_~i>dnWC2hEsxj%)i-|XJ|3<>MB zbHpc~#*d6qweGI2A}^1mL_Yy&Wuv|pBvR*MzYGJEaZaV#&e@j-pkrCGi~(VJ-@Dw6 z8RR_$Y@1^zYw}@u~6lzwGm6vz0$w?XfA#{Ybgn za9JW#71!Us7>dIGXnR0kWKF& z`u8g9Npu!AI5~5v>i*Ijg|_em-hQ<$W@H43bv!23hfzCN{tX8$B(+T^A0L0`@FJ|* z3J9&a-mar6=)n!(#2YvsG}p;8JjK) z$j?s#{uB^E`0_q|{oPECpW2`KzUPmT{c{~O3^f9vbE7LnCdjH`1i?nRUHJay7*0>N=r1vSuf-8+YAG0 zz)bq0**vpe-((0T)?nn!wADX@Jh~=Z{}=Bo!e693<&yZeh6cz4++BzX`I~)-h| zhGn<}1>hVG?8T)2wXb{B$B2b|(2c7ynCHdKnp_@mZcgq9wefG)H>ozZs|q_=+8&4Y zG?JnbOy^_lG#H&HVZNjUhlHHBJ2x&-Yy@9r5FJxyyuOQ zly+0~7>>*)cgm~dN;|DgwHkVZ|=l1z2#&G!lXC#?N*xf&gj2DM7y3GWXy0p`QOcetImwO`LMGP_oQ!5Z@ zaiZ4u_w#bK*by99vJmQds23{pe<(PgQxyW~(pT0)Uf#CWx_hC!bK)(_KCFIw&pbWN z&+VW;g7V)!bT_po!$tQ8#ubVu@ci_Nq+I zZZ5d3%bli1rQ}7Eu5X>j9s$Q-0|UX58d>$H{Yik+^r`%G@1A-riSK^|+n&^ZVD$B2 znKa;{ur0D@r1@cg|8DK+Ha`8!r&a%F^lD@1O#EvIX8l;P8gnB-o3lY6+2PC*8CN|! z3DSk8m04}}wf|~xGLewf?=MstS3lg7ipCp!nRJs#FLU_>iM~7i-^Di%k(_MUu}Tv! zLxr*b4n2k^)Az*SKxpKpov$G)Gyj$(3c+OF2q>J_4-E-}q@qKVsXj(U)l6JCySPl0 z`{{0N?;Ny_RgV-8m8$n=URnwwzCi(140d*c!=ez0IXbceh3rJOI4=Ui#i%{>EUrh+ z>4wCXdXsQ?jhCX#e^yL7lM@w2gam~UUCw!5K+rJr=k?8swzol{$gYQ5wN_Iw=rl@3 zbD2Ui@80#++Ndatz0U^qyWSiywcO78a@x#G-Rel%oPc1b+3xv^jH~LV%@3I9>AM2K zpMF)D@RsX0hXU1Z%Ca+KQ-T8Zo6ER{{t(Rn!UG_4mPFNbKKywDu{r0V$BtH3w`biB zhmHrPP?M@^pVKmWQzZ@gjUVseQv^XX)^nTtZOg32jv@o5?1Eg5V9bVXNFE*@Ef4Eq zw9H9w%RhJbcS8p~2)4Amo3h9$PsZ9bz(drImya{aPf(`qI%C_cd|dQ`+5Q|IRhtI* zMy!G>k+**b>qj9K1pwts{fEvuI7Azbyd<019Bd$73UQ~W@W=d_+;!KRe%jf0dj~1vo4= zZfkAML7FZqJcT3ytsXBQEs1qjOD}%kyV}e?h9VyV0_d1S{x$_q*x*pE-FzGc$Z|cw zkVw&vIS?VIFXu^5fhYyerhzs47fj3sa8F?FYHDh#QS_+uTnk#I0ePEDd;xiR@w#qs z+OIUlq{C_hf;cgMMVz*$N5~+X5*ZDo5Y>p#81V_JQv3xZe}vv@iXgwKUG-6yPZZi! z-v~nf^DDPsf1iXmQLXhd4uQio*&NjXDh;LL+TH{uuirh^#U-+iqJ+0S=)&v$m%zBW9p%`IJ}?>TK}L(}|h zM;qs-XpDyhNKJ+=#j9SXdtdZ&K3De@)CFYdFRyK_g$w(6o7|S`0}bhoiU$yA{njmj zjE}*vB7<=5ymRd>=2u$T5X5Vmpk z2UQ-;VF(EPw48tdX1@}8dPEqQnDOo`iS3zR(n~#rtLf(2+S>N!OL%lR9b(5an!f|q zf-j))66s#}X(?f*=ffDWKLTsIo#UUYw0z<2^eusdR=hyKI(v?TzPPh5(wB`Kpl4v+ z!R8|4(>(meX}U}o*Xj_y{-lG%TB_y>z?Jx9w9JG>JTL^# zqg-aeuHjm0c3b9Gs@<;?9f3)cqn+j`IFS6d2&ZGT*40jOwt}%b?#a!`sWV$G9_CnZ zd*&VRRRM{}q9oe1SQokczE^l+2QwTWND2R4C zR`S}f*_Yb=cqz6aMW89XtvZ5zh`@h+o%mO+4Ug;oBw&zSADEFroRgDtb~P2$K!?7u z8xj04uS~06S>w^sLS4dE8lV(4ZL%3B^5G)QK|B!zhNv;p-TD>F)}R@T*t=bM+g+uX zs5>)vx6BpX{3tG6Qg#^=4-B=-qyi-2O5e7p~hev=w9j za=OxU+FmMFCGR4XV*JR*%iGcJZujF2O>SkSvISala&rM})AioR<(KE-Q4#Zdt6YTn z)y=S*&FS;p2ES_zz^Jol*e`wI)M>j%NsRi>%EHH)_cag2XG%=mZLgzE@fkw0yHVaCANX!P2&q!A;m zfZ#+O@Bgi5C}Ba5j_yPRR7KS?e$6rXpKgUyLfVwdqyjyNpS|Vvs?`^i^ebTdVlLLS z!%Q3uI(MEdK7Vmv4cs=55e385)Z8)^VO@MQKHk~ik01>IVN-^p%&^Rj46xz6?U&Cs z8&1lV(FjgGZRsAqt+MZu zHb62;Q>9+o+U<=^K4gUkey)~tFhIp2sVC2fvAHqP;6w{d^pPuco(C8hLzT*O9Ft@x z_)FP(j7Qy4GBaagQ&V~U4zQF))C>^3*nnPQ9qdrkim`|ZLjdo$VCv7`c@fc`)_ARV16m)y@^)A#{6 z51UN>&}9420p{uDrM=~PchbDgKUEN44>vw1H`hAHBpN!CobI?iWCn~mJ9>L-7mmB4 z^9w?6yT5lrvbl9FK0Xmn(CwLTKQ{zyQgNU1n|?TRY7SFC)j%WzAoamcBrGaP%C!5) z01zU&K9RPC)nqWNI;7nYJ3f!lwO-@8wV+?dC6l{}U7C-2h0X&)u++4G1#iKZ1Kl%M zkJ@5TKNdcIQQC!$dKG_F55vM11JIG|#zjn;uLF5p5alcSqVvtqV-o}bEf33IyjWh1 zAeqRxkhBs)97e71=ck9u+Q;H*!#a)J5(l)lM|bMkmuiG$7Ab;d9s$iZ!&;&zSm7Y@ z+|2&(1{wR$qX>UplMueG$Sah8U|y%00H+qGryG5$-d+m2XOu~dP1ZvQAc}tSle3{bNn7BpG02t#ue!0_JOeo(BEt>|EaXN`<9V5M#}o6NVH6+O-8Oc z445Q~9c}0zyVEg$>3(Y+SMY!&?QKsI!1QE5(6W4V9v$*vqU=f8BWWwO{EPd}_qj_p zxB2&>ZEG!}h0@wFeueSj2_~wY84nMStzI)$5j)Sae}DV)n=MJ;>|=zUeYFCR>v(ma zA!xrAB^D(-vT3Zq%3;15zdKY2=)IdiYd;8@Vz6m!AIPcas?dvqWb9-o!Y* z{PC`8NmanOqNsLs_EXdR`v;&e`u}o^?z*0SI`Yb&1%%UdfK^K;#h}L1BOyQm4%>4=ONV$+Sr8#W!Zpnlm}F*MjaqqHMdsC>b-&S>?_HnrQ0x@(Dn z1_!mLB^{h(Kkpr_93R(7Ot3MRVWrh>#nI)1^i!sp7F*VH4qj}!meA4NMclxho1gQh z+BV>7|C6Q^N>9~5ny*eiow1+M?pDOMh`nf8T>kolVLkq`>|$8ji(beNUyIf!;h7qa z(CgLFEP%64m_Va2onmagxwCL)5q5a*c6Wvzwxb$rL~eiZ(S{(#d-w%UBx|{G!l7ANS&}|JyJN%+p63ueFDX(yw5&s1 zR~Q%kdTp-pgn=`5BCBAekFEP)Bm)T98iniY`@P5=>Lu;{7KWUkdM3I{FX%TWb7R-; zLUfmwREnc3sx;zJGMeC4^C4M%Wti)1MSkRJX^+Sw*$@CnG7$25GD1+)dk1!`?4838 zr?g_H$^(#!QPt3;5wO}{+s*Rd3Yf>b8j7tdHr{QiiHaIEXg{wnSGV-8E*woiBI0zI zhZ%2WhgL00n2D>9whacbs`k%*(_VIfv8s6~Q6`n;O>uQS$~kn8yS&lY-MS?q zLrgVe-#%Q$Ht>GOWmCl#m8!r0d@kU@1$Uv&K60I9gtMe2vSA8cdelC-8lEVnNrVHv zLQn+b@Ode`y^eS%-rGUJ58h$q5zob3sjmgZ@T=X!2g%dEX=2kvJA?s~V?gU`D)oU4 zN`F4}?eP?>tl2)6tBu498#3udH1N1?r&JjP?Pqz!rDNX?$1dCSJWdtMe26P=g%xGO zS|4cBmx{BS_ylb^+XQLfOQn;i{~Yy~E%~47N$=bbAoJ`u7I_2B!e;_X_6868g+qL0xk*iMYrbKm@N%cebb#I8HJ32{9g0b z`*dSdZkDVD(^#1Q87xMP{ZF?YWOl<^`i z5D%u&%a3(C^Q=q?iHYS;$n(&5nO?5Een=Vg{IueDRf;4GvrF3QcLAK4y@7b-?Xy~z zVn;a|Gn9Ky_})IX#&BLIBJoTwsne(8I+r+&vdTT%;1fS{QDQ+?4A?m0&aylCnqh`< z>>+iSMM3$uAN}_@e7}?nex$&qsLE$KszW!L_whd7bw@g9jY$aP{a#^$e2+NZdN$to0-@ zM*nBfz}WekLL;skhG+X>2j9Vmhw~23oi;nJLl_&Mh`mX8ON;frt(`bDIBKH!qX60+ zM%&%0s_-^XVSocv3u|PuNqL@Xrly5p$8jy;uOc-I`3&x|h1OA|H^)uE7GvpeO}D(T zu&t0paGq{eyBU!SW0W~DxaLMFkpqfmcpX28@Ra?0$67o!7BU|~OP_r7y|55%j)gd6 zK$NQj=f7Nl+<8iT9xpGx!(@wH?Yt*zzIdI8$Cf38Tg}XHj!qHwXQ;popjjFjCyCtFsLL*4i2QH+Lwep5E=UV>$`?&S-WyCxA+(iF&%g3 zo3FE#_@{5((6F#3^IyzTF79o3y*3(FxEtr^wJtAjl?S6(9Zm#WC3sv7&4p>|OpX52 z_SKvU()y#?Ab}M+a0=Elh<>1h504w_*{Bc}v$c(mb#nSb){+fnN64G2;MXy#BB0NO z+D^3GF)C6ag^b4P9^9+LZ~wH4Ry=ce^dcPAoR+4&SbdaT@37hjFby2953m75h@qmQ z@=d-SjEMLL|7DyAF60db7a7+1yGmuc=%mFiKFGkY(y>(+-?(fvj-P2I$iLo%J`4}F z#PyNSoElb5da5Q2y&qm2Hr`E?VC*6lDP{E{xTs}FcI3H7d1Y;tJ!$kQq_bwe)XsVb z^!?z|OiRQv?YvB+6iP=VW+rj8sO9hB;+nhbC5jcS*)v@~%&U4gv0x#0!QGw7$j zc)oV^5YJMyE7d_|VPPo+T?0%Xv{<0&A9NgG*bFn_kz2Jsjx0Ecww$aU^Osbx6jG>b zNjy8S=Jw}9w3yktWr^A_dB+bFVNM(JRK~`epRq`Tf`2#req&J!tcQdN6UdenLO<|E zTstifRPGqTcw($h-jMk1O%-o(S@yC3wd1Vy0~aCJp6vR_%NI~iTH@en(51!4ch=lV zN$PiBAF4C}<_IS%F|)dA<8L>D$>x;renWT7k>hz>P&&2lAxTiM0r1`F_C%jZHs09t zgGS!N1=dcEII%~%;@3^U;ag@nQQOkH*1x$Lu5@I?HYy#qm;UnMM?n1zj=+l|>3onb zPkAb~mB)t{e<8?UU*=#r>a?NAI9{wN?v<3Qi+=2TUL=<~sKBf&5gaD{P)Hy5b2u#@X=z@$ygRYHzTdn3 z#<_P7HdRfc#c2skD+OS zLzg>KfsTNJD4fpIi2g1Ux+wB8HuvbWpO<`%VA@X%`0~poGhe_7;wIw6m$zwQOLV>TU@Z5-;G4DZ<9o&V9gw!g^$#t*j3wUKAgisWIMaWDqa9C{v^tiOIW*cW`jtu_g z@MoiwGoH7jbJx{8HrI3a*M)P1&`0UZ`_EK%*rh^V27k?r?lEa z1FVGzLZ0$XK&08=yUkuMDY;Ma&|}QDlrE&QSSzg8Yw#@q!=WKki2VItJ+f}Sa^7@` zvWizfh*R2vM{~f(wP*E4)>8>DOfIS|gun_-kcyu1$6Il@8z4Fzs(i-9?H->iSa?cG z%rH4ym?^3Mu0cn>HuYtcp@MN&RRF61^|#-{a(7)K8mNuYZsm=jmq znaGgrCg{^*+$&2Y=qWlLJVVdHkw6%tBc5!g%uGuw>g!A7518;iFDzBG^$?y0SYMCV zehyUdbiZTGJ$^b~8n1NhRr36HaybI9Fa8S$5OxnXY|n&WJ3=yXxz+~{JTx@0fS8^F z0NL}i1&NgRKe2M(*+D}=n5g(CzH`|OSc}99W8UfN9mlQhfA6>4ZmbRvH?6r4SPaD< zKT`T4v$&7+_Vzw9Sf=UyAjHM-^_$M;V)LV@61H|r<83&p% z!?!B&{y@kuzqq_0V;Ks~NGQz4R;|s8Tgn@%kI2~5H z3c&|PJd)(4JM5e{VF3LS7v?_RN;YIDGI40xVjY1kr6!iia8~<=p0zfd)zgHrh$59g zyKFVs<#LNVFi8LRTyJA|%+G3@Q~GXP`}UY+ITS?vdY6;e9+p9mwV#vwDqZ^?tAg|* zZf?eS;qkGgW_OEaAhg*KPI}0$SN&vK37{heNXp$w&=7jzF5p5cIMK%FSqitTvC_d1 z?yAzf9(`|02$HK&FAK^R>Ow5$PzK)H#3pFtUmwD(uU*&dsh3>jK$zD5TB&D4F-25K zPg6PekBVjB(gDED8?iXa!lD^k`jK^D#N21JAviO)TY&9N=Ie?Y(AGu5nHzH zalX+jtMlHFu~S0BJyX3L71n3ehYSB{cWn}bAq@jKIR z&IiQ!c$hb&KK^GN;GUkI?-%@wzt|MNIcPQ=R3#GdkFJ2!F_1}j?aw)hp4suKVcpIu&=tAce74It)3eCyyxF0x`AvvekElYWMqxTY#v2lH zP{;fw+)-X#3z(lVLe`2wn|Z(4QmK!xHDR&$uOTWZ80%@RCHzd9&@qQ~xc@-p?Gr7o zRL@pOV-HP}O2hL~Tq3cp@MD|$!nSn0y_HzZ|-y|q%m#~WQ%Tc{wbV!%jo6oVV4HT`Hpz+o=G9iuJ9$R1Psb}Gq^ zNp8l~z3aiyK2epDjNcTEUIFF6NOEm^K>LF|-}7y| z*W-fy+yHt7Dpaw{AWqcN*&?`f4>e6kfwtNmNB(`Ca~vk`Tk}JWb68L|-O6LEmn{wgskrBxT3-`S3+M9UsylQbVu~%%JW6+BB?5%!3I<*`^D6!o;^3|kZ zoLqd}M#C%7i4A^Gs=(hGo9KQ0&~;(B&96$MJUeX-ghq(k$H(=(9cWY@+$cj*Rh4Tb zN0;9F&-i0;-syHUPU2cM=1u;q0asLtL;?r`K0fI}Uhhr57is4kO9MT^J%tx0Quw`% zqfcY{{N2mTL0NK)-+pz@V>^csoL8{{ovAJkzouC&zZx@ZPKOB?YjVf)CH!TdqZG|D zy;tjlUw)bR=^qni|2nN1WLL!=CKqrek!)7XzPmy$jN0xSR!{!XVHyuvyR?3#=fE4Y z5BV`j2>&CMDz@q9=?q{LaWEnxq6BY_f+ZfDx1s{x&E@KteO~cdGIfG4J(N^k& znVS7MA*yTZ{c{DGFuIo$Jgv;TkW!fhx7pqmaPph-LP}S$&uT)P&MuOK@dD|I-}Vbb z=)s@wjJTGLg(f=Mh)dZ7I5ga`LwZ4vHP%OREJju*Lf!n_g=K@L-se2QKEO2pvpBP0 z-pK&H^4dr$#}Zhnb$cy}bztIfJ7-f?@SPSf^qr0^k-Ny{+q`QGxL_R87yV{plgY2T zb`tYtrJL$Cf@zK}!@w}i=vm&$8UpK_VpXwH|0x%hHp+O<% zBS*2im901ix=BV|C2D9ZCLdycUM6%zWChFq*-*JP1qSa$_Zx?D$3j6Z)P&jcGmPFW zqD6xi-`OilCP~N~K;~HXLNK?`YUK9H$?~EYgYw#kKKH;FHiggS&3k%m2{G^$5_43V z<^xILyvCM5(sun}QXd|x;OPt><4pXD8?Y4-eYe;iM6?)1F617VmNB=1E{T)gU%zFrGdvhC#AVA^^pO^t9 zTbqqfz@%Z~SrB_?e`}aBb40!^9y9jreAEJI4|Wg5UFzJPA?!)w#0N$52qw!$3}PHL}s2MY=GlPq79&y@vGxd z^{AcPq>746@PRR&B*}FAKvxkW0>d2z-|T((Cz@-tm6c%P+r|TfoFn zap8Wu6)KA*CL-2~tx71r`9XO(1ATUX4H*vcGyp{vUra9NYuMM{Z*nj_m#u6`;YEYu zC}kN)2hRb;isMa#7OAY|@g|9BbtnOnl{!Q|isPI2+*?8cR8HK+&UY#& z9Bbsw2BfroAG!zNUud**b?M_ZT=io(?* zPw<)TzA~+%6zVETch6>Om%uUDfu)QJ5)LnQsz~-W)^&PMX@03<(R)4+dWwjBsc!AB z7OkDJ_9;6nP{=)FaDk9i2(`~U=5Kal+>$>W&cOYSAo?}gSZ}6CZ2pLy_^eEhJAjtx z7MX?v9N;HmDleELBwO=|+s(DFC`UE-^ruV&^RmyH)}*4K;rJbMq)qK7{RK(a8>T?z zwZQ4Grd#GBqK=Nr*!>FF(m&o&q2LgQ@r6NM_R}a5?Y=}0PHu`AI-uINViny!H@aAy zPbsyNadYF$<>ZjDBy~3@WzCF;ar1@wBtAASgg=?3 zbzR%rxPs1*$^ve|l45|L(HekVXc-x|)XJzZ*nkPdqo$pRh=`}RH4b|9bs?<=O^6sc zR~AN|_AiiA^cKA?YF#Y4?({c`Nu)e^S@Gw%7fb(T7AumlkL!+JE?B|BB-AZ$2xQc0 zgC1o$u{;v8hX%m05a9fl)_IFz5qO9u<*Q71<~5C#eGll5__<10yMHi6W$+Y#8Oe(~ z1Sxs@nnj!%-soRl46|$igzZPKhdz`P_V3QQ;(0h^^)k_4<*_k1re((7Q=YdGobS^w z4G(Q*L8@9I0lX-3^vJV39|q14mxu{XKg{id94)GRn%uBenctlg!Av6wn&DWxs!G{f z+CA;01a-*$Mm*r}F<|xi3d|b4&2|dEIwF(?L244ybAm}if1?W(tA+4q7NgpxjVJPe zb&w~}EOSa=TaH#__pIgLmFww?N<2B8oHph5F5Py{~U}Zi;8MnI z#W4G9%aq>HA^OvH0>khAW?RjlzNG&V^wJGzVv6;~s}Ycqdp%amSR0o;uT~d?l!vjK z@B=2_1+6{aJ0dGr7q&m%>tmHJBhIf!-M@P~ja`AR)xZJaPMoIR68aq;Xr{fPprj;4 zsMeP``e{cRoW#Usce<-vYc&9PI}kiS?UEY20Ea>yvU`8a1x#U#2ft9ivFprNs!mG; z3kcw}n#5Z6xe^5qr9_I&xSq=jcm@XlkDW)GUMTb7IvtRqv zQI}~sSAg$)LHgl3d>rI+bAuvt?i8k)leIaSVnl{o8gpp{VM<55PEJ1^phgx*%K|M6 z$9C<>RM?{m_c>@lO}a$T9s?ff!rnR-*}A9ikcOe?1Vj-aLy}?y>0>lZDne1C6~50Q z65P`{bM#~o5&Q8y<41=Nth+~4#?Re)pn+ys)aoYdd-g@9bis3e>UX$8llZ?ufGtP2QfJPv(Pn1C0BHy-9g{7QE>qQ}XS)Wgj>_taS3 z&|m7~y=xZ1o z=S=t)$9uGuFxnkw%Ji?d!PPBWUw`-;q+Ni7oq{UaTv`fBFLtF9& zNk^ho?;R|}_qH{*FWJb2+kPHHd%unBTMRtpeb%Z+p{Rlb=F(A0!k}r!OM1Zn02qie zc;)vQ5>REc<=t*!4WylXF#Ytgv*uy|u9sLQ|sCi1c&2k4p<=lqWx%*{is zc5~~5==my!PIyGxU6~kf7Bco00V9Ro@zm@(@9SIhTguJN4P(%GQ&S_sv0xoaa^svP zh#%`~Gv7?JIq3~Z%~{^|Cbwv=wAQrf)X*HwumKIeN(+KU0NWhZqvKivdrZ2-iCQD( z$AhHhuS#&huMN6NpY1F3gmOee;06RQAAdH$-nS%}#j;!cDG7+S8~KJX#E}TOzXm9| zd6dNL27}|+K<9yJWjaAK-<-fDxP!~e(~UPV56BPr{odh+mlP{(-9o!(SfA@5)aU0E zmp{@^7YQH|8PyspV6vf3k|DdiWiQf`{7(8PMo39fh8FZRj29@z21NlseIZ69@76tU zirwOS1iDqSwI!OIoV<&3)k$4wN2t;d>8D`$lB#bYnO;nbt7$JmcxHyJwMZ&XGtO4j z5_xk-h1ESZs@`8^O1S`c*yIKopX44F$Mw^Aj_Bc$qn1Q{J(h@XO?L*aJ0 z&7{DM-XO}U=6c}lVe8}9QuN?rye@?@3vWa;|p zpsqo7ZFFa6=lIOb&>ue}ge7_J6*&b3h4?J=to?6CDNg94_>CXT4+ZjmP+hjm7Znwy zfW{VOWWxJPwQEXzH=B&Qy@lrDg)Csc^U=4TzEMcKkjaVs@p%}yVC?(MGKI}>K<|dz z9k$vxmhtk9_+z1F9ERO$TLxj^&Rp&fG;p+8P9%41DfD6$Jw|D%KEEZo*8Xv9_o)%2 z>8S#x_0x8q%e|i$cHKE7+S8iqz4y8TpA-4talJ{6(61O838m-IoSTac60qVn-^nV) z)1JZ+^JgOvQ^MsP$3y8a;0LEh=MdyoJ{(F6r-mN{thV#Hwh*vNS5f~zuHG>)uQqJg zOq!%oW4m!0+h}atP14x5ZJUj4+qP}n#;kYG>^3jtkLAC~(RfQ5IU@GlnvN3z|1U3N?xD2?G$uvU%GL|JcPo-~cEL~SNs3L#s zgsoEdh&w#uuY4~;ypqNvBpUw-0n2mmJN0ZTmcgNSCDbT4V{JvweN}W5Lc6EO=)%R$ z8<6v%q^Uf=NwuHYq_Ur|TItR6XI`@S6PfA*oPIkT&(P7SpM&_4sP<#T@U9P^UTo~2 z1jK330{)&x4Y<;4O5 z_`g=$)>j*C7<+?}d(jhEY&>#k-3uFFD+r8mo5tB_he@hg@x_MCb~aS&8|%|;?#9%g zmSs`abA>dyxs|6_b_i5c^B=WRBS2Jb)-$`UrS+fJ2jVB5iVk&2K*6JVgaIFI?)Sy7 zwNB3=1LMz)Q1RdE6I9Q8O9X_-(EpT77pMOkH0OyT*zd_w@sD5!C(~(nH``A2&G=&Z zQOz`2^L=vMQk)^B$5>pqs#pX;ak;ckxwHR|w~9S<`I#BZJahwhv)vWts)I|@__M)u z4PDohC0RBSIpIb?!Wwg-)m`loe=SNFLdipLL>mo=gJS`JJVl6z!rxBZ=LG4814O() zXK{E-qxLTY06Lw-U}sackWK)~tO*-%Y(&eP3exE+Gx-W&R4U~{c_L_4OT(u#oW41iq1|8G^;37@LBcu3Zg;|`6s@HWhCl>a9dI*uelyL_Z)iv(zo-=KScM!te|!DH7I6N>t*)}Q+TalDtC8qkIXXE9G;Y|KS(;%|F#BjS6dA z*zUK><5*%qVSXwOy`1nRjzXTiSTt^%d|}~g%P`gZ0+ere-(T!KD9PVyd_6k>!`?M3 zE|U@UU=*IY+|w-#JWPNVZE#f;!Q&NI4g%KNuo_83>-|+Q!32NNWTvZ9hI0OQ9gh>z z@eGc!KTm$ObeOo#q--|_mFg@_<#3we%9+x9f0xevAYh-PS$~a;qyU}Ayrps$<;*Kx zr%$iv9o$cjB4rULBsPr%3AF6V$p{CdXX(^iY>g%>O9cn&wJ0nf0bdYZmj>UqQM(Hy zD(c>_dUGf{%Wri2nG)(wsm*U(eUq}FEe7~Xj|0v4-st8kS%Uohoimo)+86RuMVLoc zrmOucD-iz$l;sawaW-ynyt5KqA64j`f@SP5^nuKu(k@Ja*Q7Z#j z3RZ_kCMQnlBABlJP9i$iSB>f8c!;6?STQcIhnlsfljq~blB{(Le0Ve$@#L=6Jzkmc zm+8Qwr`62uP1++)a!Q0Z+eZ}akt{I<1yqe~P3x0%DxL6lE1Wf|R1AWvPAAibP!?=Cs6t^CuJYGTg@QfFy9XBrtgwOiW8RI)t~v>M|TN zLLFm95(C=r)UJXk(#8`#wT%_47@X8vF=$Z&2@u@2fXh8WaUYwNh*FQoHTP6CHg-3iAM!!Qmv1 z_4qcJmC7Ih!>iDQoKULy)nRy6*q&YCUY?14en0y=@`b$kxmzt0rV*e2^Yp^)pr)kf zHa%ztFDZ#OMC#`@n>Jm?J+jl~bFeY_U&jz`f>0pJ%i~a09$l&1HAn!QYqgEhE1LRW z=;)cNz)6S7JplO3DrJN8GWI2iM@4XXfyM8?S}XLr^8+5|Goe zI-#Ga3gbIvM=MzJJq>WK*$RY$z(jxBZ!Y?|#E1UmL8qtrPFcRnLeOQY8>svF4hq~W z1@-hmbwydHmq78-*!87kfAP9*LUeWRg=HH<&2T8?yvnoLAXNOQBCg}Sc3+!TKS1Zfr5b)})DW~@=E^E)K>aav&G zxviX>?k$ykl|beU7^Uf*E?!luGV<%CJec=L-#hJStu`Xd7QMz6a~T0yX#e=F)De7k zRDTs;d8xx!5^^+SodQpJ&j5Mh_EEvsw%a^fb89Q%t5yAEIg6@A;8*ZxL+OyT_XX8jE^^B`hIY%QhC~;#~&hAX5@IbRS-!6d*4{nN) zC!1u*LaeZxPOD37@>rqeM9NJN64)!@(8*~z1E^$vGk%eKxm!*seQbcKqAoU_YHDmG zWL+}xQ8iscupag>xcp zGcA>%q5Q&esT}JlvOp>GY5};S-yHKju1pt7L3Jy9&d0x`ItiyMn*7$ z+x^h@w*0I-oK2f*twqlUu@HhxCR+|RJWJ2lZuxCL0X_K35`7yo^T!JU5li1W^k@DWmwPWEjgi698-vp~mcdvGqFyJI z=Ey-;@1z`xwn3wi>CYD*x$xByK!@4c$GVdA?i)OsEMXtj-Y4fZ>z?~)GY~z$faf#{ z&GGWj7IL>n3Lj;+<){abuiGk$ZG0b$?wNx{A}8KC*wK%*RTFSKiRPu&Xnj8#zvlOx zK6=5Ta44UkqmYdFipuQh|9X9UIYTz!eml3xf(m_@0NA0x6c?*3#T)j>D@yRq>F#JT z<8y3uQO7!3bYB;yQ}>;(e^4l|xjCeY#T*(9V~pPT&|w@1$aW0xrxjoMT;kztfc>w7 zO#S~!LK#C>lJ$Qt;HEMeaf#g!QX-`)WFbX_VgRN=aVG%B&`AnyZ)H{fJSfn#+sF6% z_O@41mS-Tlt|!N7<~&W|h*sMHROsfWP&BrNgbLv6z2C$b2ic+gw?KL4U=mqj-b>@Q zR#OUGOxO#`gy^p=rPXXq!02Ce(QLNSODy^omYyVInuOOizI17DZMTe$jT=;8(wrAAb#57)BR{c>4Y z7$WfQ=aa=7K=wFWfmd)mP&}4aj`D{R{mwRs&?MU@v+I-Zx3-+s_>Bvtb7&@^%l70` zeqFjNti2b~WVIVZTf;@)L{wA?&mtINk5uh02?TZsmcbK|J|_|8!R*&hq(l))@eGfg zN;WhJUofXE6e3c=$)f4Hep(IFyaFbflq~4QI&CW4w)niKRl25iITF=>igTNCiQp); zCF7v9got56&GsJ>iGv)T?hkBkKPE3NHaZ_|5;tnbpC!~@@tI=B&WxnEtp*E!|FUgZ zZl>i_x%(KGsvS#a*+Wf&`n%m-^!$W*R>U1R42)??#5|rZ*qU8F%Z;{J5CI$DcK6UB z@1Ln8xRB@$*hCG(#Ryo%{?*sFg)*Qv!h|obqxg`BfulR5Kn3Z})k??Yi=t6W|Nr#z z%V<><^}$m1sHOjgX1STkMH&S&OPeuUVi&eeEvEe`G`l0LOVgjzg+`Q19w1`C2RU%S_ zTEJj&+&L$P$^~!BKzfK}j{a!; z1#y@0>^qy;JSNbK91e-}Kkd}3g)@kouZZLtu!<>R@r=o^Q7sD&Kre2g~L_I~G ztfMFI-z=GBCoeCEWpRf1Hhfn%U8HJF4dmz^tu^5iYnStH?cyu**r{fG?CtGKsyoMj zj1JQ>Yh;x?&<~bK#z|E78*0?BxHnm^1p$EW-Qm>mX49RUyDjgJP(>tc|M;qGi-Uav zDa|HJK?kik;WIrrS}GR&p=jJ{H=)0J{DiH}SEIxX=DD4#S9f8kT5H*tV^Z4z|8JPc znea5J$9xgFO}@oJ90i)FrcMx0wU}FM6^3mzFP0wUX|jjYm|2%9QIfJ+&XXYN#fo}- zF!_RLw>lhPNu@rXZ%)K(&Ii;(%hV&oNVg>#D=yY6J}$%IkGYMU_SAmW241Irmd-M7 zpN2lcnj06ChRrBqn-+cQP;+23D0<5elpI*#3>CHgK9n}5-TocL^SA0Y%5J_s+DJTBg@&|}O13>WmALR)o zItLmyw#J30v9a-99|ytp5E!=~z0$V%Z6m~^Kt>Z?Hzz+MFJ))cP7Bg;W;5iRB2hIF z4@@ut$9JK&?uHY-t42Fu|z98@qf;N=Wb%uM7Y4Q?C2ZYWK!Z{k%L$a7y+}Iv%q^MbJJd=NQmj1d!Amw8Z z%c);^3k&G~`!~Pe;9%F9pe*Hdm6o+i%Vd(!iYDG&} z;Kl}77zT&AvdXS;_mdZwXj*REEhmLkWW8*V!Sh{!KYyRaUx`Ldx^!DEc&DK=oNb(JaWIV7*B^L2KtnO3dT1#)1fJ3a?xxV~C!X;OnSp`r(Wa_J(ZqmD@ku$S(%>mj%^QJV3vU z)`cx}&~ZtkplnKljdU^@+TYkeQx}N(K?PSwb|~c43g8q8LT;|qrSDhE6bms8v+#J4 zzx_irC6`IX)jwa%XK*rn7AQnE*pQYkT>a^8U`gWB^h2Qt`K9l5 z#wKTlm}_`f8x0V?w&`2&QBzDhjrHrg};%&HAMjfgIi3t0eIT1yIwKN z(7m+{vaPvc+kQidmPkg+RWpD%l?mcYI8KNtxvS5iV3@{?v*ML(gm?n?MMg^r4|ceRMQiHk?&DPjIHr zJT4@ZY<0yKwg=tUySJy&Xw-N6S)*(0yPp7M$ivh>!rurF-5P!CB<$nIALFTG4VpOd z!o#c$>^3>>#nysrLLqO2HAq+uMfR-p@VPI*5KmX|cN)IuICo?IfcC(Xb?*wItt6iA z|A!)@9pWRG(_7Df9t?Yy$z_f}^-r#Ndw17Qr^5}$P@~B#w7Qypzi`u^v+$N7Pz)~Q zr;qvEAbSeYpe&YNb9R+a(>y`tsfI|?P0f-NENz=tCC6S_cWa@rz0vwqf4l40_0LDl ztdk9Bytn9nsw$bj@)A0OogwSpcC(o&~tij&>Md@5ce)G$n6zahE-%)Hfjrc4Yv32i)L>?Hjb3X|Hm)fabCRI%l(*K$IHr~A__S3CR;9-`KulD>aFumhO^3MZfMqYG5c zP8Vs)XWgsrpYLCU3=FJgfC#a5lHsCAKFaYD zXEyYEX)nnL>%AGL=9SHo>3V!}TyA!ZWj~#402Ad7lNw^93&3Ga;8OX88h6;^c2#0% zSl9?H@j>0D0=Ip$*JhK=hepIlhkC&oTAq9);7A86ljq)Jsx%_q)OreAc_xit;n&oI z>`szY9(ZzgRMhl6Mdf^XF&T4hl6Df4+ogK*ZT$D25l1yN1w{qh{cEJU=#J7^?I~`U z#i4DV@<#jmf8mSS!Xx>yv1`=Do zL!+(U&0HdG#Ft!ONp{W`coFNb8cc;JM{Y%P%GQ=h0sA3*s5s`M5&H8)1#NF301j(+ zsog$3Mc{RrM!={PqsGm7FA@heRAol=nEKE9yj66B3{hZz z528jbBzw|q5#3^UwWimyeZX=1c)LHoJ_ly6@DOiJkZ8ucizt4nZw^ltu-3*mk?Sw^ zBR$_wKtDegNvFIFAX9LEWp|u`M3)|~UM=415JL0#5F)x={d=PPNwh2{-{Y4Xl0$Lp z3sbBF@oU!oiu7LQnB_P2Nk=lxm;K?Tl~Y~Y$fc40%jZ=mZ!8UPHc92Gb3W`i%3wnr zF-;v73k}Ythdi?89r!@O`8hS#9Uz{KMJ@Z0-r@Ph0N!xvmr4-bLs!Sw``B=2vwMC5 zQ-MOK+nR4Id2zaF45F2Rck`AT2rz>fTiS2WxwSGP-CC55tQLCxJp75<>rKjy6|r&#{5Z=K7Lgz6W^nqoGI+HGWQvvH$G(xL)x;}$Dh6|5g9Oeo+DVVN zu6TZZSj=@ugKJrJ&IY6#sTV3S<_7iBU#)jW!r`!Ozqi<*v)?wp?*tP_n++{iXsS=* zaatw#I!%+=0K%N-vnjrn-s|qq4@?HTzXk60o6WYFCC$hJX$jua68@`BxBKGdZ^n3U zgByLoInWHxI(wF)^9Hk)JfjIR(p@mz*fyTi#={#bzruf6nYz`EfW!Mz*wzL7CwhWpo7?(>iWjslw9A;2-BZ z1Xau;#bC*Qqa_cchaG87MFwcuy8O|skH3+QT*-uNS0FWfB8~U4dtW!4$&=K(%ZNqw zPvZElum57M{x}OJ3iZlHIk&Wkkz(xn2Fk6;GE~S@zteJY0n4S9E1id1r<@ zgU<-AN(UQ^zzoq59Ma3pV*(`3L1mI&Jsm|gX&&CIa$k?S?E^^fWll*h4Djc3-=*84 zn_MzoJ_h0NG)0D&S8~(5LB2a&nLIci4eY)Bcw8Ct5g8tVxu`DG{^N+?Uy(ebbXSAS z(`Jn&r_$u)E}Pk9;ZQk!)eC6CBC$b1-+8CNxfr&70Z;P(dZ4wHYvM6oORX&_lwYov zvDKmTHo;Z=A>JG{j@Mi4MfXg9n{@+#bmkK^$LA{l4zTY(FmpsLrr&^(vB4nQR&|UJ z(GTPC=f(SpCgkI_B4_coQ4Q5n3oR{e^!lO1W9c9wn<-c+ybCR&n%Vsiq-TJ1LW@TV?2~W4T;*r zW58IXd8x7<$_E>my3f>KEXe2mn3oQHyx{uT z&FABq8plcLI?>vus%5%>dF)oM*_0H!t5gMKsCpKu>FP%f)kFUPFc2z$Q#HjkSm*L~^ZcZ)v=z5@NRn!;%2 z@d`QJiSvSpVFAx}qvH#VSpS zib8qt#;t_52Ri3_2@KoN82{FIenA7;2>v|B&IhVb_@6d9f z#De~>k4BSx7AzIWiDlZ)UJXvi8c+tl6St}AxC&3HL{3lR1B$ffkqb67Gld4_vqcs2 zV3rG3OD*dM*7UGhgc+*5j^JoqMl~GA%8|v2wd*%-l#2k5qU-;DdH;J}l@}^+bN1sl z(&PQR62dCfw=`|CfP+~3%^*81Uj|4Dw`;BV5VEPu*C&tDIB=PYJS-xvD)vnfl_NRgXx4%?UdOSc?$p3NqRp9*E#_OrR_1;%Qu&~85)grfBm zao|a!ccuid#T=g4eMY73v|!#{ua`lB^sGueo_E@%VzF2~{@|7hPKG6I3`MEQiU*K3 z&i)Qv5AuZ~r;jcn67frhkgS4V$ZWS&tK(}^&Q#IJukipmWScOxj|locC>{515&6;7CSlH$y?$YL)!bOBp?Pp)LECl!S+GCLP8 zT$@o%dl#jC+J=6C>7f#=f`y18^|~H+6Kps8BPbR0&B!cL7#JAmTi)HrH?mpWgFvsX zob%tJh?=?rBoW^;+?i5b`#<67J(%==a>UbB8ce=RlpLNmiFUVpv05#6p9&1c zLi(2A?A@S{ncN0pfi(o%Wofs&_`0eg{ky&yBBGMla56vfj}5 z6x+$r^?EVnXuvS3>=^|_O#436EI$$`bJ>A_7!nc^b$-+^QE|HzI-PniD`DXy)`B&F z>1B7h2H{fu9SH&m-TfCvpb7+hGx(g2e<=P-h7G`@*GgpBH9_1u=xPK-b zJc>Uckd-jW=vopzrEM=ZB%?F|cKfV^n$-zWG&Q8AG=)Z`QtjcvnOl4M0s=!^)F~_4 zA5T8s7K+Mv;?CvH1t4iI_77RZa$s|%bJZp8MVIR!2t%vQ%*Y0gfN0tAKR(hrJNs{;g`XN9A8IK$IbIE4&0n(0lk_ZaNHW*s!FOu8WczZ@)j);Cb2&eo@S@&5FdTg z7UX!&fa=QDizqU8=!DS6D@#n4Rrr7LLI>P~aMGD#Ja^~3LaoX6ga$%Xs2sVCCzQU) zTJMf_&sZfyINi5aLo~Q_TnzSQE@ED?*<8o?`AN7f4^H$US?%87_|5(WphW)IYnfkU zzqGj3g}sTn0;X!s=id~KaA&iM`L~4K;TSb8mB^OUzZ+iiuX}2T!B!)XSN=#em#+r( zmH`SvusWkubRFR=5rFlpe=tqvBS17-st6=|<>=^Rkf`?;L^eqQgCx_57OK8-mzQVW zmU(=sQq{p&5&#-Fteg6J{%|hb6~plod>9)Y?cEX7YKAOweG zle31#?#+T8mLP?y-L5(dC*u^;Xy)_IgYom0N_Tt!Q|0p^*%cD1d+-c+GbV5Ku(463 z7Bof<;&FKO1A6pxu-QIALI3mJO=j{8wHt-nn65YD)=IEAq_CN*sjV~?WE>2KpQKwG z{aJ6eHHz;nHMx<1125$4cv#eo$RV>{)oilTJDDwbem1bQ9++j$2W{e|5l9C2=Kb<0 zb)+ojOjNg5QAS`j#;~=2G^FgrY17?o`GN{|vi}ADpIHY0bdL{iMd7Wff6ZCjs@v2g z=Y$sFM)HK+gr)ze;I`YLpcL>Gh+rW1zvF=!NO zv|*s!-@imJgES&`Rhn(+dxH^>Vk2tmBD~WcpdJ?HKPevx!(i?nDrBp$)U!`&pg&9Mx?E@8Xgy0A_V2(<_3_G`scUmKW+g&XuELYI^?v!#O*sv!rM%m zT(a!a;>b#9#nfaL$DP8erdCW9R+(9qqnir`>N+NaIF|CMo022f%~!C<|2YwTd7tZ` zXJlqF8xzT9-u{M-2Hd|rW0GtfZv(Ix%!I1n^@atDnW5EA>rTBE)S>2vW2+d65DY0G z%)(SCZJ)38Cg!YRXjmZrKFwtitbDTr!o<(VdC?IWW87QB7mOxztgfS|sHo`G9)FZn zZ+98?Zv?k4RyxvG>~;wbn*7`8+@CJ}fn*y!L^lw|$&pO1Jg~lx)JBjdcId)kw?X_4 zk2^d`%E)wu_i#m?EyeGo!s`C@=}wR%on8yAA=%9>j-b8BF>5;tCGt7b0$6qgaJM6O zAxZHIN8gE-qc4N}@|JSMrWPaAiJ%p$c>JnSM~wMuabTjf^qg4n;Et9kQNE$P;;%o| zpX6o$Y{!P*U7sJL=k7#msTkm6HA`rKqRCLzKk!eqkwl3S!YX&NBuG+ecF$`v(XC(_ z>i}?!OA$qOtyH(0s9=#9O&|E?8x#2Tcs%nT*hj7TTJ`>PK{7i4BO$@K+6et{xgMr| z5X1HShup-9#MFb?w`I?3Q`ARG&FJz72PY6$i6+Z6U?(8amTg&p{LDeQbCx3nCyM3A z6E-tmhY8xqAvIgX{As@iE30roU8Th|r1QJ-q1OwVZa*3^^93riH7J+j6V=Q`P1csB zPA<$CnrJ;Vj__YML5X@1B33*U08T+qfBD$hD!A}BsR-yB|KCv*@Fg#J(o$~`Klci1`;`QEMnVMj8lI@4bwX5oD z>rr<#?D@|6d!>mYLt*ZS40<%h&5nRWZOA=wix(gS{&=}W6<_id^f+y9ZCGy5mBNBS z_4SMuJC$W7_FKa|2BWTlf8SK!jFWL+*_vlkXp0hbH6YtR4@HN73w=Ydjj75CSWhLT zd3+j<82N!g`bS{B%{Hg?)BL73)yOpmKFaG*Vw~ zoSm5*{u9ay5SvZ1crfJy?v9|6;f9zzugXHA_6CivuvU{Q z5XD#i!B19w{#-jTA>hYy+VH;g(A9~3Ga^vlZ~DwO@&5|*aCIIf*kSJosb!;711IFO zmOo?OEPvQueG{*Y7avLuqJX}0m0H-~k&4%G!sn&BkQ)VoCC@yKrUk=^6X^N#@e0ZvP zusBsHT$6whE7w2hUbQH=6F`;u2Gj%G1H_8*>P8TWvqZ)uQ0s5bExs_LV4Km ze5b@MV*&1mP)GN7s4iPP1$Xl17S6jjZl?48|9LSVpe1L!DnRt9&w+-5ny%)Vq1=Ir zzx6(8rK%sxKf^uO7Rr>+cd*@byt za@%v0RLuu9TRHyq=mZa&x7dHLL3t!@>vo(O8qR8pEdeu+Hg_{!Yhww!5~*d|b@M`e zam6VK)iY^YURo*|=g?DWLxZu{Xce~CJ_0zzKxlO#-@uU3>Q0E`5-$x z#&9#C-129MBKb;Rp#9M#qus1h)%vZxudTuEdgk?EI=js^2tWWBPB2WSRriY~msN>e zK~7Tnb39bVm^Yp92Vd`CYK37u=}gfUb`ISQa% z8FA=e8bY7tm_;?ntD1o_=zdT5Mp~Iq@H@5~q{<0afURl6XanjvD?No&_*s$TQiSS; zT_!Z2c@iuxNQuVzR}jSL^t3d53Dj_$c=c{0>dH%ov7%e6q3Z_FFAw$pR1dDdOWxU3 zU8177nYKm6K&2<5K2H4kh_w-&)&M7RI>GJ&6**-M8Hl5GzMgvhJ@gM?sKh1dA7X$o zc1*cFCGDyWcGbDmDOT>F<#axVDG6pmwv*sK^Yi$t)^0|y38a8TG!$K|d;5Z$-`Im( znRPqd5?7oq*C94}H=p0Gl&KN&mCXEsMcXy^K z8sv4N2WvM>dmx%iLPoZGGl!|g*@`x%axtw@^~?6Im-hYsPC={LZmW2f{zIf#SxB4#VGkTRjrQIP*!GFZMdrKJkDSfva@5Rvs(8=LL#}`Cva62wUzPT zM%x^Tlbj`Y2k{S&hz%_7fKe567*A?V*SwvVVLk7xog5>trjvhBSEJlz_Ws}dhM_fO zw6;^;q$3n2NNOPB1frRLcyLJgC`=9Xl}6DTrUg%~H(~r(D}g(zpqCDQqt#lFUY}?V z@HrzxYqeZsoqQATM#7H9Ppke(jaCYkh@p43SP>boh-Og~bggLD@>vi4Tc+Qj?$CYo zq{uYbw-vh-I~5HLoza?hR8cL~X}SggEg!~>0D80bb}f&O2i51J><6+&bZYJlRL+t3 zFiJMdRaKMa>VG3c>9FegR+seRHkK1-yJrahsFV2D>3w3o=Xu5V+-!82@UXJq;aBQh z_AR+0cSA62G(S1)R4+w8c^7&$7g_?1tp#oNpx=hc>H`b2r2-pas!Q}I3Vi~Ma`Pm( z(XvH^5^xPEO(*(o8mr~5!s6;GX=$bAcl;4HjgPWEKAw&@c@jcV-rp$NEKeK1UeCVW zpJR=B5o6G5_~>-FC%ZgC&3`e;Eq0;3mZjEdH*>W4A6jIs*e|ZiZEeM&?Ae;IJ-sb< zB!L*5=xUzJ>? zHh8O;^ddI|GVCA4?N(PAl;^gUMInbU+3wMwx!XQHqN#=hsBOCaB&oLbbRYYm3DPxO z5t9e) z;X!+LIh@!PM#vz1@P3^$;c~cvW6<@39xqnl02LVUE;oKU#|?4Ul&@EF(zCV@awNAQRn+@6ePeS?(xoW| zTf?ItED%D+aWUf$Z%CX+c$lj*E+1J#x$=96E^aQr)e|&LFM#n^jnTT}`6}KoEZ2}| zci$W`>F1Ah2q*nc#s57?Xam5g=St8k{gFQC_6gn3y)Snb1dfN}rai)&NhZ+D4{c$eKa-X|Ms-vz8WEu!Cs>v47DF>%6TOW%1b(0|7-obmR6tY9nXTW z(gy6Mw|8U&U2^X6tsrW!=ugkxsf?$bK{?W|m^6s|zco*dJQ^A*BND?1qWzhznS_L9 z|AJ@tMBqHpu7-z?#=&B|Ab}e*<#}qc(m}*}jR7P8u@1VAaPVL=C;L=u-!BN0Gg%s1 z<`T@|1p3YYVL0GAGjHH9VBSYi&kZDwG`@WshrKp*0ZC)~vkZ`GkWEiajV9F11wFm< zf*IXetMm}aPu;^9nv{tG&}F{i2v^E@Q@36P2LIAZvB8=8jG?@!ScQT4=*V<~r-j#V zUyDEM%J@b&hH>(TSWu@1TweV5-?(o`H}^$CQVO(+y()cM%6^j%;3k*K0gJrC#ik^| z|5$@w2me&)qHw#%_J?SV&WM|mjDv0$%rg1Ab_||fvKLF3M^1b0D0+5 zfud*z*BX8>Ji#DjeBp1E@ePC#|Ljj%E%xZIcVpT%)oCzs z`L^p{=G7*%u;+YcIA}q`>5ue;ga!QhKP`!wGnLw07HciAnddyyIWiz-FE71g8*uuu zF|m33Jz{6Dw+ZDD52iU?Y>ah3$_!P($LA_kK)9}eB;~S8zPZp6i~`p_I&8%%y#4uk z{^H1k_!2KA*<|^vw2L$HqlISl-cXdmXo76{=H`9^YLdC;h3#tH7Ggd*c{R5WG33J$ zfF4~A{hyQVFzsM;Ba-c^pC-g&0-*KVDo2sTEGymy_Lbi=)9nyrpH_h{!7`a2@+~j~ z-7x7ek(WphD5jvLwm)B9S~*nB24Qd!k;bw=d>>~0*5cY?VJo?dlQ@GhmBp)=sh)H6 zA^MV_px9hJ_q6rpLqi6EEt^-nTb@|T=rfZiy0gAg*X(`-KNdeZBQsSp6^P3SRIYU8TRjLaI78EcC@rBu1Uht*aJOA^PI`6ryd zc*$!rsqsZiBJ8Vu7f-T4dKK^XDI=Jh0q=!tD(ODniK&FT1PVxsjA`U1g3V$7lvP+A zS7@0?V>5m^br|YmkWY^TbW8^lPTC{kN$sYR)_)@!dNAi*>3}G0sO97@*(Km}o1$v{ zbh%M6XTy}U23F|E-JsVS09|fv3g!e%)~VHNn*-ojS;@yvACrCJINtCIJs4A!gVXD@ zCmw&6QOrLzT}v7xei41IY!rCkWI%%_8nbtTPPCgit6qOqb56ed{^QmJj7|@(Y*Ckt zqIaRbFNW$b=4J<3T_R zn!&4$9O)d1pMw?(L#HZqT9wWR+gO2V6f(W9-EU-2mxF!N=O`=~)G65JZL~I+pyEbYt~uubqy^5$ zd-v<-8-qjAzx06*bBzZXa(C0~f&T%>D@evFLlKKfu&YUqImJ z=ZE5Q3=2dnDkx+m)hl33hqi}UtcnJ<0zYYp1^0x-9^{u!dKc0oY~1up?m~B0iY(jY<&MmmNM4l)rTAN?)EM=Jvn;bA*#6U@O6HyCIhz; z4J0-Nkc9%6j?grLWkE@za$Qe2ZMVlS)y0)XHUz2@QXOLUonWvrIl=fz(+X<;D4h~x zn+7mV_!(TT|0K~x|8{L1R_s?$Gp~}AT{xQh3cQO#0Rir1ldN!tzQd9ag_>*`;&PL^ z&}v?cXvVqFeJtN$u_Zq|?+&H=`vM+ z$|;lPI4sK?IGRAzIC5x0QWl6huX*$@vo8@&~vj+!^qZm1$m+vKWPdV*D= zB&ZN}W_Oe<+)lqN5+ZE#`6$iq#azGMsenEj%VJNuR*W+S@lg9)haO-*V=o*dD=dnI zn3agca+KUlDB)lrU**7ArPABJPqTd8j#V*Z1oX;F%i}EtmnPGE{HwV}me*CFsO}gg zPU*$f?H?@dVyOhNa7@uXzD6Qe6D#-)>{+&wu{zb%?@^#N8yU&Aq#?c>y^F(!oA1{uXPY9`*}?mIjcdoq(ZzZ#!{t_6_!D1B|D~hZ z4XJs9^H61Gv)fDUq34km&-UeMMEH@+UIT-{IBj&(-ueG;-_FPntE&))%Wm`28J$$E zl2yXba)d0Ft9O`nNUF93VBw6T#K0tu7)l}bt7RVl`t${ZT;>48MrvLh_B>C+y!7;l z!0_DoN*pSH6?5_1LM9YLp_ekgcy^H_HkV*Q!97u-0ybbk+ zn5-+YS?E1EF_6Xa@kf4{EjSP-$|rq1jQO}#)^M0lO{lN7$8YzHk$`Gv;;A3gA^qfY zq!6NVJ_{ftTU+eOupbbc7!DGn5HWA+M5LIwqoqYYB2>lsdIKmrPX{T96``~Ka z()H_$W+OW9;oV2Idr+>Glf^nyb^CqiB?;a5gQ9mpK9zlw4m*6cUr%5Iwcd8>@8|#; zzpYvRp-HSl6au!P`DwM+2cJ>06i|Do)AkY}3#;1VAOGw-w

XLluN0s+&)t-=PsY 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 literal 0 HcmV?d00001 diff --git a/docsALT/public/site.webmanifest b/docsALT/public/site.webmanifest new file mode 100644 index 0000000000..fa99de77db --- /dev/null +++ b/docsALT/public/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "", + "short_name": "", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} diff --git a/docs/renovate.json b/docsALT/renovate.json similarity index 100% rename from docs/renovate.json rename to docsALT/renovate.json diff --git a/docs/tokens.config.ts b/docsALT/tokens.config.ts similarity index 100% rename from docs/tokens.config.ts rename to docsALT/tokens.config.ts diff --git a/docs/tsconfig.json b/docsALT/tsconfig.json similarity index 100% rename from docs/tsconfig.json rename to docsALT/tsconfig.json diff --git a/nuxt-speedkit.code-workspace b/nuxt-speedkit.code-workspace index bf7f44cb37..a250ee57c9 100644 --- a/nuxt-speedkit.code-workspace +++ b/nuxt-speedkit.code-workspace @@ -5,6 +5,9 @@ }, { "path": "docs" + }, + { + "path": "docsALT" } ], "settings": { diff --git a/package-lock.json b/package-lock.json index bb86e84d53..34d9715e72 100644 --- a/package-lock.json +++ b/package-lock.json @@ -66,10 +66,185 @@ "stylelint-config-recess-order": "4.3.0", "stylelint-config-standard": "34.0.0", "vite-svg-loader": "4.0.0", + "vitepress": "^1.0.0-rc.25", "vitest": "0.34.6", "wicg-inert": "3.1.2" } }, + "node_modules/@algolia/autocomplete-core": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz", + "integrity": "sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==", + "dev": true, + "dependencies": { + "@algolia/autocomplete-plugin-algolia-insights": "1.9.3", + "@algolia/autocomplete-shared": "1.9.3" + } + }, + "node_modules/@algolia/autocomplete-plugin-algolia-insights": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz", + "integrity": "sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==", + "dev": true, + "dependencies": { + "@algolia/autocomplete-shared": "1.9.3" + }, + "peerDependencies": { + "search-insights": ">= 1 < 3" + } + }, + "node_modules/@algolia/autocomplete-preset-algolia": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz", + "integrity": "sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==", + "dev": true, + "dependencies": { + "@algolia/autocomplete-shared": "1.9.3" + }, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/autocomplete-shared": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz", + "integrity": "sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==", + "dev": true, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/cache-browser-local-storage": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.20.0.tgz", + "integrity": "sha512-uujahcBt4DxduBTvYdwO3sBfHuJvJokiC3BP1+O70fglmE1ShkH8lpXqZBac1rrU3FnNYSUs4pL9lBdTKeRPOQ==", + "dev": true, + "dependencies": { + "@algolia/cache-common": "4.20.0" + } + }, + "node_modules/@algolia/cache-common": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.20.0.tgz", + "integrity": "sha512-vCfxauaZutL3NImzB2G9LjLt36vKAckc6DhMp05An14kVo8F1Yofb6SIl6U3SaEz8pG2QOB9ptwM5c+zGevwIQ==", + "dev": true + }, + "node_modules/@algolia/cache-in-memory": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.20.0.tgz", + "integrity": "sha512-Wm9ak/IaacAZXS4mB3+qF/KCoVSBV6aLgIGFEtQtJwjv64g4ePMapORGmCyulCFwfePaRAtcaTbMcJF+voc/bg==", + "dev": true, + "dependencies": { + "@algolia/cache-common": "4.20.0" + } + }, + "node_modules/@algolia/client-account": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.20.0.tgz", + "integrity": "sha512-GGToLQvrwo7am4zVkZTnKa72pheQeez/16sURDWm7Seyz+HUxKi3BM6fthVVPUEBhtJ0reyVtuK9ArmnaKl10Q==", + "dev": true, + "dependencies": { + "@algolia/client-common": "4.20.0", + "@algolia/client-search": "4.20.0", + "@algolia/transporter": "4.20.0" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.20.0.tgz", + "integrity": "sha512-EIr+PdFMOallRdBTHHdKI3CstslgLORQG7844Mq84ib5oVFRVASuuPmG4bXBgiDbcsMLUeOC6zRVJhv1KWI0ug==", + "dev": true, + "dependencies": { + "@algolia/client-common": "4.20.0", + "@algolia/client-search": "4.20.0", + "@algolia/requester-common": "4.20.0", + "@algolia/transporter": "4.20.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.20.0.tgz", + "integrity": "sha512-P3WgMdEss915p+knMMSd/fwiHRHKvDu4DYRrCRaBrsfFw7EQHon+EbRSm4QisS9NYdxbS04kcvNoavVGthyfqQ==", + "dev": true, + "dependencies": { + "@algolia/requester-common": "4.20.0", + "@algolia/transporter": "4.20.0" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.20.0.tgz", + "integrity": "sha512-N9+zx0tWOQsLc3K4PVRDV8GUeOLAY0i445En79Pr3zWB+m67V+n/8w4Kw1C5LlbHDDJcyhMMIlqezh6BEk7xAQ==", + "dev": true, + "dependencies": { + "@algolia/client-common": "4.20.0", + "@algolia/requester-common": "4.20.0", + "@algolia/transporter": "4.20.0" + } + }, + "node_modules/@algolia/client-search": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.20.0.tgz", + "integrity": "sha512-zgwqnMvhWLdpzKTpd3sGmMlr4c+iS7eyyLGiaO51zDZWGMkpgoNVmltkzdBwxOVXz0RsFMznIxB9zuarUv4TZg==", + "dev": true, + "dependencies": { + "@algolia/client-common": "4.20.0", + "@algolia/requester-common": "4.20.0", + "@algolia/transporter": "4.20.0" + } + }, + "node_modules/@algolia/logger-common": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.20.0.tgz", + "integrity": "sha512-xouigCMB5WJYEwvoWW5XDv7Z9f0A8VoXJc3VKwlHJw/je+3p2RcDXfksLI4G4lIVncFUYMZx30tP/rsdlvvzHQ==", + "dev": true + }, + "node_modules/@algolia/logger-console": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.20.0.tgz", + "integrity": "sha512-THlIGG1g/FS63z0StQqDhT6bprUczBI8wnLT3JWvfAQDZX5P6fCg7dG+pIrUBpDIHGszgkqYEqECaKKsdNKOUA==", + "dev": true, + "dependencies": { + "@algolia/logger-common": "4.20.0" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.20.0.tgz", + "integrity": "sha512-HbzoSjcjuUmYOkcHECkVTwAelmvTlgs48N6Owt4FnTOQdwn0b8pdht9eMgishvk8+F8bal354nhx/xOoTfwiAw==", + "dev": true, + "dependencies": { + "@algolia/requester-common": "4.20.0" + } + }, + "node_modules/@algolia/requester-common": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.20.0.tgz", + "integrity": "sha512-9h6ye6RY/BkfmeJp7Z8gyyeMrmmWsMOCRBXQDs4mZKKsyVlfIVICpcSibbeYcuUdurLhIlrOUkH3rQEgZzonng==", + "dev": true + }, + "node_modules/@algolia/requester-node-http": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.20.0.tgz", + "integrity": "sha512-ocJ66L60ABSSTRFnCHIEZpNHv6qTxsBwJEPfYaSBsLQodm0F9ptvalFkHMpvj5DfE22oZrcrLbOYM2bdPJRHng==", + "dev": true, + "dependencies": { + "@algolia/requester-common": "4.20.0" + } + }, + "node_modules/@algolia/transporter": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.20.0.tgz", + "integrity": "sha512-Lsii1pGWOAISbzeyuf+r/GPhvHMPHSPrTDWNcIzOE1SG1inlJHICaVe2ikuoRjcpgxZNU54Jl+if15SUCsaTUg==", + "dev": true, + "dependencies": { + "@algolia/cache-common": "4.20.0", + "@algolia/logger-common": "4.20.0", + "@algolia/requester-common": "4.20.0" + } + }, "node_modules/@ampproject/remapping": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", @@ -2016,6 +2191,54 @@ "node": ">=10.0.0" } }, + "node_modules/@docsearch/css": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.5.2.tgz", + "integrity": "sha512-SPiDHaWKQZpwR2siD0KQUwlStvIAnEyK6tAE2h2Wuoq8ue9skzhlyVQ1ddzOxX6khULnAALDiR/isSF3bnuciA==", + "dev": true + }, + "node_modules/@docsearch/js": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.5.2.tgz", + "integrity": "sha512-p1YFTCDflk8ieHgFJYfmyHBki1D61+U9idwrLh+GQQMrBSP3DLGKpy0XUJtPjAOPltcVbqsTjiPFfH7JImjUNg==", + "dev": true, + "dependencies": { + "@docsearch/react": "3.5.2", + "preact": "^10.0.0" + } + }, + "node_modules/@docsearch/react": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.5.2.tgz", + "integrity": "sha512-9Ahcrs5z2jq/DcAvYtvlqEBHImbm4YJI8M9y0x6Tqg598P40HTEkX7hsMcIuThI+hTFxRGZ9hll0Wygm2yEjng==", + "dev": true, + "dependencies": { + "@algolia/autocomplete-core": "1.9.3", + "@algolia/autocomplete-preset-algolia": "1.9.3", + "@docsearch/css": "3.5.2", + "algoliasearch": "^4.19.1" + }, + "peerDependencies": { + "@types/react": ">= 16.8.0 < 19.0.0", + "react": ">= 16.8.0 < 19.0.0", + "react-dom": ">= 16.8.0 < 19.0.0", + "search-insights": ">= 1 < 3" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + }, + "search-insights": { + "optional": true + } + } + }, "node_modules/@esbuild/android-arm": { "version": "0.18.20", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", @@ -5382,6 +5605,28 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, + "node_modules/@types/linkify-it": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.4.tgz", + "integrity": "sha512-hPpIeeHb/2UuCw06kSNAOVWgehBLXEo0/fUs0mw3W2qhqX89PI2yvok83MnuctYGCPrabGIoi0fFso4DQ+sNUQ==", + "dev": true + }, + "node_modules/@types/markdown-it": { + "version": "13.0.5", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-13.0.5.tgz", + "integrity": "sha512-QhJP7hkq3FCrFNx0szMNCT/79CXfcEgUIA3jc5GBfeXqoKsk3R8JZm2wRXJ2DiyjbPE4VMFOSDemLFcUTZmHEQ==", + "dev": true, + "dependencies": { + "@types/linkify-it": "*", + "@types/mdurl": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.4.tgz", + "integrity": "sha512-ARVxjAEX5TARFRzpDRVC6cEk0hUIXCCwaMhz8y7S1/PxU6zZS1UMjyobz7q4w/D/R552r4++EhwmXK1N2rAy0A==", + "dev": true + }, "node_modules/@types/minimist": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", @@ -5415,6 +5660,12 @@ "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", "dev": true }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.18.tgz", + "integrity": "sha512-v/ZHEj9xh82usl8LMR3GarzFY1IrbXJw5L4QfQhokjRV91q+SelFqxQWSep1ucXEZ22+dSTwLFkXeur25sPIbw==", + "dev": true + }, "node_modules/@types/yargs": { "version": "17.0.24", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", @@ -5753,12 +6004,12 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz", - "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.8.tgz", + "integrity": "sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==", "dependencies": { - "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.0", + "@vue/shared": "3.3.8", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } @@ -5769,28 +6020,28 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" }, "node_modules/@vue/compiler-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", - "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz", + "integrity": "sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==", "dependencies": { - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-core": "3.3.8", + "@vue/shared": "3.3.8" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", - "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", - "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-ssr": "3.3.4", - "@vue/reactivity-transform": "3.3.4", - "@vue/shared": "3.3.4", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz", + "integrity": "sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==", + "dependencies": { + "@babel/parser": "^7.23.0", + "@vue/compiler-core": "3.3.8", + "@vue/compiler-dom": "3.3.8", + "@vue/compiler-ssr": "3.3.8", + "@vue/reactivity-transform": "3.3.8", + "@vue/shared": "3.3.8", "estree-walker": "^2.0.2", - "magic-string": "^0.30.0", - "postcss": "^8.1.10", + "magic-string": "^0.30.5", + "postcss": "^8.4.31", "source-map-js": "^1.0.2" } }, @@ -5800,38 +6051,38 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", - "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz", + "integrity": "sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==", "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-dom": "3.3.8", + "@vue/shared": "3.3.8" } }, "node_modules/@vue/devtools-api": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz", - "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==", + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.1.tgz", + "integrity": "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==", "dev": true }, "node_modules/@vue/reactivity": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz", - "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.8.tgz", + "integrity": "sha512-ctLWitmFBu6mtddPyOKpHg8+5ahouoTCRtmAHZAXmolDtuZXfjL2T3OJ6DL6ezBPQB1SmMnpzjiWjCiMYmpIuw==", "dependencies": { - "@vue/shared": "3.3.4" + "@vue/shared": "3.3.8" } }, "node_modules/@vue/reactivity-transform": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", - "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz", + "integrity": "sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==", "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.0", + "@vue/compiler-core": "3.3.8", + "@vue/shared": "3.3.8", "estree-walker": "^2.0.2", - "magic-string": "^0.30.0" + "magic-string": "^0.30.5" } }, "node_modules/@vue/reactivity-transform/node_modules/estree-walker": { @@ -5840,40 +6091,220 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" }, "node_modules/@vue/runtime-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz", - "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.8.tgz", + "integrity": "sha512-qurzOlb6q26KWQ/8IShHkMDOuJkQnQcTIp1sdP4I9MbCf9FJeGVRXJFr2mF+6bXh/3Zjr9TDgURXrsCr9bfjUw==", "dependencies": { - "@vue/reactivity": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/reactivity": "3.3.8", + "@vue/shared": "3.3.8" } }, "node_modules/@vue/runtime-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz", - "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.8.tgz", + "integrity": "sha512-Noy5yM5UIf9UeFoowBVgghyGGPIDPy1Qlqt0yVsUdAVbqI8eeMSsTqBtauaEoT2UFXUk5S64aWVNJN4MJ2vRdA==", "dependencies": { - "@vue/runtime-core": "3.3.4", - "@vue/shared": "3.3.4", - "csstype": "^3.1.1" + "@vue/runtime-core": "3.3.8", + "@vue/shared": "3.3.8", + "csstype": "^3.1.2" } }, "node_modules/@vue/server-renderer": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz", - "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.8.tgz", + "integrity": "sha512-zVCUw7RFskvPuNlPn/8xISbrf0zTWsTSdYTsUTN1ERGGZGVnRxM2QZ3x1OR32+vwkkCm0IW6HmJ49IsPm7ilLg==", "dependencies": { - "@vue/compiler-ssr": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-ssr": "3.3.8", + "@vue/shared": "3.3.8" }, "peerDependencies": { - "vue": "3.3.4" + "vue": "3.3.8" } }, "node_modules/@vue/shared": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz", - "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==" + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.8.tgz", + "integrity": "sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==" + }, + "node_modules/@vueuse/core": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.5.0.tgz", + "integrity": "sha512-z/tI2eSvxwLRjOhDm0h/SXAjNm8N5ld6/SC/JQs6o6kpJ6Ya50LnEL8g5hoYu005i28L0zqB5L5yAl8Jl26K3A==", + "dev": true, + "dependencies": { + "@types/web-bluetooth": "^0.0.18", + "@vueuse/metadata": "10.5.0", + "@vueuse/shared": "10.5.0", + "vue-demi": ">=0.14.6" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "dev": true, + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/integrations": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-10.5.0.tgz", + "integrity": "sha512-fm5sXLCK0Ww3rRnzqnCQRmfjDURaI4xMsx+T+cec0ngQqHx/JgUtm8G0vRjwtonIeTBsH1Q8L3SucE+7K7upJQ==", + "dev": true, + "dependencies": { + "@vueuse/core": "10.5.0", + "@vueuse/shared": "10.5.0", + "vue-demi": ">=0.14.6" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "async-validator": "*", + "axios": "*", + "change-case": "*", + "drauu": "*", + "focus-trap": "*", + "fuse.js": "*", + "idb-keyval": "*", + "jwt-decode": "*", + "nprogress": "*", + "qrcode": "*", + "sortablejs": "*", + "universal-cookie": "*" + }, + "peerDependenciesMeta": { + "async-validator": { + "optional": true + }, + "axios": { + "optional": true + }, + "change-case": { + "optional": true + }, + "drauu": { + "optional": true + }, + "focus-trap": { + "optional": true + }, + "fuse.js": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "jwt-decode": { + "optional": true + }, + "nprogress": { + "optional": true + }, + "qrcode": { + "optional": true + }, + "sortablejs": { + "optional": true + }, + "universal-cookie": { + "optional": true + } + } + }, + "node_modules/@vueuse/integrations/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "dev": true, + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/@vueuse/metadata": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.5.0.tgz", + "integrity": "sha512-fEbElR+MaIYyCkeM0SzWkdoMtOpIwO72x8WsZHRE7IggiOlILttqttM69AS13nrDxosnDBYdyy3C5mR1LCxHsw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.5.0.tgz", + "integrity": "sha512-18iyxbbHYLst9MqU1X1QNdMHIjks6wC7XTVf0KNOv5es/Ms6gjVFCAAWTVP2JStuGqydg3DT+ExpFORUEi9yhg==", + "dev": true, + "dependencies": { + "vue-demi": ">=0.14.6" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "dev": true, + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } }, "node_modules/@webassemblyjs/ast": { "version": "1.11.6", @@ -6165,6 +6596,28 @@ "ajv": "^8.8.2" } }, + "node_modules/algoliasearch": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.20.0.tgz", + "integrity": "sha512-y+UHEjnOItoNy0bYO+WWmLWBlPwDjKHW6mNHrPi0NkuhpQOOEbrkwQH/wgKFDLh7qlKjzoKeiRtlpewDPDG23g==", + "dev": true, + "dependencies": { + "@algolia/cache-browser-local-storage": "4.20.0", + "@algolia/cache-common": "4.20.0", + "@algolia/cache-in-memory": "4.20.0", + "@algolia/client-account": "4.20.0", + "@algolia/client-analytics": "4.20.0", + "@algolia/client-common": "4.20.0", + "@algolia/client-personalization": "4.20.0", + "@algolia/client-search": "4.20.0", + "@algolia/logger-common": "4.20.0", + "@algolia/logger-console": "4.20.0", + "@algolia/requester-browser-xhr": "4.20.0", + "@algolia/requester-common": "4.20.0", + "@algolia/requester-node-http": "4.20.0", + "@algolia/transporter": "4.20.0" + } + }, "node_modules/ansi-colors": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", @@ -6221,6 +6674,12 @@ "node": ">=8" } }, + "node_modules/ansi-sequence-parser": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz", + "integrity": "sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==", + "dev": true + }, "node_modules/ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", @@ -10778,6 +11237,15 @@ "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", "dev": true }, + "node_modules/focus-trap": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.4.tgz", + "integrity": "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==", + "dev": true, + "dependencies": { + "tabbable": "^6.2.0" + } + }, "node_modules/fontaine": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/fontaine/-/fontaine-0.4.0.tgz", @@ -14034,6 +14502,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/mark.js": { + "version": "8.11.1", + "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", + "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==", + "dev": true + }, "node_modules/mathml-tag-names": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", @@ -14455,6 +14929,12 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/minisearch": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-6.2.0.tgz", + "integrity": "sha512-BECkorDF1TY2rGKt9XHdSeP9TP29yUbrAaCh/C03wpyf1vx3uYcP/+8XlMcpTkgoU0rBVnHMAOaP83Rc9Tm+TQ==", + "dev": true + }, "node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", @@ -17645,6 +18125,16 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, + "node_modules/preact": { + "version": "10.18.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.18.2.tgz", + "integrity": "sha512-X/K43vocUHDg0XhWVmTTMbec4LT/iBMh+csCEqJk+pJqegaXsvjdqN80ZZ3L+93azWCnWCZ+WGwYb8SplxeNjA==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/preact" + } + }, "node_modules/prebuild-install": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", @@ -19138,6 +19628,13 @@ "resolved": "https://registry.npmjs.org/scule/-/scule-1.0.0.tgz", "integrity": "sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==" }, + "node_modules/search-insights": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.9.0.tgz", + "integrity": "sha512-bkWW9nIHOFkLwjQ1xqVaMbjjO5vhP26ERsH9Y3pKr8imthofEFIxlnOabkmGcw6ksRj9jWidcI65vvjJH/nTGg==", + "dev": true, + "peer": true + }, "node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -19342,6 +19839,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/shiki": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.5.tgz", + "integrity": "sha512-1gCAYOcmCFONmErGTrS1fjzJLA7MGZmKzrBNX7apqSwhyITJg2O102uFzXUeBxNnEkDA9vHIKLyeKq0V083vIw==", + "dev": true, + "dependencies": { + "ansi-sequence-parser": "^1.1.0", + "jsonc-parser": "^3.2.0", + "vscode-oniguruma": "^1.7.0", + "vscode-textmate": "^8.0.0" + } + }, "node_modules/side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -20426,6 +20935,12 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", + "dev": true + }, "node_modules/table": { "version": "6.8.1", "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", @@ -21059,7 +21574,7 @@ "version": "5.2.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", - "dev": true, + "devOptional": true, "peer": true, "bin": { "tsc": "bin/tsc", @@ -21913,6 +22428,55 @@ "@esbuild/win32-x64": "0.18.20" } }, + "node_modules/vitepress": { + "version": "1.0.0-rc.25", + "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.0.0-rc.25.tgz", + "integrity": "sha512-1dqWiHNThNrVZ08ixmfEDBEH+764KOgnev9oXga/x6cN++Vb9pnuu8p3K6DQP+KZrYcG+WiX7jxal0iSNpAWuQ==", + "dev": true, + "dependencies": { + "@docsearch/css": "^3.5.2", + "@docsearch/js": "^3.5.2", + "@types/markdown-it": "^13.0.4", + "@vitejs/plugin-vue": "4.3.1", + "@vue/devtools-api": "^6.5.1", + "@vueuse/core": "^10.5.0", + "@vueuse/integrations": "^10.5.0", + "focus-trap": "^7.5.4", + "mark.js": "8.11.1", + "minisearch": "^6.1.0", + "shiki": "^0.14.5", + "vite": "^4.5.0", + "vue": "^3.3.6" + }, + "bin": { + "vitepress": "bin/vitepress.js" + }, + "peerDependencies": { + "markdown-it-mathjax3": "^4.3.2", + "postcss": "^8.4.31" + }, + "peerDependenciesMeta": { + "markdown-it-mathjax3": { + "optional": true + }, + "postcss": { + "optional": true + } + } + }, + "node_modules/vitepress/node_modules/@vitejs/plugin-vue": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.3.1.tgz", + "integrity": "sha512-tUBEtWcF7wFtII7ayNiLNDTCE1X1afySEo+XNVMNkFXaThENyCowIEX095QqbJZGTgoOcSVDJGlnde2NG4jtbQ==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0", + "vue": "^3.2.25" + } + }, "node_modules/vitest": { "version": "0.34.6", "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.34.6.tgz", @@ -22113,6 +22677,18 @@ "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==", "dev": true }, + "node_modules/vscode-oniguruma": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", + "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", + "dev": true + }, + "node_modules/vscode-textmate": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", + "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", + "dev": true + }, "node_modules/vscode-uri": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.7.tgz", @@ -22120,15 +22696,23 @@ "dev": true }, "node_modules/vue": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz", - "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==", - "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-sfc": "3.3.4", - "@vue/runtime-dom": "3.3.4", - "@vue/server-renderer": "3.3.4", - "@vue/shared": "3.3.4" + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.8.tgz", + "integrity": "sha512-5VSX/3DabBikOXMsxzlW8JyfeLKlG9mzqnWgLQLty88vdZL7ZJgrdgBOmrArwxiLtmS+lNNpPcBYqrhE6TQW5w==", + "dependencies": { + "@vue/compiler-dom": "3.3.8", + "@vue/compiler-sfc": "3.3.8", + "@vue/runtime-dom": "3.3.8", + "@vue/server-renderer": "3.3.8", + "@vue/shared": "3.3.8" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/vue-bundle-renderer": { diff --git a/package.json b/package.json index 3ba39e4428..383238b82f 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,10 @@ "vitest:run": "nuxt generate test && vitest run", "vitest:dev": "nuxt generate test && vitest dev", "start": "npx serve playground/dist", - "start:generate": "npm run generate && npx serve playground/dist" + "start:generate": "npm run generate && npx serve playground/dist", + "docs:dev": "vitepress dev docs", + "docs:build": "vitepress build docs", + "docs:preview": "vitepress preview docs" }, "exports": { ".": { @@ -104,7 +107,8 @@ "stylelint-config-recess-order": "4.3.0", "stylelint-config-standard": "34.0.0", "vite-svg-loader": "4.0.0", + "vitepress": "^1.0.0-rc.25", "vitest": "0.34.6", "wicg-inert": "3.1.2" } -} +} \ No newline at end of file From 63cc491e7b8399fbe688b7d3a6edf07c8e660d49 Mon Sep 17 00:00:00 2001 From: Thorn Walli Date: Wed, 8 Nov 2023 14:24:48 +0100 Subject: [PATCH 2/6] docs(update): update pages --- docs/.vitepress/config.mjs | 26 ++- docs/.vitepress/theme/extras.css | 6 + docs/.vitepress/theme/index.js | 1 + docs/src/components/speedkit-iframe.md | 90 ++++++++ docs/src/components/speedkit-image.md | 224 +++++++++++++++++++ docs/src/components/speedkit-layer.md | 143 ++++++++++++ docs/src/components/speedkit-picture.md | 195 ++++++++++++++++ docs/src/components/speedkit-vimeo.md | 174 ++++++++++++++ docs/src/components/speedkit-youtube.md | 182 +++++++++++++++ docs/src/components/weak-hardware-overlay.md | 83 +++++++ docs/src/composables/useComponentObserver.md | 42 ++++ docs/src/composables/useConfig.md | 16 ++ docs/src/composables/useCritical.md | 34 +++ docs/src/composables/useFont.md | 35 +++ docs/src/directives/v-font.md | 89 ++++++++ docs/src/guide/caveats.md | 48 ++++ docs/src/guide/options.md | 14 +- docs/src/guide/setup.md | 2 +- docs/src/guide/usage.md | 19 +- 19 files changed, 1405 insertions(+), 18 deletions(-) create mode 100644 docs/.vitepress/theme/extras.css create mode 100644 docs/src/components/speedkit-iframe.md create mode 100644 docs/src/components/speedkit-image.md create mode 100644 docs/src/components/speedkit-layer.md create mode 100644 docs/src/components/speedkit-picture.md create mode 100644 docs/src/components/speedkit-vimeo.md create mode 100644 docs/src/components/speedkit-youtube.md create mode 100644 docs/src/components/weak-hardware-overlay.md create mode 100644 docs/src/composables/useComponentObserver.md create mode 100644 docs/src/composables/useConfig.md create mode 100644 docs/src/composables/useCritical.md create mode 100644 docs/src/composables/useFont.md create mode 100644 docs/src/directives/v-font.md create mode 100644 docs/src/guide/caveats.md diff --git a/docs/.vitepress/config.mjs b/docs/.vitepress/config.mjs index 6c233353ef..1901c903d9 100644 --- a/docs/.vitepress/config.mjs +++ b/docs/.vitepress/config.mjs @@ -34,7 +34,31 @@ export default defineConfig({ items: [ {text: 'Setup', link: '/guide/setup'}, {text: 'Options', link: '/guide/options'}, - {text: 'Usage', link: '/guide/usage'} + {text: 'Usage', link: '/guide/usage'}, + {text: 'Caveats', link: '/guide/caveats'} + ] + }, + { + text: 'Composables', + items: [ + {text: 'useFont', link: '/composables/useFont'}, + {text: 'useCritical', link: '/composables/useCritical'}, + {text: 'useConfig', link: '/composables/useConfig'}, + {text: 'useComponentObserver', link: '/composables/useComponentObserver'} + + + ] + }, + { + text: 'Directives', + items:[ + {text: 'v-font', link: '/directives/v-font'}, + ] + }, + { + text: 'Components', + items: [ + {text: 'SpeedkitLayer', link: '/components/speedkit-layer'}, ] } ], diff --git a/docs/.vitepress/theme/extras.css b/docs/.vitepress/theme/extras.css new file mode 100644 index 0000000000..144cc7197f --- /dev/null +++ b/docs/.vitepress/theme/extras.css @@ -0,0 +1,6 @@ +iframe.embed-sandbox, +iframe.embed-stackblitz { + width: 100%; + height: 480px; + border: none; +} diff --git a/docs/.vitepress/theme/index.js b/docs/.vitepress/theme/index.js index 8ecf163560..d78eb505e6 100644 --- a/docs/.vitepress/theme/index.js +++ b/docs/.vitepress/theme/index.js @@ -2,6 +2,7 @@ import { h } from 'vue' import DefaultTheme from 'vitepress/theme' import './style.css' +import './extras.css' /** @type {import('vitepress').Theme} */ export default { diff --git a/docs/src/components/speedkit-iframe.md b/docs/src/components/speedkit-iframe.md new file mode 100644 index 0000000000..857f1e6d0c --- /dev/null +++ b/docs/src/components/speedkit-iframe.md @@ -0,0 +1,90 @@ +--- +title: SpeedkitIframe +--- + +# {{title}} + +`SpeedkitIframe`, Iframe & IntersectionObserver in one. + +## Exkurs + +Iframes have a tendency, in the special case of the initial page load, to disrupt the construction and initialisation of the actual page through the massive loading of resources from another source. + +**For the user, this is particularly visible by:** + +::list{type="warning"} + +- Freeze (Short freeze of the page) +- Delayed loading of resources (images, fonts) +- Unnecessarily generated traffic +:: + +## Solution + +In order to solve these points, care should be taken to ensure that the initialisation of the iframe takes place downstream. +This can be realised, for example, via an [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). +This sets the source on the iframe only when the visible viewport has been reached. + +**The following conditions can thus be fulfilled:** +::list{type="success"} + +- Iframe load is reactive. +- No resources are blocked during loading. +- Traffic is only generated when the iframe is visible. +:: + +The strategy mentioned above is provided by the `SpeedkitIframe`, which can be used in the same way as a normal [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). +The included [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver) is configured via the `intersectionObserver` property. + +## Usage + +The `SpeedkitIframe` is used like a normal [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). + +### Example + +````vue + + + +```` + +## Properties + +> Use native attributes from [HTML Iframe](https://www.w3schools.com/tags/tag_iframe.asp). +> +### `componentObserver` + +- Type: `Object` [IntersectionObserver Properties](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver#properties) + - Default: `{ trackVisibility: true, delay: 350 }` + +Sets the options from the integrated [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). + +For advanced usage, [learn more](https://web.dev/intersectionobserver-v2/) about option `trackVisibility` from [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver). + +## Events + +````html + +```` + +| Name | Description | +| ------- | -------------------------------------------------- | +| `load` | Triggered when Iframe has finished loading. | +| `enter` | Triggered when component has reached the viewport. | diff --git a/docs/src/components/speedkit-image.md b/docs/src/components/speedkit-image.md new file mode 100644 index 0000000000..0344a77e08 --- /dev/null +++ b/docs/src/components/speedkit-image.md @@ -0,0 +1,224 @@ +--- +title: SpeedkitImage +--- + +# {{title}} + +The `SpeedkitImage` is a `img` implementation based on the module [`@nuxt/image`](https://image.nuxtjs.org/). +It uses the provided API `$img`. + +## Features + +With the current implementation of `SpeedkitImage` we can cover the following functionality: +::list{type="primary"} + +- generation of multiple image resolutions (srcset) +- breakpoint-based differentiation of multiple image resolutions (srcset) +- optimized preloading of critical image resources +- lazy load of non-critical image resources +- base path support +- lazy hydration support +- load and optimize remote images from custom domains +- full SEO support +:: + +## Usage + +The `SpeedkitImage` is used to automatically generate and display different image sizes for different viewports. + +The specified resources can be given by absolute path (static folder) or complete URL. [`nuxt/image`](https://image.nuxtjs.org/) downloads the resources fully automatically and stores the generated and optimized renditions in the destination folder. + +::alert{type="warning"} +Important: For using `SpeedkitImage` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + +```` + +## Properties + +````js +{ + source: { … }, + title: 'Image Title', + alt: 'Image Alt' +} +```` + +### `hydrate` + +- Type: `Boolean` + - Default: `true` + +The initialization of the `SpeedkitImage` in the client can be controlled manually. +Here for the property `hydrate` must be set externally. +If `true` the `SpeedkitImage` is initialized. + +### `source` + +- Type: `Object` + +````js +{ + format: '', + src: '', + sizes: { … }, + modifiers: { … }, + preset: { … }, + provider: '' +} +```` + +#### `format` + +Sets the image output format. + +Available formats: + +- `avif` +- `webp` +- `png` +- `jpg` + +::alert{type="warning"} +Important: Note that if you specify `src` without a file extension, the format must be included. +:: + +#### `src` + +Information on property `src` can be found at [here](https://image.nuxtjs.org/components/nuxt-img#src). + +#### `sizes` + +Describes the image sizes in which the resource should be displayed. The image `sizes` are passed as an `object` and describe with the key-value pairs the image width and the width of the viewport depending on it, e.g. `ImageWidth:MinWidth`. + +The image width, is definied by [`screens`](https://image.nuxtjs.org/configuration/#screens) option from `@nuxt/image` + +**Example** + +In the following example, one image with two different image sizes by breakpoints and output format is `webp`. + +````js +[ + { format: 'webp', src: '/img/image.jpg', sizes: { default: '100vw', sm: '100vw' } } +] +```` + +#### `modifiers` + +- Type: `Object` + +You can give separate modifiers to each source. +This overwrites the global ones of the preset if available. + +Learn more about `modifiers`: + +- + +#### `preset` + +- Type: `Object` + +If a preset is set on a source, the globally defined one is ignored. + +This means that a separate preset can be specified for each source. + +Learn more about `preset`: + +- + +#### `provider` + +- Type: `String` + +If a provider is set on a source, the globally defined one is ignored. + +This means that a separate provider can be specified for each source. + +Learn more about `provider`: + +- + +### `alt` + +- Type: `String` + +Image alternative Text. + +[MDN - HTMLImageElement.alt](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt) + +### `title` + +- Type: `String` + +Image Title. + +[MDN - HTMLElement.title](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/title) + +### `crossorigin` + +- Type: `String`, `Boolean` + +If not set, the global crossorigin is used `this.$speedkit.crossorigin`. + +[Learn more about `crossorigin` option](https://nuxt-speedkit.grabarzundpartner.dev/options#crossorigin) + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +### `critical` + +- Type: `Boolean` + - Default: `$parent.isCritical` + +Set component as critical component. + +[Learn more about critical components](/v3/usage#critical-prop-for-critical-components) + +## Events + +````html + +```` + +| Name | Description | +| ------ | ------------------------------------------------------------- | +| `load` | Triggered when the image resource has been completely loaded. | diff --git a/docs/src/components/speedkit-layer.md b/docs/src/components/speedkit-layer.md new file mode 100644 index 0000000000..59e647ef1e --- /dev/null +++ b/docs/src/components/speedkit-layer.md @@ -0,0 +1,143 @@ +--- +title: SpeedkitLayer +--- + +# {{$frontmatter.title}} + +If the SpeedkitLayer is implemented, the javascript initialisation is automatically monitored. If one of the events + +- ✅ reduced bandwidth +- ✅ weak hardware +- ✅ unsupported browser + +occurs, the process is paused and only continued or cancelled after a user interaction in the layer. + +The layer is placed once in the layout (e.g. `layouts/default.vue`). +The included SpeedkitLayer serves as a wrapper and must be filled according to the [template](/v3/guide/components/speedkit-layer#template), see [example component](https://github.com/GrabarzUndPartner/nuxt-speedkit/blob/main/example/components/InfoLayer.vue). + +The content contains messages and buttons that are displayed in the respective event. +Messages and buttons are defined with an `id`, these are set to `display: none;` by default via CSS. + +- e.g. `nuxt-speedkit-message-unsupported-browser` for message +- e.g. `nuxt-speedkit-button-init-app` for button + +::: info +For the closing mechanism of the layer, see [Hide Layer](/v3/guide/components/speedkit-layer#hide-layer). +::: + +## Messages + +The messages are elements that are displayed for the relevant events. + +Initially, all IDs are set to `display: none;`, so no message is visible. +When an event is triggered, the relevant message is displayed via the ID using the style attribute `display: block;`. + +| ID | Description | +| -------------------------------------------------------- | --------------------------------------------------------------------------- | +| `nuxt-speedkit-message-nojs` | Javascript is disabled. | +| `nuxt-speedkit-message-reduced-bandwidth` | Connection bandwidth is too low. | +| `nuxt-speedkit-message-weak-hardware` | User hardware are not sufficient. | +| `nuxt-speedkit-message-unsupported-browser` | User Browser is not supported by [`Browserslist`](/v3/options#browsersupport). | + +**Example** + +````html + +

+ Your browser is not supported! +
+ + +
+ Your browser is not supported! +
+```` + +## Buttons + +The buttons are interaction elements for the user with which he can make his choice at the relevant event. + +Initially, all IDs except for `nuxt-speedkit-button-nojs` are set to `display: none;`. +When an event is triggered, the relevant button is displayed via the ID using the style attribute `display: block;`. + +| ID | Description | +| ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `nuxt-speedkit-button-init-nojs` | Visible when javascript is disabled, needed so that the user can hide the layer. Requires the [Hide Layer](/v3/guide/components/speedkit-layer#hide-layer) implementation. | +| `nuxt-speedkit-button-init-reduced-view` | Is used to offer the user the possibility to visit the page only with activated fonts and images. Other initialisations of the Javascript are prevented. | +| `nuxt-speedkit-button-init-app` | Activates all features. The initialisation of the JavaScript is started, images are loaded. | + +::: info +It is recommended to register an **Inline Click-Event** for the buttons `#nuxt-speedkit-button-init-reduced-view` and `#nuxt-speedkit-button-init-app`.

More information under [Force App initialization](/v3/guide/components/speedkit-layer#force-app-initialization) +::: + +## Hide Layer + +````html + +```` + +The layer can be closed via a `for` attribute with the `id` `nuxt-speedkit-layer-close`. + +- ✅ Closing mechanics does not require javascript. + +## Template + +````html + +
+

Sorry, but you will have a limited user experience due to a…

+ +
    + +
  • + disabled javascript +
  • + +
  • + outdated browser +
  • + +
  • + reduced-bandwidth +
  • + +
  • + weak hardware +
  • +
+ + + + + + + + + +
+
+```` + +## Force App initialization + +For Unsupported-Browser and Insufficient Hardware events, an `onclick` event must also be set with the `id`. + +In the event, the global variable `__NUXT_SPEEDKIT_AUTO_INIT__` must be set to `true`. + +These are needed if the user has already reacted before the initial Javascript has been loaded. After the javascript has been successfully loaded, the app is automatically initialised. + +| Variable | Type | Description | Default | +| ----------------------------- | --------- | ---------------------------------------------------------------------------- | ------- | +| `__NUXT_SPEEDKIT_AUTO_INIT__` | `Boolean` | If set, initialisation continues after the javascript has been fully loaded. | `false` | diff --git a/docs/src/components/speedkit-picture.md b/docs/src/components/speedkit-picture.md new file mode 100644 index 0000000000..e8239f8490 --- /dev/null +++ b/docs/src/components/speedkit-picture.md @@ -0,0 +1,195 @@ +--- +title: SpeedkitPicture +--- +# {{title}} + +The `SpeedkitPicture` is a `picture` implementation based on the module [`@nuxt/image`](https://image.nuxtjs.org/). +It uses the provided API `$img`. + +## Features + +With the current implementation of `SpeedkitPicture` we can cover the following functionality: + +::list + +- generation of multiple sources with multiple image resolutions (srcset) +- breakpoint-based differentiation of multiple image resolutions and ratios (srcset + media-rule) +- optimized preloading of critical image resources +- lazy load of non-critical image resources +- base path support +- lazy hydration support +- load and optimize remote images from custom domains +- full SEO support +:: + +## Usage + +The `SpeedkitPicture` is used to automatically generate and display different image sizes and/or image ratios for different viewports. + +The specified resources can be given by absolute path (static folder) or complete URL. [`nuxt/image`](https://image.nuxtjs.org/) downloads the resources fully automatically and stores the generated and optimized renditions in the destination folder. + +::alert{type="warning"} +Important: For using `SpeedkitPicture` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + sources: [ … ], + formats: ['avif', 'webp', 'jpg|jpeg|png'], + alt: 'Image Alt', + title: 'Image Title', +} +```` + +### `hydrate` + +- Type: `Boolean` + - Default: `true` + +The initialization of the `SpeedkitPicture` in the client can be controlled manually. +Here for the property `hydrate` must be set externally. +If `true` the `SpeedkitPicture` is initialized. + +### `sources` + +- Type: `Array` + +List of resources used. + +The definitions in the `sources` are equivalent to the [`SpeedkitImage (source)`](/v3/guide/components/speedkit-image#source). + +The only differences are: + +- The `media` property can be used. This allows even more dependencies for the display, e.g. `(orientation: portrait)`. +- The `format` property is not used. Instead `formats` is used for setting the output formats. + +**Example** + +In the following example, two different image ratios are used. + +- `landscape.jpg` is applied at a viewport of `996px` with an image size of `996px (100vw)` by orientation `landscape`. +- `portrait.jpg` is applied below `768px` and has two viewport dependent image sizes, at `(min-width: 768px)` the width `768px` and everything below that the width `320px` by orientation `portrait` + +````js +[ + { src: '/img/landscape.png', sizes: { md: '100vw' }, media: '(orientation: landscape)' }, + { src: '/img/portrait.png', sizes: { default: '100vw', sm: '100vw' }, media: '(orientation: portrait)' } +] +```` + +### `formats` + +- Type: `Array` + - Default: `['webp', 'avif', 'jpg|jpeg|png|gif']` + +> Overrides the [`pictureFormats`](/v3/options#pictureformats) property defined in the module options. + +Defines the formats that are to be generated and provided as source in the Picture. +Is used to offer the correct image type for the browser. + +::alert{type="warning"} +Formats can also be specified as OR condition (`jpg|jpeg|png|gif`). This is important when using JPGs and PNGs with the same `format` configuration. +:: + +### `alt` + +- Type: `String` + +Image alternative Text. + +[MDN - HTMLImageElement.alt](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt) + +### `title` + +- Type: `String` + +Image Title. + +[MDN - HTMLElement.title](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/title) + +### `crossorigin` + +- Type: `String`, `Boolean` + +If not set, the global crossorigin is used `this.$speedkit.crossorigin`. + +[Learn more about `crossorigin` option](https://nuxt-speedkit.grabarzundpartner.dev/options#crossorigin) + +[MDN - HTML.Attributes.crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) + +### `sortSources` + +- Type: `Boolean` + - Default: `true` + +If set, the sources are sorted by the `media` properties. + +This is made possible by [`sort-css-media-queries`](https://www.npmjs.com/package/sort-css-media-queries). + +### `critical` + +- Type: `Boolean` + - Default: `$parent.isCritical` + +Set component as critical component. + +[Learn more about critical components](/v3/usage#critical-prop-for-critical-components) + +## Events + +````html + +```` + +| Name | Description | +| ------ | ------------------------------------------------------------- | +| `load` | Triggered when the image resource has been completely loaded. | diff --git a/docs/src/components/speedkit-vimeo.md b/docs/src/components/speedkit-vimeo.md new file mode 100644 index 0000000000..31f96162a7 --- /dev/null +++ b/docs/src/components/speedkit-vimeo.md @@ -0,0 +1,174 @@ +--- +title: SpeedkitVimeo +--- +# {{title}} + +We have integrated `SpeedkitVimeo` as an example to show how iFrame content must be integrated in a performance-optimized manner. +For this purpose, a separate IntersectionObserver has been implemented, which detects a longer dwell time of the component in the viewport. The iFrame is initialized only after a positive detection. This prevents immense data from having to be loaded when simply scrolling through the page. +So that no empty space is visible to the user, we use the functionality of the [`SpeedkitPicture`](/v3/guide/components/speedkit-picture) and preload the corresponding Vimeo poster in different renditions, so the illusion is perfect for the user and he does not notice anything of the optimized lazy load procedure. + +## Usage + +The `SpeedkitVimeo` is used to initialise Vimeo videos with [`Vimeo Player-SDK`](https://developer.vimeo.com/player/sdk/). + +::alert +The SDK is not part of `nuxt-speedkit` and will be loaded by an external script. +:: + +The `url` of the Vimeo video must be specified. + +The `SpeedkitPicture` is used for the poster, so the generation of the poster is automated, you can define the image sizes with [`sizes` (What is `sizes`?)](/v3/guide/components/speedkit-image#source). + +[Learn more about `SpeedkitPicture`](/v3/guide/components/speedkit-picture) + +::alert{type="warning"} +Important: For using `SpeedkitVimeo` do not disable `@nuxt/image` via `disableNuxtImage` +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + url: '', + title: 'Player Title', + autoplay: false, + mute: false, + posterSizes: { … }, + options: { … } +} +```` + +### `url` + +- Type: `String` + +Sets a video via the vimeo url. + +### `title` + +- Type: `String` + +Sets the title for the player iframe and poster. + +### `autoplay` + +- Type: `Boolean` + - Default: `false` + +When set starts video in autoplay. It is required that the component is integrated via [`SpeedkitHydrate`](/v3/usage#import-components) or is only activated when entering the visible area. + +### `mute` + +- Type: `Boolean` + - Default: `false` + +When set the player is muted. + +### `posterSizes` + +- Type: `String` + - Default: `{ default: '100vw', xxs: '100vw', xs: '100vw', sm: '100vw', md: '100vw', lg: '100vw', xl: '100vw', xxl: '100vw' }` + +Sets the image sizes of the poster. + +[Learn more about `sizes`](/v3/guide/components/speedkit-image#source) + +### `options` + +- Type: `Object` + +Overrides the vimeo player options. These will be the same as the vimeo player embed options. + +[Learn more about Vimeo Player Parameters](https://developer.vimeo.com/player/sdk/embed) + +::alert{type="warning"} + +For `autoplay` and `mute` the component properties are used. + +Option `playsinline` is always set, `mute` is set automatically for touch devices. +This is important for autoplay on mobile devices. +:: + +## Slots + +````html + + + + + +```` + +| Name | Description | +| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `default` | Used to display more information about the video below the player.
The slot has a scoped property `videoData`.
This contains the result from the Vimeo `oembed` api.

| +| `loading-spinner` | Overwrites the loading spinner. | +| `play` | Overwrites the play button. | + +## Events + +````html + +```` + +| Name | Description | +| -------------- | -------------------------------------------------------- | +| `ready` | Triggered when `Vimeo Player-SDK` is completely loaded. | +| `playing` | Triggered when video is finished loading and playing. | +| `beforePlayer` | Used to place elements in the player container (before). | +| `afterPlayer` | Used to place elements in the player container (after). | diff --git a/docs/src/components/speedkit-youtube.md b/docs/src/components/speedkit-youtube.md new file mode 100644 index 0000000000..3b4a0764f1 --- /dev/null +++ b/docs/src/components/speedkit-youtube.md @@ -0,0 +1,182 @@ +--- +title: SpeedkitYoutube +--- +# {{title}} + +We have integrated `SpeedkitYoutube` as an example to show how iFrame content must be integrated in a performance-optimized manner. +For this purpose, a separate IntersectionObserver has been implemented, which detects a longer dwell time of the component in the viewport. The iFrame is initialized only after a positive detection. This prevents immense data from having to be loaded when simply scrolling through the page. +So that no empty space is visible to the user, we use the functionality of the [`SpeedkitPicture`](/v3/guide/components/speedkit-picture) and preload the corresponding Youtube poster in different renditions, so the illusion is perfect for the user and he does not notice anything of the optimized lazy load procedure. + +## Usage + +The `SpeedkitYoutube`is used to initialise Youtube videos with [Youtube Iframe-API](https://developers.google.com/youtube/iframe_api_reference?hl=de). + +The `url` of the Youtube video must be specified. + +The `SpeedkitPicture` is used for the poster, so the generation of the poster is automated, you can define the image sizes with [`sizes` (What is `sizes`?)](/v3/guide/components/speedkit-picture#sources). + +[Learn more about `SpeedkitPicture`](/v3/guide/components/speedkit-picture) + +::alert{type="warning"} + +Important: For using `SpeedkitYoutube` do not disable `@nuxt/image` via `disableNuxtImage`. +:: + +### Example + +````vue + + + + +```` + +## Properties + +````js +{ + url: '', + title: 'Player Title', + autoplay: false, + mute: false, + posterSizes: { … }, + options: { … } +} +```` + +### `url` + +- Type: `String` + +Sets a video via the youtube url. + +### `title` + +- Type: `String` + +Sets the title for the player iframe and poster. + +### `autoplay` + +- Type: `Boolean` + - Default: `false` + +When set starts video in autoplay. It is required that the component is integrated via [`SpeedkitHydrate`](/v3/usage#import-components) or is only activated when entering the visible area. + +### `mute` + +- Type: `Boolean` + - Default: `false` + +When set the player is muted. + +### `posterSizes` + +- Type: `String` + - Default: `{ default: '100vw', xxs: '100vw', xs: '100vw', sm: '100vw', md: '100vw', lg: '100vw', xl: '100vw', xxl: '100vw' }` + +Sets the image sizes of the poster. + +[Learn more about `sizes`](/v3/guide/components/speedkit-picture#sources) + +### `options` + +- Type: `Object` + +Overrides the youtube player options. These will be the same as the youtube player parameters. + +Use `boolean` values instead of integers (e.g. `0`, `1`). + +[Learn more about Youtube Player Parameters](https://developers.google.com/youtube/player_parameters#Parameters) + +::alert{type="warning"} + +For `autoplay` and `mute` the component properties are used. + +Option `playsinline` is always set, `mute` is set automatically for touch devices. +This is important for autoplay on mobile devices. +:: + +### `host` + +- Type: `String` + - default: `'https://www.youtube-nocookie.com'` + +Sets the host for the player. + +::alert +It is recommended to use the default (). +:: + +## Slots + +````html + + + +```` + +| Name | Description | +| ----------------- | ------------------------------- | +| `loading-spinner` | Overwrites the loading spinner. | +| `play` | Overwrites the play button. | + +## Events + +````html + +```` + +| Name | Description | +| -------------- | -------------------------------------------------------- | +| `ready` | Triggered when `Youtube-API` is completely loaded. | +| `playing` | Triggered when video is finished loading and playing. | +| `beforePlayer` | Used to place elements in the player container (before). | +| `afterPlayer` | Used to place elements in the player container (after). | diff --git a/docs/src/components/weak-hardware-overlay.md b/docs/src/components/weak-hardware-overlay.md new file mode 100644 index 0000000000..1e2a06b533 --- /dev/null +++ b/docs/src/components/weak-hardware-overlay.md @@ -0,0 +1,83 @@ +--- +title: WeakHardwareOverlay +--- + +# {{title}} + +The `WeakHardwareOverlay` is used in components that are affected by the SpeedkitLayer event `Weak Hardware`. (*Example: Component requires the execution of `mounted` for functionality.*) + +::alert{type="info"} +The **performance issue event** occurs when initialization determines that the client is overloaded with execution and the user has confirmed the `#nuxt-speedkit-button-init-reduced-view` button in the SpeedkitLayer. + +- [Learn more about SpeedkitLayer interactions)](/v3/components/speedkit-layer#buttons) + +:: + +Basically, the overlay is used to make content visible when the `Weak Hardware` has occurred, if this does not occur, the overlay is not visible. + +It is recommended to include an interaction element in the overlay that allows the user to switch to the normal state. For this the interaction element must get the ID `nuxt-speedkit-button-init-app` and reacts on `click` with the initialization of the app. + +## Example + +Example of defining a custom `WeakHardwareOverlay` component and placing it in a target component that is affected by the `Weak Hardware` event. + +### Customize Overlay + +````vue[@/components/WeakHardwareOverlay.vue] + + + +```` + +### Usage Overlay + +````vue[@/components/Player.vue] + + + +```` diff --git a/docs/src/composables/useComponentObserver.md b/docs/src/composables/useComponentObserver.md new file mode 100644 index 0000000000..421430e0c9 --- /dev/null +++ b/docs/src/composables/useComponentObserver.md @@ -0,0 +1,42 @@ +--- +title: useComponentObserver +--- + +# {{$frontmatter.title}} + +## Options + +| Property | Type | Description | Default Value | +| ----------------- | ------------- | ------------------------------------------------------------------------------------------------------------------ | ------------- | +| `root` | `HTMLElement` | [MDN `root`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#root) | `undefined` | +| `rootMargin` | `String` | [MDN `rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#rootMargin) | `'0px'` | +| `threshold` | `Array` | [MDN `threshold`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#threshold) | `[0]` | +| `trackVisibility` | `Boolean` | [MDN `trackVisibility`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#trackVisibility) | `false` | +| `delay` | `Number` | [MDN `delay`](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#delay) | `0` | + +## Return + +| Property | Type | Description | +| -------- | --------- | --------------------------------------------------------------- | +| `el` | `Object` | Component ref for tag referencing. | +| `inView` | `Boolean` | Reference that indicates whether referenced element is visible. | + +## Example + +```html + + + +``` diff --git a/docs/src/composables/useConfig.md b/docs/src/composables/useConfig.md new file mode 100644 index 0000000000..af86c0526a --- /dev/null +++ b/docs/src/composables/useConfig.md @@ -0,0 +1,16 @@ +--- +title: useConfig +--- + +# {{$frontmatter.title}} + +## Return + +Returns `nuxt-speedkit` public runtime options. + +## Example + +```js +import useConfig from '#speedkit/composables/config'; +const $speedkitOptions = useConfig(); +``` diff --git a/docs/src/composables/useCritical.md b/docs/src/composables/useCritical.md new file mode 100644 index 0000000000..48bd436042 --- /dev/null +++ b/docs/src/composables/useCritical.md @@ -0,0 +1,34 @@ +--- +title: useCritical +--- + +# {{$frontmatter.title}} + +## Options + +| Property | Type | Description | Default Value | +| ---------- | --------- | --------------------------------- | ---------------------- | +| `critical` | `Boolean` | Override critical from component. | inherit from component | + +```js +const { isCritical } = useCritical({critical: true}); +``` + +## Return + +| Property | Description | +| ------------ | ----------- | +| `isCritical` | | + +## Example + +```html + + + +``` diff --git a/docs/src/composables/useFont.md b/docs/src/composables/useFont.md new file mode 100644 index 0000000000..85b2712108 --- /dev/null +++ b/docs/src/composables/useFont.md @@ -0,0 +1,35 @@ +--- +title: useFont +--- + +# {{$frontmatter.title}} + +## Options + +| Property | Type | Description | Default Value | +| ---------- | --------- | --------------------------------- | ---------------------- | +| `critical` | `Boolean` | Override critical from component. | inherit from component | + +```js +const { $getFont } = useFonts({critical: true}); +``` + +## Return + +| Property | Description | +| ------------ | ----------- | +| `isCritical` | | +| `$getFont` | | + +## Example + +```html + + + +``` diff --git a/docs/src/directives/v-font.md b/docs/src/directives/v-font.md new file mode 100644 index 0000000000..7497c43f84 --- /dev/null +++ b/docs/src/directives/v-font.md @@ -0,0 +1,89 @@ +--- +title: v-font +--- + +# {{$frontmatter.title}} + +The directive `v-font` is used to integrate the fonts defined in the [module options](/guide/options#fonts) into the website. + +To do this, the respective font must be retrieved via the `$getFont` method contained in the component scope (e.g. `this`). + +Fonts are specified by `family`, `weight` and `style` and can be limited to elements and viewports via the options (`media`, `selector`). + +Normally the directive activates the fonts only when the viewport is reached. +It is recommended to use the property `critical` for components that are already initially contained in the viewport. + +With critical component the fonts are preloaded and are initially active. +More information on critical components can be found [here](/guide/usage#critical-prop-for-critical-components). + +For multiple fonts, a list (`Array`) can be passed. + +````html + + + + + + +```` + +## `$getFont(family, [weight, style, options])` + +`$getFont` is included as a plugin and can be accessed via any component scope. +Use `$getFont` in the `v-font` directive and create the relevant font definition. + +| Key | Type | Requried | Description | Default | +| --------- | ------------------ | -------- | ------------------------------------------------------------------ | -------- | +| `family` | `String` | yes | Font-Family e.g. `Custom Font` | | +| `weight` | `String`, `Number` | | Font-Weight e.g. `400`, `normal` | `400` | +| `style` | `String` | | Font-Style e.g. `normal`, `italic` | `normal` | +| `options` | `Object` | | Media & Selector Options [see more](/directives/v-font#options) | | + +### options + +Each definition can be modified in its behaviour via the options. +With the property `media`, the call of the font definition can be made dependent on the viewport. +The property `selector` can be used to limit the font to elements (e.g. `span`, `.class`). + +````js +{ + media: '(min-width: 768px)', + selector: 'element, .elm, .elm:before' +} +```` + +| Key | Type | Requried | Description | Default | +| ---------- | -------- | -------- | ---------------------------------------------- | ------- | +| `media` | `String` | | CSS Media Query e.g. `(min-width: 768px)` | | +| `selector` | `String` | | CSS Selector e.g. `element, .elm, .elm:before` | | + +## Examples + +### Basic Usage + +````html +Text… +```` + +### Advanced Usage + +````js +[ + + // Font wird auf alles angewendet + $getFont('Font Family A'), + + // Font wird auf `b` und `strong` Tags angwendet + $getFont('Font Family B', 700, 'normal', { selector: 'b, strong' }), + + // Font erscheint erst ab Viewport `>768px` + $getFont('Font Family B', 400, 'normal', { media: '(min-width: 768px)' }), + + // Font wird auf `b` und `strong` Tags angwendet und erscheint erst ab Viewport `>768px` + $getFont('Font Family B', 700, 'normal', { selector: 'b, strong', media: '(min-width: 768px)' }) + +] +```` diff --git a/docs/src/guide/caveats.md b/docs/src/guide/caveats.md new file mode 100644 index 0000000000..3bb5962461 --- /dev/null +++ b/docs/src/guide/caveats.md @@ -0,0 +1,48 @@ +--- +title: Caveats +--- +# {{$frontmatter.title}} + +## Prevent `SPEEDINDEX_OF_ZERO` and `NO_LCP` + +The `window` event `nuxt-speedkit:run` is provided and useable to run code outside the app during initialization. + +If the performance is not sufficient on the client side, this can be retrieved with the help of the event object `e.detail.sufficient`. + +### Example + +A case where the event may be needed would be when the initial viewport on a website is blank and it is not displayed until the initialization is complete. + +In this case, measurements with Lighthouse can lead to these errors `SPEEDINDEX_OF_ZERO` and `NO_LCP`. + +In order to solve this case, it can be provided that the content of the stage can already be displayed outside of the app initialization in the case of a slow initialization. + +In this case the global event `nuxt-speedkit:run` can be used. It will return an event object with `e.detail.sufficient` as value. With the help of this status you can decide whether the stage should be displayed in advance. + +**Component Example** + +```html + + + +``` diff --git a/docs/src/guide/options.md b/docs/src/guide/options.md index e54ad66ab0..31667d2256 100644 --- a/docs/src/guide/options.md +++ b/docs/src/guide/options.md @@ -34,7 +34,7 @@ The following NuxtJS settings are made or overwritten in the `nuxt.config`: - Type: `Object` -These options can be used to define the initial checks to display the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer). The prerequisite are that the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) has been embedded into the layout. +These options can be used to define the initial checks to display the [`SpeedkitLayer`](/guide/components/speedkit-layer). The prerequisite are that the [`SpeedkitLayer`](/components/speedkit-layer) has been embedded into the layout. ````js { @@ -45,8 +45,8 @@ These options can be used to define the initial checks to display the [`Speedkit | Key | Type | Required | Description | Default | | ---------------- | --------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | - | `performance` | `Boolean` | yes | Checking whether the [minimum characteristic values](/v3/options#performancemetrics) have been reached. If the test is negative, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. | `true` | - | `browserSupport` | `Boolean` | yes | Check if the current browser on client side is supported. If the test is negative, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. | `true` | + | `performance` | `Boolean` | yes | Checking whether the [minimum characteristic values](/guide/options#performancemetrics) have been reached. If the test is negative, the [`SpeedkitLayer`](/components/speedkit-layer) will be displayed. | `true` | + | `browserSupport` | `Boolean` | yes | Check if the current browser on client side is supported. If the test is negative, the [`SpeedkitLayer`](/components/speedkit-layer) will be displayed. | `true` | ::: info For the browser support detection, the default [Browserslist](https://github.com/browserslist/browserslist) of the NuxtJS configuration is used. @@ -93,7 +93,7 @@ Definition of the minimum hardware requirements for visiting the website. - Type: `Object` -Definition of the max. FCP duration (ms). If the specified value is exceeded, the [`SpeedkitLayer`](/v3/guide/components/speedkit-layer) will be displayed. If the browser does not grant access to the FCP, as fallback the DCL will be evaluated. +Definition of the max. FCP duration (ms). If the specified value is exceeded, the [`SpeedkitLayer`](/components/speedkit-layer) will be displayed. If the browser does not grant access to the FCP, as fallback the DCL will be evaluated. ````js { @@ -111,7 +111,7 @@ Definition of the max. FCP duration (ms). If the specified value is exceeded, th - Type: `Array` -List of all font families used in the project. Only the fonts that are listed in the configuration can be retrieved and integrated via [`$fonts.getFont(...)`](/v3/directives/v-font). +List of all font families used in the project. Only the fonts that are listed in the configuration can be retrieved and integrated via [`$fonts.getFont(...)`](/directives/v-font). ````js [ @@ -205,7 +205,7 @@ List of all available font files of a font family variation. Sets the default formats for the `SpeedkitPicture`. -Can be overridden in the `SpeedkitPicture` via the [`formats`](/v3/guide/components/speedkit-picture#formats) property. +Can be overridden in the `SpeedkitPicture` via the [`formats`](/components/speedkit-picture#formats) property. For `png`, `jpeg` and `gif` formats we have added the `|` operator in the declaration. This adjusts the destination format to the source format. @@ -251,7 +251,7 @@ Global option for the [`IntersectionObserver`](https://developer.mozilla.org/en- | Key | Type | Required | Description | Default | | ----------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | - | `component` | `String` | yes | [`rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver/rootMargin) value for [`SpeedkitHydrate`](/v3/usage#import-components). | `0%` | + | `component` | `String` | yes | [`rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver/rootMargin) value for [`SpeedkitHydrate`](/guide/usage#import-components). | `0%` | | `asset` | `String` | yes | [`rootMargin`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver/rootMargin) value for all static ressources (`v-font`, `SpeedkitPicture` & `SpeedkitImage`). | `0%` | ## `disableNuxtCritters` diff --git a/docs/src/guide/setup.md b/docs/src/guide/setup.md index f0ae029fd0..f9c52fd3d5 100644 --- a/docs/src/guide/setup.md +++ b/docs/src/guide/setup.md @@ -144,4 +144,4 @@ More about `@nuxt/image` module options can be found [here](https://image.nuxtjs ::: -See [module options](/v3/guide/options). +See [module options](/guide/options). diff --git a/docs/src/guide/usage.md b/docs/src/guide/usage.md index bbbf840e35..df15a62df4 100644 --- a/docs/src/guide/usage.md +++ b/docs/src/guide/usage.md @@ -1,6 +1,7 @@ --- title: Usage --- + # {{$frontmatter.title}} The following tools are provided to optimize your webpage: @@ -26,7 +27,7 @@ The cool thing about this is that it saves the additional declaration in the CSS ```` -[Learn more](/v3/directives/v-font) about directive `v-font`. +[Learn more](/directives/v-font) about directive `v-font`. ::: warning Fonts are no longer explicitly defined via CSS, otherwise the loading behavior of the fonts cannot be controlled and an optimized loading behavior of the page can no longer be guaranteed. @@ -51,7 +52,7 @@ export default { }; ```` -Whether a component is in the viewport or not is determined in the background by the intersection observer. If the initialisation is to take place earlier, e.g. when scrolling, this can be adjusted accordingly via the `rootMargin` option in the [nuxt.config](/v3/options#lazyoffset). +Whether a component is in the viewport or not is determined in the background by the intersection observer. If the initialisation is to take place earlier, e.g. when scrolling, this can be adjusted accordingly via the `rootMargin` option in the [nuxt.config](/guide/options#lazyoffset). ::: warning Although the #speedkit/hydrate function can be used in any component, we recommend its explicit use only in pages and layout. Its use within components can be useful only in explicit special cases. Here we recommend the general use of static imports. @@ -65,12 +66,12 @@ With NODE-ENV (development), the components are included directly. In order to be able to load further static resources such as pictures, iFrames or Vimeo/Youtube videos in the iFrame in a performance-optimised way, we provide the following components. The speedkit components can be imported via the namespace `#speedkit/components`. -- [SpeedkitLayer](/v3/guide/components/speedkit-layer) -- [SpeedkitPicture](/v3/guide/components/speedkit-picture) -- [SpeedkitImage](/v3/guide/components/speedkit-image) -- [SpeedkitIframe](/v3/guide/components/speedkit-iframe) -- [SpeedkitVimeo](/v3/guide/components/speedkit-vimeo) -- [SpeedkitYoutube](/v3/guide/components/speedkit-youtube) +- [SpeedkitLayer](/components/speedkit-layer) +- [SpeedkitPicture](/components/speedkit-picture) +- [SpeedkitImage](/components/speedkit-image) +- [SpeedkitIframe](/components/speedkit-iframe) +- [SpeedkitVimeo](/components/speedkit-vimeo) +- [SpeedkitYoutube](/components/speedkit-youtube) ````html